@postxl/generator 0.74.2 → 1.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +50 -0
- package/README.md +79 -1
- package/dist/generator-manager.class.d.ts +59 -0
- package/dist/generator-manager.class.js +221 -0
- package/dist/generator.class.d.ts +90 -0
- package/dist/generator.class.js +32 -0
- package/dist/generator.context.d.ts +174 -0
- package/dist/generator.context.js +125 -0
- package/dist/helpers/branded.types.d.ts +149 -0
- package/dist/helpers/branded.types.js +111 -0
- package/dist/helpers/config-builder.class.d.ts +27 -0
- package/dist/helpers/config-builder.class.js +54 -0
- package/dist/helpers/import-generator.class.d.ts +70 -0
- package/dist/helpers/import-generator.class.js +166 -0
- package/dist/helpers/importable.types.d.ts +52 -0
- package/dist/helpers/importable.types.js +15 -0
- package/dist/helpers/index-generator.class.d.ts +10 -0
- package/dist/helpers/index-generator.class.js +46 -0
- package/dist/helpers/index.d.ts +8 -0
- package/dist/helpers/index.js +24 -0
- package/dist/helpers/package-json.generator.d.ts +56 -0
- package/dist/helpers/package-json.generator.js +36 -0
- package/dist/helpers/tsconfig.generator.d.ts +1 -0
- package/dist/helpers/tsconfig.generator.js +14 -0
- package/dist/helpers/verify-context.d.ts +4 -0
- package/dist/helpers/verify-context.js +23 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.js +21 -0
- package/dist/utils/checksum.d.ts +10 -0
- package/dist/utils/checksum.js +132 -0
- package/dist/utils/fs-utils.d.ts +34 -0
- package/dist/utils/fs-utils.js +126 -0
- package/dist/utils/index.d.ts +10 -0
- package/dist/utils/index.js +26 -0
- package/dist/utils/jsdoc.d.ts +12 -0
- package/dist/utils/jsdoc.js +37 -0
- package/dist/utils/lint.d.ts +46 -0
- package/dist/utils/lint.js +154 -0
- package/dist/utils/lockfile.d.ts +7 -0
- package/dist/utils/lockfile.js +80 -0
- package/dist/utils/logger.class.d.ts +25 -0
- package/dist/utils/logger.class.js +55 -0
- package/dist/utils/merge-conflict.d.ts +55 -0
- package/dist/utils/merge-conflict.js +264 -0
- package/dist/utils/path.d.ts +52 -0
- package/dist/utils/path.js +183 -0
- package/dist/utils/prettier-config.d.ts +2 -0
- package/dist/utils/prettier-config.js +13 -0
- package/dist/utils/prettier.d.ts +5 -0
- package/dist/utils/prettier.js +67 -0
- package/dist/utils/prettier.skiptest.d.ts +1 -0
- package/dist/utils/prettier.skiptest.js +22 -0
- package/dist/utils/promise.d.ts +2 -0
- package/dist/utils/promise.js +10 -0
- package/dist/utils/string-functions.d.ts +9 -0
- package/dist/utils/string-functions.js +23 -0
- package/dist/utils/sync-log-result.d.ts +9 -0
- package/dist/utils/sync-log-result.js +90 -0
- package/dist/utils/sync.d.ts +143 -0
- package/dist/utils/sync.js +325 -0
- package/dist/utils/template.d.ts +66 -0
- package/dist/utils/template.js +159 -0
- package/dist/utils/vfs.class.d.ts +115 -0
- package/dist/utils/vfs.class.js +239 -0
- package/dist/utils/zip.d.ts +13 -0
- package/dist/utils/zip.js +40 -0
- package/package.json +53 -31
- package/dist/generator.d.ts +0 -13
- package/dist/generator.js +0 -455
- package/dist/generators/enums/react.generator.d.ts +0 -10
- package/dist/generators/enums/react.generator.js +0 -110
- package/dist/generators/enums/types.generator.d.ts +0 -10
- package/dist/generators/enums/types.generator.js +0 -39
- package/dist/generators/indices/data/module.generator.d.ts +0 -9
- package/dist/generators/indices/data/module.generator.js +0 -60
- package/dist/generators/indices/data/service.generator.d.ts +0 -9
- package/dist/generators/indices/data/service.generator.js +0 -249
- package/dist/generators/indices/data/types.generator.d.ts +0 -9
- package/dist/generators/indices/data/types.generator.js +0 -49
- package/dist/generators/indices/dispatcher-service.generator.d.ts +0 -9
- package/dist/generators/indices/dispatcher-service.generator.js +0 -107
- package/dist/generators/indices/export/class.generator.d.ts +0 -9
- package/dist/generators/indices/export/class.generator.js +0 -140
- package/dist/generators/indices/export/encoder.generator.d.ts +0 -9
- package/dist/generators/indices/export/encoder.generator.js +0 -50
- package/dist/generators/indices/import/convert-functions.generator.d.ts +0 -9
- package/dist/generators/indices/import/convert-functions.generator.js +0 -509
- package/dist/generators/indices/import/decoder.generator.d.ts +0 -9
- package/dist/generators/indices/import/decoder.generator.js +0 -40
- package/dist/generators/indices/import/service.generator.d.ts +0 -9
- package/dist/generators/indices/import/service.generator.js +0 -573
- package/dist/generators/indices/import/types.generator.d.ts +0 -9
- package/dist/generators/indices/import/types.generator.js +0 -242
- package/dist/generators/indices/repositories.generator.d.ts +0 -9
- package/dist/generators/indices/repositories.generator.js +0 -25
- package/dist/generators/indices/routes.generator.d.ts +0 -9
- package/dist/generators/indices/routes.generator.js +0 -29
- package/dist/generators/indices/seed-migration.generator.d.ts +0 -9
- package/dist/generators/indices/seed-migration.generator.js +0 -36
- package/dist/generators/indices/seed-template.generator.d.ts +0 -9
- package/dist/generators/indices/seed-template.generator.js +0 -80
- package/dist/generators/indices/testids.generator.d.ts +0 -7
- package/dist/generators/indices/testids.generator.js +0 -71
- package/dist/generators/indices/types.generator.d.ts +0 -10
- package/dist/generators/indices/types.generator.js +0 -35
- package/dist/generators/indices/update/actiontypes.generator.d.ts +0 -9
- package/dist/generators/indices/update/actiontypes.generator.js +0 -49
- package/dist/generators/indices/update/module.generator.d.ts +0 -9
- package/dist/generators/indices/update/module.generator.js +0 -41
- package/dist/generators/indices/update/service.generator.d.ts +0 -9
- package/dist/generators/indices/update/service.generator.js +0 -34
- package/dist/generators/indices/view/module.generator.d.ts +0 -9
- package/dist/generators/indices/view/module.generator.js +0 -39
- package/dist/generators/indices/view/service.generator.d.ts +0 -9
- package/dist/generators/indices/view/service.generator.js +0 -34
- package/dist/generators/models/admin.page.generator.d.ts +0 -7
- package/dist/generators/models/admin.page.generator.js +0 -74
- package/dist/generators/models/export/encoder.generator.d.ts +0 -9
- package/dist/generators/models/export/encoder.generator.js +0 -51
- package/dist/generators/models/import/decoder.generator.d.ts +0 -9
- package/dist/generators/models/import/decoder.generator.js +0 -148
- package/dist/generators/models/react/context.generator.d.ts +0 -9
- package/dist/generators/models/react/context.generator.js +0 -71
- package/dist/generators/models/react/index.d.ts +0 -10
- package/dist/generators/models/react/index.js +0 -31
- package/dist/generators/models/react/library.generator.d.ts +0 -10
- package/dist/generators/models/react/library.generator.js +0 -94
- package/dist/generators/models/react/lookup.generator.d.ts +0 -9
- package/dist/generators/models/react/lookup.generator.js +0 -175
- package/dist/generators/models/react/modals.generator.d.ts +0 -23
- package/dist/generators/models/react/modals.generator.js +0 -710
- package/dist/generators/models/repository.generator.d.ts +0 -9
- package/dist/generators/models/repository.generator.js +0 -955
- package/dist/generators/models/route.generator.d.ts +0 -9
- package/dist/generators/models/route.generator.js +0 -92
- package/dist/generators/models/seed.generator.d.ts +0 -21
- package/dist/generators/models/seed.generator.js +0 -285
- package/dist/generators/models/stub.generator.d.ts +0 -9
- package/dist/generators/models/stub.generator.js +0 -92
- package/dist/generators/models/types.generator.d.ts +0 -9
- package/dist/generators/models/types.generator.js +0 -125
- package/dist/generators/models/update/service.generator.d.ts +0 -10
- package/dist/generators/models/update/service.generator.js +0 -302
- package/dist/generators/models/view/service.generator.d.ts +0 -10
- package/dist/generators/models/view/service.generator.js +0 -239
- package/dist/lib/attributes.d.ts +0 -114
- package/dist/lib/attributes.js +0 -2
- package/dist/lib/exports.d.ts +0 -45
- package/dist/lib/exports.js +0 -90
- package/dist/lib/imports.d.ts +0 -65
- package/dist/lib/imports.js +0 -114
- package/dist/lib/meta.d.ts +0 -1191
- package/dist/lib/meta.js +0 -434
- package/dist/lib/schema/fields.d.ts +0 -46
- package/dist/lib/schema/fields.js +0 -62
- package/dist/lib/schema/schema.d.ts +0 -466
- package/dist/lib/schema/schema.js +0 -18
- package/dist/lib/schema/types.d.ts +0 -201
- package/dist/lib/schema/types.js +0 -112
- package/dist/lib/serializer.d.ts +0 -15
- package/dist/lib/serializer.js +0 -24
- package/dist/lib/test-id-collector.d.ts +0 -42
- package/dist/lib/test-id-collector.js +0 -53
- package/dist/lib/types.d.ts +0 -7
- package/dist/lib/types.js +0 -13
- package/dist/lib/typescript.d.ts +0 -5
- package/dist/lib/typescript.js +0 -22
- package/dist/lib/utils/ast.d.ts +0 -29
- package/dist/lib/utils/ast.js +0 -23
- package/dist/lib/utils/error.d.ts +0 -17
- package/dist/lib/utils/error.js +0 -52
- package/dist/lib/utils/file.d.ts +0 -10
- package/dist/lib/utils/file.js +0 -56
- package/dist/lib/utils/jsdoc.d.ts +0 -9
- package/dist/lib/utils/jsdoc.js +0 -37
- package/dist/lib/utils/logger.d.ts +0 -17
- package/dist/lib/utils/logger.js +0 -12
- package/dist/lib/utils/string.d.ts +0 -40
- package/dist/lib/utils/string.js +0 -187
- package/dist/lib/utils/types.d.ts +0 -12
- package/dist/lib/utils/types.js +0 -2
- package/dist/lib/zod.d.ts +0 -8
- package/dist/lib/zod.js +0 -60
- package/dist/prisma/attributes.d.ts +0 -21
- package/dist/prisma/attributes.js +0 -175
- package/dist/prisma/client-path.d.ts +0 -7
- package/dist/prisma/client-path.js +0 -29
- package/dist/prisma/parse.d.ts +0 -12
- package/dist/prisma/parse.js +0 -452
package/dist/lib/meta.js
DELETED
|
@@ -1,434 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.getEnumMetadata = exports.getFieldMetadata = exports.getModelMetadata = exports.getSchemaMetadata = void 0;
|
|
27
|
-
const Types = __importStar(require("./schema/types"));
|
|
28
|
-
const string_1 = require("./utils/string");
|
|
29
|
-
/**
|
|
30
|
-
* Returns a collection of metadata relevant in the global schema context.
|
|
31
|
-
*/
|
|
32
|
-
function getSchemaMetadata({ config }) {
|
|
33
|
-
return {
|
|
34
|
-
backendModules: {
|
|
35
|
-
auth: {
|
|
36
|
-
importPath: Types.toBackendModulePath(`@backend/auth`),
|
|
37
|
-
},
|
|
38
|
-
db: {
|
|
39
|
-
moduleName: Types.toClassName(`DatabaseModule`),
|
|
40
|
-
moduleLocation: Types.toModuleLocation(`db`, `${config.paths.dbLibPath}database.module`),
|
|
41
|
-
typesImportPath: Types.toBackendModulePath(`@backend/db`),
|
|
42
|
-
databaseService: {
|
|
43
|
-
name: Types.toClassName(`DatabaseService`),
|
|
44
|
-
location: Types.toModuleLocation('db', `${config.paths.dbLibPath}database.service`),
|
|
45
|
-
},
|
|
46
|
-
},
|
|
47
|
-
http: {
|
|
48
|
-
moduleImportPath: Types.toBackendModulePath(`@backend/http/http.module`),
|
|
49
|
-
},
|
|
50
|
-
i18n: {
|
|
51
|
-
moduleImportPath: Types.toBackendModulePath(`@backend/i18n/i18n.module`),
|
|
52
|
-
},
|
|
53
|
-
s3: {
|
|
54
|
-
moduleImportPath: Types.toBackendModulePath(`@backend/s3/s3.module`),
|
|
55
|
-
},
|
|
56
|
-
upload: {
|
|
57
|
-
moduleImportPath: Types.toBackendModulePath(`@backend/upload/upload.module`),
|
|
58
|
-
},
|
|
59
|
-
xlport: {
|
|
60
|
-
moduleImportPart: Types.toBackendModulePath(`@backend/xlport/xlport.module`),
|
|
61
|
-
},
|
|
62
|
-
},
|
|
63
|
-
actions: {
|
|
64
|
-
moduleName: Types.toClassName(`ActionModule`),
|
|
65
|
-
moduleLocation: Types.toModuleLocation(`actions`, `${config.paths.actionsPath}actions.module`),
|
|
66
|
-
execution: {
|
|
67
|
-
class: Types.toClassName(`ActionExecution`),
|
|
68
|
-
classLocation: Types.toModuleLocation(`actions`, `${config.paths.actionsPath}execution/action`),
|
|
69
|
-
interface: Types.toClassName(`IActionExecution`),
|
|
70
|
-
interfaceLocation: Types.toModuleLocation(`actions`, `${config.paths.actionsPath}execution/types`),
|
|
71
|
-
mock: Types.toClassName(`MockActionExecution`),
|
|
72
|
-
mockLocation: Types.toModuleLocation(`actions`, `${config.paths.actionsPath}execution/mock`),
|
|
73
|
-
},
|
|
74
|
-
dispatcher: {
|
|
75
|
-
classLocation: Types.toModuleLocation('actions', `${config.paths.actionsPath}dispatcher.service`),
|
|
76
|
-
class: Types.toClassName(`DispatcherService`),
|
|
77
|
-
definitionLocation: Types.toModuleLocation('actions', `${config.paths.actionsPath}dispatcher.interface`),
|
|
78
|
-
definition: Types.toTypeName('IDispatcherDefinition'),
|
|
79
|
-
},
|
|
80
|
-
definition: {
|
|
81
|
-
importPath: Types.toBackendModulePath('@backend/actions/utils'),
|
|
82
|
-
schema: Types.toTypeName('ActionDef'),
|
|
83
|
-
payload: Types.toTypeName('ActionDefPayload'),
|
|
84
|
-
result: Types.toTypeName('ActionDefResult'),
|
|
85
|
-
resultDict: Types.toTypeName('ActionDefResultDict'),
|
|
86
|
-
},
|
|
87
|
-
},
|
|
88
|
-
view: {
|
|
89
|
-
moduleName: Types.toClassName(`ViewModule`),
|
|
90
|
-
moduleLocation: Types.toModuleLocation(`view`, `${config.paths.businessViewLogicPath}view.module`),
|
|
91
|
-
serviceClassName: Types.toClassName(`ViewService`),
|
|
92
|
-
serviceLocation: Types.toModuleLocation(`view`, `${config.paths.businessViewLogicPath}view.service`),
|
|
93
|
-
},
|
|
94
|
-
update: {
|
|
95
|
-
moduleName: Types.toClassName(`UpdateModule`),
|
|
96
|
-
moduleLocation: Types.toModuleLocation(`update`, `${config.paths.businessUpdateLogicPath}update.module`),
|
|
97
|
-
serviceClassName: Types.toClassName(`UpdateService`),
|
|
98
|
-
serviceLocation: Types.toModuleLocation(`update`, `${config.paths.businessUpdateLogicPath}update.service`),
|
|
99
|
-
actionTypesFilePath: Types.toPath(`${config.paths.businessUpdateLogicPath}actions`),
|
|
100
|
-
},
|
|
101
|
-
data: {
|
|
102
|
-
moduleName: Types.toClassName(`DataModule`),
|
|
103
|
-
moduleLocation: Types.toModuleLocation(`data`, `${config.paths.dataLibPath}data.module`),
|
|
104
|
-
repository: {
|
|
105
|
-
typeFilePath: Types.toPath(`${config.paths.dataLibPath}repository.type`),
|
|
106
|
-
typeName: Types.toTypeName(`Repository`),
|
|
107
|
-
constFilePath: Types.toPath(`${config.paths.dataLibPath}repositories/repositories`),
|
|
108
|
-
indexFilePath: Types.toPath(`${config.paths.dataLibPath}repositories/index`),
|
|
109
|
-
},
|
|
110
|
-
types: {
|
|
111
|
-
location: Types.toModuleLocation(`data`, `${config.paths.dataLibPath}types`),
|
|
112
|
-
bulkMutation: Types.toTypeName(`BulkMutation`),
|
|
113
|
-
bulkMutationForModel: Types.toTypeName(`BulkMutationForModel`),
|
|
114
|
-
},
|
|
115
|
-
dataService: {
|
|
116
|
-
location: Types.toModuleLocation(`data`, `${config.paths.dataLibPath}data.service`),
|
|
117
|
-
class: Types.toClassName(`DataService`),
|
|
118
|
-
executeBulkMutations: Types.toFunctionName(`executeBulkMutations`),
|
|
119
|
-
executeBulkMutation: Types.toFunctionName(`executeBulkMutation`),
|
|
120
|
-
},
|
|
121
|
-
stubIndexFilePath: Types.toPath(`${config.paths.dataLibPath}stubs/index`),
|
|
122
|
-
testDataServiceFilePath: Types.toPath(`${config.paths.e2eLibPath}test-data.service`),
|
|
123
|
-
},
|
|
124
|
-
e2e: {
|
|
125
|
-
testIdsFilePath: Types.toPath(`${config.paths.playwrightPath}support/model-test-ids`),
|
|
126
|
-
},
|
|
127
|
-
import: {
|
|
128
|
-
moduleLocation: Types.toModuleLocation(`import`, `${config.paths.importPath}import.module`),
|
|
129
|
-
decoder: {
|
|
130
|
-
location: Types.toModuleLocation(`import`, `${config.paths.importPath}decoders/data.decoder`),
|
|
131
|
-
fullDecoderName: Types.toFunctionName(`excelDataDecoder`),
|
|
132
|
-
decodedPXLModelDataTypeName: Types.toTypeName(`DecodedPXLModelData`),
|
|
133
|
-
},
|
|
134
|
-
importService: {
|
|
135
|
-
location: Types.toModuleLocation(`import`, `${config.paths.importPath}import.service`),
|
|
136
|
-
name: Types.toClassName(`ImportService`),
|
|
137
|
-
sharedName: Types.toVariableName(`importService`),
|
|
138
|
-
},
|
|
139
|
-
converterFunctions: {
|
|
140
|
-
location: Types.toModuleLocation(`import`, `${config.paths.importPath}convert-import.functions`),
|
|
141
|
-
importedDataToBulkMutations: Types.toFunctionName(`importToBulkMutations`),
|
|
142
|
-
deltaToBulkMutations: Types.toFunctionName(`deltaToBulkMutations`),
|
|
143
|
-
},
|
|
144
|
-
types: {
|
|
145
|
-
location: Types.toModuleLocation(`import`, `${config.paths.importPath}types`),
|
|
146
|
-
delta_Model: {
|
|
147
|
-
type: Types.toTypeName(`Delta_Model`),
|
|
148
|
-
create: {
|
|
149
|
-
type: Types.toTypeName(`Delta_Model_Create`),
|
|
150
|
-
discriminant: Types.toDiscriminantName(`create`),
|
|
151
|
-
typeGuard: Types.toFunctionName(`isDelta_Model_Create`),
|
|
152
|
-
},
|
|
153
|
-
update: {
|
|
154
|
-
type: Types.toTypeName(`Delta_Model_Update`),
|
|
155
|
-
discriminant: Types.toDiscriminantName(`update`),
|
|
156
|
-
typeGuard: Types.toFunctionName(`isDelta_Model_Update`),
|
|
157
|
-
},
|
|
158
|
-
delete: {
|
|
159
|
-
type: Types.toTypeName(`Delta_Model_Delete`),
|
|
160
|
-
discriminant: Types.toDiscriminantName(`delete`),
|
|
161
|
-
typeGuard: Types.toFunctionName(`isDelta_Model_Delete`),
|
|
162
|
-
},
|
|
163
|
-
unchanged: {
|
|
164
|
-
type: Types.toTypeName(`Delta_Model_Unchanged`),
|
|
165
|
-
discriminant: Types.toDiscriminantName(`unchanged`),
|
|
166
|
-
typeGuard: Types.toFunctionName(`isDelta_Model_Unchanged`),
|
|
167
|
-
},
|
|
168
|
-
errors: {
|
|
169
|
-
type: Types.toTypeName(`Delta_Model_Errors`),
|
|
170
|
-
discriminant: Types.toDiscriminantName(`errors`),
|
|
171
|
-
typeGuard: Types.toFunctionName(`isDelta_Model_Errors`),
|
|
172
|
-
missingField: {
|
|
173
|
-
type: Types.toTypeName(`Delta_Model_Errors_MissingField`),
|
|
174
|
-
discriminant: Types.toDiscriminantName(`required-field-missing`),
|
|
175
|
-
},
|
|
176
|
-
invalidReference: {
|
|
177
|
-
type: Types.toTypeName(`Delta_Model_Errors_InvalidReference`),
|
|
178
|
-
discriminant: Types.toDiscriminantName(`invalid-reference`),
|
|
179
|
-
},
|
|
180
|
-
nonUnique: {
|
|
181
|
-
type: Types.toTypeName(`Delta_Model_Errors_NonUnique`),
|
|
182
|
-
discriminant: Types.toDiscriminantName(`non-unique`),
|
|
183
|
-
},
|
|
184
|
-
invalidType: {
|
|
185
|
-
type: Types.toTypeName(`Delta_Model_Errors_InvalidType`),
|
|
186
|
-
discriminant: Types.toDiscriminantName(`invalid-type`),
|
|
187
|
-
},
|
|
188
|
-
isRequiredDependency: {
|
|
189
|
-
type: Types.toTypeName(`Delta_Model_Errors_IsRequiredDependency`),
|
|
190
|
-
discriminant: Types.toDiscriminantName(`is-required-dependency`),
|
|
191
|
-
},
|
|
192
|
-
},
|
|
193
|
-
},
|
|
194
|
-
delta: Types.toTypeName(`Delta`),
|
|
195
|
-
delta_Fields: Types.toTypeName(`Delta_Fields`),
|
|
196
|
-
},
|
|
197
|
-
},
|
|
198
|
-
export: {
|
|
199
|
-
moduleLocation: Types.toModuleLocation(`export`, `${config.paths.exportPath}export.module`),
|
|
200
|
-
exporterClass: {
|
|
201
|
-
location: Types.toModuleLocation(`export`, `${config.paths.exportPath}exporter.class`),
|
|
202
|
-
name: Types.toClassName(`Exporter`),
|
|
203
|
-
},
|
|
204
|
-
exportService: {
|
|
205
|
-
location: Types.toModuleLocation(`export`, `${config.paths.exportPath}export.service`),
|
|
206
|
-
name: Types.toClassName(`ExportService`),
|
|
207
|
-
},
|
|
208
|
-
encoder: {
|
|
209
|
-
location: Types.toModuleLocation(`export`, `${config.paths.exportPath}encoders/data.encoder`),
|
|
210
|
-
fullEncoderFunctionName: Types.toFunctionName(`encodeExcelData`),
|
|
211
|
-
encodedExcelDataTypeName: Types.toTypeName(`EncodedExcelData`),
|
|
212
|
-
},
|
|
213
|
-
},
|
|
214
|
-
seedData: {
|
|
215
|
-
initialMigrationLocation: Types.toModuleLocation(`seed-data`, `${config.paths.seedDataPath}001-base-data/001-seed.migration`),
|
|
216
|
-
templateExcelFilePath: Types.toPath(`${config.paths.seedDataPath}002-excel-example/template.xlsx`),
|
|
217
|
-
},
|
|
218
|
-
seed: {
|
|
219
|
-
serviceClassName: Types.toClassName(`SeedService`),
|
|
220
|
-
serviceLocation: Types.toModuleLocation(`seed`, `${config.paths.seedLibPath}seed.service`),
|
|
221
|
-
actionsLocation: Types.toModuleLocation(`seed`, `${config.paths.seedLibPath}actions`),
|
|
222
|
-
},
|
|
223
|
-
trpc: {
|
|
224
|
-
routesFilePath: Types.toPath(`${config.paths.trpcRoutesFolderPath}index`),
|
|
225
|
-
},
|
|
226
|
-
types: {
|
|
227
|
-
indexFilePath: Types.toPath(`${config.paths.modelTypeDefinitionsPath}index`),
|
|
228
|
-
importPath: Types.toBackendModulePath(`@backend/types`),
|
|
229
|
-
idTypesIndex: Types.toTypeName(`SchemaIds`),
|
|
230
|
-
dto: {
|
|
231
|
-
path: Types.toPath(`${config.paths.modelTypeDefinitionsPath}dto.types`),
|
|
232
|
-
genericModel: Types.toTypeName(`GenericModel`),
|
|
233
|
-
idType: Types.toTypeName(`IDType`),
|
|
234
|
-
create: Types.toTypeName(`CreateDTO`),
|
|
235
|
-
update: Types.toTypeName(`UpdateDTO`),
|
|
236
|
-
upsert: Types.toTypeName(`UpsertDTO`),
|
|
237
|
-
},
|
|
238
|
-
},
|
|
239
|
-
prismaMigrationsPath: Types.toPath(`${config.paths.prismaMigrationsFolderPath}`),
|
|
240
|
-
config,
|
|
241
|
-
};
|
|
242
|
-
}
|
|
243
|
-
exports.getSchemaMetadata = getSchemaMetadata;
|
|
244
|
-
/**
|
|
245
|
-
* Returns metadata related to the given model.
|
|
246
|
-
*/
|
|
247
|
-
function getModelMetadata({ model }) {
|
|
248
|
-
const { name, schemaConfig: config } = model;
|
|
249
|
-
const { PascalCase, camelCase, pluralized, uncapitalizedPlural, uncapitalized, capitalized, capitalizedPlural } = (0, string_1.conjugateNames)(name);
|
|
250
|
-
return {
|
|
251
|
-
userFriendlyName: PascalCase,
|
|
252
|
-
userFriendlyNamePlural: capitalizedPlural,
|
|
253
|
-
internalSingularName: Types.toVariableName(camelCase),
|
|
254
|
-
internalSingularNameCapitalized: Types.toVariableName(capitalized),
|
|
255
|
-
internalPluralName: Types.toVariableName(uncapitalizedPlural),
|
|
256
|
-
internalPluralNameCapitalized: Types.toVariableName(capitalizedPlural),
|
|
257
|
-
actions: {
|
|
258
|
-
actionScopeConstType: Types.toTypeName(`${camelCase}`),
|
|
259
|
-
},
|
|
260
|
-
data: {
|
|
261
|
-
importPath: Types.toBackendModulePath(`@backend/data`),
|
|
262
|
-
mockDataPropertyName: Types.toVariableName(`${uncapitalizedPlural}`),
|
|
263
|
-
repository: {
|
|
264
|
-
location: Types.toModuleLocation(`data`, `${config.paths.dataLibPath}repositories/${camelCase}.repository`),
|
|
265
|
-
className: Types.toClassName(`${PascalCase}Repository`),
|
|
266
|
-
decoderFnName: Types.toFunctionName(`to${PascalCase}`),
|
|
267
|
-
getMethodFnName: Types.toFunctionName(`${camelCase}`),
|
|
268
|
-
},
|
|
269
|
-
stubLocation: Types.toModuleLocation(`data`, `${config.paths.dataLibPath}stubs/${camelCase}.stub`),
|
|
270
|
-
stubGenerationFnName: Types.toFunctionName(`stub${PascalCase}`),
|
|
271
|
-
defaultStubConstantName: Types.toVariableName(`${camelCase}DefaultStub`),
|
|
272
|
-
dataServiceName: Types.toVariableName(`${uncapitalizedPlural}`),
|
|
273
|
-
dataServiceIdName: Types.toVariableName(`${uncapitalized}`),
|
|
274
|
-
},
|
|
275
|
-
import: {
|
|
276
|
-
tableName: `${pluralized}`,
|
|
277
|
-
delta_Model_Errors: Types.toTypeName(`Delta_Model_${PascalCase}_Errors`),
|
|
278
|
-
decoder: {
|
|
279
|
-
location: Types.toModuleLocation(`import`, `${config.paths.importPath}decoders/${camelCase}.decoder`),
|
|
280
|
-
tableDecoder: Types.toFunctionName(`${camelCase}TableDecoder`),
|
|
281
|
-
decodedModelArrayName: Types.toVariableName(`${uncapitalizedPlural}`),
|
|
282
|
-
rowDecoderName: Types.toFunctionName(`${camelCase}RowDecoder`),
|
|
283
|
-
},
|
|
284
|
-
},
|
|
285
|
-
export: {
|
|
286
|
-
exportDataPropertyName: Types.toVariableName(`${capitalizedPlural}`),
|
|
287
|
-
exportDataFullPropertyName: Types.toVariableName(`${uncapitalizedPlural}`),
|
|
288
|
-
exportDataTypeName: Types.toTypeName(`${PascalCase}_Export`),
|
|
289
|
-
exportAddFunctionName: Types.toFunctionName(`add${PascalCase}`),
|
|
290
|
-
tableName: `${pluralized}`,
|
|
291
|
-
encoder: {
|
|
292
|
-
location: Types.toModuleLocation(`export`, `${config.paths.exportPath}encoders/${camelCase}.encoder`),
|
|
293
|
-
encodedExcelType: Types.toTypeName(`${PascalCase}_EncodedExcelData`),
|
|
294
|
-
itemEncoderFunctionName: Types.toFunctionName(`encode${PascalCase}`),
|
|
295
|
-
arrayEncoderFunctionName: Types.toFunctionName(`encode${capitalizedPlural}`),
|
|
296
|
-
},
|
|
297
|
-
},
|
|
298
|
-
view: {
|
|
299
|
-
scopeName: Types.toVariableName(`${camelCase}`),
|
|
300
|
-
serviceClassName: Types.toClassName(`${PascalCase}ViewService`),
|
|
301
|
-
serviceVariableName: Types.toVariableName(`${uncapitalizedPlural}`),
|
|
302
|
-
serviceLocation: Types.toModuleLocation(`view`, `${config.paths.businessViewLogicPath}${camelCase}.view.service`),
|
|
303
|
-
cursorDecoder: Types.toVariableName(`CURSOR_DECODER`),
|
|
304
|
-
filterOperatorDecoder: Types.toVariableName(`FILTER_OPERATOR_DECODER`),
|
|
305
|
-
},
|
|
306
|
-
update: {
|
|
307
|
-
scopeName: Types.toVariableName(`${camelCase}`),
|
|
308
|
-
moduleLocation: Types.toModuleLocation('update', `${config.paths.businessUpdateLogicPath}${camelCase}.update.module`),
|
|
309
|
-
serviceClassName: Types.toClassName(`${PascalCase}UpdateService`),
|
|
310
|
-
serviceClassLocation: Types.toModuleLocation('update', `${config.paths.businessUpdateLogicPath}${camelCase}.update.service`),
|
|
311
|
-
serviceInterfaceName: Types.toTypeName(`I${PascalCase}UpdateService`),
|
|
312
|
-
serviceVariableName: Types.toVariableName(`${uncapitalizedPlural}`),
|
|
313
|
-
actionModelDiscriminantName: Types.toVariableName(`${camelCase}`),
|
|
314
|
-
createInputDecoder: Types.toVariableName(`${camelCase}CreateInputDecoder`),
|
|
315
|
-
updateInputDecoder: Types.toVariableName(`${camelCase}UpdateInputDecoder`),
|
|
316
|
-
upsertInputDecoder: Types.toVariableName(`${camelCase}UpsertInputDecoder`),
|
|
317
|
-
},
|
|
318
|
-
seed: {
|
|
319
|
-
location: Types.toModuleLocation('seed-data', `${config.paths.seedDataPath}001-base-data/${uncapitalizedPlural}.seed`),
|
|
320
|
-
constantName: Types.toVariableName(`${uncapitalizedPlural}`),
|
|
321
|
-
},
|
|
322
|
-
react: {
|
|
323
|
-
folderName: Types.toFolderName(`${PascalCase}`),
|
|
324
|
-
folderPath: Types.toPath(`${config.paths.reactFolderPath}models/${PascalCase}/`),
|
|
325
|
-
importPath: Types.toPath(`@components/models/${PascalCase}`),
|
|
326
|
-
context: {
|
|
327
|
-
hookFnName: Types.toFunctionName(`use${PascalCase}Context`),
|
|
328
|
-
instanceGetterHookFnName: Types.toFunctionName(`use${PascalCase}`),
|
|
329
|
-
},
|
|
330
|
-
components: {
|
|
331
|
-
modals: {
|
|
332
|
-
createComponentName: Types.toVariableName(`Create${PascalCase}Modal`),
|
|
333
|
-
editComponentName: Types.toVariableName(`Edit${PascalCase}Modal`),
|
|
334
|
-
deleteComponentName: Types.toVariableName(`Delete${PascalCase}Modal`),
|
|
335
|
-
},
|
|
336
|
-
forms: {
|
|
337
|
-
selectInputName: Types.toVariableName(`${PascalCase}SelectInput`),
|
|
338
|
-
selectFieldName: Types.toVariableName(`${PascalCase}SelectField`),
|
|
339
|
-
menuSelectInputName: Types.toVariableName(`${PascalCase}MenuSelectInput`),
|
|
340
|
-
menuSelectFieldName: Types.toVariableName(`${PascalCase}MenuSelectField`),
|
|
341
|
-
searchInputName: Types.toVariableName(`${PascalCase}SearchInput`),
|
|
342
|
-
searchFieldName: Types.toVariableName(`${PascalCase}SearchField`),
|
|
343
|
-
tableSelectInputName: Types.toVariableName(`${PascalCase}TableSelectInput`),
|
|
344
|
-
tableSelectFieldName: Types.toVariableName(`${PascalCase}TableSelectField`),
|
|
345
|
-
},
|
|
346
|
-
libraryComponentName: Types.toVariableName(`${PascalCase}Library`),
|
|
347
|
-
cardComponentName: Types.toVariableName(`${PascalCase}Card`),
|
|
348
|
-
},
|
|
349
|
-
},
|
|
350
|
-
trpc: {
|
|
351
|
-
routerFilePath: Types.toPath(`${config.paths.trpcRoutesFolderPath}${camelCase}.router`),
|
|
352
|
-
routerName: Types.toVariableName(uncapitalizedPlural),
|
|
353
|
-
getMap: {
|
|
354
|
-
methodName: Types.toVariableName('getMap'),
|
|
355
|
-
reactQueryMethod: Types.toFunctionName(`${uncapitalizedPlural}.getMap`),
|
|
356
|
-
},
|
|
357
|
-
create: {
|
|
358
|
-
methodName: Types.toVariableName('create'),
|
|
359
|
-
reactQueryMethod: Types.toFunctionName(`${uncapitalizedPlural}.create`),
|
|
360
|
-
},
|
|
361
|
-
update: {
|
|
362
|
-
methodName: Types.toVariableName('update'),
|
|
363
|
-
reactQueryMethod: Types.toFunctionName(`${uncapitalizedPlural}.update`),
|
|
364
|
-
},
|
|
365
|
-
delete: {
|
|
366
|
-
methodName: Types.toVariableName('delete'),
|
|
367
|
-
reactQueryMethod: Types.toFunctionName(`${uncapitalizedPlural}.delete`),
|
|
368
|
-
},
|
|
369
|
-
},
|
|
370
|
-
admin: {
|
|
371
|
-
filePath: Types.toPath(`${config.paths.adminPagesFolderPath}/${uncapitalized}`),
|
|
372
|
-
},
|
|
373
|
-
types: {
|
|
374
|
-
importPath: Types.toBackendModulePath(`@backend/types`),
|
|
375
|
-
filePath: Types.toPath(`${config.paths.modelTypeDefinitionsPath}${camelCase}.type`),
|
|
376
|
-
brandedIdType: Types.toTypeName(`${PascalCase}Id`),
|
|
377
|
-
toBrandedIdTypeFnName: Types.toFunctionName(`to${PascalCase}Id`),
|
|
378
|
-
zodDecoderFnNames: {
|
|
379
|
-
id: Types.toFunctionName(`${camelCase}IdDecoder`),
|
|
380
|
-
fromDatabase: Types.toFunctionName(`${camelCase}DatabaseDecoder`),
|
|
381
|
-
},
|
|
382
|
-
dto: {
|
|
383
|
-
create: Types.toTypeName(`${PascalCase}CreateDTO`),
|
|
384
|
-
update: Types.toTypeName(`${PascalCase}UpdateDTO`),
|
|
385
|
-
upsert: Types.toTypeName(`${PascalCase}UpsertDTO`),
|
|
386
|
-
clone: Types.toTypeName(`${PascalCase}CloneDTO`),
|
|
387
|
-
},
|
|
388
|
-
typeName: Types.toTypeName(`${PascalCase}`),
|
|
389
|
-
linkedTypeName: Types.toTypeName(`${PascalCase}Linked`),
|
|
390
|
-
typeDefFileName: Types.toFileName(`${camelCase}.type`),
|
|
391
|
-
sourceType: Types.toTypeName(`${PascalCase}`),
|
|
392
|
-
},
|
|
393
|
-
};
|
|
394
|
-
}
|
|
395
|
-
exports.getModelMetadata = getModelMetadata;
|
|
396
|
-
/**
|
|
397
|
-
* A collection of hardcoded values shared across multiple generators related to the given field in the model.
|
|
398
|
-
*/
|
|
399
|
-
function getFieldMetadata({ field }) {
|
|
400
|
-
const PascalCase = (0, string_1.toPascalCase)(field.name);
|
|
401
|
-
return {
|
|
402
|
-
tsFieldName: Types.toVariableName((0, string_1.toCamelCase)(field.name)),
|
|
403
|
-
getByForeignKeyMethodFnName: Types.toFunctionName(`getItemsFor${PascalCase}`),
|
|
404
|
-
getByForeignKeyIdsMethodFnName: Types.toFunctionName(`getIdsFor${PascalCase}`),
|
|
405
|
-
excelColumnName: field.attributes.label,
|
|
406
|
-
};
|
|
407
|
-
}
|
|
408
|
-
exports.getFieldMetadata = getFieldMetadata;
|
|
409
|
-
/**
|
|
410
|
-
* Returns string values that may be used across multiple generators related to the given enum.
|
|
411
|
-
*/
|
|
412
|
-
function getEnumMetadata({ enumerator: { name, schemaConfig: config }, }) {
|
|
413
|
-
return {
|
|
414
|
-
react: {
|
|
415
|
-
folderName: Types.toFolderName((0, string_1.toPascalCase)(name)),
|
|
416
|
-
folderPath: Types.toPath(`${config.paths.reactFolderPath}/enums/${(0, string_1.toPascalCase)(name)}`),
|
|
417
|
-
importPath: Types.toBackendModulePath(`@backend/react/enums/${(0, string_1.toPascalCase)(name)}`),
|
|
418
|
-
selectInputName: Types.toVariableName(`${(0, string_1.toPascalCase)(name)}SelectInput`),
|
|
419
|
-
selectFieldName: Types.toVariableName(`${(0, string_1.toPascalCase)(name)}SelectField`),
|
|
420
|
-
switcherInputName: Types.toVariableName(`${(0, string_1.toPascalCase)(name)}SwitcherInput`),
|
|
421
|
-
switcherFieldName: Types.toVariableName(`${(0, string_1.toPascalCase)(name)}SwitcherField`),
|
|
422
|
-
menuInputName: Types.toVariableName(`${(0, string_1.toPascalCase)(name)}MenuInput`),
|
|
423
|
-
menuFieldName: Types.toVariableName(`${(0, string_1.toPascalCase)(name)}MenuField`),
|
|
424
|
-
},
|
|
425
|
-
types: {
|
|
426
|
-
membersList: Types.toVariableName(`${(0, string_1.toCamelCase)(name)}Members`),
|
|
427
|
-
membersMap: Types.toVariableName(`${(0, string_1.toCamelCase)(name)}`),
|
|
428
|
-
filePath: Types.toPath(`${config.paths.modelTypeDefinitionsPath}${(0, string_1.toCamelCase)(name)}.enum`),
|
|
429
|
-
importPath: Types.toBackendModulePath(`@backend/types`),
|
|
430
|
-
sourceName: name,
|
|
431
|
-
},
|
|
432
|
-
};
|
|
433
|
-
}
|
|
434
|
-
exports.getEnumMetadata = getEnumMetadata;
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { Field, FieldEnum, FieldRelation, FieldScalar } from './schema';
|
|
2
|
-
/**
|
|
3
|
-
* The default field of the model.
|
|
4
|
-
*
|
|
5
|
-
* NOTE: A model can only have one or no default field! We enforce this by schema validation.
|
|
6
|
-
*/
|
|
7
|
-
export declare const getDefaultField: ({ fields }: {
|
|
8
|
-
fields: Field[];
|
|
9
|
-
}) => FieldScalar | undefined;
|
|
10
|
-
/**
|
|
11
|
-
* List of all scalar fields of the model (excluding foreing keys and the id).
|
|
12
|
-
*
|
|
13
|
-
* If you provide an optional `tsTypeName` parameter, only scalar fields of that type are returned.
|
|
14
|
-
*/
|
|
15
|
-
export declare const getScalarFields: ({ fields, tsTypeName }: {
|
|
16
|
-
fields: Field[];
|
|
17
|
-
tsTypeName?: string;
|
|
18
|
-
}) => FieldScalar[];
|
|
19
|
-
/**
|
|
20
|
-
* List of all relation fields of the model.
|
|
21
|
-
*/
|
|
22
|
-
export declare const getRelationFields: ({ fields }: {
|
|
23
|
-
fields: Field[];
|
|
24
|
-
}) => FieldRelation[];
|
|
25
|
-
/**
|
|
26
|
-
* List of all enum fields of the model.
|
|
27
|
-
*/
|
|
28
|
-
export declare const getEnumFields: ({ fields }: {
|
|
29
|
-
fields: Field[];
|
|
30
|
-
}) => FieldEnum[];
|
|
31
|
-
/**
|
|
32
|
-
* Returns a default value for a TypeScript type.
|
|
33
|
-
*/
|
|
34
|
-
export declare const getDefaultValueForType: (type: string) => string;
|
|
35
|
-
/**
|
|
36
|
-
* Returns true if the given field is unique and a string field.
|
|
37
|
-
*/
|
|
38
|
-
export declare const isUniqueStringField: (f: Field) => boolean;
|
|
39
|
-
/**
|
|
40
|
-
* Returns true if the given field has a maxLength attribute.
|
|
41
|
-
*/
|
|
42
|
-
export declare const isMaxLengthStringField: (f: Field) => f is Field & {
|
|
43
|
-
attributes: {
|
|
44
|
-
maxLength: number;
|
|
45
|
-
};
|
|
46
|
-
};
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isMaxLengthStringField = exports.isUniqueStringField = exports.getDefaultValueForType = exports.getEnumFields = exports.getRelationFields = exports.getScalarFields = exports.getDefaultField = void 0;
|
|
4
|
-
/**
|
|
5
|
-
* The default field of the model.
|
|
6
|
-
*
|
|
7
|
-
* NOTE: A model can only have one or no default field! We enforce this by schema validation.
|
|
8
|
-
*/
|
|
9
|
-
const getDefaultField = ({ fields }) => fields.find((f) => f.attributes.isDefaultField);
|
|
10
|
-
exports.getDefaultField = getDefaultField;
|
|
11
|
-
/**
|
|
12
|
-
* List of all scalar fields of the model (excluding foreing keys and the id).
|
|
13
|
-
*
|
|
14
|
-
* If you provide an optional `tsTypeName` parameter, only scalar fields of that type are returned.
|
|
15
|
-
*/
|
|
16
|
-
const getScalarFields = ({ fields, tsTypeName }) => {
|
|
17
|
-
if (tsTypeName) {
|
|
18
|
-
return fields.filter((f) => f.kind === 'scalar' && f.tsTypeName === tsTypeName);
|
|
19
|
-
}
|
|
20
|
-
return fields.filter((f) => f.kind === 'scalar');
|
|
21
|
-
};
|
|
22
|
-
exports.getScalarFields = getScalarFields;
|
|
23
|
-
/**
|
|
24
|
-
* List of all relation fields of the model.
|
|
25
|
-
*/
|
|
26
|
-
const getRelationFields = ({ fields }) => fields.filter((f) => f.kind === 'relation');
|
|
27
|
-
exports.getRelationFields = getRelationFields;
|
|
28
|
-
/**
|
|
29
|
-
* List of all enum fields of the model.
|
|
30
|
-
*/
|
|
31
|
-
const getEnumFields = ({ fields }) => fields.filter((f) => f.kind === 'enum');
|
|
32
|
-
exports.getEnumFields = getEnumFields;
|
|
33
|
-
/**
|
|
34
|
-
* Returns a default value for a TypeScript type.
|
|
35
|
-
*/
|
|
36
|
-
const getDefaultValueForType = (type) => {
|
|
37
|
-
switch (type) {
|
|
38
|
-
case 'number':
|
|
39
|
-
return '0';
|
|
40
|
-
case 'string':
|
|
41
|
-
return "''";
|
|
42
|
-
case 'boolean':
|
|
43
|
-
return 'true';
|
|
44
|
-
case 'Date':
|
|
45
|
-
return 'new Date()';
|
|
46
|
-
default:
|
|
47
|
-
return '{} as any';
|
|
48
|
-
}
|
|
49
|
-
};
|
|
50
|
-
exports.getDefaultValueForType = getDefaultValueForType;
|
|
51
|
-
/**
|
|
52
|
-
* Returns true if the given field is unique and a string field.
|
|
53
|
-
*/
|
|
54
|
-
const isUniqueStringField = (f) => (f.kind === 'id' && f.isUnique && f.unbrandedTypeName === 'string') ||
|
|
55
|
-
(f.kind === 'scalar' && f.isUnique && f.tsTypeName === 'string');
|
|
56
|
-
exports.isUniqueStringField = isUniqueStringField;
|
|
57
|
-
/**
|
|
58
|
-
* Returns true if the given field has a maxLength attribute.
|
|
59
|
-
*/
|
|
60
|
-
const isMaxLengthStringField = (f) => (f.kind === 'id' && !!f.attributes.maxLength && f.unbrandedTypeName === 'string') ||
|
|
61
|
-
(f.kind === 'scalar' && !!f.attributes.maxLength && f.tsTypeName === 'string');
|
|
62
|
-
exports.isMaxLengthStringField = isMaxLengthStringField;
|