From 970de4962b3bffec271bfa6d4747e6fb9d408ba6 Mon Sep 17 00:00:00 2001 From: Fabio Di Stasio Date: Wed, 17 Feb 2021 18:49:02 +0100 Subject: [PATCH] feat: support to fake data locales --- src/main/ipc-handlers/tables.js | 18 ++- src/renderer/components/ForeignKeySelect.vue | 1 + src/renderer/components/ModalFakerRows.vue | 132 +++++++++++++++++-- src/renderer/i18n/en-US.js | 3 +- 4 files changed, 135 insertions(+), 19 deletions(-) diff --git a/src/main/ipc-handlers/tables.js b/src/main/ipc-handlers/tables.js index f1eaf229..4439068e 100644 --- a/src/main/ipc-handlers/tables.js +++ b/src/main/ipc-handlers/tables.js @@ -239,12 +239,20 @@ export default (connections) => { } else { // Faker value const parsedParams = {}; - Object.keys(params.row[key].params).forEach(param => { - if (!isNaN(params.row[key].params[param])) - parsedParams[param] = +params.row[key].params[param]; - }); + let fakeValue; - let fakeValue = faker[params.row[key].group][params.row[key].method](parsedParams); + if (params.locale) + faker.locale = params.locale; + + if (Object.keys(params.row[key].params).length) { + Object.keys(params.row[key].params).forEach(param => { + if (!isNaN(params.row[key].params[param])) + parsedParams[param] = +params.row[key].params[param]; + }); + fakeValue = faker[params.row[key].group][params.row[key].method](parsedParams); + } + else + fakeValue = faker[params.row[key].group][params.row[key].method](); if (typeof fakeValue === 'string') { if (params.row[key].length) diff --git a/src/renderer/components/ForeignKeySelect.vue b/src/renderer/components/ForeignKeySelect.vue index de7b8992..b1f581ad 100644 --- a/src/renderer/components/ForeignKeySelect.vue +++ b/src/renderer/components/ForeignKeySelect.vue @@ -50,6 +50,7 @@ export default { selectedWorkspace: 'workspaces/getSelected' }), isValidDefault () { + if (!this.foreignList.length) return true; return this.foreignList.some(foreign => foreign.foreignColumn.toString() === this.value.toString()); } }, diff --git a/src/renderer/components/ModalFakerRows.vue b/src/renderer/components/ModalFakerRows.vue index 9283ae12..0e0c6a59 100644 --- a/src/renderer/components/ModalFakerRows.vue +++ b/src/renderer/components/ModalFakerRows.vue @@ -51,18 +51,119 @@ -