sonamu 0.5.7 → 0.7.0
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/.swcrc.project-default +18 -0
- package/bin/cli.js +24 -0
- package/dist/ai/agents/agent.d.ts +11 -0
- package/dist/ai/agents/agent.d.ts.map +1 -0
- package/dist/ai/agents/agent.js +65 -0
- package/dist/ai/agents/index.d.ts +3 -0
- package/dist/ai/agents/index.d.ts.map +1 -0
- package/dist/ai/agents/index.js +4 -0
- package/dist/ai/agents/types.d.ts +43 -0
- package/dist/ai/agents/types.d.ts.map +1 -0
- package/dist/ai/agents/types.js +3 -0
- package/dist/ai/index.d.ts +2 -0
- package/dist/ai/index.d.ts.map +1 -0
- package/dist/ai/index.js +3 -0
- package/dist/ai/providers/rtzr/api.d.ts +22 -0
- package/dist/ai/providers/rtzr/api.d.ts.map +1 -0
- package/dist/ai/providers/rtzr/api.js +28 -0
- package/dist/ai/providers/rtzr/error.d.ts +18 -0
- package/dist/ai/providers/rtzr/error.d.ts.map +1 -0
- package/dist/ai/providers/rtzr/error.js +29 -0
- package/dist/ai/providers/rtzr/index.d.ts +5 -0
- package/dist/ai/providers/rtzr/index.d.ts.map +1 -0
- package/dist/ai/providers/rtzr/index.js +6 -0
- package/dist/ai/providers/rtzr/model.d.ts +52 -0
- package/dist/ai/providers/rtzr/model.d.ts.map +1 -0
- package/dist/ai/providers/rtzr/model.js +137 -0
- package/dist/ai/providers/rtzr/options.d.ts +7 -0
- package/dist/ai/providers/rtzr/options.d.ts.map +1 -0
- package/dist/ai/providers/rtzr/options.js +47 -0
- package/dist/ai/providers/rtzr/provider.d.ts +18 -0
- package/dist/ai/providers/rtzr/provider.d.ts.map +1 -0
- package/dist/ai/providers/rtzr/provider.js +54 -0
- package/dist/ai/providers/rtzr/utils.d.ts +19 -0
- package/dist/ai/providers/rtzr/utils.d.ts.map +1 -0
- package/dist/ai/providers/rtzr/utils.js +88 -0
- package/dist/api/base-frame.d.ts +2 -2
- package/dist/api/base-frame.d.ts.map +1 -1
- package/dist/api/base-frame.js +13 -2
- package/dist/api/caster.d.ts.map +1 -1
- package/dist/api/caster.js +71 -2
- package/dist/api/code-converters.d.ts +58 -14
- package/dist/api/code-converters.d.ts.map +1 -1
- package/dist/api/code-converters.js +258 -2
- package/dist/api/config.d.ts +90 -0
- package/dist/api/config.d.ts.map +1 -0
- package/dist/api/config.js +25 -0
- package/dist/api/context.d.ts +4 -2
- package/dist/api/context.d.ts.map +1 -1
- package/dist/api/context.js +3 -2
- package/dist/api/decorators.d.ts +20 -6
- package/dist/api/decorators.d.ts.map +1 -1
- package/dist/api/decorators.js +235 -2
- package/dist/api/index.d.ts +2 -2
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +9 -2
- package/dist/api/sonamu.d.ts +10 -24
- package/dist/api/sonamu.d.ts.map +1 -1
- package/dist/api/sonamu.js +514 -2
- package/dist/api/validator.d.ts +6 -0
- package/dist/api/validator.d.ts.map +1 -0
- package/dist/api/validator.js +81 -0
- package/dist/bin/build-config.d.ts +6 -1
- package/dist/bin/build-config.d.ts.map +1 -1
- package/dist/bin/build-config.js +15 -2
- package/dist/bin/cli.js +519 -2
- package/dist/bin/hot-hook-register.d.ts +11 -0
- package/dist/bin/hot-hook-register.d.ts.map +1 -0
- package/dist/bin/hot-hook-register.js +21 -0
- package/dist/bin/loader-register.d.ts +2 -0
- package/dist/bin/loader-register.d.ts.map +1 -0
- package/dist/bin/loader-register.js +34 -0
- package/dist/database/_batch_update.d.ts +5 -3
- package/dist/database/_batch_update.d.ts.map +1 -1
- package/dist/database/_batch_update.js +95 -2
- package/dist/database/base-model.d.ts +96 -10
- package/dist/database/base-model.d.ts.map +1 -1
- package/dist/database/base-model.js +390 -2
- package/dist/database/base-model.types.d.ts +93 -0
- package/dist/database/base-model.types.d.ts.map +1 -0
- package/dist/database/base-model.types.js +10 -0
- package/dist/database/code-generator.d.ts +1 -1
- package/dist/database/code-generator.d.ts.map +1 -1
- package/dist/database/code-generator.js +54 -2
- package/dist/database/db.d.ts +6 -21
- package/dist/database/db.d.ts.map +1 -1
- package/dist/database/db.js +129 -2
- package/dist/database/puri-subset.test-d.js +81 -0
- package/dist/database/puri-subset.types.d.ts +123 -0
- package/dist/database/puri-subset.types.d.ts.map +1 -0
- package/dist/database/puri-subset.types.js +16 -0
- package/dist/database/puri-wrapper.d.ts +13 -11
- package/dist/database/puri-wrapper.d.ts.map +1 -1
- package/dist/database/puri-wrapper.js +109 -2
- package/dist/database/puri.d.ts +41 -23
- package/dist/database/puri.d.ts.map +1 -1
- package/dist/database/puri.js +601 -2
- package/dist/database/puri.types.d.ts +25 -6
- package/dist/database/puri.types.d.ts.map +1 -1
- package/dist/database/puri.types.js +6 -2
- package/dist/database/transaction-context.d.ts +1 -1
- package/dist/database/transaction-context.d.ts.map +1 -1
- package/dist/database/transaction-context.js +14 -2
- package/dist/database/upsert-builder.d.ts +9 -3
- package/dist/database/upsert-builder.d.ts.map +1 -1
- package/dist/database/upsert-builder.js +365 -2
- package/dist/entity/entity-manager.d.ts +167 -2
- package/dist/entity/entity-manager.d.ts.map +1 -1
- package/dist/entity/entity-manager.js +130 -2
- package/dist/entity/entity.d.ts +5 -3
- package/dist/entity/entity.d.ts.map +1 -1
- package/dist/entity/entity.js +750 -2
- package/dist/exceptions/error-handler.d.ts +1 -1
- package/dist/exceptions/error-handler.d.ts.map +1 -1
- package/dist/exceptions/error-handler.js +29 -2
- package/dist/exceptions/so-exceptions.d.ts +1 -1
- package/dist/exceptions/so-exceptions.d.ts.map +1 -1
- package/dist/exceptions/so-exceptions.js +85 -2
- package/dist/file-storage/driver.d.ts +1 -1
- package/dist/file-storage/driver.d.ts.map +1 -1
- package/dist/file-storage/driver.js +79 -2
- package/dist/file-storage/file-storage.js +75 -2
- package/dist/index.d.ts +18 -9
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +34 -2
- package/dist/migration/code-generation.d.ts +1 -1
- package/dist/migration/code-generation.d.ts.map +1 -1
- package/dist/migration/code-generation.js +614 -2
- package/dist/migration/migration-set.d.ts +2 -10
- package/dist/migration/migration-set.d.ts.map +1 -1
- package/dist/migration/migration-set.js +213 -2
- package/dist/migration/migrator.d.ts +24 -82
- package/dist/migration/migrator.d.ts.map +1 -1
- package/dist/migration/migrator.js +330 -2
- package/dist/migration/postgresql-schema-reader.d.ts +51 -0
- package/dist/migration/postgresql-schema-reader.d.ts.map +1 -0
- package/dist/migration/postgresql-schema-reader.js +245 -0
- package/dist/migration/types.d.ts +6 -38
- package/dist/migration/types.d.ts.map +1 -1
- package/dist/migration/types.js +3 -2
- package/dist/naite/messaging-types.d.ts +43 -0
- package/dist/naite/messaging-types.d.ts.map +1 -0
- package/dist/naite/messaging-types.js +7 -0
- package/dist/naite/naite-reporter.d.ts +41 -0
- package/dist/naite/naite-reporter.d.ts.map +1 -0
- package/dist/naite/naite-reporter.js +102 -0
- package/dist/naite/naite.d.ts +95 -0
- package/dist/naite/naite.d.ts.map +1 -0
- package/dist/naite/naite.js +316 -0
- package/dist/stream/index.js +3 -2
- package/dist/stream/sse.d.ts +2 -2
- package/dist/stream/sse.d.ts.map +1 -1
- package/dist/stream/sse.js +38 -2
- package/dist/syncer/api-parser.d.ts +10 -0
- package/dist/syncer/api-parser.d.ts.map +1 -0
- package/dist/syncer/api-parser.js +240 -0
- package/dist/syncer/checksum.d.ts +21 -0
- package/dist/syncer/checksum.d.ts.map +1 -0
- package/dist/syncer/checksum.js +98 -0
- package/dist/syncer/code-generator.d.ts +20 -0
- package/dist/syncer/code-generator.d.ts.map +1 -0
- package/dist/syncer/code-generator.js +161 -0
- package/dist/syncer/entity-operations.d.ts +17 -0
- package/dist/syncer/entity-operations.d.ts.map +1 -0
- package/dist/syncer/entity-operations.js +59 -0
- package/dist/syncer/file-patterns.d.ts +29 -0
- package/dist/syncer/file-patterns.d.ts.map +1 -0
- package/dist/syncer/file-patterns.js +38 -0
- package/dist/syncer/index.d.ts +6 -0
- package/dist/syncer/index.d.ts.map +1 -1
- package/dist/syncer/index.js +9 -2
- package/dist/syncer/module-loader.d.ts +35 -0
- package/dist/syncer/module-loader.d.ts.map +1 -0
- package/dist/syncer/module-loader.js +87 -0
- package/dist/syncer/syncer.d.ts +98 -106
- package/dist/syncer/syncer.d.ts.map +1 -1
- package/dist/syncer/syncer.js +422 -2
- package/dist/template/entity-converter.d.ts +14 -0
- package/dist/template/entity-converter.d.ts.map +1 -0
- package/dist/template/entity-converter.js +108 -0
- package/dist/template/helpers.d.ts +23 -0
- package/dist/template/helpers.d.ts.map +1 -0
- package/dist/template/helpers.js +64 -0
- package/dist/{templates → template/implementations}/entity.template.d.ts +3 -3
- package/dist/template/implementations/entity.template.d.ts.map +1 -0
- package/dist/template/implementations/entity.template.js +86 -0
- package/dist/{templates → template/implementations}/generated.template.d.ts +3 -4
- package/dist/template/implementations/generated.template.d.ts.map +1 -0
- package/dist/template/implementations/generated.template.js +249 -0
- package/dist/{templates → template/implementations}/generated_http.template.d.ts +3 -4
- package/dist/template/implementations/generated_http.template.d.ts.map +1 -0
- package/dist/template/implementations/generated_http.template.js +131 -0
- package/dist/{templates → template/implementations}/generated_sso.template.d.ts +4 -5
- package/dist/template/implementations/generated_sso.template.d.ts.map +1 -0
- package/dist/template/implementations/generated_sso.template.js +134 -0
- package/dist/{templates → template/implementations}/init_types.template.d.ts +3 -3
- package/dist/template/implementations/init_types.template.d.ts.map +1 -0
- package/dist/template/implementations/init_types.template.js +38 -0
- package/dist/template/implementations/model.template.d.ts +17 -0
- package/dist/template/implementations/model.template.d.ts.map +1 -0
- package/dist/template/implementations/model.template.js +181 -0
- package/dist/{templates → template/implementations}/model_test.template.d.ts +3 -3
- package/dist/template/implementations/model_test.template.d.ts.map +1 -0
- package/dist/template/implementations/model_test.template.js +35 -0
- package/dist/{templates → template/implementations}/service.template.d.ts +6 -6
- package/dist/template/implementations/service.template.d.ts.map +1 -0
- package/dist/template/implementations/service.template.js +201 -0
- package/dist/{templates → template/implementations}/view_enums_buttonset.template.d.ts +3 -3
- package/dist/template/implementations/view_enums_buttonset.template.d.ts.map +1 -0
- package/dist/template/implementations/view_enums_buttonset.template.js +31 -0
- package/dist/{templates → template/implementations}/view_enums_dropdown.template.d.ts +3 -4
- package/dist/template/implementations/view_enums_dropdown.template.d.ts.map +1 -0
- package/dist/template/implementations/view_enums_dropdown.template.js +50 -0
- package/dist/{templates → template/implementations}/view_enums_select.template.d.ts +3 -3
- package/dist/template/implementations/view_enums_select.template.d.ts.map +1 -0
- package/dist/template/implementations/view_enums_select.template.js +55 -0
- package/dist/{templates → template/implementations}/view_form.template.d.ts +5 -5
- package/dist/template/implementations/view_form.template.d.ts.map +1 -0
- package/dist/template/implementations/view_form.template.js +337 -0
- package/dist/{templates → template/implementations}/view_id_all_select.template.d.ts +3 -3
- package/dist/template/implementations/view_id_all_select.template.d.ts.map +1 -0
- package/dist/template/implementations/view_id_all_select.template.js +31 -0
- package/dist/{templates → template/implementations}/view_id_async_select.template.d.ts +3 -3
- package/dist/template/implementations/view_id_async_select.template.d.ts.map +1 -0
- package/dist/template/implementations/view_id_async_select.template.js +105 -0
- package/dist/{templates → template/implementations}/view_list.template.d.ts +5 -13
- package/dist/template/implementations/view_list.template.d.ts.map +1 -0
- package/dist/template/implementations/view_list.template.js +475 -0
- package/dist/template/implementations/view_list_columns.template.d.ts +17 -0
- package/dist/template/implementations/view_list_columns.template.d.ts.map +1 -0
- package/dist/template/implementations/view_list_columns.template.js +49 -0
- package/dist/{templates → template/implementations}/view_search_input.template.d.ts +3 -3
- package/dist/template/implementations/view_search_input.template.d.ts.map +1 -0
- package/dist/template/implementations/view_search_input.template.js +64 -0
- package/dist/template/index.d.ts +7 -0
- package/dist/template/index.d.ts.map +1 -0
- package/dist/template/index.js +8 -0
- package/dist/template/template-manager.d.ts +56 -0
- package/dist/template/template-manager.d.ts.map +1 -0
- package/dist/template/template-manager.js +125 -0
- package/dist/template/template-types.d.ts +16 -0
- package/dist/template/template-types.d.ts.map +1 -0
- package/dist/template/template-types.js +7 -0
- package/dist/template/template.d.ts +49 -0
- package/dist/template/template.d.ts.map +1 -0
- package/dist/template/template.js +60 -0
- package/dist/template/zod-converter.d.ts +51 -0
- package/dist/template/zod-converter.d.ts.map +1 -0
- package/dist/template/zod-converter.js +449 -0
- package/dist/testing/_relation-graph.d.ts +1 -1
- package/dist/testing/_relation-graph.d.ts.map +1 -1
- package/dist/testing/_relation-graph.js +89 -2
- package/dist/testing/fixture-manager.d.ts +42 -11
- package/dist/testing/fixture-manager.d.ts.map +1 -1
- package/dist/testing/fixture-manager.js +623 -2
- package/dist/types/types.d.ts +747 -143
- package/dist/types/types.d.ts.map +1 -1
- package/dist/types/types.js +546 -2
- package/dist/typings/knex.d.js +3 -2
- package/dist/utils/async-utils.d.ts +7 -0
- package/dist/utils/async-utils.d.ts.map +1 -1
- package/dist/utils/async-utils.js +57 -2
- package/dist/utils/console-util.d.ts +2 -0
- package/dist/utils/console-util.d.ts.map +1 -0
- package/dist/utils/console-util.js +6 -0
- package/dist/utils/controller.d.ts +1 -0
- package/dist/utils/controller.d.ts.map +1 -1
- package/dist/utils/controller.js +29 -2
- package/dist/utils/esm-utils.d.ts +39 -0
- package/dist/utils/esm-utils.d.ts.map +1 -0
- package/dist/utils/esm-utils.js +49 -0
- package/dist/utils/formatter.d.ts +3 -0
- package/dist/utils/formatter.d.ts.map +1 -0
- package/dist/utils/formatter.js +110 -0
- package/dist/utils/fs-utils.d.ts +1 -1
- package/dist/utils/fs-utils.d.ts.map +1 -1
- package/dist/utils/fs-utils.js +17 -2
- package/dist/utils/lodash-able.d.ts.map +1 -1
- package/dist/utils/lodash-able.js +6 -2
- package/dist/utils/model.js +22 -2
- package/dist/utils/object-utils.d.ts +44 -0
- package/dist/utils/object-utils.d.ts.map +1 -0
- package/dist/utils/object-utils.js +191 -0
- package/dist/utils/path-utils.d.ts +89 -0
- package/dist/utils/path-utils.d.ts.map +1 -0
- package/dist/utils/path-utils.js +60 -0
- package/dist/utils/process-utils.d.ts +13 -0
- package/dist/utils/process-utils.d.ts.map +1 -0
- package/dist/utils/process-utils.js +36 -0
- package/dist/utils/sql-parser.d.ts +5 -1
- package/dist/utils/sql-parser.d.ts.map +1 -1
- package/dist/utils/sql-parser.js +46 -2
- package/dist/utils/type-utils.d.ts +23 -0
- package/dist/utils/type-utils.d.ts.map +1 -0
- package/dist/utils/type-utils.js +45 -0
- package/dist/utils/utils.d.ts +10 -7
- package/dist/utils/utils.d.ts.map +1 -1
- package/dist/utils/utils.js +72 -2
- package/dist/utils/zod-error.d.ts +1 -1
- package/dist/utils/zod-error.d.ts.map +1 -1
- package/dist/utils/zod-error.js +19 -2
- package/package.json +65 -27
- package/src/ai/agents/agent.ts +87 -0
- package/src/ai/agents/index.ts +2 -0
- package/src/ai/agents/types.ts +47 -0
- package/src/ai/index.ts +1 -0
- package/src/ai/providers/rtzr/api.ts +37 -0
- package/src/ai/providers/rtzr/error.ts +34 -0
- package/src/ai/providers/rtzr/index.ts +4 -0
- package/src/ai/providers/rtzr/model.ts +201 -0
- package/src/ai/providers/rtzr/options.ts +49 -0
- package/src/ai/providers/rtzr/provider.ts +91 -0
- package/src/ai/providers/rtzr/utils.ts +127 -0
- package/src/api/base-frame.ts +4 -2
- package/src/api/caster.ts +17 -23
- package/src/api/code-converters.ts +178 -535
- package/src/api/config.ts +125 -0
- package/src/api/context.ts +7 -17
- package/src/api/decorators.ts +176 -46
- package/src/api/index.ts +2 -2
- package/src/api/sonamu.ts +190 -167
- package/src/api/validator.ts +83 -0
- package/src/bin/build-config.ts +8 -1
- package/src/bin/cli.ts +258 -124
- package/src/bin/hot-hook-register.ts +22 -0
- package/src/bin/loader-register.ts +38 -0
- package/src/database/_batch_update.ts +46 -31
- package/src/database/base-model.ts +390 -182
- package/src/database/base-model.types.ts +155 -0
- package/src/database/code-generator.ts +13 -32
- package/src/database/db.ts +40 -96
- package/src/database/puri-subset.test-d.ts +471 -0
- package/src/database/puri-subset.types.ts +195 -0
- package/src/database/puri-wrapper.ts +58 -67
- package/src/database/puri.ts +229 -148
- package/src/database/puri.types.ts +76 -30
- package/src/database/transaction-context.ts +1 -1
- package/src/database/upsert-builder.ts +262 -132
- package/src/entity/entity-manager.ts +48 -36
- package/src/entity/entity.ts +330 -248
- package/src/exceptions/error-handler.ts +3 -3
- package/src/exceptions/so-exceptions.ts +11 -11
- package/src/file-storage/driver.ts +5 -5
- package/src/file-storage/file-storage.ts +2 -2
- package/src/index.ts +18 -10
- package/src/migration/code-generation.ts +185 -172
- package/src/migration/migration-set.ts +80 -293
- package/src/migration/migrator.ts +199 -571
- package/src/migration/mysql-schema-reader.ts.txt +272 -0
- package/src/migration/postgresql-schema-reader.ts +310 -0
- package/src/migration/types.ts +6 -39
- package/src/naite/messaging-types.ts +51 -0
- package/src/naite/naite-reporter.ts +128 -0
- package/src/naite/naite.ts +415 -0
- package/src/shared/web.shared.ts.txt +20 -24
- package/src/stream/sse.ts +5 -5
- package/src/syncer/api-parser.ts +282 -0
- package/src/syncer/checksum.ts +140 -0
- package/src/syncer/code-generator.ts +198 -0
- package/src/syncer/entity-operations.ts +65 -0
- package/src/syncer/file-patterns.ts +56 -0
- package/src/syncer/index.ts +6 -0
- package/src/syncer/module-loader.ts +128 -0
- package/src/syncer/syncer.ts +389 -1453
- package/src/template/entity-converter.ts +114 -0
- package/src/template/helpers.ts +81 -0
- package/src/{templates → template/implementations}/entity.template.ts +7 -7
- package/src/{templates → template/implementations}/generated.template.ts +101 -101
- package/src/{templates → template/implementations}/generated_http.template.ts +27 -57
- package/src/template/implementations/generated_sso.template.ts +151 -0
- package/src/{templates → template/implementations}/init_types.template.ts +5 -7
- package/src/{templates → template/implementations}/model.template.ts +52 -43
- package/src/{templates → template/implementations}/model_test.template.ts +5 -5
- package/src/{templates → template/implementations}/service.template.ts +66 -82
- package/src/{templates → template/implementations}/view_enums_buttonset.template.ts +3 -3
- package/src/{templates → template/implementations}/view_enums_dropdown.template.ts +4 -20
- package/src/{templates → template/implementations}/view_enums_select.template.ts +4 -4
- package/src/{templates → template/implementations}/view_form.template.ts +40 -83
- package/src/{templates → template/implementations}/view_id_all_select.template.ts +3 -3
- package/src/{templates → template/implementations}/view_id_async_select.template.ts +10 -24
- package/src/{templates → template/implementations}/view_list.template.ts +60 -152
- package/src/{templates → template/implementations}/view_list_columns.template.ts +5 -11
- package/src/{templates → template/implementations}/view_search_input.template.ts +3 -3
- package/src/template/index.ts +6 -0
- package/src/template/template-manager.ts +166 -0
- package/src/template/template-types.ts +16 -0
- package/src/template/template.ts +105 -0
- package/src/template/zod-converter.ts +525 -0
- package/src/testing/_relation-graph.ts +18 -11
- package/src/testing/fixture-manager.ts +472 -359
- package/src/types/types.ts +553 -308
- package/src/typings/knex.d.ts +7 -9
- package/src/utils/async-utils.ts +23 -10
- package/src/utils/console-util.ts +4 -0
- package/src/utils/controller.ts +3 -0
- package/src/utils/esm-utils.ts +59 -0
- package/src/utils/formatter.ts +109 -0
- package/src/utils/fs-utils.ts +1 -1
- package/src/utils/lodash-able.ts +1 -4
- package/src/utils/object-utils.ts +217 -0
- package/src/utils/path-utils.ts +99 -0
- package/src/utils/process-utils.ts +46 -0
- package/src/utils/sql-parser.ts +23 -5
- package/src/utils/type-utils.ts +83 -0
- package/src/utils/utils.ts +66 -43
- package/src/utils/zod-error.ts +3 -4
- package/dist/api/base-frame.js.map +0 -1
- package/dist/api/caster.js.map +0 -1
- package/dist/api/code-converters.js.map +0 -1
- package/dist/api/context.js.map +0 -1
- package/dist/api/decorators.js.map +0 -1
- package/dist/api/index.js.map +0 -1
- package/dist/api/sonamu.js.map +0 -1
- package/dist/bin/build-config.js.map +0 -1
- package/dist/bin/cli-wrapper.d.ts +0 -3
- package/dist/bin/cli-wrapper.d.ts.map +0 -1
- package/dist/bin/cli-wrapper.js +0 -3
- package/dist/bin/cli-wrapper.js.map +0 -1
- package/dist/bin/cli.js.map +0 -1
- package/dist/database/_batch_update.js.map +0 -1
- package/dist/database/base-model.js.map +0 -1
- package/dist/database/code-generator.js.map +0 -1
- package/dist/database/db.js.map +0 -1
- package/dist/database/knex-plugins/knex-on-duplicate-update.d.ts +0 -2
- package/dist/database/knex-plugins/knex-on-duplicate-update.d.ts.map +0 -1
- package/dist/database/knex-plugins/knex-on-duplicate-update.js +0 -2
- package/dist/database/knex-plugins/knex-on-duplicate-update.js.map +0 -1
- package/dist/database/puri-wrapper.js.map +0 -1
- package/dist/database/puri.js.map +0 -1
- package/dist/database/puri.types.js.map +0 -1
- package/dist/database/transaction-context.js.map +0 -1
- package/dist/database/upsert-builder.js.map +0 -1
- package/dist/entity/entity-manager.js.map +0 -1
- package/dist/entity/entity-utils.d.ts +0 -61
- package/dist/entity/entity-utils.d.ts.map +0 -1
- package/dist/entity/entity-utils.js +0 -2
- package/dist/entity/entity-utils.js.map +0 -1
- package/dist/entity/entity.js.map +0 -1
- package/dist/exceptions/error-handler.js.map +0 -1
- package/dist/exceptions/so-exceptions.js.map +0 -1
- package/dist/file-storage/driver.js.map +0 -1
- package/dist/file-storage/file-storage.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/migration/code-generation.js.map +0 -1
- package/dist/migration/migration-set.js.map +0 -1
- package/dist/migration/migrator.js.map +0 -1
- package/dist/migration/types.js.map +0 -1
- package/dist/stream/index.js.map +0 -1
- package/dist/stream/sse.js.map +0 -1
- package/dist/syncer/index.js.map +0 -1
- package/dist/syncer/syncer.js.map +0 -1
- package/dist/templates/base-template.d.ts +0 -13
- package/dist/templates/base-template.d.ts.map +0 -1
- package/dist/templates/base-template.js +0 -2
- package/dist/templates/base-template.js.map +0 -1
- package/dist/templates/entity.template.d.ts.map +0 -1
- package/dist/templates/entity.template.js +0 -2
- package/dist/templates/entity.template.js.map +0 -1
- package/dist/templates/generated.template.d.ts.map +0 -1
- package/dist/templates/generated.template.js +0 -2
- package/dist/templates/generated.template.js.map +0 -1
- package/dist/templates/generated_http.template.d.ts.map +0 -1
- package/dist/templates/generated_http.template.js +0 -2
- package/dist/templates/generated_http.template.js.map +0 -1
- package/dist/templates/generated_sso.template.d.ts.map +0 -1
- package/dist/templates/generated_sso.template.js +0 -2
- package/dist/templates/generated_sso.template.js.map +0 -1
- package/dist/templates/index.d.ts +0 -2
- package/dist/templates/index.d.ts.map +0 -1
- package/dist/templates/index.js +0 -2
- package/dist/templates/index.js.map +0 -1
- package/dist/templates/init_types.template.d.ts.map +0 -1
- package/dist/templates/init_types.template.js +0 -2
- package/dist/templates/init_types.template.js.map +0 -1
- package/dist/templates/model.template.d.ts +0 -17
- package/dist/templates/model.template.d.ts.map +0 -1
- package/dist/templates/model.template.js +0 -2
- package/dist/templates/model.template.js.map +0 -1
- package/dist/templates/model_test.template.d.ts.map +0 -1
- package/dist/templates/model_test.template.js +0 -2
- package/dist/templates/model_test.template.js.map +0 -1
- package/dist/templates/service.template.d.ts.map +0 -1
- package/dist/templates/service.template.js +0 -2
- package/dist/templates/service.template.js.map +0 -1
- package/dist/templates/view_enums_buttonset.template.d.ts.map +0 -1
- package/dist/templates/view_enums_buttonset.template.js +0 -2
- package/dist/templates/view_enums_buttonset.template.js.map +0 -1
- package/dist/templates/view_enums_dropdown.template.d.ts.map +0 -1
- package/dist/templates/view_enums_dropdown.template.js +0 -2
- package/dist/templates/view_enums_dropdown.template.js.map +0 -1
- package/dist/templates/view_enums_select.template.d.ts.map +0 -1
- package/dist/templates/view_enums_select.template.js +0 -2
- package/dist/templates/view_enums_select.template.js.map +0 -1
- package/dist/templates/view_form.template.d.ts.map +0 -1
- package/dist/templates/view_form.template.js +0 -2
- package/dist/templates/view_form.template.js.map +0 -1
- package/dist/templates/view_id_all_select.template.d.ts.map +0 -1
- package/dist/templates/view_id_all_select.template.js +0 -2
- package/dist/templates/view_id_all_select.template.js.map +0 -1
- package/dist/templates/view_id_async_select.template.d.ts.map +0 -1
- package/dist/templates/view_id_async_select.template.js +0 -2
- package/dist/templates/view_id_async_select.template.js.map +0 -1
- package/dist/templates/view_list.template.d.ts.map +0 -1
- package/dist/templates/view_list.template.js +0 -2
- package/dist/templates/view_list.template.js.map +0 -1
- package/dist/templates/view_list_columns.template.d.ts +0 -17
- package/dist/templates/view_list_columns.template.d.ts.map +0 -1
- package/dist/templates/view_list_columns.template.js +0 -2
- package/dist/templates/view_list_columns.template.js.map +0 -1
- package/dist/templates/view_search_input.template.d.ts.map +0 -1
- package/dist/templates/view_search_input.template.js +0 -2
- package/dist/templates/view_search_input.template.js.map +0 -1
- package/dist/testing/_relation-graph.js.map +0 -1
- package/dist/testing/fixture-manager.js.map +0 -1
- package/dist/types/types.js.map +0 -1
- package/dist/typings/knex.d.js.map +0 -1
- package/dist/utils/async-utils.js.map +0 -1
- package/dist/utils/controller.js.map +0 -1
- package/dist/utils/fs-utils.js.map +0 -1
- package/dist/utils/lodash-able.js.map +0 -1
- package/dist/utils/model.js.map +0 -1
- package/dist/utils/sql-parser.js.map +0 -1
- package/dist/utils/utils.js.map +0 -1
- package/dist/utils/zod-error.js.map +0 -1
- package/src/bin/cli-wrapper.ts +0 -75
- package/src/database/knex-plugins/knex-on-duplicate-update.ts +0 -45
- package/src/entity/entity-utils.ts +0 -291
- package/src/templates/base-template.ts +0 -19
- package/src/templates/generated_sso.template.ts +0 -138
- package/src/templates/index.ts +0 -1
|
@@ -0,0 +1,337 @@
|
|
|
1
|
+
import inflection from "inflection";
|
|
2
|
+
import { unique } from "radashi";
|
|
3
|
+
import { z } from "zod";
|
|
4
|
+
import { EntityManager } from "../../entity/entity-manager.js";
|
|
5
|
+
import { getEnumInfoFromColName, getRelationPropFromColName } from "../helpers.js";
|
|
6
|
+
import { Template } from "../template.js";
|
|
7
|
+
import { getZodTypeById, zodTypeToRenderingNode } from "../zod-converter.js";
|
|
8
|
+
export class Template__view_form extends Template {
|
|
9
|
+
constructor(){
|
|
10
|
+
super("view_form");
|
|
11
|
+
}
|
|
12
|
+
getTargetAndPath(names) {
|
|
13
|
+
return {
|
|
14
|
+
target: "web/src/pages/admin",
|
|
15
|
+
path: `${names.fsPlural}/form.tsx`
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
wrapFC(body, label) {
|
|
19
|
+
return [
|
|
20
|
+
`<Form.Field>${label ? `\n <label>${label}</label>` : ""}`,
|
|
21
|
+
body,
|
|
22
|
+
`</Form.Field>`
|
|
23
|
+
].join("\n");
|
|
24
|
+
}
|
|
25
|
+
wrapFG(body, label) {
|
|
26
|
+
return [
|
|
27
|
+
`<Form.Group widths="equal">`,
|
|
28
|
+
this.wrapFC(body, label),
|
|
29
|
+
`</Form.Group>`
|
|
30
|
+
].join("\n");
|
|
31
|
+
}
|
|
32
|
+
renderColumnImport(entityId, col) {
|
|
33
|
+
if (col.renderType === "enums") {
|
|
34
|
+
const { id, targetEntityNames } = getEnumInfoFromColName(entityId, col.name);
|
|
35
|
+
const componentId = `${id}Select`;
|
|
36
|
+
return `import { ${componentId} } from "src/components/${targetEntityNames.fs}/${componentId}";`;
|
|
37
|
+
} else if (col.renderType === "number-fk_id") {
|
|
38
|
+
try {
|
|
39
|
+
const relProp = getRelationPropFromColName(entityId, col.name.replace("_id", ""));
|
|
40
|
+
const targetNames = EntityManager.getNamesFromId(relProp.with);
|
|
41
|
+
const componentId = `${relProp.with}IdAsyncSelect`;
|
|
42
|
+
return `import { ${componentId} } from "src/components/${targetNames.fs}/${componentId}";`;
|
|
43
|
+
} catch {
|
|
44
|
+
return "";
|
|
45
|
+
}
|
|
46
|
+
} else {
|
|
47
|
+
throw new Error(`렌더 불가능한 임포트 ${col.name} ${col.renderType}`);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
renderColumn(entityId, col, names, parent = "") {
|
|
51
|
+
let regExpr = "";
|
|
52
|
+
regExpr = `{...register(\`${parent}${col.name}\`)}`;
|
|
53
|
+
switch(col.renderType){
|
|
54
|
+
case "string-plain":
|
|
55
|
+
if (col.zodType instanceof z.ZodString && (col.zodType.maxLength ?? 0) <= 512) {
|
|
56
|
+
return `<Input placeholder="${col.label}" ${regExpr} />`;
|
|
57
|
+
} else {
|
|
58
|
+
return `<TextArea rows={8} placeholder="${col.label}" ${regExpr} />`;
|
|
59
|
+
}
|
|
60
|
+
case "datetime":
|
|
61
|
+
return `<Input type="datetime-local" ${regExpr} />`;
|
|
62
|
+
case "string-datetime":
|
|
63
|
+
return `<SQLDateTimeInput ${regExpr} />`;
|
|
64
|
+
case "string-date":
|
|
65
|
+
return `<SQLDateInput ${regExpr} />`;
|
|
66
|
+
case "number-id":
|
|
67
|
+
return `<input type="hidden" ${regExpr} />`;
|
|
68
|
+
case "number-plain":
|
|
69
|
+
return `<NumberInput placeholder="${col.label}" ${regExpr} />`;
|
|
70
|
+
case "boolean":
|
|
71
|
+
return `<BooleanToggle ${regExpr} />`;
|
|
72
|
+
case "string-image":
|
|
73
|
+
return `<ImageUploader multiple={false} ${regExpr} />`;
|
|
74
|
+
case "array-images":
|
|
75
|
+
return `<ImageUploader multiple={true} ${regExpr} maxSize={5} />`;
|
|
76
|
+
case "enums":
|
|
77
|
+
try {
|
|
78
|
+
let enumId;
|
|
79
|
+
if (col.name === "orderBy") {
|
|
80
|
+
enumId = `${names.capital}${inflection.camelize(col.name)}Select`;
|
|
81
|
+
} else {
|
|
82
|
+
const { id } = getEnumInfoFromColName(entityId, col.name);
|
|
83
|
+
enumId = `${id}Select`;
|
|
84
|
+
}
|
|
85
|
+
return `<${enumId} ${regExpr} ${col.optional || col.nullable ? "clearable" : ""} textPrefix="" />`;
|
|
86
|
+
} catch {
|
|
87
|
+
return `<>찾을 수 없는 Enum ${col.name}</>`;
|
|
88
|
+
}
|
|
89
|
+
case "number-fk_id":
|
|
90
|
+
try {
|
|
91
|
+
const relProp = getRelationPropFromColName(entityId, col.name.replace("_id", ""));
|
|
92
|
+
const fkId = `${relProp.with}IdAsyncSelect`;
|
|
93
|
+
return `<${fkId} {...register('${col.name}')} ${col.optional || col.nullable ? "clearable" : ""} subset="A" />`;
|
|
94
|
+
} catch {
|
|
95
|
+
return `<Input ${regExpr} />`;
|
|
96
|
+
}
|
|
97
|
+
case "array":
|
|
98
|
+
return `<>${col.name} array</>`;
|
|
99
|
+
case "object":
|
|
100
|
+
return `<>${col.name} object</>`;
|
|
101
|
+
default:
|
|
102
|
+
throw new Error(`대응 불가능한 렌더 타입 ${col.renderType} on ${col.name}`);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
resolveDefaultValue(columns) {
|
|
106
|
+
return columns.reduce((result, col)=>{
|
|
107
|
+
if (col.optional) {
|
|
108
|
+
return result;
|
|
109
|
+
}
|
|
110
|
+
let value;
|
|
111
|
+
if (col.nullable === true) {
|
|
112
|
+
value = null;
|
|
113
|
+
} else if (col.zodType instanceof z.ZodNumber) {
|
|
114
|
+
value = 0;
|
|
115
|
+
} else if (col.zodType instanceof z.ZodEnum) {
|
|
116
|
+
value = Object.keys(col.zodType.options)[0];
|
|
117
|
+
} else if (col.zodType instanceof z.ZodBoolean) {
|
|
118
|
+
value = false;
|
|
119
|
+
} else if (col.zodType instanceof z.ZodDate) {
|
|
120
|
+
value = new Date();
|
|
121
|
+
} else if (col.zodType instanceof z.ZodString) {
|
|
122
|
+
if (col.renderType === "string-datetime") {
|
|
123
|
+
value = "now()";
|
|
124
|
+
} else {
|
|
125
|
+
value = "";
|
|
126
|
+
}
|
|
127
|
+
} else if (col.zodType instanceof z.ZodArray) {
|
|
128
|
+
value = [];
|
|
129
|
+
} else if (col.zodType instanceof z.ZodObject) {
|
|
130
|
+
value = {};
|
|
131
|
+
}
|
|
132
|
+
result[col.name] = value;
|
|
133
|
+
return result;
|
|
134
|
+
}, {});
|
|
135
|
+
}
|
|
136
|
+
async render({ entityId }) {
|
|
137
|
+
const saveParamsZodType = await getZodTypeById(`${entityId}SaveParams`);
|
|
138
|
+
const saveParamsNode = zodTypeToRenderingNode(saveParamsZodType);
|
|
139
|
+
const entity = EntityManager.get(entityId);
|
|
140
|
+
const names = EntityManager.getNamesFromId(entityId);
|
|
141
|
+
const columns = saveParamsNode.children.filter((col)=>col.name !== "id").map((col)=>{
|
|
142
|
+
const propCandidate = entity.props.find((prop)=>prop.name === col.name);
|
|
143
|
+
col.label = propCandidate?.desc ?? col.label;
|
|
144
|
+
return col;
|
|
145
|
+
});
|
|
146
|
+
const defaultValue = this.resolveDefaultValue(columns);
|
|
147
|
+
// 프리 템플릿
|
|
148
|
+
const preTemplates = columns.filter((col)=>{
|
|
149
|
+
if (col.name === "id") {
|
|
150
|
+
return false;
|
|
151
|
+
} else if (col.name.endsWith("_id") || col.renderType === "number-id") {
|
|
152
|
+
try {
|
|
153
|
+
getRelationPropFromColName(entityId, col.name.replace("_id", ""));
|
|
154
|
+
return true;
|
|
155
|
+
} catch {
|
|
156
|
+
return false;
|
|
157
|
+
}
|
|
158
|
+
} else if (col.renderType === "enums") {
|
|
159
|
+
try {
|
|
160
|
+
getEnumInfoFromColName(entityId, col.name);
|
|
161
|
+
return true;
|
|
162
|
+
} catch {
|
|
163
|
+
return false;
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
return false;
|
|
167
|
+
}).map((col)=>{
|
|
168
|
+
let key;
|
|
169
|
+
let targetMdId = entityId;
|
|
170
|
+
let enumId;
|
|
171
|
+
if (col.renderType === "enums") {
|
|
172
|
+
key = "view_enums_select";
|
|
173
|
+
const { targetEntityNames: targetMDNames, id } = getEnumInfoFromColName(entityId, col.name);
|
|
174
|
+
targetMdId = targetMDNames.capital;
|
|
175
|
+
enumId = id;
|
|
176
|
+
} else {
|
|
177
|
+
key = "view_id_async_select";
|
|
178
|
+
const relProp = getRelationPropFromColName(entityId, col.name.replace("_id", ""));
|
|
179
|
+
targetMdId = relProp.with;
|
|
180
|
+
}
|
|
181
|
+
return {
|
|
182
|
+
key: key,
|
|
183
|
+
options: {
|
|
184
|
+
entityId: targetMdId,
|
|
185
|
+
node: col,
|
|
186
|
+
enumId
|
|
187
|
+
}
|
|
188
|
+
};
|
|
189
|
+
}).filter((preTemplate)=>{
|
|
190
|
+
if (preTemplate.key === "view_id_async_select") {
|
|
191
|
+
try {
|
|
192
|
+
EntityManager.get(preTemplate.options.entityId);
|
|
193
|
+
return true;
|
|
194
|
+
} catch {
|
|
195
|
+
return false;
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
return true;
|
|
199
|
+
});
|
|
200
|
+
return {
|
|
201
|
+
...this.getTargetAndPath(names),
|
|
202
|
+
body: `
|
|
203
|
+
import React, { useEffect, useState, Dispatch, SetStateAction, forwardRef, Ref, useImperativeHandle, useCallback } from 'react';
|
|
204
|
+
import { useSearchParams } from 'react-router-dom';
|
|
205
|
+
import {
|
|
206
|
+
Button,
|
|
207
|
+
Checkbox,
|
|
208
|
+
Form,
|
|
209
|
+
Header,
|
|
210
|
+
Input,
|
|
211
|
+
Segment,
|
|
212
|
+
TextArea,
|
|
213
|
+
Label,
|
|
214
|
+
} from 'semantic-ui-react';
|
|
215
|
+
import { DateTime } from "luxon";
|
|
216
|
+
|
|
217
|
+
import { BackLink, LinkInput, NumberInput, BooleanToggle, SQLDateTimeInput, SQLDateInput, useTypeForm, useGoBack, formatDateTime } from "@sonamu-kit/react-sui";
|
|
218
|
+
import { defaultCatch } from 'src/services/sonamu.shared';
|
|
219
|
+
// import { ImageUploader } from 'src/admin-common/ImageUploader';
|
|
220
|
+
// import { useCommonModal } from "src/admin-common/CommonModal";
|
|
221
|
+
|
|
222
|
+
import { ${names.capital}SaveParams } from 'src/services/${names.fs}/${names.fs}.types';
|
|
223
|
+
import { ${names.capital}Service } from 'src/services/${names.fs}/${names.fs}.service';
|
|
224
|
+
import { ${names.capital}SubsetA } from 'src/services/sonamu.generated';
|
|
225
|
+
${unique(columns.filter((col)=>[
|
|
226
|
+
"number-fk_id",
|
|
227
|
+
"enums"
|
|
228
|
+
].includes(col.renderType)).map((col)=>{
|
|
229
|
+
return this.renderColumnImport(entityId, col);
|
|
230
|
+
})).join("\n")}
|
|
231
|
+
|
|
232
|
+
export default function ${names.capitalPlural}FormPage() {
|
|
233
|
+
// 라우팅 searchParams
|
|
234
|
+
const [searchParams] = useSearchParams();
|
|
235
|
+
const query = {
|
|
236
|
+
id: searchParams.get('id') ?? undefined,
|
|
237
|
+
};
|
|
238
|
+
|
|
239
|
+
return <${names.capitalPlural}Form id={query?.id ? Number(query.id) : undefined} />;
|
|
240
|
+
}
|
|
241
|
+
type ${names.capitalPlural}FormProps = {
|
|
242
|
+
id?: number;
|
|
243
|
+
mode?: 'page' | 'modal';
|
|
244
|
+
};
|
|
245
|
+
export function ${names.capitalPlural}Form({ id, mode }: ${names.capitalPlural}FormProps) {
|
|
246
|
+
// 편집시 기존 row
|
|
247
|
+
const [row, setRow] = useState<${names.capital}SubsetA | undefined>();
|
|
248
|
+
|
|
249
|
+
// ${names.capital}SaveParams 폼
|
|
250
|
+
const { form, setForm, register } = useTypeForm(${names.capital}SaveParams, ${JSON.stringify(defaultValue).replace(/"now\(\)"/g, "DateTime.local().toSQL()!.slice(0, 19)")});
|
|
251
|
+
|
|
252
|
+
// 수정일 때 기존 row 콜
|
|
253
|
+
useEffect(() => {
|
|
254
|
+
if (id) {
|
|
255
|
+
${names.capital}Service.get${names.capital}('A', id).then((row) => {
|
|
256
|
+
setRow(row);
|
|
257
|
+
setForm({
|
|
258
|
+
...row,
|
|
259
|
+
${columns.filter((col)=>col.renderType === "number-fk_id").map((col)=>{
|
|
260
|
+
if (col.nullable) {
|
|
261
|
+
return `${col.name}: row.${col.name.replace("_id", "?.id")} ?? null`;
|
|
262
|
+
} else {
|
|
263
|
+
return `${col.name}: row.${col.name.replace("_id", ".id")}`;
|
|
264
|
+
}
|
|
265
|
+
}).join(",\n")}
|
|
266
|
+
});
|
|
267
|
+
});
|
|
268
|
+
}
|
|
269
|
+
}, [id]);
|
|
270
|
+
|
|
271
|
+
// CommonModal
|
|
272
|
+
// const { doneModal, closeModal } = useCommonModal();
|
|
273
|
+
|
|
274
|
+
// 저장
|
|
275
|
+
const { goBack } = useGoBack();
|
|
276
|
+
const handleSubmit = useCallback(() => {
|
|
277
|
+
${names.capital}Service.save([form]).then(([id]) => {
|
|
278
|
+
if( mode === 'modal' ) {
|
|
279
|
+
// doneModal();
|
|
280
|
+
} else {
|
|
281
|
+
goBack('/admin/${names.fsPlural}');
|
|
282
|
+
}
|
|
283
|
+
}).catch(defaultCatch);
|
|
284
|
+
}, [ form, mode, id ]);
|
|
285
|
+
|
|
286
|
+
// 페이지
|
|
287
|
+
const PAGE = {
|
|
288
|
+
title: \`${entity.title ?? names.capital}\${id ? \`#\${id} 수정\` : ' 등록'}\`,
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
return (
|
|
292
|
+
<div className="form">
|
|
293
|
+
<Segment padded basic>
|
|
294
|
+
<Segment padded color="grey">
|
|
295
|
+
<div className="header-row">
|
|
296
|
+
<Header>
|
|
297
|
+
{PAGE.title}
|
|
298
|
+
</Header>
|
|
299
|
+
{ mode !== 'modal' && <div className="buttons">
|
|
300
|
+
<BackLink primary size="tiny" to="/admin/${names.fsPlural}" content="목록" icon="list" />
|
|
301
|
+
</div>}
|
|
302
|
+
</div>
|
|
303
|
+
<Form>
|
|
304
|
+
${columns.map((col)=>{
|
|
305
|
+
if (col.name === "created_at") {
|
|
306
|
+
return `{form.id && (${this.wrapFG(`<div className="p-8px">{formatDateTime(form.${col.name})}</div>`, "등록일시")})}`;
|
|
307
|
+
} else {
|
|
308
|
+
return this.wrapFG(this.renderColumn(entityId, col, names), (()=>{
|
|
309
|
+
if (col.label.endsWith("Id")) {
|
|
310
|
+
try {
|
|
311
|
+
const entity = EntityManager.get(col.label.replace("Id", ""));
|
|
312
|
+
return entity.title ?? col.label;
|
|
313
|
+
} catch {
|
|
314
|
+
return col.label;
|
|
315
|
+
}
|
|
316
|
+
}
|
|
317
|
+
return col.label;
|
|
318
|
+
})());
|
|
319
|
+
}
|
|
320
|
+
}).join("\n")}
|
|
321
|
+
<Segment basic textAlign="center">
|
|
322
|
+
<Button type="submit" primary onClick={handleSubmit} content="저장" icon="save" />
|
|
323
|
+
</Segment>
|
|
324
|
+
</Form>
|
|
325
|
+
</Segment>
|
|
326
|
+
</Segment>
|
|
327
|
+
</div>
|
|
328
|
+
);
|
|
329
|
+
};
|
|
330
|
+
`.trim(),
|
|
331
|
+
importKeys: [],
|
|
332
|
+
preTemplates
|
|
333
|
+
};
|
|
334
|
+
}
|
|
335
|
+
}
|
|
336
|
+
|
|
337
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90ZW1wbGF0ZS9pbXBsZW1lbnRhdGlvbnMvdmlld19mb3JtLnRlbXBsYXRlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBpbmZsZWN0aW9uIGZyb20gXCJpbmZsZWN0aW9uXCI7XG5pbXBvcnQgeyB1bmlxdWUgfSBmcm9tIFwicmFkYXNoaVwiO1xuaW1wb3J0IHsgeiB9IGZyb20gXCJ6b2RcIjtcbmltcG9ydCB7IEVudGl0eU1hbmFnZXIsIHR5cGUgRW50aXR5TmFtZXNSZWNvcmQgfSBmcm9tIFwiLi4vLi4vZW50aXR5L2VudGl0eS1tYW5hZ2VyXCI7XG5pbXBvcnQgdHlwZSB7IFJlbmRlcmluZ05vZGUsIFRlbXBsYXRlS2V5LCBUZW1wbGF0ZU9wdGlvbnMgfSBmcm9tIFwiLi4vLi4vdHlwZXMvdHlwZXNcIjtcbmltcG9ydCB7IGdldEVudW1JbmZvRnJvbUNvbE5hbWUsIGdldFJlbGF0aW9uUHJvcEZyb21Db2xOYW1lIH0gZnJvbSBcIi4uL2hlbHBlcnNcIjtcbmltcG9ydCB0eXBlIHsgUmVuZGVyZWRUZW1wbGF0ZSB9IGZyb20gXCIuLi90ZW1wbGF0ZVwiO1xuaW1wb3J0IHsgVGVtcGxhdGUgfSBmcm9tIFwiLi4vdGVtcGxhdGVcIjtcbmltcG9ydCB7IGdldFpvZFR5cGVCeUlkLCB6b2RUeXBlVG9SZW5kZXJpbmdOb2RlIH0gZnJvbSBcIi4uL3pvZC1jb252ZXJ0ZXJcIjtcblxuZXhwb3J0IGNsYXNzIFRlbXBsYXRlX192aWV3X2Zvcm0gZXh0ZW5kcyBUZW1wbGF0ZSB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKFwidmlld19mb3JtXCIpO1xuICB9XG5cbiAgZ2V0VGFyZ2V0QW5kUGF0aChuYW1lczogRW50aXR5TmFtZXNSZWNvcmQpIHtcbiAgICByZXR1cm4ge1xuICAgICAgdGFyZ2V0OiBcIndlYi9zcmMvcGFnZXMvYWRtaW5cIixcbiAgICAgIHBhdGg6IGAke25hbWVzLmZzUGx1cmFsfS9mb3JtLnRzeGAsXG4gICAgfTtcbiAgfVxuXG4gIHdyYXBGQyhib2R5OiBzdHJpbmcsIGxhYmVsPzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gW1xuICAgICAgYDxGb3JtLkZpZWxkPiR7bGFiZWwgPyBgXFxuICAgPGxhYmVsPiR7bGFiZWx9PC9sYWJlbD5gIDogXCJcIn1gLFxuICAgICAgYm9keSxcbiAgICAgIGA8L0Zvcm0uRmllbGQ+YCxcbiAgICBdLmpvaW4oXCJcXG5cIik7XG4gIH1cbiAgd3JhcEZHKGJvZHk6IHN0cmluZywgbGFiZWw/OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBbYDxGb3JtLkdyb3VwIHdpZHRocz1cImVxdWFsXCI+YCwgdGhpcy53cmFwRkMoYm9keSwgbGFiZWwpLCBgPC9Gb3JtLkdyb3VwPmBdLmpvaW4oXCJcXG5cIik7XG4gIH1cblxuICByZW5kZXJDb2x1bW5JbXBvcnQoZW50aXR5SWQ6IHN0cmluZywgY29sOiBSZW5kZXJpbmdOb2RlKSB7XG4gICAgaWYgKGNvbC5yZW5kZXJUeXBlID09PSBcImVudW1zXCIpIHtcbiAgICAgIGNvbnN0IHsgaWQsIHRhcmdldEVudGl0eU5hbWVzIH0gPSBnZXRFbnVtSW5mb0Zyb21Db2xOYW1lKGVudGl0eUlkLCBjb2wubmFtZSk7XG4gICAgICBjb25zdCBjb21wb25lbnRJZCA9IGAke2lkfVNlbGVjdGA7XG4gICAgICByZXR1cm4gYGltcG9ydCB7ICR7Y29tcG9uZW50SWR9IH0gZnJvbSBcInNyYy9jb21wb25lbnRzLyR7dGFyZ2V0RW50aXR5TmFtZXMuZnN9LyR7Y29tcG9uZW50SWR9XCI7YDtcbiAgICB9IGVsc2UgaWYgKGNvbC5yZW5kZXJUeXBlID09PSBcIm51bWJlci1ma19pZFwiKSB7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCByZWxQcm9wID0gZ2V0UmVsYXRpb25Qcm9wRnJvbUNvbE5hbWUoZW50aXR5SWQsIGNvbC5uYW1lLnJlcGxhY2UoXCJfaWRcIiwgXCJcIikpO1xuICAgICAgICBjb25zdCB0YXJnZXROYW1lcyA9IEVudGl0eU1hbmFnZXIuZ2V0TmFtZXNGcm9tSWQocmVsUHJvcC53aXRoKTtcbiAgICAgICAgY29uc3QgY29tcG9uZW50SWQgPSBgJHtyZWxQcm9wLndpdGh9SWRBc3luY1NlbGVjdGA7XG4gICAgICAgIHJldHVybiBgaW1wb3J0IHsgJHtjb21wb25lbnRJZH0gfSBmcm9tIFwic3JjL2NvbXBvbmVudHMvJHt0YXJnZXROYW1lcy5mc30vJHtjb21wb25lbnRJZH1cIjtgO1xuICAgICAgfSBjYXRjaCB7XG4gICAgICAgIHJldHVybiBcIlwiO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYOugjOuNlCDrtojqsIDriqXtlZwg7J6E7Y+s7Yq4ICR7Y29sLm5hbWV9ICR7Y29sLnJlbmRlclR5cGV9YCk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyQ29sdW1uKFxuICAgIGVudGl0eUlkOiBzdHJpbmcsXG4gICAgY29sOiBSZW5kZXJpbmdOb2RlLFxuICAgIG5hbWVzOiBFbnRpdHlOYW1lc1JlY29yZCxcbiAgICBwYXJlbnQ6IHN0cmluZyA9IFwiXCIsXG4gICk6IHN0cmluZyB7XG4gICAgbGV0IHJlZ0V4cHI6IHN0cmluZyA9IFwiXCI7XG4gICAgcmVnRXhwciA9IGB7Li4ucmVnaXN0ZXIoXFxgJHtwYXJlbnR9JHtjb2wubmFtZX1cXGApfWA7XG5cbiAgICBzd2l0Y2ggKGNvbC5yZW5kZXJUeXBlKSB7XG4gICAgICBjYXNlIFwic3RyaW5nLXBsYWluXCI6XG4gICAgICAgIGlmIChjb2wuem9kVHlwZSBpbnN0YW5jZW9mIHouWm9kU3RyaW5nICYmIChjb2wuem9kVHlwZS5tYXhMZW5ndGggPz8gMCkgPD0gNTEyKSB7XG4gICAgICAgICAgcmV0dXJuIGA8SW5wdXQgcGxhY2Vob2xkZXI9XCIke2NvbC5sYWJlbH1cIiAke3JlZ0V4cHJ9IC8+YDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gYDxUZXh0QXJlYSByb3dzPXs4fSBwbGFjZWhvbGRlcj1cIiR7Y29sLmxhYmVsfVwiICR7cmVnRXhwcn0gLz5gO1xuICAgICAgICB9XG4gICAgICBjYXNlIFwiZGF0ZXRpbWVcIjpcbiAgICAgICAgcmV0dXJuIGA8SW5wdXQgdHlwZT1cImRhdGV0aW1lLWxvY2FsXCIgJHtyZWdFeHByfSAvPmA7XG4gICAgICBjYXNlIFwic3RyaW5nLWRhdGV0aW1lXCI6XG4gICAgICAgIHJldHVybiBgPFNRTERhdGVUaW1lSW5wdXQgJHtyZWdFeHByfSAvPmA7XG4gICAgICBjYXNlIFwic3RyaW5nLWRhdGVcIjpcbiAgICAgICAgcmV0dXJuIGA8U1FMRGF0ZUlucHV0ICR7cmVnRXhwcn0gLz5gO1xuICAgICAgY2FzZSBcIm51bWJlci1pZFwiOlxuICAgICAgICByZXR1cm4gYDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgJHtyZWdFeHByfSAvPmA7XG4gICAgICBjYXNlIFwibnVtYmVyLXBsYWluXCI6XG4gICAgICAgIHJldHVybiBgPE51bWJlcklucHV0IHBsYWNlaG9sZGVyPVwiJHtjb2wubGFiZWx9XCIgJHtyZWdFeHByfSAvPmA7XG4gICAgICBjYXNlIFwiYm9vbGVhblwiOlxuICAgICAgICByZXR1cm4gYDxCb29sZWFuVG9nZ2xlICR7cmVnRXhwcn0gLz5gO1xuICAgICAgY2FzZSBcInN0cmluZy1pbWFnZVwiOlxuICAgICAgICByZXR1cm4gYDxJbWFnZVVwbG9hZGVyIG11bHRpcGxlPXtmYWxzZX0gJHtyZWdFeHByfSAvPmA7XG4gICAgICBjYXNlIFwiYXJyYXktaW1hZ2VzXCI6XG4gICAgICAgIHJldHVybiBgPEltYWdlVXBsb2FkZXIgbXVsdGlwbGU9e3RydWV9ICR7cmVnRXhwcn0gbWF4U2l6ZT17NX0gLz5gO1xuICAgICAgY2FzZSBcImVudW1zXCI6XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgbGV0IGVudW1JZDogc3RyaW5nO1xuICAgICAgICAgIGlmIChjb2wubmFtZSA9PT0gXCJvcmRlckJ5XCIpIHtcbiAgICAgICAgICAgIGVudW1JZCA9IGAke25hbWVzLmNhcGl0YWx9JHtpbmZsZWN0aW9uLmNhbWVsaXplKGNvbC5uYW1lKX1TZWxlY3RgO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCB7IGlkIH0gPSBnZXRFbnVtSW5mb0Zyb21Db2xOYW1lKGVudGl0eUlkLCBjb2wubmFtZSk7XG4gICAgICAgICAgICBlbnVtSWQgPSBgJHtpZH1TZWxlY3RgO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gYDwke2VudW1JZH0gJHtyZWdFeHByfSAke1xuICAgICAgICAgICAgY29sLm9wdGlvbmFsIHx8IGNvbC5udWxsYWJsZSA/IFwiY2xlYXJhYmxlXCIgOiBcIlwiXG4gICAgICAgICAgfSB0ZXh0UHJlZml4PVwiXCIgLz5gO1xuICAgICAgICB9IGNhdGNoIHtcbiAgICAgICAgICByZXR1cm4gYDw+7LC+7J2EIOyImCDsl4bripQgRW51bSAke2NvbC5uYW1lfTwvPmA7XG4gICAgICAgIH1cbiAgICAgIGNhc2UgXCJudW1iZXItZmtfaWRcIjpcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBjb25zdCByZWxQcm9wID0gZ2V0UmVsYXRpb25Qcm9wRnJvbUNvbE5hbWUoZW50aXR5SWQsIGNvbC5uYW1lLnJlcGxhY2UoXCJfaWRcIiwgXCJcIikpO1xuICAgICAgICAgIGNvbnN0IGZrSWQgPSBgJHtyZWxQcm9wLndpdGh9SWRBc3luY1NlbGVjdGA7XG4gICAgICAgICAgcmV0dXJuIGA8JHtma0lkfSB7Li4ucmVnaXN0ZXIoJyR7Y29sLm5hbWV9Jyl9ICR7XG4gICAgICAgICAgICBjb2wub3B0aW9uYWwgfHwgY29sLm51bGxhYmxlID8gXCJjbGVhcmFibGVcIiA6IFwiXCJcbiAgICAgICAgICB9IHN1YnNldD1cIkFcIiAvPmA7XG4gICAgICAgIH0gY2F0Y2gge1xuICAgICAgICAgIHJldHVybiBgPElucHV0ICR7cmVnRXhwcn0gLz5gO1xuICAgICAgICB9XG4gICAgICBjYXNlIFwiYXJyYXlcIjpcbiAgICAgICAgcmV0dXJuIGA8PiR7Y29sLm5hbWV9IGFycmF5PC8+YDtcbiAgICAgIGNhc2UgXCJvYmplY3RcIjpcbiAgICAgICAgcmV0dXJuIGA8PiR7Y29sLm5hbWV9IG9iamVjdDwvPmA7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYOuMgOydkSDrtojqsIDriqXtlZwg66CM642UIO2DgOyehSAke2NvbC5yZW5kZXJUeXBlfSBvbiAke2NvbC5uYW1lfWApO1xuICAgIH1cbiAgfVxuXG4gIHJlc29sdmVEZWZhdWx0VmFsdWUoY29sdW1uczogUmVuZGVyaW5nTm9kZVtdKTogb2JqZWN0IHtcbiAgICByZXR1cm4gY29sdW1ucy5yZWR1Y2UoXG4gICAgICAocmVzdWx0LCBjb2wpID0+IHtcbiAgICAgICAgaWYgKGNvbC5vcHRpb25hbCkge1xuICAgICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgdmFsdWU6IHVua25vd247XG4gICAgICAgIGlmIChjb2wubnVsbGFibGUgPT09IHRydWUpIHtcbiAgICAgICAgICB2YWx1ZSA9IG51bGw7XG4gICAgICAgIH0gZWxzZSBpZiAoY29sLnpvZFR5cGUgaW5zdGFuY2VvZiB6LlpvZE51bWJlcikge1xuICAgICAgICAgIHZhbHVlID0gMDtcbiAgICAgICAgfSBlbHNlIGlmIChjb2wuem9kVHlwZSBpbnN0YW5jZW9mIHouWm9kRW51bSkge1xuICAgICAgICAgIHZhbHVlID0gT2JqZWN0LmtleXMoY29sLnpvZFR5cGUub3B0aW9ucylbMF07XG4gICAgICAgIH0gZWxzZSBpZiAoY29sLnpvZFR5cGUgaW5zdGFuY2VvZiB6LlpvZEJvb2xlYW4pIHtcbiAgICAgICAgICB2YWx1ZSA9IGZhbHNlO1xuICAgICAgICB9IGVsc2UgaWYgKGNvbC56b2RUeXBlIGluc3RhbmNlb2Ygei5ab2REYXRlKSB7XG4gICAgICAgICAgdmFsdWUgPSBuZXcgRGF0ZSgpO1xuICAgICAgICB9IGVsc2UgaWYgKGNvbC56b2RUeXBlIGluc3RhbmNlb2Ygei5ab2RTdHJpbmcpIHtcbiAgICAgICAgICBpZiAoY29sLnJlbmRlclR5cGUgPT09IFwic3RyaW5nLWRhdGV0aW1lXCIpIHtcbiAgICAgICAgICAgIHZhbHVlID0gXCJub3coKVwiO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB2YWx1ZSA9IFwiXCI7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgaWYgKGNvbC56b2RUeXBlIGluc3RhbmNlb2Ygei5ab2RBcnJheSkge1xuICAgICAgICAgIHZhbHVlID0gW107XG4gICAgICAgIH0gZWxzZSBpZiAoY29sLnpvZFR5cGUgaW5zdGFuY2VvZiB6LlpvZE9iamVjdCkge1xuICAgICAgICAgIHZhbHVlID0ge307XG4gICAgICAgIH1cblxuICAgICAgICByZXN1bHRbY29sLm5hbWVdID0gdmFsdWU7XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICB9LFxuICAgICAge30gYXMgeyBba2V5OiBzdHJpbmddOiB1bmtub3duIH0sXG4gICAgKTtcbiAgfVxuXG4gIGFzeW5jIHJlbmRlcih7IGVudGl0eUlkIH06IFRlbXBsYXRlT3B0aW9uc1tcInZpZXdfZm9ybVwiXSkge1xuICAgIGNvbnN0IHNhdmVQYXJhbXNab2RUeXBlID0gYXdhaXQgZ2V0Wm9kVHlwZUJ5SWQoYCR7ZW50aXR5SWR9U2F2ZVBhcmFtc2ApO1xuICAgIGNvbnN0IHNhdmVQYXJhbXNOb2RlID0gem9kVHlwZVRvUmVuZGVyaW5nTm9kZShzYXZlUGFyYW1zWm9kVHlwZSk7XG5cbiAgICBjb25zdCBlbnRpdHkgPSBFbnRpdHlNYW5hZ2VyLmdldChlbnRpdHlJZCk7XG4gICAgY29uc3QgbmFtZXMgPSBFbnRpdHlNYW5hZ2VyLmdldE5hbWVzRnJvbUlkKGVudGl0eUlkKTtcbiAgICBjb25zdCBjb2x1bW5zID0gKHNhdmVQYXJhbXNOb2RlLmNoaWxkcmVuIGFzIFJlbmRlcmluZ05vZGVbXSlcbiAgICAgIC5maWx0ZXIoKGNvbCkgPT4gY29sLm5hbWUgIT09IFwiaWRcIilcbiAgICAgIC5tYXAoKGNvbCkgPT4ge1xuICAgICAgICBjb25zdCBwcm9wQ2FuZGlkYXRlID0gZW50aXR5LnByb3BzLmZpbmQoKHByb3ApID0+IHByb3AubmFtZSA9PT0gY29sLm5hbWUpO1xuICAgICAgICBjb2wubGFiZWwgPSBwcm9wQ2FuZGlkYXRlPy5kZXNjID8/IGNvbC5sYWJlbDtcbiAgICAgICAgcmV0dXJuIGNvbDtcbiAgICAgIH0pO1xuXG4gICAgY29uc3QgZGVmYXVsdFZhbHVlID0gdGhpcy5yZXNvbHZlRGVmYXVsdFZhbHVlKGNvbHVtbnMpO1xuXG4gICAgLy8g7ZSE66asIO2FnO2UjOumv1xuICAgIGNvbnN0IHByZVRlbXBsYXRlczogUmVuZGVyZWRUZW1wbGF0ZVtcInByZVRlbXBsYXRlc1wiXSA9IChjb2x1bW5zIGFzIFJlbmRlcmluZ05vZGVbXSlcbiAgICAgIC5maWx0ZXIoKGNvbCkgPT4ge1xuICAgICAgICBpZiAoY29sLm5hbWUgPT09IFwiaWRcIikge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfSBlbHNlIGlmIChjb2wubmFtZS5lbmRzV2l0aChcIl9pZFwiKSB8fCBjb2wucmVuZGVyVHlwZSA9PT0gXCJudW1iZXItaWRcIikge1xuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICBnZXRSZWxhdGlvblByb3BGcm9tQ29sTmFtZShlbnRpdHlJZCwgY29sLm5hbWUucmVwbGFjZShcIl9pZFwiLCBcIlwiKSk7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICB9IGNhdGNoIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAoY29sLnJlbmRlclR5cGUgPT09IFwiZW51bXNcIikge1xuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICBnZXRFbnVtSW5mb0Zyb21Db2xOYW1lKGVudGl0eUlkLCBjb2wubmFtZSk7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICB9IGNhdGNoIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfSlcbiAgICAgIC5tYXAoKGNvbCkgPT4ge1xuICAgICAgICBsZXQga2V5OiBUZW1wbGF0ZUtleTtcbiAgICAgICAgbGV0IHRhcmdldE1kSWQgPSBlbnRpdHlJZDtcbiAgICAgICAgbGV0IGVudW1JZDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgICAgICBpZiAoY29sLnJlbmRlclR5cGUgPT09IFwiZW51bXNcIikge1xuICAgICAgICAgIGtleSA9IFwidmlld19lbnVtc19zZWxlY3RcIjtcbiAgICAgICAgICBjb25zdCB7IHRhcmdldEVudGl0eU5hbWVzOiB0YXJnZXRNRE5hbWVzLCBpZCB9ID0gZ2V0RW51bUluZm9Gcm9tQ29sTmFtZShcbiAgICAgICAgICAgIGVudGl0eUlkLFxuICAgICAgICAgICAgY29sLm5hbWUsXG4gICAgICAgICAgKTtcbiAgICAgICAgICB0YXJnZXRNZElkID0gdGFyZ2V0TUROYW1lcy5jYXBpdGFsO1xuICAgICAgICAgIGVudW1JZCA9IGlkO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGtleSA9IFwidmlld19pZF9hc3luY19zZWxlY3RcIjtcbiAgICAgICAgICBjb25zdCByZWxQcm9wID0gZ2V0UmVsYXRpb25Qcm9wRnJvbUNvbE5hbWUoZW50aXR5SWQsIGNvbC5uYW1lLnJlcGxhY2UoXCJfaWRcIiwgXCJcIikpO1xuICAgICAgICAgIHRhcmdldE1kSWQgPSByZWxQcm9wLndpdGg7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGtleToga2V5IGFzIFRlbXBsYXRlS2V5LFxuICAgICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICAgIGVudGl0eUlkOiB0YXJnZXRNZElkLFxuICAgICAgICAgICAgbm9kZTogY29sLFxuICAgICAgICAgICAgZW51bUlkLFxuICAgICAgICAgIH0sXG4gICAgICAgIH07XG4gICAgICB9KVxuICAgICAgLmZpbHRlcigocHJlVGVtcGxhdGUpID0+IHtcbiAgICAgICAgaWYgKHByZVRlbXBsYXRlLmtleSA9PT0gXCJ2aWV3X2lkX2FzeW5jX3NlbGVjdFwiKSB7XG4gICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIEVudGl0eU1hbmFnZXIuZ2V0KHByZVRlbXBsYXRlLm9wdGlvbnMuZW50aXR5SWQpO1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgfSBjYXRjaCB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfSk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgLi4udGhpcy5nZXRUYXJnZXRBbmRQYXRoKG5hbWVzKSxcbiAgICAgIGJvZHk6IGBcbmltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZVN0YXRlLCBEaXNwYXRjaCwgU2V0U3RhdGVBY3Rpb24sIGZvcndhcmRSZWYsIFJlZiwgdXNlSW1wZXJhdGl2ZUhhbmRsZSwgdXNlQ2FsbGJhY2sgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyB1c2VTZWFyY2hQYXJhbXMgfSBmcm9tICdyZWFjdC1yb3V0ZXItZG9tJztcbmltcG9ydCB7XG4gIEJ1dHRvbixcbiAgQ2hlY2tib3gsXG4gIEZvcm0sXG4gIEhlYWRlcixcbiAgSW5wdXQsXG4gIFNlZ21lbnQsXG4gIFRleHRBcmVhLFxuICBMYWJlbCxcbn0gZnJvbSAnc2VtYW50aWMtdWktcmVhY3QnO1xuaW1wb3J0IHsgRGF0ZVRpbWUgfSBmcm9tIFwibHV4b25cIjtcblxuaW1wb3J0IHsgQmFja0xpbmssIExpbmtJbnB1dCwgTnVtYmVySW5wdXQsIEJvb2xlYW5Ub2dnbGUsIFNRTERhdGVUaW1lSW5wdXQsIFNRTERhdGVJbnB1dCwgdXNlVHlwZUZvcm0sIHVzZUdvQmFjaywgZm9ybWF0RGF0ZVRpbWUgfSBmcm9tIFwiQHNvbmFtdS1raXQvcmVhY3Qtc3VpXCI7XG5pbXBvcnQgeyBkZWZhdWx0Q2F0Y2ggfSBmcm9tICdzcmMvc2VydmljZXMvc29uYW11LnNoYXJlZCc7XG4vLyBpbXBvcnQgeyBJbWFnZVVwbG9hZGVyIH0gZnJvbSAnc3JjL2FkbWluLWNvbW1vbi9JbWFnZVVwbG9hZGVyJztcbi8vIGltcG9ydCB7IHVzZUNvbW1vbk1vZGFsIH0gZnJvbSBcInNyYy9hZG1pbi1jb21tb24vQ29tbW9uTW9kYWxcIjtcblxuaW1wb3J0IHsgJHtuYW1lcy5jYXBpdGFsfVNhdmVQYXJhbXMgfSBmcm9tICdzcmMvc2VydmljZXMvJHtuYW1lcy5mc30vJHtuYW1lcy5mc30udHlwZXMnO1xuaW1wb3J0IHsgJHtuYW1lcy5jYXBpdGFsfVNlcnZpY2UgfSBmcm9tICdzcmMvc2VydmljZXMvJHtuYW1lcy5mc30vJHtuYW1lcy5mc30uc2VydmljZSc7XG5pbXBvcnQgeyAke25hbWVzLmNhcGl0YWx9U3Vic2V0QSB9IGZyb20gJ3NyYy9zZXJ2aWNlcy9zb25hbXUuZ2VuZXJhdGVkJztcbiR7dW5pcXVlKFxuICBjb2x1bW5zXG4gICAgLmZpbHRlcigoY29sKSA9PiBbXCJudW1iZXItZmtfaWRcIiwgXCJlbnVtc1wiXS5pbmNsdWRlcyhjb2wucmVuZGVyVHlwZSkpXG4gICAgLm1hcCgoY29sKSA9PiB7XG4gICAgICByZXR1cm4gdGhpcy5yZW5kZXJDb2x1bW5JbXBvcnQoZW50aXR5SWQsIGNvbCk7XG4gICAgfSksXG4pLmpvaW4oXCJcXG5cIil9XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uICR7bmFtZXMuY2FwaXRhbFBsdXJhbH1Gb3JtUGFnZSgpIHtcbiAgLy8g65287Jqw7YyFIHNlYXJjaFBhcmFtc1xuICBjb25zdCBbc2VhcmNoUGFyYW1zXSA9IHVzZVNlYXJjaFBhcmFtcygpO1xuICBjb25zdCBxdWVyeSA9IHtcbiAgICBpZDogc2VhcmNoUGFyYW1zLmdldCgnaWQnKSA/PyB1bmRlZmluZWQsXG4gIH07XG5cbiAgcmV0dXJuIDwke25hbWVzLmNhcGl0YWxQbHVyYWx9Rm9ybSBpZD17cXVlcnk/LmlkID8gTnVtYmVyKHF1ZXJ5LmlkKSA6IHVuZGVmaW5lZH0gLz47XG59XG50eXBlICR7bmFtZXMuY2FwaXRhbFBsdXJhbH1Gb3JtUHJvcHMgPSB7XG4gIGlkPzogbnVtYmVyO1xuICBtb2RlPzogJ3BhZ2UnIHwgJ21vZGFsJztcbn07XG5leHBvcnQgZnVuY3Rpb24gJHtuYW1lcy5jYXBpdGFsUGx1cmFsfUZvcm0oeyBpZCwgbW9kZSB9OiAke25hbWVzLmNhcGl0YWxQbHVyYWx9Rm9ybVByb3BzKSB7XG4gIC8vIO2OuOynkeyLnCDquLDsobQgcm93XG4gIGNvbnN0IFtyb3csIHNldFJvd10gPSB1c2VTdGF0ZTwke25hbWVzLmNhcGl0YWx9U3Vic2V0QSB8IHVuZGVmaW5lZD4oKTtcblxuICAvLyAke25hbWVzLmNhcGl0YWx9U2F2ZVBhcmFtcyDtj7xcbiAgY29uc3QgeyBmb3JtLCBzZXRGb3JtLCByZWdpc3RlciB9ID0gdXNlVHlwZUZvcm0oJHtuYW1lcy5jYXBpdGFsfVNhdmVQYXJhbXMsICR7SlNPTi5zdHJpbmdpZnkoXG4gICAgZGVmYXVsdFZhbHVlLFxuICApLnJlcGxhY2UoL1wibm93XFwoXFwpXCIvZywgXCJEYXRlVGltZS5sb2NhbCgpLnRvU1FMKCkhLnNsaWNlKDAsIDE5KVwiKX0pO1xuXG4gIC8vIOyImOygleydvCDrlYwg6riw7KG0IHJvdyDsvZxcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoaWQpIHtcbiAgICAgICR7bmFtZXMuY2FwaXRhbH1TZXJ2aWNlLmdldCR7bmFtZXMuY2FwaXRhbH0oJ0EnLCBpZCkudGhlbigocm93KSA9PiB7XG4gICAgICAgIHNldFJvdyhyb3cpO1xuICAgICAgICBzZXRGb3JtKHtcbiAgICAgICAgICAuLi5yb3csXG4gICAgICAgICAgJHtjb2x1bW5zXG4gICAgICAgICAgICAuZmlsdGVyKChjb2wpID0+IGNvbC5yZW5kZXJUeXBlID09PSBcIm51bWJlci1ma19pZFwiKVxuICAgICAgICAgICAgLm1hcCgoY29sKSA9PiB7XG4gICAgICAgICAgICAgIGlmIChjb2wubnVsbGFibGUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gYCR7Y29sLm5hbWV9OiByb3cuJHtjb2wubmFtZS5yZXBsYWNlKFwiX2lkXCIsIFwiPy5pZFwiKX0gPz8gbnVsbGA7XG4gICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGAke2NvbC5uYW1lfTogcm93LiR7Y29sLm5hbWUucmVwbGFjZShcIl9pZFwiLCBcIi5pZFwiKX1gO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLmpvaW4oXCIsXFxuXCIpfVxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfSwgW2lkXSk7XG5cbiAgLy8gQ29tbW9uTW9kYWxcbiAgLy8gY29uc3QgeyBkb25lTW9kYWwsIGNsb3NlTW9kYWwgfSA9IHVzZUNvbW1vbk1vZGFsKCk7XG5cbiAgLy8g7KCA7J6lXG4gIGNvbnN0IHsgZ29CYWNrIH0gPSB1c2VHb0JhY2soKTtcbiAgY29uc3QgaGFuZGxlU3VibWl0ID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgICR7bmFtZXMuY2FwaXRhbH1TZXJ2aWNlLnNhdmUoW2Zvcm1dKS50aGVuKChbaWRdKSA9PiB7XG4gICAgICBpZiggbW9kZSA9PT0gJ21vZGFsJyApIHtcbiAgICAgICAgLy8gZG9uZU1vZGFsKCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBnb0JhY2soJy9hZG1pbi8ke25hbWVzLmZzUGx1cmFsfScpO1xuICAgICAgfVxuICAgIH0pLmNhdGNoKGRlZmF1bHRDYXRjaCk7XG4gIH0sIFsgZm9ybSwgbW9kZSwgaWQgXSk7XG5cbiAgLy8g7Y6Y7J207KeAXG4gIGNvbnN0IFBBR0UgPSB7XG4gICAgdGl0bGU6IFxcYCR7ZW50aXR5LnRpdGxlID8/IG5hbWVzLmNhcGl0YWx9XFwke2lkID8gXFxgI1xcJHtpZH0g7IiY7KCVXFxgIDogJyDrk7HroZ0nfVxcYCxcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9XCJmb3JtXCI+XG4gICAgICA8U2VnbWVudCBwYWRkZWQgYmFzaWM+XG4gICAgICAgIDxTZWdtZW50IHBhZGRlZCBjb2xvcj1cImdyZXlcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImhlYWRlci1yb3dcIj5cbiAgICAgICAgICAgIDxIZWFkZXI+XG4gICAgICAgICAgICAgIHtQQUdFLnRpdGxlfVxuICAgICAgICAgICAgPC9IZWFkZXI+XG4gICAgICAgICAgICB7IG1vZGUgIT09ICdtb2RhbCcgJiYgPGRpdiBjbGFzc05hbWU9XCJidXR0b25zXCI+XG4gICAgICAgICAgICAgIDxCYWNrTGluayBwcmltYXJ5IHNpemU9XCJ0aW55XCIgdG89XCIvYWRtaW4vJHtcbiAgICAgICAgICAgICAgICBuYW1lcy5mc1BsdXJhbFxuICAgICAgICAgICAgICB9XCIgY29udGVudD1cIuuqqeuhnVwiIGljb249XCJsaXN0XCIgLz5cbiAgICAgICAgICAgIDwvZGl2Pn1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8Rm9ybT5cbiAgICAgICAgICAgICR7Y29sdW1uc1xuICAgICAgICAgICAgICAubWFwKChjb2wpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoY29sLm5hbWUgPT09IFwiY3JlYXRlZF9hdFwiKSB7XG4gICAgICAgICAgICAgICAgICByZXR1cm4gYHtmb3JtLmlkICYmICgke3RoaXMud3JhcEZHKFxuICAgICAgICAgICAgICAgICAgICBgPGRpdiBjbGFzc05hbWU9XCJwLThweFwiPntmb3JtYXREYXRlVGltZShmb3JtLiR7Y29sLm5hbWV9KX08L2Rpdj5gLFxuICAgICAgICAgICAgICAgICAgICBcIuuTseuhneydvOyLnFwiLFxuICAgICAgICAgICAgICAgICAgKX0pfWA7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLndyYXBGRyhcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJDb2x1bW4oZW50aXR5SWQsIGNvbCwgbmFtZXMpLFxuICAgICAgICAgICAgICAgICAgICAoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgIGlmIChjb2wubGFiZWwuZW5kc1dpdGgoXCJJZFwiKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZW50aXR5ID0gRW50aXR5TWFuYWdlci5nZXQoY29sLmxhYmVsLnJlcGxhY2UoXCJJZFwiLCBcIlwiKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBlbnRpdHkudGl0bGUgPz8gY29sLmxhYmVsO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBjb2wubGFiZWw7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBjb2wubGFiZWw7XG4gICAgICAgICAgICAgICAgICAgIH0pKCksXG4gICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgLmpvaW4oXCJcXG5cIil9XG4gICAgICAgICAgICA8U2VnbWVudCBiYXNpYyB0ZXh0QWxpZ249XCJjZW50ZXJcIj5cbiAgICAgICAgICAgICAgPEJ1dHRvbiB0eXBlPVwic3VibWl0XCIgcHJpbWFyeSBvbkNsaWNrPXtoYW5kbGVTdWJtaXR9IGNvbnRlbnQ9XCLsoIDsnqVcIiBpY29uPVwic2F2ZVwiIC8+XG4gICAgICAgICAgICA8L1NlZ21lbnQ+XG4gICAgICAgICAgPC9Gb3JtPlxuICAgICAgICA8L1NlZ21lbnQ+XG4gICAgICA8L1NlZ21lbnQ+XG4gICAgPC9kaXY+XG4gICk7XG59O1xuICAgICAgYC50cmltKCksXG4gICAgICBpbXBvcnRLZXlzOiBbXSxcbiAgICAgIHByZVRlbXBsYXRlcyxcbiAgICB9O1xuICB9XG59XG4iXSwibmFtZXMiOlsiaW5mbGVjdGlvbiIsInVuaXF1ZSIsInoiLCJFbnRpdHlNYW5hZ2VyIiwiZ2V0RW51bUluZm9Gcm9tQ29sTmFtZSIsImdldFJlbGF0aW9uUHJvcEZyb21Db2xOYW1lIiwiVGVtcGxhdGUiLCJnZXRab2RUeXBlQnlJZCIsInpvZFR5cGVUb1JlbmRlcmluZ05vZGUiLCJUZW1wbGF0ZV9fdmlld19mb3JtIiwiZ2V0VGFyZ2V0QW5kUGF0aCIsIm5hbWVzIiwidGFyZ2V0IiwicGF0aCIsImZzUGx1cmFsIiwid3JhcEZDIiwiYm9keSIsImxhYmVsIiwiam9pbiIsIndyYXBGRyIsInJlbmRlckNvbHVtbkltcG9ydCIsImVudGl0eUlkIiwiY29sIiwicmVuZGVyVHlwZSIsImlkIiwidGFyZ2V0RW50aXR5TmFtZXMiLCJuYW1lIiwiY29tcG9uZW50SWQiLCJmcyIsInJlbFByb3AiLCJyZXBsYWNlIiwidGFyZ2V0TmFtZXMiLCJnZXROYW1lc0Zyb21JZCIsIndpdGgiLCJFcnJvciIsInJlbmRlckNvbHVtbiIsInBhcmVudCIsInJlZ0V4cHIiLCJ6b2RUeXBlIiwiWm9kU3RyaW5nIiwibWF4TGVuZ3RoIiwiZW51bUlkIiwiY2FwaXRhbCIsImNhbWVsaXplIiwib3B0aW9uYWwiLCJudWxsYWJsZSIsImZrSWQiLCJyZXNvbHZlRGVmYXVsdFZhbHVlIiwiY29sdW1ucyIsInJlZHVjZSIsInJlc3VsdCIsInZhbHVlIiwiWm9kTnVtYmVyIiwiWm9kRW51bSIsIk9iamVjdCIsImtleXMiLCJvcHRpb25zIiwiWm9kQm9vbGVhbiIsIlpvZERhdGUiLCJEYXRlIiwiWm9kQXJyYXkiLCJab2RPYmplY3QiLCJyZW5kZXIiLCJzYXZlUGFyYW1zWm9kVHlwZSIsInNhdmVQYXJhbXNOb2RlIiwiZW50aXR5IiwiZ2V0IiwiY2hpbGRyZW4iLCJmaWx0ZXIiLCJtYXAiLCJwcm9wQ2FuZGlkYXRlIiwicHJvcHMiLCJmaW5kIiwicHJvcCIsImRlc2MiLCJkZWZhdWx0VmFsdWUiLCJwcmVUZW1wbGF0ZXMiLCJlbmRzV2l0aCIsImtleSIsInRhcmdldE1kSWQiLCJ0YXJnZXRNRE5hbWVzIiwibm9kZSIsInByZVRlbXBsYXRlIiwiaW5jbHVkZXMiLCJjYXBpdGFsUGx1cmFsIiwiSlNPTiIsInN0cmluZ2lmeSIsInRpdGxlIiwidHJpbSIsImltcG9ydEtleXMiXSwibWFwcGluZ3MiOiJBQUFBLE9BQU9BLGdCQUFnQixhQUFhO0FBQ3BDLFNBQVNDLE1BQU0sUUFBUSxVQUFVO0FBQ2pDLFNBQVNDLENBQUMsUUFBUSxNQUFNO0FBQ3hCLFNBQVNDLGFBQWEsUUFBZ0MsaUNBQThCO0FBRXBGLFNBQVNDLHNCQUFzQixFQUFFQywwQkFBMEIsUUFBUSxnQkFBYTtBQUVoRixTQUFTQyxRQUFRLFFBQVEsaUJBQWM7QUFDdkMsU0FBU0MsY0FBYyxFQUFFQyxzQkFBc0IsUUFBUSxzQkFBbUI7QUFFMUUsT0FBTyxNQUFNQyw0QkFBNEJIO0lBQ3ZDLGFBQWM7UUFDWixLQUFLLENBQUM7SUFDUjtJQUVBSSxpQkFBaUJDLEtBQXdCLEVBQUU7UUFDekMsT0FBTztZQUNMQyxRQUFRO1lBQ1JDLE1BQU0sR0FBR0YsTUFBTUcsUUFBUSxDQUFDLFNBQVMsQ0FBQztRQUNwQztJQUNGO0lBRUFDLE9BQU9DLElBQVksRUFBRUMsS0FBYyxFQUFVO1FBQzNDLE9BQU87WUFDTCxDQUFDLFlBQVksRUFBRUEsUUFBUSxDQUFDLFlBQVksRUFBRUEsTUFBTSxRQUFRLENBQUMsR0FBRyxJQUFJO1lBQzVERDtZQUNBLENBQUMsYUFBYSxDQUFDO1NBQ2hCLENBQUNFLElBQUksQ0FBQztJQUNUO0lBQ0FDLE9BQU9ILElBQVksRUFBRUMsS0FBYyxFQUFVO1FBQzNDLE9BQU87WUFBQyxDQUFDLDJCQUEyQixDQUFDO1lBQUUsSUFBSSxDQUFDRixNQUFNLENBQUNDLE1BQU1DO1lBQVEsQ0FBQyxhQUFhLENBQUM7U0FBQyxDQUFDQyxJQUFJLENBQUM7SUFDekY7SUFFQUUsbUJBQW1CQyxRQUFnQixFQUFFQyxHQUFrQixF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
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { Template } from "
|
|
1
|
+
import { type EntityNamesRecord } from "../../entity/entity-manager";
|
|
2
|
+
import type { TemplateOptions } from "../../types/types";
|
|
3
|
+
import { Template } from "../template";
|
|
4
4
|
export declare class Template__view_id_all_select extends Template {
|
|
5
5
|
constructor();
|
|
6
6
|
getTargetAndPath(names: EntityNamesRecord): {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"view_id_all_select.template.d.ts","sourceRoot":"","sources":["../../../src/template/implementations/view_id_all_select.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AACpF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,qBAAa,4BAA6B,SAAQ,QAAQ;;IAKxD,gBAAgB,CAAC,KAAK,EAAE,iBAAiB;;;;IAOzC,MAAM,CAAC,EAAE,QAAQ,EAAE,EAAE,eAAe,CAAC,oBAAoB,CAAC;;;;;;CAiB3D"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { EntityManager } from "../../entity/entity-manager.js";
|
|
2
|
+
import { Template } from "../template.js";
|
|
3
|
+
export class Template__view_id_all_select extends Template {
|
|
4
|
+
constructor(){
|
|
5
|
+
super("view_id_all_select");
|
|
6
|
+
}
|
|
7
|
+
getTargetAndPath(names) {
|
|
8
|
+
return {
|
|
9
|
+
target: "web/src/components",
|
|
10
|
+
path: `${names.fs}/${names.capital}IdAllSelect.tsx`
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
render({ entityId }) {
|
|
14
|
+
const names = EntityManager.getNamesFromId(entityId);
|
|
15
|
+
return {
|
|
16
|
+
...this.getTargetAndPath(names),
|
|
17
|
+
body: `
|
|
18
|
+
/*
|
|
19
|
+
view_id_all_select
|
|
20
|
+
${JSON.stringify({
|
|
21
|
+
key: this.key,
|
|
22
|
+
options: entityId
|
|
23
|
+
})}
|
|
24
|
+
*/
|
|
25
|
+
`.trim(),
|
|
26
|
+
importKeys: []
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90ZW1wbGF0ZS9pbXBsZW1lbnRhdGlvbnMvdmlld19pZF9hbGxfc2VsZWN0LnRlbXBsYXRlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVudGl0eU1hbmFnZXIsIHR5cGUgRW50aXR5TmFtZXNSZWNvcmQgfSBmcm9tIFwiLi4vLi4vZW50aXR5L2VudGl0eS1tYW5hZ2VyXCI7XG5pbXBvcnQgdHlwZSB7IFRlbXBsYXRlT3B0aW9ucyB9IGZyb20gXCIuLi8uLi90eXBlcy90eXBlc1wiO1xuaW1wb3J0IHsgVGVtcGxhdGUgfSBmcm9tIFwiLi4vdGVtcGxhdGVcIjtcblxuZXhwb3J0IGNsYXNzIFRlbXBsYXRlX192aWV3X2lkX2FsbF9zZWxlY3QgZXh0ZW5kcyBUZW1wbGF0ZSB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKFwidmlld19pZF9hbGxfc2VsZWN0XCIpO1xuICB9XG5cbiAgZ2V0VGFyZ2V0QW5kUGF0aChuYW1lczogRW50aXR5TmFtZXNSZWNvcmQpIHtcbiAgICByZXR1cm4ge1xuICAgICAgdGFyZ2V0OiBcIndlYi9zcmMvY29tcG9uZW50c1wiLFxuICAgICAgcGF0aDogYCR7bmFtZXMuZnN9LyR7bmFtZXMuY2FwaXRhbH1JZEFsbFNlbGVjdC50c3hgLFxuICAgIH07XG4gIH1cblxuICByZW5kZXIoeyBlbnRpdHlJZCB9OiBUZW1wbGF0ZU9wdGlvbnNbXCJ2aWV3X2lkX2FsbF9zZWxlY3RcIl0pIHtcbiAgICBjb25zdCBuYW1lcyA9IEVudGl0eU1hbmFnZXIuZ2V0TmFtZXNGcm9tSWQoZW50aXR5SWQpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnRoaXMuZ2V0VGFyZ2V0QW5kUGF0aChuYW1lcyksXG4gICAgICBib2R5OiBgXG4vKlxudmlld19pZF9hbGxfc2VsZWN0XG4ke0pTT04uc3RyaW5naWZ5KHtcbiAga2V5OiB0aGlzLmtleSxcbiAgb3B0aW9uczogZW50aXR5SWQsXG59KX1cbiovXG4gICAgICBgLnRyaW0oKSxcbiAgICAgIGltcG9ydEtleXM6IFtdLFxuICAgIH07XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJFbnRpdHlNYW5hZ2VyIiwiVGVtcGxhdGUiLCJUZW1wbGF0ZV9fdmlld19pZF9hbGxfc2VsZWN0IiwiZ2V0VGFyZ2V0QW5kUGF0aCIsIm5hbWVzIiwidGFyZ2V0IiwicGF0aCIsImZzIiwiY2FwaXRhbCIsInJlbmRlciIsImVudGl0eUlkIiwiZ2V0TmFtZXNGcm9tSWQiLCJib2R5IiwiSlNPTiIsInN0cmluZ2lmeSIsImtleSIsIm9wdGlvbnMiLCJ0cmltIiwiaW1wb3J0S2V5cyJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsYUFBYSxRQUFnQyxpQ0FBOEI7QUFFcEYsU0FBU0MsUUFBUSxRQUFRLGlCQUFjO0FBRXZDLE9BQU8sTUFBTUMscUNBQXFDRDtJQUNoRCxhQUFjO1FBQ1osS0FBSyxDQUFDO0lBQ1I7SUFFQUUsaUJBQWlCQyxLQUF3QixFQUFFO1FBQ3pDLE9BQU87WUFDTEMsUUFBUTtZQUNSQyxNQUFNLEdBQUdGLE1BQU1HLEVBQUUsQ0FBQyxDQUFDLEVBQUVILE1BQU1JLE9BQU8sQ0FBQyxlQUFlLENBQUM7UUFDckQ7SUFDRjtJQUVBQyxPQUFPLEVBQUVDLFFBQVEsRUFBeUMsRUFBRTtRQUMxRCxNQUFNTixRQUFRSixjQUFjVyxjQUFjLENBQUNEO1FBRTNDLE9BQU87WUFDTCxHQUFHLElBQUksQ0FBQ1AsZ0JBQWdCLENBQUNDLE1BQU07WUFDL0JRLE1BQU0sQ0FBQzs7O0FBR2IsRUFBRUMsS0FBS0MsU0FBUyxDQUFDO2dCQUNmQyxLQUFLLElBQUksQ0FBQ0EsR0FBRztnQkFDYkMsU0FBU047WUFDWCxHQUFHOztNQUVHLENBQUMsQ0FBQ08sSUFBSTtZQUNOQyxZQUFZLEVBQUU7UUFDaEI7SUFDRjtBQUNGIn0=
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { Template } from "
|
|
1
|
+
import { type EntityNamesRecord } from "../../entity/entity-manager";
|
|
2
|
+
import type { TemplateOptions } from "../../types/types";
|
|
3
|
+
import { Template } from "../template";
|
|
4
4
|
export declare class Template__view_id_async_select extends Template {
|
|
5
5
|
constructor();
|
|
6
6
|
getTargetAndPath(names: EntityNamesRecord): {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"view_id_async_select.template.d.ts","sourceRoot":"","sources":["../../../src/template/implementations/view_id_async_select.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AACpF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,qBAAa,8BAA+B,SAAQ,QAAQ;;IAK1D,gBAAgB,CAAC,KAAK,EAAE,iBAAiB;;;;IAOzC,MAAM,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,eAAe,CAAC,sBAAsB,CAAC;;;;;;CA2FxE"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { EntityManager } from "../../entity/entity-manager.js";
|
|
2
|
+
import { Template } from "../template.js";
|
|
3
|
+
export class Template__view_id_async_select extends Template {
|
|
4
|
+
constructor(){
|
|
5
|
+
super("view_id_async_select");
|
|
6
|
+
}
|
|
7
|
+
getTargetAndPath(names) {
|
|
8
|
+
return {
|
|
9
|
+
target: "web/src/components",
|
|
10
|
+
path: `${names.fs}/${names.capital}IdAsyncSelect.tsx`
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
render({ entityId, textField }) {
|
|
14
|
+
const names = EntityManager.getNamesFromId(entityId);
|
|
15
|
+
const entity = EntityManager.get(entityId);
|
|
16
|
+
if (!textField) {
|
|
17
|
+
const pickedProp = entity.props.find((prop)=>[
|
|
18
|
+
"name",
|
|
19
|
+
"title"
|
|
20
|
+
].includes(prop.name));
|
|
21
|
+
if (pickedProp) {
|
|
22
|
+
textField = pickedProp.name;
|
|
23
|
+
} else {
|
|
24
|
+
const candidateProp = entity.props.find((prop)=>prop.type === "string");
|
|
25
|
+
if (candidateProp) {
|
|
26
|
+
textField = candidateProp.name;
|
|
27
|
+
} else {
|
|
28
|
+
console.log("textField 찾을 수 없음");
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
return {
|
|
33
|
+
...this.getTargetAndPath(names),
|
|
34
|
+
body: `
|
|
35
|
+
import React, { useState, useEffect, SyntheticEvent } from "react";
|
|
36
|
+
import { DropdownProps, DropdownItemProps, DropdownOnSearchChangeData, Dropdown } from "semantic-ui-react";
|
|
37
|
+
import { ${names.capital}SubsetKey, ${names.capital}SubsetMapping } from "src/services/sonamu.generated";
|
|
38
|
+
import { ${names.capital}Service } from "src/services/${names.fs}/${names.fs}.service";
|
|
39
|
+
import { ${names.capital}ListParams } from "src/services/${names.fs}/${names.fs}.types";
|
|
40
|
+
|
|
41
|
+
export function ${names.capital}IdAsyncSelect<T extends ${names.capital}SubsetKey>(
|
|
42
|
+
{ subset, baseListParams, textField, valueField, ...props }: DropdownProps & {
|
|
43
|
+
subset: T;
|
|
44
|
+
baseListParams?: ${names.capital}ListParams;
|
|
45
|
+
textField${textField ? "?" : ""}: keyof ${names.capital}SubsetMapping[T];
|
|
46
|
+
valueField?: keyof ${names.capital}SubsetMapping[T];
|
|
47
|
+
},
|
|
48
|
+
) {
|
|
49
|
+
const [options, setOptions] = useState<DropdownItemProps[]>([]);
|
|
50
|
+
const [listParams, setListParams] = useState<${names.capital}ListParams>(
|
|
51
|
+
baseListParams ?? {},
|
|
52
|
+
);
|
|
53
|
+
|
|
54
|
+
const { data, error } = ${names.capital}Service.use${names.capitalPlural}(subset, listParams);
|
|
55
|
+
const { rows: ${names.camelPlural}, total } = data ?? {};
|
|
56
|
+
|
|
57
|
+
useEffect(() => {
|
|
58
|
+
setOptions(
|
|
59
|
+
(${names.camelPlural} ?? []).map((${names.camel}) => {
|
|
60
|
+
return {
|
|
61
|
+
key: ${names.camel}.id,
|
|
62
|
+
value: ${names.camel}[valueField ?? 'id'] as string | number,
|
|
63
|
+
text: String(${names.camel}[textField${textField ? ` ?? '${textField}'` : ""}]),
|
|
64
|
+
};
|
|
65
|
+
}),
|
|
66
|
+
);
|
|
67
|
+
}, [${names.camelPlural}]);
|
|
68
|
+
|
|
69
|
+
useEffect(() => {
|
|
70
|
+
setListParams({
|
|
71
|
+
...listParams,
|
|
72
|
+
...baseListParams,
|
|
73
|
+
});
|
|
74
|
+
}, [baseListParams]);
|
|
75
|
+
|
|
76
|
+
const handleSearchChange = (
|
|
77
|
+
e: SyntheticEvent<HTMLElement, Event>,
|
|
78
|
+
data: DropdownOnSearchChangeData,
|
|
79
|
+
) => {
|
|
80
|
+
setListParams({
|
|
81
|
+
...listParams,
|
|
82
|
+
keyword: data.searchQuery,
|
|
83
|
+
});
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
return (
|
|
87
|
+
<Dropdown
|
|
88
|
+
placeholder="${entity.title ?? names.constant}"
|
|
89
|
+
selection
|
|
90
|
+
options={options}
|
|
91
|
+
onSearchChange={handleSearchChange}
|
|
92
|
+
disabled={!${names.camelPlural}}
|
|
93
|
+
loading={!${names.camelPlural}}
|
|
94
|
+
selectOnBlur={false}
|
|
95
|
+
{...props}
|
|
96
|
+
/>
|
|
97
|
+
);
|
|
98
|
+
}
|
|
99
|
+
`.trim(),
|
|
100
|
+
importKeys: []
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90ZW1wbGF0ZS9pbXBsZW1lbnRhdGlvbnMvdmlld19pZF9hc3luY19zZWxlY3QudGVtcGxhdGUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRW50aXR5TWFuYWdlciwgdHlwZSBFbnRpdHlOYW1lc1JlY29yZCB9IGZyb20gXCIuLi8uLi9lbnRpdHkvZW50aXR5LW1hbmFnZXJcIjtcbmltcG9ydCB0eXBlIHsgVGVtcGxhdGVPcHRpb25zIH0gZnJvbSBcIi4uLy4uL3R5cGVzL3R5cGVzXCI7XG5pbXBvcnQgeyBUZW1wbGF0ZSB9IGZyb20gXCIuLi90ZW1wbGF0ZVwiO1xuXG5leHBvcnQgY2xhc3MgVGVtcGxhdGVfX3ZpZXdfaWRfYXN5bmNfc2VsZWN0IGV4dGVuZHMgVGVtcGxhdGUge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcihcInZpZXdfaWRfYXN5bmNfc2VsZWN0XCIpO1xuICB9XG5cbiAgZ2V0VGFyZ2V0QW5kUGF0aChuYW1lczogRW50aXR5TmFtZXNSZWNvcmQpIHtcbiAgICByZXR1cm4ge1xuICAgICAgdGFyZ2V0OiBcIndlYi9zcmMvY29tcG9uZW50c1wiLFxuICAgICAgcGF0aDogYCR7bmFtZXMuZnN9LyR7bmFtZXMuY2FwaXRhbH1JZEFzeW5jU2VsZWN0LnRzeGAsXG4gICAgfTtcbiAgfVxuXG4gIHJlbmRlcih7IGVudGl0eUlkLCB0ZXh0RmllbGQgfTogVGVtcGxhdGVPcHRpb25zW1widmlld19pZF9hc3luY19zZWxlY3RcIl0pIHtcbiAgICBjb25zdCBuYW1lcyA9IEVudGl0eU1hbmFnZXIuZ2V0TmFtZXNGcm9tSWQoZW50aXR5SWQpO1xuXG4gICAgY29uc3QgZW50aXR5ID0gRW50aXR5TWFuYWdlci5nZXQoZW50aXR5SWQpO1xuICAgIGlmICghdGV4dEZpZWxkKSB7XG4gICAgICBjb25zdCBwaWNrZWRQcm9wID0gZW50aXR5LnByb3BzLmZpbmQoKHByb3ApID0+IFtcIm5hbWVcIiwgXCJ0aXRsZVwiXS5pbmNsdWRlcyhwcm9wLm5hbWUpKTtcbiAgICAgIGlmIChwaWNrZWRQcm9wKSB7XG4gICAgICAgIHRleHRGaWVsZCA9IHBpY2tlZFByb3AubmFtZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IGNhbmRpZGF0ZVByb3AgPSBlbnRpdHkucHJvcHMuZmluZCgocHJvcCkgPT4gcHJvcC50eXBlID09PSBcInN0cmluZ1wiKTtcbiAgICAgICAgaWYgKGNhbmRpZGF0ZVByb3ApIHtcbiAgICAgICAgICB0ZXh0RmllbGQgPSBjYW5kaWRhdGVQcm9wLm5hbWU7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc29sZS5sb2coXCJ0ZXh0RmllbGQg7LC+7J2EIOyImCDsl4bsnYxcIik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgLi4udGhpcy5nZXRUYXJnZXRBbmRQYXRoKG5hbWVzKSxcbiAgICAgIGJvZHk6IGBcbmltcG9ydCBSZWFjdCwgeyB1c2VTdGF0ZSwgdXNlRWZmZWN0LCBTeW50aGV0aWNFdmVudCB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgRHJvcGRvd25Qcm9wcywgRHJvcGRvd25JdGVtUHJvcHMsIERyb3Bkb3duT25TZWFyY2hDaGFuZ2VEYXRhLCBEcm9wZG93biB9IGZyb20gXCJzZW1hbnRpYy11aS1yZWFjdFwiO1xuaW1wb3J0IHsgJHtuYW1lcy5jYXBpdGFsfVN1YnNldEtleSwgJHtcbiAgICAgICAgbmFtZXMuY2FwaXRhbFxuICAgICAgfVN1YnNldE1hcHBpbmcgfSBmcm9tIFwic3JjL3NlcnZpY2VzL3NvbmFtdS5nZW5lcmF0ZWRcIjtcbmltcG9ydCB7ICR7bmFtZXMuY2FwaXRhbH1TZXJ2aWNlIH0gZnJvbSBcInNyYy9zZXJ2aWNlcy8ke25hbWVzLmZzfS8ke25hbWVzLmZzfS5zZXJ2aWNlXCI7XG5pbXBvcnQgeyAke25hbWVzLmNhcGl0YWx9TGlzdFBhcmFtcyB9IGZyb20gXCJzcmMvc2VydmljZXMvJHtuYW1lcy5mc30vJHtuYW1lcy5mc30udHlwZXNcIjtcblxuZXhwb3J0IGZ1bmN0aW9uICR7bmFtZXMuY2FwaXRhbH1JZEFzeW5jU2VsZWN0PFQgZXh0ZW5kcyAke25hbWVzLmNhcGl0YWx9U3Vic2V0S2V5PihcbiAgeyBzdWJzZXQsIGJhc2VMaXN0UGFyYW1zLCB0ZXh0RmllbGQsIHZhbHVlRmllbGQsIC4uLnByb3BzIH06IERyb3Bkb3duUHJvcHMgJiB7XG4gICAgc3Vic2V0OiBUO1xuICAgIGJhc2VMaXN0UGFyYW1zPzogJHtuYW1lcy5jYXBpdGFsfUxpc3RQYXJhbXM7XG4gICAgdGV4dEZpZWxkJHt0ZXh0RmllbGQgPyBcIj9cIiA6IFwiXCJ9OiBrZXlvZiAke25hbWVzLmNhcGl0YWx9U3Vic2V0TWFwcGluZ1tUXTtcbiAgICB2YWx1ZUZpZWxkPzoga2V5b2YgJHtuYW1lcy5jYXBpdGFsfVN1YnNldE1hcHBpbmdbVF07XG4gIH0sXG4pIHtcbiAgY29uc3QgW29wdGlvbnMsIHNldE9wdGlvbnNdID0gdXNlU3RhdGU8RHJvcGRvd25JdGVtUHJvcHNbXT4oW10pO1xuICBjb25zdCBbbGlzdFBhcmFtcywgc2V0TGlzdFBhcmFtc10gPSB1c2VTdGF0ZTwke25hbWVzLmNhcGl0YWx9TGlzdFBhcmFtcz4oXG4gICAgYmFzZUxpc3RQYXJhbXMgPz8ge30sXG4gICk7XG5cbiAgY29uc3QgeyBkYXRhLCBlcnJvciB9ID0gJHtuYW1lcy5jYXBpdGFsfVNlcnZpY2UudXNlJHtuYW1lcy5jYXBpdGFsUGx1cmFsfShzdWJzZXQsIGxpc3RQYXJhbXMpO1xuICBjb25zdCB7IHJvd3M6ICR7bmFtZXMuY2FtZWxQbHVyYWx9LCB0b3RhbCB9ID0gZGF0YSA/PyB7fTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHNldE9wdGlvbnMoXG4gICAgICAoJHtuYW1lcy5jYW1lbFBsdXJhbH0gPz8gW10pLm1hcCgoJHtuYW1lcy5jYW1lbH0pID0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBrZXk6ICR7bmFtZXMuY2FtZWx9LmlkLFxuICAgICAgICAgIHZhbHVlOiAke25hbWVzLmNhbWVsfVt2YWx1ZUZpZWxkID8/ICdpZCddIGFzIHN0cmluZyB8IG51bWJlcixcbiAgICAgICAgICB0ZXh0OiBTdHJpbmcoJHtuYW1lcy5jYW1lbH1bdGV4dEZpZWxkJHt0ZXh0RmllbGQgPyBgID8/ICcke3RleHRGaWVsZH0nYCA6IFwiXCJ9XSksXG4gICAgICAgIH07XG4gICAgICB9KSxcbiAgICApO1xuICB9LCBbJHtuYW1lcy5jYW1lbFBsdXJhbH1dKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHNldExpc3RQYXJhbXMoe1xuICAgICAgLi4ubGlzdFBhcmFtcyxcbiAgICAgIC4uLmJhc2VMaXN0UGFyYW1zLFxuICAgIH0pO1xuICB9LCBbYmFzZUxpc3RQYXJhbXNdKTtcblxuICBjb25zdCBoYW5kbGVTZWFyY2hDaGFuZ2UgPSAoXG4gICAgZTogU3ludGhldGljRXZlbnQ8SFRNTEVsZW1lbnQsIEV2ZW50PixcbiAgICBkYXRhOiBEcm9wZG93bk9uU2VhcmNoQ2hhbmdlRGF0YSxcbiAgKSA9PiB7XG4gICAgc2V0TGlzdFBhcmFtcyh7XG4gICAgICAuLi5saXN0UGFyYW1zLFxuICAgICAga2V5d29yZDogZGF0YS5zZWFyY2hRdWVyeSxcbiAgICB9KTtcbiAgfTtcblxuICByZXR1cm4gKFxuICAgIDxEcm9wZG93blxuICAgICAgcGxhY2Vob2xkZXI9XCIke2VudGl0eS50aXRsZSA/PyBuYW1lcy5jb25zdGFudH1cIlxuICAgICAgc2VsZWN0aW9uXG4gICAgICBvcHRpb25zPXtvcHRpb25zfVxuICAgICAgb25TZWFyY2hDaGFuZ2U9e2hhbmRsZVNlYXJjaENoYW5nZX1cbiAgICAgIGRpc2FibGVkPXshJHtuYW1lcy5jYW1lbFBsdXJhbH19XG4gICAgICBsb2FkaW5nPXshJHtuYW1lcy5jYW1lbFBsdXJhbH19XG4gICAgICBzZWxlY3RPbkJsdXI9e2ZhbHNlfVxuICAgICAgey4uLnByb3BzfVxuICAgIC8+XG4gICk7XG59XG4gICAgICBgLnRyaW0oKSxcbiAgICAgIGltcG9ydEtleXM6IFtdLFxuICAgIH07XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJFbnRpdHlNYW5hZ2VyIiwiVGVtcGxhdGUiLCJUZW1wbGF0ZV9fdmlld19pZF9hc3luY19zZWxlY3QiLCJnZXRUYXJnZXRBbmRQYXRoIiwibmFtZXMiLCJ0YXJnZXQiLCJwYXRoIiwiZnMiLCJjYXBpdGFsIiwicmVuZGVyIiwiZW50aXR5SWQiLCJ0ZXh0RmllbGQiLCJnZXROYW1lc0Zyb21JZCIsImVudGl0eSIsImdldCIsInBpY2tlZFByb3AiLCJwcm9wcyIsImZpbmQiLCJwcm9wIiwiaW5jbHVkZXMiLCJuYW1lIiwiY2FuZGlkYXRlUHJvcCIsInR5cGUiLCJjb25zb2xlIiwibG9nIiwiYm9keSIsImNhcGl0YWxQbHVyYWwiLCJjYW1lbFBsdXJhbCIsImNhbWVsIiwidGl0bGUiLCJjb25zdGFudCIsInRyaW0iLCJpbXBvcnRLZXlzIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxhQUFhLFFBQWdDLGlDQUE4QjtBQUVwRixTQUFTQyxRQUFRLFFBQVEsaUJBQWM7QUFFdkMsT0FBTyxNQUFNQyx1Q0FBdUNEO0lBQ2xELGFBQWM7UUFDWixLQUFLLENBQUM7SUFDUjtJQUVBRSxpQkFBaUJDLEtBQXdCLEVBQUU7UUFDekMsT0FBTztZQUNMQyxRQUFRO1lBQ1JDLE1BQU0sR0FBR0YsTUFBTUcsRUFBRSxDQUFDLENBQUMsRUFBRUgsTUFBTUksT0FBTyxDQUFDLGlCQUFpQixDQUFDO1FBQ3ZEO0lBQ0Y7SUFFQUMsT0FBTyxFQUFFQyxRQUFRLEVBQUVDLFNBQVMsRUFBMkMsRUFBRTtRQUN2RSxNQUFNUCxRQUFRSixjQUFjWSxjQUFjLENBQUNGO1FBRTNDLE1BQU1HLFNBQVNiLGNBQWNjLEdBQUcsQ0FBQ0o7UUFDakMsSUFBSSxDQUFDQyxXQUFXO1lBQ2QsTUFBTUksYUFBYUYsT0FBT0csS0FBSyxDQUFDQyxJQUFJLENBQUMsQ0FBQ0MsT0FBUztvQkFBQztvQkFBUTtpQkFBUSxDQUFDQyxRQUFRLENBQUNELEtBQUtFLElBQUk7WUFDbkYsSUFBSUwsWUFBWTtnQkFDZEosWUFBWUksV0FBV0ssSUFBSTtZQUM3QixPQUFPO2dCQUNMLE1BQU1DLGdCQUFnQlIsT0FBT0csS0FBSyxDQUFDQyxJQUFJLENBQUMsQ0FBQ0MsT0FBU0EsS0FBS0ksSUFBSSxLQUFLO2dCQUNoRSxJQUFJRCxlQUFlO29CQUNqQlYsWUFBWVUsY0FBY0QsSUFBSTtnQkFDaEMsT0FBTztvQkFDTEcsUUFBUUMsR0FBRyxDQUFDO2dCQUNkO1lBQ0Y7UUFDRjtRQUVBLE9BQU87WUFDTCxHQUFHLElBQUksQ0FBQ3JCLGdCQUFnQixDQUFDQyxNQUFNO1lBQy9CcUIsTUFBTSxDQUFDOzs7U0FHSixFQUFFckIsTUFBTUksT0FBTyxDQUFDLFdBQVcsRUFDNUJKLE1BQU1JLE9BQU8sQ0FDZDtTQUNFLEVBQUVKLE1BQU1JLE9BQU8sQ0FBQyw2QkFBNkIsRUFBRUosTUFBTUcsRUFBRSxDQUFDLENBQUMsRUFBRUgsTUFBTUcsRUFBRSxDQUFDO1NBQ3BFLEVBQUVILE1BQU1JLE9BQU8sQ0FBQyxnQ0FBZ0MsRUFBRUosTUFBTUcsRUFBRSxDQUFDLENBQUMsRUFBRUgsTUFBTUcsRUFBRSxDQUFDOztnQkFFaEUsRUFBRUgsTUFBTUksT0FBTyxDQUFDLHdCQUF3QixFQUFFSixNQUFNSSxPQUFPLENBQUM7OztxQkFHbkQsRUFBRUosTUFBTUksT0FBTyxDQUFDO2FBQ3hCLEVBQUVHLFlBQVksTUFBTSxHQUFHLFFBQVEsRUFBRVAsTUFBTUksT0FBTyxDQUFDO3VCQUNyQyxFQUFFSixNQUFNSSxPQUFPLENBQUM7Ozs7K0NBSVEsRUFBRUosTUFBTUksT0FBTyxDQUFDOzs7OzBCQUlyQyxFQUFFSixNQUFNSSxPQUFPLENBQUMsV0FBVyxFQUFFSixNQUFNc0IsYUFBYSxDQUFDO2dCQUMzRCxFQUFFdEIsTUFBTXVCLFdBQVcsQ0FBQzs7OztPQUk3QixFQUFFdkIsTUFBTXVCLFdBQVcsQ0FBQyxhQUFhLEVBQUV2QixNQUFNd0IsS0FBSyxDQUFDOztlQUV2QyxFQUFFeEIsTUFBTXdCLEtBQUssQ0FBQztpQkFDWixFQUFFeEIsTUFBTXdCLEtBQUssQ0FBQzt1QkFDUixFQUFFeEIsTUFBTXdCLEtBQUssQ0FBQyxVQUFVLEVBQUVqQixZQUFZLENBQUMsS0FBSyxFQUFFQSxVQUFVLENBQUMsQ0FBQyxHQUFHLEdBQUc7Ozs7TUFJakYsRUFBRVAsTUFBTXVCLFdBQVcsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O21CQXFCUCxFQUFFZCxPQUFPZ0IsS0FBSyxJQUFJekIsTUFBTTBCLFFBQVEsQ0FBQzs7OztpQkFJbkMsRUFBRTFCLE1BQU11QixXQUFXLENBQUM7Z0JBQ3JCLEVBQUV2QixNQUFNdUIsV0FBVyxDQUFDOzs7Ozs7TUFNOUIsQ0FBQyxDQUFDSSxJQUFJO1lBQ05DLFlBQVksRUFBRTtRQUNoQjtJQUNGO0FBQ0YifQ==
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { Template } from "./base-template";
|
|
1
|
+
import { type EntityNamesRecord } from "../../entity/entity-manager";
|
|
2
|
+
import type { RenderingNode, TemplateKey, TemplateOptions } from "../../types/types";
|
|
3
|
+
import { Template } from "../template";
|
|
5
4
|
export declare class Template__view_list extends Template {
|
|
6
5
|
constructor();
|
|
7
6
|
getTargetAndPath(names: EntityNamesRecord): {
|
|
@@ -17,7 +16,7 @@ export declare class Template__view_list extends Template {
|
|
|
17
16
|
orderBy: string;
|
|
18
17
|
search: string;
|
|
19
18
|
};
|
|
20
|
-
render({ entityId }: TemplateOptions["view_list"]
|
|
19
|
+
render({ entityId }: TemplateOptions["view_list"]): Promise<{
|
|
21
20
|
body: string;
|
|
22
21
|
importKeys: never[];
|
|
23
22
|
preTemplates: {
|
|
@@ -26,13 +25,6 @@ export declare class Template__view_list extends Template {
|
|
|
26
25
|
}[];
|
|
27
26
|
target: string;
|
|
28
27
|
path: string;
|
|
29
|
-
}
|
|
28
|
+
}>;
|
|
30
29
|
}
|
|
31
|
-
export declare function getEnumInfoFromColName(entityId: string, colName: string): {
|
|
32
|
-
id: string;
|
|
33
|
-
targetEntityNames: EntityNamesRecord;
|
|
34
|
-
targetEntityId: string;
|
|
35
|
-
title: string;
|
|
36
|
-
};
|
|
37
|
-
export declare function getRelationPropFromColName(entityId: string, colName: string): RelationProp;
|
|
38
30
|
//# sourceMappingURL=view_list.template.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"view_list.template.d.ts","sourceRoot":"","sources":["../../../src/template/implementations/view_list.template.ts"],"names":[],"mappings":"AAIA,OAAO,EAAiB,KAAK,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AACpF,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAIrF,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGvC,qBAAa,mBAAoB,SAAQ,QAAQ;;IAK/C,gBAAgB,CAAC,KAAK,EAAE,iBAAiB;;;;IAOzC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,GAAE,OAAc,EAAE,SAAS,GAAE,MAAW;IAMpF,YAAY,CACV,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,iBAAiB,EACxB,SAAS,GAAE,MAAc,EACzB,WAAW,GAAE,OAAe,GAC3B,MAAM;IAyDT,kBAAkB,CAChB,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,iBAAiB,GACvB,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE;IAwBpB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,iBAAiB;IAiCjF,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,iBAAiB;IAkC3E,UAAU,CAAC,OAAO,EAAE,aAAa,EAAE,GAAG;QACpC,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;KAChB;IAgBK,MAAM,CAAC,EAAE,QAAQ,EAAE,EAAE,eAAe,CAAC,WAAW,CAAC;;;;;;;;;;CAgUxD"}
|