@postxl/generator 0.74.2 → 1.0.1
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 +57 -34
- 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
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.generateModelLibraryComponents = void 0;
|
|
4
|
-
const imports_1 = require("../../../lib/imports");
|
|
5
|
-
const test_id_collector_1 = require("../../../lib/test-id-collector");
|
|
6
|
-
/**
|
|
7
|
-
* Generates components that may be used to list all entries of a given data type.
|
|
8
|
-
*
|
|
9
|
-
*/
|
|
10
|
-
function generateModelLibraryComponents({ model, meta }) {
|
|
11
|
-
const { react: { context, components }, } = meta;
|
|
12
|
-
const testIdCollector = test_id_collector_1.TestIdCollector.from(meta.seed.constantName + '-card');
|
|
13
|
-
const titleProp = model.nameField.isRequired
|
|
14
|
-
? `title={item.${model.nameField.name}}`
|
|
15
|
-
: `title={item.${model.nameField.name} ?? item.${model.idField.name}}`;
|
|
16
|
-
const imports = imports_1.ImportsGenerator.from(meta.react.folderPath)
|
|
17
|
-
.addTypeImport({
|
|
18
|
-
items: [model.typeName],
|
|
19
|
-
from: meta.types.importPath,
|
|
20
|
-
})
|
|
21
|
-
.addImport({
|
|
22
|
-
items: [context.hookFnName, components.modals.editComponentName, components.modals.deleteComponentName],
|
|
23
|
-
from: meta.react.folderPath,
|
|
24
|
-
});
|
|
25
|
-
return /* ts */ `
|
|
26
|
-
import React, { useState } from 'react'
|
|
27
|
-
|
|
28
|
-
import { Card } from '@components/atoms/Card'
|
|
29
|
-
import { CardList } from '@components/atoms/CardList'
|
|
30
|
-
|
|
31
|
-
${imports.generate()}
|
|
32
|
-
|
|
33
|
-
/**
|
|
34
|
-
* Show all ${model.name} entries.
|
|
35
|
-
*/
|
|
36
|
-
export const ${components.libraryComponentName} = () => {
|
|
37
|
-
const { ready, list } = ${context.hookFnName}()
|
|
38
|
-
|
|
39
|
-
return (
|
|
40
|
-
<CardList loading={!ready}>
|
|
41
|
-
{list.map(item => <${components.cardComponentName} key={item.id} item={item} />)}
|
|
42
|
-
</CardList>
|
|
43
|
-
)
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
/**
|
|
47
|
-
* Show a single ${model.name} entry.
|
|
48
|
-
*/
|
|
49
|
-
export const ${components.cardComponentName} = React.forwardRef<HTMLLIElement, { item: ${model.typeName} }>(
|
|
50
|
-
({ item }, forwardedRef) => {
|
|
51
|
-
const [isEditModalOpen, setIsEditModalOpen] = useState(false)
|
|
52
|
-
const [isDeleteModalOpen, setIsDeleteModalOpen] = useState(false)
|
|
53
|
-
|
|
54
|
-
return (
|
|
55
|
-
<>
|
|
56
|
-
<Card
|
|
57
|
-
ref={forwardedRef}
|
|
58
|
-
${titleProp}
|
|
59
|
-
actions={[
|
|
60
|
-
{
|
|
61
|
-
label: 'Edit',
|
|
62
|
-
icon: 'pencil-on-paper',
|
|
63
|
-
onClick: () => setIsEditModalOpen(true),
|
|
64
|
-
__e2e_action_test_id__: "${testIdCollector.idFor('edit', { typePrefix: 'actions' })}",
|
|
65
|
-
},
|
|
66
|
-
{
|
|
67
|
-
label: 'Delete',
|
|
68
|
-
icon: 'trash',
|
|
69
|
-
onClick: () => setIsDeleteModalOpen(true),
|
|
70
|
-
__e2e_action_test_id__: "${testIdCollector.idFor('delete', { typePrefix: 'actions' })}",
|
|
71
|
-
},
|
|
72
|
-
]}
|
|
73
|
-
/>
|
|
74
|
-
|
|
75
|
-
<${components.modals.editComponentName}
|
|
76
|
-
data={item}
|
|
77
|
-
show={isEditModalOpen}
|
|
78
|
-
onHide={() => setIsEditModalOpen(false)}
|
|
79
|
-
/>
|
|
80
|
-
|
|
81
|
-
<${components.modals.deleteComponentName}
|
|
82
|
-
id={item.id}
|
|
83
|
-
show={isDeleteModalOpen}
|
|
84
|
-
onHide={() => setIsDeleteModalOpen(false)}
|
|
85
|
-
/>
|
|
86
|
-
</>
|
|
87
|
-
)
|
|
88
|
-
}
|
|
89
|
-
)
|
|
90
|
-
|
|
91
|
-
${components.cardComponentName}.displayName = '${components.cardComponentName}'
|
|
92
|
-
`;
|
|
93
|
-
}
|
|
94
|
-
exports.generateModelLibraryComponents = generateModelLibraryComponents;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { ModelMetaData } from '../../../lib/meta';
|
|
2
|
-
import { Model } from '../../../lib/schema/schema';
|
|
3
|
-
/**
|
|
4
|
-
* Utility generator that generates lookup components for a given model.
|
|
5
|
-
*/
|
|
6
|
-
export declare function generateModelLookupComponents({ model, meta }: {
|
|
7
|
-
model: Model;
|
|
8
|
-
meta: ModelMetaData;
|
|
9
|
-
}): string;
|
|
@@ -1,175 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.generateModelLookupComponents = void 0;
|
|
4
|
-
const imports_1 = require("../../../lib/imports");
|
|
5
|
-
const test_id_collector_1 = require("../../../lib/test-id-collector");
|
|
6
|
-
/**
|
|
7
|
-
* Generates a test id that that can be used to identify a component in E2E tests.
|
|
8
|
-
*/
|
|
9
|
-
function testId(meta, typePrefix, options) {
|
|
10
|
-
var _a;
|
|
11
|
-
const testIdCollector = test_id_collector_1.TestIdCollector.from(meta.seed.constantName + '-formComponents');
|
|
12
|
-
return testIdCollector.idFor((_a = options === null || options === void 0 ? void 0 : options.element) !== null && _a !== void 0 ? _a : '', { typePrefix });
|
|
13
|
-
}
|
|
14
|
-
/**
|
|
15
|
-
* Utility generator that generates lookup components for a given model.
|
|
16
|
-
*/
|
|
17
|
-
function generateModelLookupComponents({ model, meta }) {
|
|
18
|
-
const { react: { context, components }, } = meta;
|
|
19
|
-
const imports = imports_1.ImportsGenerator.from(meta.react.folderPath)
|
|
20
|
-
.addImport({
|
|
21
|
-
items: [context.hookFnName],
|
|
22
|
-
from: meta.react.folderPath,
|
|
23
|
-
})
|
|
24
|
-
.addTypeImport({
|
|
25
|
-
items: [model.typeName],
|
|
26
|
-
from: meta.types.importPath,
|
|
27
|
-
});
|
|
28
|
-
const typeName = model.typeName;
|
|
29
|
-
const tsOmittedFields = `'label' | 'options' | 'loading'`;
|
|
30
|
-
const labelProp = model.nameField.isRequired
|
|
31
|
-
? `label={(l) => l.${model.nameField.name}}`
|
|
32
|
-
: `label={(l) => l.${model.nameField.name} ?? l.${model.idField.name}}`;
|
|
33
|
-
let description = '';
|
|
34
|
-
if (model.description) {
|
|
35
|
-
description = `
|
|
36
|
-
/**
|
|
37
|
-
* ${model.description}
|
|
38
|
-
*/`;
|
|
39
|
-
}
|
|
40
|
-
return /* ts */ `
|
|
41
|
-
import React from 'react'
|
|
42
|
-
|
|
43
|
-
import { MenuSelectInput, MenuSelectField } from '@components/atoms/MenuSelect'
|
|
44
|
-
import { SelectInput, SelectField } from '@components/atoms/SelectInput'
|
|
45
|
-
import { SearchInput, SearchField } from '@components/atoms/SearchInput'
|
|
46
|
-
import { TableSelectInput, TableSelectField } from '@components/atoms/TableSelectInput'
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
import { UnionOmit } from '@lib/types'
|
|
50
|
-
|
|
51
|
-
${imports.generate()}
|
|
52
|
-
|
|
53
|
-
// Select
|
|
54
|
-
|
|
55
|
-
${description}
|
|
56
|
-
export const ${components.forms.selectInputName} = ({
|
|
57
|
-
...delegated
|
|
58
|
-
}: UnionOmit<React.ComponentPropsWithoutRef<typeof SelectInput<${typeName}>>, ${tsOmittedFields}>) => {
|
|
59
|
-
const { list, ready } = ${context.hookFnName}()
|
|
60
|
-
return <SelectInput<${typeName}>
|
|
61
|
-
options={list}
|
|
62
|
-
${labelProp}
|
|
63
|
-
loading={!ready}
|
|
64
|
-
__e2e_field_test_id__="${testId(meta, 'selectInput')}"
|
|
65
|
-
{...delegated}
|
|
66
|
-
/>
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
${description}
|
|
70
|
-
export const ${components.forms.selectFieldName} = ({
|
|
71
|
-
...delegated
|
|
72
|
-
}: Omit<React.ComponentPropsWithoutRef<typeof SelectField<${typeName}>>, ${tsOmittedFields}>) => {
|
|
73
|
-
const { list, ready } = ${context.hookFnName}()
|
|
74
|
-
return <SelectField<${typeName}>
|
|
75
|
-
options={list}
|
|
76
|
-
${labelProp}
|
|
77
|
-
loading={!ready}
|
|
78
|
-
__e2e_field_test_id__="${testId(meta, 'selectField')}"
|
|
79
|
-
{...delegated}
|
|
80
|
-
/>
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
// Menu Select
|
|
84
|
-
|
|
85
|
-
${description}
|
|
86
|
-
export const ${components.forms.menuSelectInputName} = ({
|
|
87
|
-
...delegated
|
|
88
|
-
}: UnionOmit<React.ComponentPropsWithoutRef<typeof MenuSelectInput<${typeName}>>, ${tsOmittedFields}>) => {
|
|
89
|
-
const { list, ready } = ${context.hookFnName}()
|
|
90
|
-
return <MenuSelectInput<${typeName}>
|
|
91
|
-
options={list}
|
|
92
|
-
${labelProp}
|
|
93
|
-
loading={!ready}
|
|
94
|
-
__e2e_options_test_id__="${testId(meta, 'menuSelectInput')}"
|
|
95
|
-
{...delegated}
|
|
96
|
-
/>
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
${description}
|
|
100
|
-
export const ${components.forms.menuSelectFieldName} = ({
|
|
101
|
-
...delegated
|
|
102
|
-
}: UnionOmit<React.ComponentPropsWithoutRef<typeof MenuSelectField<${typeName}>>, ${tsOmittedFields}>) => {
|
|
103
|
-
const { list, ready } = ${context.hookFnName}()
|
|
104
|
-
return <MenuSelectField<${typeName}>
|
|
105
|
-
options={list}
|
|
106
|
-
${labelProp}
|
|
107
|
-
loading={!ready}
|
|
108
|
-
__e2e_options_test_id__="${testId(meta, 'menuSelectField')}"
|
|
109
|
-
{...delegated}
|
|
110
|
-
/>
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
// Search
|
|
114
|
-
|
|
115
|
-
${description}
|
|
116
|
-
export const ${components.forms.searchInputName} = ({
|
|
117
|
-
...delegated
|
|
118
|
-
}: UnionOmit<React.ComponentPropsWithoutRef<typeof SearchInput<${typeName}>>, ${tsOmittedFields}>) => {
|
|
119
|
-
const { list, ready } = ${context.hookFnName}()
|
|
120
|
-
return <SearchInput<${typeName}>
|
|
121
|
-
options={list}
|
|
122
|
-
${labelProp}
|
|
123
|
-
loading={!ready}
|
|
124
|
-
__e2e_combobox_test_id__="${testId(meta, 'searchInput', { element: 'field' })}"
|
|
125
|
-
__e2e_options_test_id__="${testId(meta, 'searchInput', { element: 'options' })}"
|
|
126
|
-
{...delegated}
|
|
127
|
-
/>
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
${description}
|
|
131
|
-
export const ${components.forms.searchFieldName} = ({
|
|
132
|
-
...delegated
|
|
133
|
-
}: Omit<React.ComponentPropsWithoutRef<typeof SearchField<${typeName}>>, ${tsOmittedFields}>) => {
|
|
134
|
-
const { list, ready } = ${context.hookFnName}()
|
|
135
|
-
return <SearchField<${typeName}>
|
|
136
|
-
options={list}
|
|
137
|
-
${labelProp}
|
|
138
|
-
loading={!ready}
|
|
139
|
-
__e2e_combobox_test_id__="${testId(meta, 'searchField', { element: 'field' })}"
|
|
140
|
-
__e2e_options_test_id__="${testId(meta, 'searchField', { element: 'options' })}"
|
|
141
|
-
{...delegated}
|
|
142
|
-
/>
|
|
143
|
-
}
|
|
144
|
-
|
|
145
|
-
// Table
|
|
146
|
-
${description}
|
|
147
|
-
export const ${components.forms.tableSelectInputName} = ({
|
|
148
|
-
...delegated
|
|
149
|
-
}: UnionOmit<React.ComponentPropsWithoutRef<typeof TableSelectInput<${typeName}>>, ${tsOmittedFields}>) => {
|
|
150
|
-
const { list, ready } = ${context.hookFnName}()
|
|
151
|
-
return <TableSelectInput<${typeName}>
|
|
152
|
-
options={list}
|
|
153
|
-
${labelProp}
|
|
154
|
-
loading={!ready}
|
|
155
|
-
__e2e_input_field_test_id__="${testId(meta, 'tableSelectInput')}"
|
|
156
|
-
{...delegated}
|
|
157
|
-
/>
|
|
158
|
-
}
|
|
159
|
-
|
|
160
|
-
${description}
|
|
161
|
-
export const ${components.forms.tableSelectFieldName} = ({
|
|
162
|
-
...delegated
|
|
163
|
-
}: UnionOmit<React.ComponentPropsWithoutRef<typeof TableSelectField<${typeName}>>, ${tsOmittedFields}>) => {
|
|
164
|
-
const { list, ready } = ${context.hookFnName}()
|
|
165
|
-
return <TableSelectField<${typeName}>
|
|
166
|
-
options={list}
|
|
167
|
-
${labelProp}
|
|
168
|
-
loading={!ready}
|
|
169
|
-
__e2e_input_field_test_id__="${testId(meta, 'tableSelectField')}"
|
|
170
|
-
{...delegated}
|
|
171
|
-
/>
|
|
172
|
-
}
|
|
173
|
-
`;
|
|
174
|
-
}
|
|
175
|
-
exports.generateModelLookupComponents = generateModelLookupComponents;
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { ModelMetaData } from '../../../lib/meta';
|
|
2
|
-
import { Model } from '../../../lib/schema/schema';
|
|
3
|
-
/**
|
|
4
|
-
* Utility generator that creates a create modal component for a given model.
|
|
5
|
-
*/
|
|
6
|
-
export declare function generateModelCreateModalComponent({ model, meta }: {
|
|
7
|
-
model: Model;
|
|
8
|
-
meta: ModelMetaData;
|
|
9
|
-
}): string;
|
|
10
|
-
/**
|
|
11
|
-
* Returns a React component that lets you edit a model instance.
|
|
12
|
-
*/
|
|
13
|
-
export declare function generateEditModalModelComponent({ model, meta }: {
|
|
14
|
-
model: Model;
|
|
15
|
-
meta: ModelMetaData;
|
|
16
|
-
}): string;
|
|
17
|
-
/**
|
|
18
|
-
* Generates a modal component that lets you delete a model instance.
|
|
19
|
-
*/
|
|
20
|
-
export declare function generateDeleteModalModelComponent({ model, meta }: {
|
|
21
|
-
model: Model;
|
|
22
|
-
meta: ModelMetaData;
|
|
23
|
-
}): string;
|