sonamu 0.6.0 → 0.7.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/.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 +2 -1
- package/dist/api/caster.d.ts.map +1 -1
- package/dist/api/caster.js +6 -1
- 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 +178 -409
- package/dist/api/config.d.ts +27 -13
- package/dist/api/config.d.ts.map +1 -1
- package/dist/api/config.js +19 -26
- package/dist/api/context.d.ts +4 -3
- package/dist/api/context.d.ts.map +1 -1
- package/dist/api/context.js +1 -1
- package/dist/api/decorators.d.ts +20 -6
- package/dist/api/decorators.d.ts.map +1 -1
- package/dist/api/decorators.js +111 -18
- package/dist/api/index.d.ts +2 -2
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +3 -3
- package/dist/api/sonamu.d.ts +7 -7
- package/dist/api/sonamu.d.ts.map +1 -1
- package/dist/api/sonamu.js +83 -51
- 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 +5 -1
- package/dist/bin/build-config.d.ts.map +1 -1
- package/dist/bin/build-config.js +5 -2
- package/dist/bin/cli.js +165 -64
- 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 +30 -13
- 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 +232 -89
- 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 +11 -10
- package/dist/database/db.d.ts +5 -6
- package/dist/database/db.d.ts.map +1 -1
- package/dist/database/db.js +22 -25
- 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 +2 -2
- package/dist/database/puri.d.ts +25 -14
- package/dist/database/puri.d.ts.map +1 -1
- package/dist/database/puri.js +83 -21
- package/dist/database/puri.types.d.ts +21 -7
- package/dist/database/puri.types.d.ts.map +1 -1
- package/dist/database/puri.types.js +4 -1
- 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 +1 -1
- 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 +227 -78
- package/dist/entity/entity-manager.d.ts +165 -2
- package/dist/entity/entity-manager.d.ts.map +1 -1
- package/dist/entity/entity-manager.js +26 -10
- package/dist/entity/entity.d.ts +5 -3
- package/dist/entity/entity.d.ts.map +1 -1
- package/dist/entity/entity.js +153 -54
- 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 +1 -1
- 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 +1 -1
- 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 +1 -1
- package/dist/file-storage/file-storage.js +2 -2
- package/dist/index.d.ts +18 -11
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +19 -13
- 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 +123 -67
- 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 +67 -218
- package/dist/migration/migrator.d.ts +24 -73
- package/dist/migration/migrator.d.ts.map +1 -1
- package/dist/migration/migrator.js +121 -301
- 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 +1 -1
- 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 +91 -8
- package/dist/naite/naite.d.ts.map +1 -1
- package/dist/naite/naite.js +285 -41
- package/dist/stream/sse.d.ts +2 -2
- package/dist/stream/sse.d.ts.map +1 -1
- package/dist/stream/sse.js +1 -1
- package/dist/syncer/api-parser.d.ts +3 -13
- package/dist/syncer/api-parser.d.ts.map +1 -1
- package/dist/syncer/api-parser.js +67 -56
- package/dist/syncer/checksum.d.ts +2 -2
- package/dist/syncer/checksum.d.ts.map +1 -1
- package/dist/syncer/checksum.js +11 -11
- package/dist/syncer/code-generator.d.ts +3 -3
- package/dist/syncer/code-generator.d.ts.map +1 -1
- package/dist/syncer/code-generator.js +37 -17
- package/dist/syncer/entity-operations.d.ts +2 -2
- package/dist/syncer/entity-operations.d.ts.map +1 -1
- package/dist/syncer/entity-operations.js +9 -8
- package/dist/syncer/file-patterns.d.ts +1 -1
- package/dist/syncer/file-patterns.d.ts.map +1 -1
- package/dist/syncer/file-patterns.js +1 -1
- package/dist/syncer/index.d.ts +4 -4
- package/dist/syncer/index.d.ts.map +1 -1
- package/dist/syncer/index.js +5 -5
- package/dist/syncer/module-loader.d.ts +4 -4
- package/dist/syncer/module-loader.d.ts.map +1 -1
- package/dist/syncer/module-loader.js +17 -12
- package/dist/syncer/syncer.d.ts +31 -24
- package/dist/syncer/syncer.d.ts.map +1 -1
- package/dist/syncer/syncer.js +92 -45
- package/dist/template/entity-converter.d.ts +1 -1
- package/dist/template/entity-converter.d.ts.map +1 -1
- package/dist/template/entity-converter.js +15 -8
- package/dist/template/helpers.d.ts +2 -2
- package/dist/template/helpers.d.ts.map +1 -1
- package/dist/template/helpers.js +3 -3
- package/dist/template/implementations/entity.template.d.ts +2 -2
- package/dist/template/implementations/entity.template.d.ts.map +1 -1
- package/dist/template/implementations/entity.template.js +4 -5
- package/dist/template/implementations/generated.template.d.ts +2 -3
- package/dist/template/implementations/generated.template.d.ts.map +1 -1
- package/dist/template/implementations/generated.template.js +46 -29
- package/dist/template/implementations/generated_http.template.d.ts +2 -3
- package/dist/template/implementations/generated_http.template.d.ts.map +1 -1
- package/dist/template/implementations/generated_http.template.js +9 -9
- package/dist/template/implementations/generated_sso.template.d.ts +3 -4
- package/dist/template/implementations/generated_sso.template.d.ts.map +1 -1
- package/dist/template/implementations/generated_sso.template.js +54 -25
- package/dist/template/implementations/init_types.template.d.ts +2 -2
- package/dist/template/implementations/init_types.template.d.ts.map +1 -1
- package/dist/template/implementations/init_types.template.js +2 -2
- package/dist/template/implementations/model.template.d.ts +2 -2
- package/dist/template/implementations/model.template.d.ts.map +1 -1
- package/dist/template/implementations/model.template.js +47 -37
- package/dist/template/implementations/model_test.template.d.ts +2 -2
- package/dist/template/implementations/model_test.template.d.ts.map +1 -1
- package/dist/template/implementations/model_test.template.js +2 -2
- package/dist/template/implementations/service.template.d.ts +4 -4
- package/dist/template/implementations/service.template.d.ts.map +1 -1
- package/dist/template/implementations/service.template.js +24 -16
- package/dist/template/implementations/view_enums_buttonset.template.d.ts +2 -2
- package/dist/template/implementations/view_enums_buttonset.template.d.ts.map +1 -1
- package/dist/template/implementations/view_enums_buttonset.template.js +1 -1
- package/dist/template/implementations/view_enums_dropdown.template.d.ts +2 -2
- package/dist/template/implementations/view_enums_dropdown.template.d.ts.map +1 -1
- package/dist/template/implementations/view_enums_dropdown.template.js +2 -2
- package/dist/template/implementations/view_enums_select.template.d.ts +2 -2
- package/dist/template/implementations/view_enums_select.template.d.ts.map +1 -1
- package/dist/template/implementations/view_enums_select.template.js +2 -2
- package/dist/template/implementations/view_form.template.d.ts +2 -2
- package/dist/template/implementations/view_form.template.d.ts.map +1 -1
- package/dist/template/implementations/view_form.template.js +4 -4
- package/dist/template/implementations/view_id_all_select.template.d.ts +2 -2
- package/dist/template/implementations/view_id_all_select.template.d.ts.map +1 -1
- package/dist/template/implementations/view_id_all_select.template.js +1 -1
- package/dist/template/implementations/view_id_async_select.template.d.ts +2 -2
- package/dist/template/implementations/view_id_async_select.template.d.ts.map +1 -1
- package/dist/template/implementations/view_id_async_select.template.js +1 -1
- package/dist/template/implementations/view_list.template.d.ts +2 -2
- package/dist/template/implementations/view_list.template.d.ts.map +1 -1
- package/dist/template/implementations/view_list.template.js +29 -19
- package/dist/template/implementations/view_list_columns.template.d.ts +3 -3
- package/dist/template/implementations/view_list_columns.template.d.ts.map +1 -1
- package/dist/template/implementations/view_list_columns.template.js +1 -1
- package/dist/template/implementations/view_search_input.template.d.ts +2 -2
- package/dist/template/implementations/view_search_input.template.d.ts.map +1 -1
- package/dist/template/implementations/view_search_input.template.js +1 -1
- package/dist/template/index.d.ts +4 -2
- package/dist/template/index.d.ts.map +1 -1
- package/dist/template/index.js +5 -3
- 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 +12 -2
- package/dist/template/template.d.ts.map +1 -1
- package/dist/template/template.js +19 -6
- package/dist/template/zod-converter.d.ts +40 -7
- package/dist/template/zod-converter.d.ts.map +1 -1
- package/dist/template/zod-converter.js +386 -58
- 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 +12 -3
- 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 +338 -236
- package/dist/types/types.d.ts +709 -104
- package/dist/types/types.d.ts.map +1 -1
- package/dist/types/types.js +309 -52
- package/dist/typings/knex.d.js +2 -2
- package/dist/utils/async-utils.d.ts.map +1 -1
- package/dist/utils/async-utils.js +3 -3
- package/dist/utils/console-util.js +1 -1
- package/dist/utils/controller.d.ts +1 -0
- package/dist/utils/controller.d.ts.map +1 -1
- package/dist/utils/controller.js +4 -1
- package/dist/utils/esm-utils.d.ts +0 -6
- package/dist/utils/esm-utils.d.ts.map +1 -1
- package/dist/utils/esm-utils.js +2 -9
- 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 +1 -1
- package/dist/utils/lodash-able.d.ts.map +1 -1
- package/dist/utils/lodash-able.js +1 -1
- 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 +1 -1
- package/dist/utils/path-utils.d.ts.map +1 -1
- package/dist/utils/path-utils.js +3 -3
- package/dist/utils/process-utils.js +1 -1
- 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 +14 -3
- 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 +7 -1
- package/dist/utils/utils.d.ts.map +1 -1
- package/dist/utils/utils.js +44 -5
- 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 +1 -1
- package/package.json +55 -30
- 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 +176 -533
- package/src/api/config.ts +39 -56
- package/src/api/context.ts +7 -18
- package/src/api/decorators.ts +175 -46
- package/src/api/index.ts +2 -2
- package/src/api/sonamu.ts +133 -124
- package/src/api/validator.ts +83 -0
- package/src/bin/build-config.ts +7 -1
- package/src/bin/cli.ts +192 -110
- 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 +36 -50
- 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 +182 -126
- package/src/database/puri.types.ts +64 -31
- package/src/database/transaction-context.ts +1 -1
- package/src/database/upsert-builder.ts +261 -132
- package/src/entity/entity-manager.ts +36 -28
- package/src/entity/entity.ts +330 -249
- 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 -12
- package/src/migration/code-generation.ts +185 -172
- package/src/migration/migration-set.ts +80 -293
- package/src/migration/migrator.ts +182 -425
- 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 +378 -33
- package/src/shared/web.shared.ts.txt +20 -24
- package/src/stream/sse.ts +5 -5
- package/src/syncer/api-parser.ts +52 -69
- package/src/syncer/checksum.ts +25 -37
- package/src/syncer/code-generator.ts +58 -62
- package/src/syncer/entity-operations.ts +12 -15
- package/src/syncer/file-patterns.ts +2 -2
- package/src/syncer/index.ts +4 -4
- package/src/syncer/module-loader.ts +28 -25
- package/src/syncer/syncer.ts +155 -162
- package/src/template/entity-converter.ts +18 -27
- package/src/template/helpers.ts +8 -11
- package/src/template/implementations/entity.template.ts +6 -6
- package/src/template/implementations/generated.template.ts +99 -99
- package/src/template/implementations/generated_http.template.ts +21 -54
- package/src/template/implementations/generated_sso.template.ts +78 -65
- package/src/template/implementations/init_types.template.ts +4 -6
- package/src/template/implementations/model.template.ts +47 -38
- package/src/template/implementations/model_test.template.ts +3 -3
- package/src/template/implementations/service.template.ts +56 -80
- package/src/template/implementations/view_enums_buttonset.template.ts +2 -2
- package/src/template/implementations/view_enums_dropdown.template.ts +4 -4
- package/src/template/implementations/view_enums_select.template.ts +3 -3
- package/src/template/implementations/view_form.template.ts +34 -75
- package/src/template/implementations/view_id_all_select.template.ts +2 -2
- package/src/template/implementations/view_id_async_select.template.ts +9 -23
- package/src/template/implementations/view_list.template.ts +54 -95
- package/src/template/implementations/view_list_columns.template.ts +4 -10
- package/src/template/implementations/view_search_input.template.ts +2 -2
- package/src/template/index.ts +4 -2
- package/src/template/template-manager.ts +166 -0
- package/src/template/template-types.ts +16 -0
- package/src/template/template.ts +29 -10
- package/src/template/zod-converter.ts +459 -101
- package/src/testing/_relation-graph.ts +18 -11
- package/src/testing/fixture-manager.ts +468 -362
- package/src/types/types.ts +516 -248
- package/src/typings/knex.d.ts +7 -9
- package/src/utils/async-utils.ts +8 -12
- package/src/utils/console-util.ts +1 -1
- package/src/utils/controller.ts +3 -0
- package/src/utils/esm-utils.ts +8 -18
- 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 +3 -6
- package/src/utils/process-utils.ts +1 -1
- package/src/utils/sql-parser.ts +23 -5
- package/src/utils/type-utils.ts +83 -0
- package/src/utils/utils.ts +58 -9
- package/src/utils/zod-error.ts +3 -3
- 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 -72
- 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 -39
- 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 -210
- package/src/bin/cli-wrapper.ts +0 -82
- package/src/database/knex-plugins/knex-on-duplicate-update.ts +0 -45
- package/src/entity/entity-utils.ts +0 -291
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import { type EntityJson } from "../types/types";
|
|
2
|
+
import type { AbsolutePath } from "../utils/path-utils";
|
|
1
3
|
import { Entity } from "./entity";
|
|
2
|
-
import { EntityJson } from "../types/types";
|
|
3
|
-
import { AbsolutePath } from "../utils/path-utils";
|
|
4
4
|
export type EntityNamesRecord = Record<"fs" | "fsPlural" | "camel" | "camelPlural" | "capital" | "capitalPlural" | "upper" | "constant", string>;
|
|
5
5
|
type TableSpec = {
|
|
6
6
|
name: string;
|
|
@@ -15,6 +15,164 @@ declare class EntityManagerClass {
|
|
|
15
15
|
private tableSpecs;
|
|
16
16
|
isAutoloaded: boolean;
|
|
17
17
|
autoload(_?: boolean): Promise<void>;
|
|
18
|
+
schemaValidate(json: unknown): import("zod").ZodError<{
|
|
19
|
+
id: string;
|
|
20
|
+
title: string;
|
|
21
|
+
table: string;
|
|
22
|
+
props: ({
|
|
23
|
+
type: "boolean" | "date" | "integer" | "integer[]" | "bigInteger" | "bigInteger[]" | "boolean[]" | "date[]" | "uuid" | "uuid[]";
|
|
24
|
+
name: string;
|
|
25
|
+
desc?: string | undefined;
|
|
26
|
+
nullable?: boolean | undefined;
|
|
27
|
+
toFilter?: true | undefined;
|
|
28
|
+
dbDefault?: string | number | boolean | undefined;
|
|
29
|
+
} | {
|
|
30
|
+
type: "string";
|
|
31
|
+
name: string;
|
|
32
|
+
length?: number | undefined;
|
|
33
|
+
desc?: string | undefined;
|
|
34
|
+
nullable?: boolean | undefined;
|
|
35
|
+
toFilter?: true | undefined;
|
|
36
|
+
dbDefault?: string | number | boolean | undefined;
|
|
37
|
+
} | {
|
|
38
|
+
type: "string[]";
|
|
39
|
+
name: string;
|
|
40
|
+
length?: number | undefined;
|
|
41
|
+
desc?: string | undefined;
|
|
42
|
+
nullable?: boolean | undefined;
|
|
43
|
+
toFilter?: true | undefined;
|
|
44
|
+
dbDefault?: string | number | boolean | undefined;
|
|
45
|
+
} | {
|
|
46
|
+
type: "enum";
|
|
47
|
+
id: string;
|
|
48
|
+
name: string;
|
|
49
|
+
desc?: string | undefined;
|
|
50
|
+
nullable?: boolean | undefined;
|
|
51
|
+
toFilter?: true | undefined;
|
|
52
|
+
dbDefault?: string | number | boolean | undefined;
|
|
53
|
+
} | {
|
|
54
|
+
type: "enum[]";
|
|
55
|
+
id: string;
|
|
56
|
+
name: string;
|
|
57
|
+
desc?: string | undefined;
|
|
58
|
+
nullable?: boolean | undefined;
|
|
59
|
+
toFilter?: true | undefined;
|
|
60
|
+
dbDefault?: string | number | boolean | undefined;
|
|
61
|
+
} | {
|
|
62
|
+
type: "number";
|
|
63
|
+
name: string;
|
|
64
|
+
numberType?: "numeric" | "real" | "double precision" | undefined;
|
|
65
|
+
precision?: number | undefined;
|
|
66
|
+
scale?: number | undefined;
|
|
67
|
+
desc?: string | undefined;
|
|
68
|
+
nullable?: boolean | undefined;
|
|
69
|
+
toFilter?: true | undefined;
|
|
70
|
+
dbDefault?: string | number | boolean | undefined;
|
|
71
|
+
} | {
|
|
72
|
+
type: "number[]";
|
|
73
|
+
name: string;
|
|
74
|
+
numberType?: "numeric" | "real" | "double precision" | undefined;
|
|
75
|
+
precision?: number | undefined;
|
|
76
|
+
scale?: number | undefined;
|
|
77
|
+
desc?: string | undefined;
|
|
78
|
+
nullable?: boolean | undefined;
|
|
79
|
+
toFilter?: true | undefined;
|
|
80
|
+
dbDefault?: string | number | boolean | undefined;
|
|
81
|
+
} | {
|
|
82
|
+
type: "numeric";
|
|
83
|
+
name: string;
|
|
84
|
+
precision?: number | undefined;
|
|
85
|
+
scale?: number | undefined;
|
|
86
|
+
desc?: string | undefined;
|
|
87
|
+
nullable?: boolean | undefined;
|
|
88
|
+
toFilter?: true | undefined;
|
|
89
|
+
dbDefault?: string | number | boolean | undefined;
|
|
90
|
+
} | {
|
|
91
|
+
type: "numeric[]";
|
|
92
|
+
name: string;
|
|
93
|
+
precision?: number | undefined;
|
|
94
|
+
scale?: number | undefined;
|
|
95
|
+
desc?: string | undefined;
|
|
96
|
+
nullable?: boolean | undefined;
|
|
97
|
+
toFilter?: true | undefined;
|
|
98
|
+
dbDefault?: string | number | boolean | undefined;
|
|
99
|
+
} | {
|
|
100
|
+
type: "json";
|
|
101
|
+
id: string;
|
|
102
|
+
name: string;
|
|
103
|
+
desc?: string | undefined;
|
|
104
|
+
nullable?: boolean | undefined;
|
|
105
|
+
toFilter?: true | undefined;
|
|
106
|
+
dbDefault?: string | number | boolean | undefined;
|
|
107
|
+
} | {
|
|
108
|
+
type: "virtual";
|
|
109
|
+
id: string;
|
|
110
|
+
name: string;
|
|
111
|
+
desc?: string | undefined;
|
|
112
|
+
nullable?: boolean | undefined;
|
|
113
|
+
toFilter?: true | undefined;
|
|
114
|
+
dbDefault?: string | number | boolean | undefined;
|
|
115
|
+
} | {
|
|
116
|
+
relationType: "BelongsToOne";
|
|
117
|
+
type: "relation";
|
|
118
|
+
with: string;
|
|
119
|
+
name: string;
|
|
120
|
+
customJoinClause?: string | undefined;
|
|
121
|
+
useConstraint?: boolean | undefined;
|
|
122
|
+
onUpdate?: "CASCADE" | "SET NULL" | "NO ACTION" | "SET DEFAULT" | "RESTRICT" | undefined;
|
|
123
|
+
onDelete?: "CASCADE" | "SET NULL" | "NO ACTION" | "SET DEFAULT" | "RESTRICT" | undefined;
|
|
124
|
+
desc?: string | undefined;
|
|
125
|
+
nullable?: boolean | undefined;
|
|
126
|
+
toFilter?: true | undefined;
|
|
127
|
+
dbDefault?: string | number | boolean | undefined;
|
|
128
|
+
} | {
|
|
129
|
+
relationType: "HasMany";
|
|
130
|
+
joinColumn: string;
|
|
131
|
+
type: "relation";
|
|
132
|
+
with: string;
|
|
133
|
+
name: string;
|
|
134
|
+
fromColumn?: string | undefined;
|
|
135
|
+
desc?: string | undefined;
|
|
136
|
+
nullable?: boolean | undefined;
|
|
137
|
+
toFilter?: true | undefined;
|
|
138
|
+
dbDefault?: string | number | boolean | undefined;
|
|
139
|
+
} | {
|
|
140
|
+
relationType: "ManyToMany";
|
|
141
|
+
joinTable: string;
|
|
142
|
+
onUpdate: "CASCADE" | "SET NULL" | "NO ACTION" | "SET DEFAULT" | "RESTRICT";
|
|
143
|
+
onDelete: "CASCADE" | "SET NULL" | "NO ACTION" | "SET DEFAULT" | "RESTRICT";
|
|
144
|
+
type: "relation";
|
|
145
|
+
with: string;
|
|
146
|
+
name: string;
|
|
147
|
+
desc?: string | undefined;
|
|
148
|
+
nullable?: boolean | undefined;
|
|
149
|
+
toFilter?: true | undefined;
|
|
150
|
+
dbDefault?: string | number | boolean | undefined;
|
|
151
|
+
} | {
|
|
152
|
+
relationType: "OneToOne";
|
|
153
|
+
type: "relation";
|
|
154
|
+
with: string;
|
|
155
|
+
name: string;
|
|
156
|
+
customJoinClause?: string | undefined;
|
|
157
|
+
hasJoinColumn?: boolean | undefined;
|
|
158
|
+
useConstraint?: boolean | undefined;
|
|
159
|
+
onUpdate?: "CASCADE" | "SET NULL" | "NO ACTION" | "SET DEFAULT" | "RESTRICT" | undefined;
|
|
160
|
+
onDelete?: "CASCADE" | "SET NULL" | "NO ACTION" | "SET DEFAULT" | "RESTRICT" | undefined;
|
|
161
|
+
desc?: string | undefined;
|
|
162
|
+
nullable?: boolean | undefined;
|
|
163
|
+
toFilter?: true | undefined;
|
|
164
|
+
dbDefault?: string | number | boolean | undefined;
|
|
165
|
+
})[];
|
|
166
|
+
indexes: {
|
|
167
|
+
type: "index" | "unique" | "fulltext";
|
|
168
|
+
columns: string[];
|
|
169
|
+
name?: string | undefined;
|
|
170
|
+
parser?: "built-in" | "ngram" | undefined;
|
|
171
|
+
}[];
|
|
172
|
+
subsets: Record<string, string[]>;
|
|
173
|
+
enums: Record<string, Record<string, string>>;
|
|
174
|
+
parentId?: string | undefined;
|
|
175
|
+
}> | null;
|
|
18
176
|
reload(doSilent?: boolean): Promise<void>;
|
|
19
177
|
register(json: EntityJson): Promise<void>;
|
|
20
178
|
get(entityId: string): Entity;
|
|
@@ -27,6 +185,11 @@ declare class EntityManagerClass {
|
|
|
27
185
|
setTableSpec(tableSpec: TableSpec): void;
|
|
28
186
|
getTableSpec(key: string): TableSpec;
|
|
29
187
|
getNamesFromId(entityId: string): EntityNamesRecord;
|
|
188
|
+
/**
|
|
189
|
+
* EntityId는 Model을 제외한 PascalCase 이름입니다. (ex. "User")
|
|
190
|
+
* @param filePath
|
|
191
|
+
* @returns
|
|
192
|
+
*/
|
|
30
193
|
getEntityIdFromPath(filePath: AbsolutePath): string;
|
|
31
194
|
}
|
|
32
195
|
export declare const EntityManager: EntityManagerClass;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity-manager.d.ts","sourceRoot":"","sources":["../../src/entity/entity-manager.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"entity-manager.d.ts","sourceRoot":"","sources":["../../src/entity/entity-manager.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,UAAU,EAAoB,MAAM,gBAAgB,CAAC;AACnE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,MAAM,MAAM,iBAAiB,GAAG,MAAM,CACpC,IAAI,GAAG,UAAU,GAAG,OAAO,GAAG,aAAa,GAAG,SAAS,GAAG,eAAe,GAAG,OAAO,GAAG,UAAU,EAChG,MAAM,CACP,CAAC;AACF,KAAK,SAAS,GAAG;IACf,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,EAAE,CAAC;CACvD,CAAC;AACF,cAAM,kBAAkB;IACtB,OAAO,CAAC,QAAQ,CAAkC;IAC3C,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAa;IACpD,OAAO,CAAC,UAAU,CAAqC;IAChD,YAAY,EAAE,OAAO,CAAS;IAG/B,QAAQ,CAAC,CAAC,GAAE,OAAe;IA+BjC,cAAc,CAAC,IAAI,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAKtB,MAAM,CAAC,QAAQ,GAAE,OAAe;IAShC,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAO/C,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAS7B,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAKjC,SAAS,IAAI,MAAM,EAAE;IAIrB,eAAe,IAAI,MAAM,EAAE;IAO3B,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE;IAO1C,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IAKpD,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IASlC,YAAY,CAAC,SAAS,EAAE,SAAS;IAIjC,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS;IASpC,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,iBAAiB;IAmBnD;;;;OAIG;IACH,mBAAmB,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM;CAKpD;AAED,eAAO,MAAM,aAAa,oBAA2B,CAAC"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
|
-
import
|
|
1
|
+
import assert from "assert";
|
|
2
|
+
import chalk from "chalk";
|
|
3
|
+
import { glob, readFile } from "node:fs/promises";
|
|
2
4
|
import inflection from "inflection";
|
|
3
5
|
import path from "path";
|
|
4
|
-
import {
|
|
6
|
+
import { prettifyError } from "zod";
|
|
5
7
|
import { Sonamu } from "../api/sonamu.js";
|
|
6
|
-
import {
|
|
7
|
-
import
|
|
8
|
+
import { EntityJsonSchema } from "../types/types.js";
|
|
9
|
+
import { Entity } from "./entity.js";
|
|
8
10
|
class EntityManagerClass {
|
|
9
11
|
entities = new Map();
|
|
10
12
|
modulePaths = new Map();
|
|
@@ -16,10 +18,16 @@ class EntityManagerClass {
|
|
|
16
18
|
return;
|
|
17
19
|
}
|
|
18
20
|
const pathPattern = path.join(Sonamu.apiRootPath, "/src/application/**/*.entity.json");
|
|
19
|
-
let count = 0;
|
|
20
21
|
for await (const file of glob(path.resolve(pathPattern))){
|
|
21
|
-
|
|
22
|
-
|
|
22
|
+
const json = JSON.parse((await readFile(file)).toString());
|
|
23
|
+
// entity.json 스키마 검증
|
|
24
|
+
const error = this.schemaValidate(json);
|
|
25
|
+
if (error) {
|
|
26
|
+
const relativePath = path.relative(Sonamu.apiRootPath, file);
|
|
27
|
+
const errorMessage = prettifyError(error);
|
|
28
|
+
console.error(chalk.red(`Invalid entity.json schema: ${relativePath}\n${chalk.yellow(errorMessage)}`));
|
|
29
|
+
}
|
|
30
|
+
await this.register(json);
|
|
23
31
|
}
|
|
24
32
|
// !doSilent &&
|
|
25
33
|
// console.log(
|
|
@@ -29,6 +37,10 @@ class EntityManagerClass {
|
|
|
29
37
|
// );
|
|
30
38
|
this.isAutoloaded = true;
|
|
31
39
|
}
|
|
40
|
+
schemaValidate(json) {
|
|
41
|
+
const result = EntityJsonSchema.safeParse(json);
|
|
42
|
+
return result.success ? null : result.error;
|
|
43
|
+
}
|
|
32
44
|
async reload(doSilent = false) {
|
|
33
45
|
this.entities.clear();
|
|
34
46
|
this.modulePaths.clear();
|
|
@@ -103,12 +115,16 @@ class EntityManagerClass {
|
|
|
103
115
|
constant: inflection.underscore(entityId).toUpperCase()
|
|
104
116
|
};
|
|
105
117
|
}
|
|
106
|
-
|
|
118
|
+
/**
|
|
119
|
+
* EntityId는 Model을 제외한 PascalCase 이름입니다. (ex. "User")
|
|
120
|
+
* @param filePath
|
|
121
|
+
* @returns
|
|
122
|
+
*/ getEntityIdFromPath(filePath) {
|
|
107
123
|
const matched = filePath.match(/application\/(.+)\//);
|
|
108
124
|
assert(matched?.[1]);
|
|
109
|
-
return inflection.camelize(matched[1].replace(
|
|
125
|
+
return inflection.camelize(matched[1].replace(/-/g, "_"));
|
|
110
126
|
}
|
|
111
127
|
}
|
|
112
128
|
export const EntityManager = new EntityManagerClass();
|
|
113
129
|
|
|
114
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbnRpdHkvZW50aXR5LW1hbmFnZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ2xvYiB9IGZyb20gXCJmcy9wcm9taXNlc1wiO1xuaW1wb3J0IGluZmxlY3Rpb24gZnJvbSBcImluZmxlY3Rpb25cIjtcbmltcG9ydCAqIGFzIF8gZnJvbSBcImxvZGFzaC1lc1wiO1xuaW1wb3J0IHBhdGggZnJvbSBcInBhdGhcIjtcbmltcG9ydCB7IEVudGl0eSB9IGZyb20gXCIuL2VudGl0eVwiO1xuaW1wb3J0IHsgRW50aXR5SnNvbiB9IGZyb20gXCIuLi90eXBlcy90eXBlc1wiO1xuaW1wb3J0IHsgU29uYW11IH0gZnJvbSBcIi4uL2FwaS9zb25hbXVcIjtcbmltcG9ydCB7IHJlYWRGaWxlIH0gZnJvbSBcImZzL3Byb21pc2VzXCI7XG5pbXBvcnQgeyBBYnNvbHV0ZVBhdGggfSBmcm9tIFwiLi4vdXRpbHMvcGF0aC11dGlsc1wiO1xuaW1wb3J0IGFzc2VydCBmcm9tIFwiYXNzZXJ0XCI7XG5cbmV4cG9ydCB0eXBlIEVudGl0eU5hbWVzUmVjb3JkID0gUmVjb3JkPFxuICB8IFwiZnNcIlxuICB8IFwiZnNQbHVyYWxcIlxuICB8IFwiY2FtZWxcIlxuICB8IFwiY2FtZWxQbHVyYWxcIlxuICB8IFwiY2FwaXRhbFwiXG4gIHwgXCJjYXBpdGFsUGx1cmFsXCJcbiAgfCBcInVwcGVyXCJcbiAgfCBcImNvbnN0YW50XCIsXG4gIHN0cmluZ1xuPjtcbnR5cGUgVGFibGVTcGVjID0ge1xuICBuYW1lOiBzdHJpbmc7XG4gIHVuaXF1ZUluZGV4ZXM6IHsgbmFtZT86IHN0cmluZzsgY29sdW1uczogc3RyaW5nW10gfVtdO1xufTtcbmNsYXNzIEVudGl0eU1hbmFnZXJDbGFzcyB7XG4gIHByaXZhdGUgZW50aXRpZXM6IE1hcDxzdHJpbmcsIEVudGl0eT4gPSBuZXcgTWFwKCk7XG4gIHB1YmxpYyBtb2R1bGVQYXRoczogTWFwPHN0cmluZywgc3RyaW5nPiA9IG5ldyBNYXAoKTtcbiAgcHJpdmF0ZSB0YWJsZVNwZWNzOiBNYXA8c3RyaW5nLCBUYWJsZVNwZWM+ID0gbmV3IE1hcCgpO1xuICBwdWJsaWMgaXNBdXRvbG9hZGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLy8g6rK966GcIOyghOuLrOuwm+yVhCDrqqjrk6AgZW50aXR5Lmpzb24g7YyM7J28IOuhnOuTnFxuICBhc3luYyBhdXRvbG9hZChfOiBib29sZWFuID0gZmFsc2UpIHtcbiAgICBpZiAodGhpcy5pc0F1dG9sb2FkZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgcGF0aFBhdHRlcm4gPSBwYXRoLmpvaW4oXG4gICAgICBTb25hbXUuYXBpUm9vdFBhdGgsXG4gICAgICBcIi9zcmMvYXBwbGljYXRpb24vKiovKi5lbnRpdHkuanNvblwiXG4gICAgKTtcblxuICAgIGxldCBjb3VudCA9IDA7XG4gICAgZm9yIGF3YWl0IChjb25zdCBmaWxlIG9mIGdsb2IocGF0aC5yZXNvbHZlKHBhdGhQYXR0ZXJuISkpKSB7XG4gICAgICBhd2FpdCB0aGlzLnJlZ2lzdGVyKEpTT04ucGFyc2UoKGF3YWl0IHJlYWRGaWxlKGZpbGUpKS50b1N0cmluZygpKSk7XG4gICAgICBjb3VudCsrO1xuICAgIH1cbiAgICAvLyAhZG9TaWxlbnQgJiZcbiAgICAvLyAgIGNvbnNvbGUubG9nKFxuICAgIC8vICAgICBjaGFsay5ncmF5KFxuICAgIC8vICAgICAgIGBbTG9hZGluZ10gTG9hZGVkIGVudGl0eSBkZWZpbml0aW9ucyBmcm9tIFwiKi5lbnRpdHkuanNvblwiIGZpbGVzOiAke2NvdW50fSBmaWxlcy5gXG4gICAgLy8gICAgIClcbiAgICAvLyAgICk7XG5cbiAgICB0aGlzLmlzQXV0b2xvYWRlZCA9IHRydWU7XG4gIH1cblxuICBhc3luYyByZWxvYWQoZG9TaWxlbnQ6IGJvb2xlYW4gPSBmYWxzZSkge1xuICAgIHRoaXMuZW50aXRpZXMuY2xlYXIoKTtcbiAgICB0aGlzLm1vZHVsZVBhdGhzLmNsZWFyKCk7XG4gICAgdGhpcy50YWJsZVNwZWNzLmNsZWFyKCk7XG4gICAgdGhpcy5pc0F1dG9sb2FkZWQgPSBmYWxzZTtcblxuICAgIHJldHVybiBhd2FpdCB0aGlzLmF1dG9sb2FkKGRvU2lsZW50KTtcbiAgfVxuXG4gIGFzeW5jIHJlZ2lzdGVyKGpzb246IEVudGl0eUpzb24pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBlbnRpdHkgPSBuZXcgRW50aXR5KGpzb24pO1xuICAgIGF3YWl0IGVudGl0eS5yZWdpc3Rlck1vZHVsZVBhdGhzKCk7XG4gICAgZW50aXR5LnJlZ2lzdGVyVGFibGVTcGVjcygpO1xuICAgIHRoaXMuZW50aXRpZXMuc2V0KGpzb24uaWQsIGVudGl0eSk7XG4gIH1cblxuICBnZXQoZW50aXR5SWQ6IHN0cmluZyk6IEVudGl0eSB7XG4gICAgY29uc3QgZW50aXR5ID0gdGhpcy5lbnRpdGllcy5nZXQoZW50aXR5SWQpO1xuICAgIGlmIChlbnRpdHkgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGDsobTsnqztlZjsp4Ag7JWK64qUIEVudGl0eSDsmpTssq0gJHtlbnRpdHlJZH1gKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZW50aXR5O1xuICB9XG5cbiAgZXhpc3RzKGVudGl0eUlkOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBjb25zdCBlbnRpdHkgPSB0aGlzLmVudGl0aWVzLmdldChlbnRpdHlJZCk7XG4gICAgcmV0dXJuIGVudGl0eSAhPT0gdW5kZWZpbmVkO1xuICB9XG5cbiAgZ2V0QWxsSWRzKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbShFbnRpdHlNYW5hZ2VyLmVudGl0aWVzLmtleXMoKSkuc29ydCgpO1xuICB9XG5cbiAgZ2V0QWxsUGFyZW50SWRzKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gdGhpcy5nZXRBbGxJZHMoKS5maWx0ZXIoKGVudGl0eUlkKSA9PiB7XG4gICAgICBjb25zdCBlbnRpdHkgPSB0aGlzLmdldChlbnRpdHlJZCk7XG4gICAgICByZXR1cm4gZW50aXR5LnBhcmVudElkID09PSB1bmRlZmluZWQ7XG4gICAgfSk7XG4gIH1cblxuICBnZXRDaGlsZHJlbklkcyhwYXJlbnRJZDogc3RyaW5nKTogc3RyaW5nW10ge1xuICAgIHJldHVybiB0aGlzLmdldEFsbElkcygpLmZpbHRlcigoZW50aXR5SWQpID0+IHtcbiAgICAgIGNvbnN0IGVudGl0eSA9IHRoaXMuZ2V0KGVudGl0eUlkKTtcbiAgICAgIHJldHVybiBlbnRpdHkucGFyZW50SWQgPT09IHBhcmVudElkO1xuICAgIH0pO1xuICB9XG5cbiAgc2V0TW9kdWxlUGF0aChrZXk6IHN0cmluZywgbW9kdWxlUGF0aDogc3RyaW5nKTogdm9pZCB7XG4gICAgLy8gY29uc29sZS5kZWJ1ZyhjaGFsay5jeWFuKGBzZXRNb2R1bGVQYXRoIDo6ICR7a2V5fSA6OiAke21vZHVsZVBhdGh9YCkpO1xuICAgIHRoaXMubW9kdWxlUGF0aHMuc2V0KGtleSwgbW9kdWxlUGF0aCk7XG4gIH1cblxuICBnZXRNb2R1bGVQYXRoKGtleTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCBtb2R1bGVQYXRoID0gdGhpcy5tb2R1bGVQYXRocy5nZXQoa2V5KTtcbiAgICBpZiAobW9kdWxlUGF0aCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYOyhtOyerO2VmOyngCDslYrripQg66qo65OIIO2MqOyKpCDsmpTssq0gJHtrZXl9YCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG1vZHVsZVBhdGg7XG4gIH1cblxuICBzZXRUYWJsZVNwZWModGFibGVTcGVjOiBUYWJsZVNwZWMpIHtcbiAgICB0aGlzLnRhYmxlU3BlY3Muc2V0KHRhYmxlU3BlYy5uYW1lLCB0YWJsZVNwZWMpO1xuICB9XG5cbiAgZ2V0VGFibGVTcGVjKGtleTogc3RyaW5nKTogVGFibGVTcGVjIHtcbiAgICBjb25zdCB0YWJsZVNwZWMgPSB0aGlzLnRhYmxlU3BlY3MuZ2V0KGtleSk7XG4gICAgaWYgKHRhYmxlU3BlYyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYOyhtOyerO2VmOyngCDslYrripQg7YWM7J2067iUIOyKpO2OmSDsmpTssq0gJHtrZXl9YCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRhYmxlU3BlYztcbiAgfVxuXG4gIGdldE5hbWVzRnJvbUlkKGVudGl0eUlkOiBzdHJpbmcpOiBFbnRpdHlOYW1lc1JlY29yZCB7XG4gICAgLy8gZW50aXR5SWTqsIAg64uo67O17IiYIOuPme2YlSDri6jslrTsnbgg6rK97JqwIExpc3Qg67aZ7Jes7IScIOyDneyEsVxuICAgIGNvbnN0IHBsdXJhbGl6ZWQgPVxuICAgICAgaW5mbGVjdGlvbi5wbHVyYWxpemUoZW50aXR5SWQpID09PSBlbnRpdHlJZFxuICAgICAgICA/IGAke2VudGl0eUlkfUxpc3RgXG4gICAgICAgIDogaW5mbGVjdGlvbi5wbHVyYWxpemUoZW50aXR5SWQpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGZzOiBpbmZsZWN0aW9uLmRhc2hlcml6ZShpbmZsZWN0aW9uLnVuZGVyc2NvcmUoZW50aXR5SWQpKS50b0xvd2VyQ2FzZSgpLFxuICAgICAgZnNQbHVyYWw6IGluZmxlY3Rpb25cbiAgICAgICAgLmRhc2hlcml6ZShpbmZsZWN0aW9uLnVuZGVyc2NvcmUocGx1cmFsaXplZCkpXG4gICAgICAgIC50b0xvd2VyQ2FzZSgpLFxuICAgICAgY2FtZWw6IGluZmxlY3Rpb24uY2FtZWxpemUoZW50aXR5SWQsIHRydWUpLFxuICAgICAgY2FtZWxQbHVyYWw6IGluZmxlY3Rpb24uY2FtZWxpemUocGx1cmFsaXplZCwgdHJ1ZSksXG4gICAgICBjYXBpdGFsOiBlbnRpdHlJZCxcbiAgICAgIGNhcGl0YWxQbHVyYWw6IHBsdXJhbGl6ZWQsXG4gICAgICB1cHBlcjogZW50aXR5SWQudG9VcHBlckNhc2UoKSxcbiAgICAgIGNvbnN0YW50OiBpbmZsZWN0aW9uLnVuZGVyc2NvcmUoZW50aXR5SWQpLnRvVXBwZXJDYXNlKCksXG4gICAgfTtcbiAgfVxuXG4gIGdldEVudGl0eUlkRnJvbVBhdGgoZmlsZVBhdGg6IEFic29sdXRlUGF0aCk6IHN0cmluZyB7XG4gICAgY29uc3QgbWF0Y2hlZCA9IGZpbGVQYXRoLm1hdGNoKC9hcHBsaWNhdGlvblxcLyguKylcXC8vKTtcbiAgICBhc3NlcnQobWF0Y2hlZD8uWzFdKTtcbiAgICByZXR1cm4gaW5mbGVjdGlvbi5jYW1lbGl6ZShtYXRjaGVkWzFdLnJlcGxhY2UoL1xcLS9nLCBcIl9cIikpO1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBFbnRpdHlNYW5hZ2VyID0gbmV3IEVudGl0eU1hbmFnZXJDbGFzcygpO1xuIl0sIm5hbWVzIjpbImdsb2IiLCJpbmZsZWN0aW9uIiwicGF0aCIsIkVudGl0eSIsIlNvbmFtdSIsInJlYWRGaWxlIiwiYXNzZXJ0IiwiRW50aXR5TWFuYWdlckNsYXNzIiwiZW50aXRpZXMiLCJNYXAiLCJtb2R1bGVQYXRocyIsInRhYmxlU3BlY3MiLCJpc0F1dG9sb2FkZWQiLCJhdXRvbG9hZCIsIl8iLCJwYXRoUGF0dGVybiIsImpvaW4iLCJhcGlSb290UGF0aCIsImNvdW50IiwiZmlsZSIsInJlc29sdmUiLCJyZWdpc3RlciIsIkpTT04iLCJwYXJzZSIsInRvU3RyaW5nIiwicmVsb2FkIiwiZG9TaWxlbnQiLCJjbGVhciIsImpzb24iLCJlbnRpdHkiLCJyZWdpc3Rlck1vZHVsZVBhdGhzIiwicmVnaXN0ZXJUYWJsZVNwZWNzIiwic2V0IiwiaWQiLCJnZXQiLCJlbnRpdHlJZCIsInVuZGVmaW5lZCIsIkVycm9yIiwiZXhpc3RzIiwiZ2V0QWxsSWRzIiwiQXJyYXkiLCJmcm9tIiwiRW50aXR5TWFuYWdlciIsImtleXMiLCJzb3J0IiwiZ2V0QWxsUGFyZW50SWRzIiwiZmlsdGVyIiwicGFyZW50SWQiLCJnZXRDaGlsZHJlbklkcyIsInNldE1vZHVsZVBhdGgiLCJrZXkiLCJtb2R1bGVQYXRoIiwiZ2V0TW9kdWxlUGF0aCIsInNldFRhYmxlU3BlYyIsInRhYmxlU3BlYyIsIm5hbWUiLCJnZXRUYWJsZVNwZWMiLCJnZXROYW1lc0Zyb21JZCIsInBsdXJhbGl6ZWQiLCJwbHVyYWxpemUiLCJmcyIsImRhc2hlcml6ZSIsInVuZGVyc2NvcmUiLCJ0b0xvd2VyQ2FzZSIsImZzUGx1cmFsIiwiY2FtZWwiLCJjYW1lbGl6ZSIsImNhbWVsUGx1cmFsIiwiY2FwaXRhbCIsImNhcGl0YWxQbHVyYWwiLCJ1cHBlciIsInRvVXBwZXJDYXNlIiwiY29uc3RhbnQiLCJnZXRFbnRpdHlJZEZyb21QYXRoIiwiZmlsZVBhdGgiLCJtYXRjaGVkIiwibWF0Y2giLCJyZXBsYWNlIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxJQUFJLFFBQVEsbUJBQWM7QUFDbkMsT0FBT0MsZ0JBQWdCLGFBQWE7QUFFcEMsT0FBT0MsVUFBVSxPQUFPO0FBQ3hCLFNBQVNDLE1BQU0sUUFBUSxjQUFXO0FBRWxDLFNBQVNDLE1BQU0sUUFBUSxtQkFBZ0I7QUFDdkMsU0FBU0MsUUFBUSxRQUFRLG1CQUFjO0FBRXZDLE9BQU9DLFlBQVksU0FBUztBQWlCNUIsTUFBTUM7SUFDSUMsV0FBZ0MsSUFBSUMsTUFBTTtJQUMzQ0MsY0FBbUMsSUFBSUQsTUFBTTtJQUM1Q0UsYUFBcUMsSUFBSUYsTUFBTTtJQUNoREcsZUFBd0IsTUFBTTtJQUVyQywrQkFBK0I7SUFDL0IsTUFBTUMsU0FBU0MsSUFBYSxLQUFLLEVBQUU7UUFDakMsSUFBSSxJQUFJLENBQUNGLFlBQVksRUFBRTtZQUNyQjtRQUNGO1FBQ0EsTUFBTUcsY0FBY2IsS0FBS2MsSUFBSSxDQUMzQlosT0FBT2EsV0FBVyxFQUNsQjtRQUdGLElBQUlDLFFBQVE7UUFDWixXQUFXLE1BQU1DLFFBQVFuQixLQUFLRSxLQUFLa0IsT0FBTyxDQUFDTCxjQUFnQjtZQUN6RCxNQUFNLElBQUksQ0FBQ00sUUFBUSxDQUFDQyxLQUFLQyxLQUFLLENBQUMsQUFBQyxDQUFBLE1BQU1sQixTQUFTYyxLQUFJLEVBQUdLLFFBQVE7WUFDOUROO1FBQ0Y7UUFDQSxlQUFlO1FBQ2YsaUJBQWlCO1FBQ2pCLGtCQUFrQjtRQUNsQiwwRkFBMEY7UUFDMUYsUUFBUTtRQUNSLE9BQU87UUFFUCxJQUFJLENBQUNOLFlBQVksR0FBRztJQUN0QjtJQUVBLE1BQU1hLE9BQU9DLFdBQW9CLEtBQUssRUFBRTtRQUN0QyxJQUFJLENBQUNsQixRQUFRLENBQUNtQixLQUFLO1FBQ25CLElBQUksQ0FBQ2pCLFdBQVcsQ0FBQ2lCLEtBQUs7UUFDdEIsSUFBSSxDQUFDaEIsVUFBVSxDQUFDZ0IsS0FBSztRQUNyQixJQUFJLENBQUNmLFlBQVksR0FBRztRQUVwQixPQUFPLE1BQU0sSUFBSSxDQUFDQyxRQUFRLENBQUNhO0lBQzdCO0lBRUEsTUFBTUwsU0FBU08sSUFBZ0IsRUFBaUI7UUFDOUMsTUFBTUMsU0FBUyxJQUFJMUIsT0FBT3lCO1FBQzFCLE1BQU1DLE9BQU9DLG1CQUFtQjtRQUNoQ0QsT0FBT0Usa0JBQWtCO1FBQ3pCLElBQUksQ0FBQ3ZCLFFBQVEsQ0FBQ3dCLEdBQUcsQ0FBQ0osS0FBS0ssRUFBRSxFQUFFSjtJQUM3QjtJQUVBSyxJQUFJQyxRQUFnQixFQUFVO1FBQzVCLE1BQU1OLFNBQVMsSUFBSSxDQUFDckIsUUFBUSxDQUFDMEIsR0FBRyxDQUFDQztRQUNqQyxJQUFJTixXQUFXTyxXQUFXO1lBQ3hCLE1BQU0sSUFBSUMsTUFBTSxDQUFDLGtCQUFrQixFQUFFRixVQUFVO1FBQ2pEO1FBRUEsT0FBT047SUFDVDtJQUVBUyxPQUFPSCxRQUFnQixFQUFXO1FBQ2hDLE1BQU1OLFNBQVMsSUFBSSxDQUFDckIsUUFBUSxDQUFDMEIsR0FBRyxDQUFDQztRQUNqQyxPQUFPTixXQUFXTztJQUNwQjtJQUVBRyxZQUFzQjtRQUNwQixPQUFPQyxNQUFNQyxJQUFJLENBQUNDLGNBQWNsQyxRQUFRLENBQUNtQyxJQUFJLElBQUlDLElBQUk7SUFDdkQ7SUFFQUMsa0JBQTRCO1FBQzFCLE9BQU8sSUFBSSxDQUFDTixTQUFTLEdBQUdPLE1BQU0sQ0FBQyxDQUFDWDtZQUM5QixNQUFNTixTQUFTLElBQUksQ0FBQ0ssR0FBRyxDQUFDQztZQUN4QixPQUFPTixPQUFPa0IsUUFBUSxLQUFLWDtRQUM3QjtJQUNGO0lBRUFZLGVBQWVELFFBQWdCLEVBQVk7UUFDekMsT0FBTyxJQUFJLENBQUNSLFNBQVMsR0FBR08sTUFBTSxDQUFDLENBQUNYO1lBQzlCLE1BQU1OLFNBQVMsSUFBSSxDQUFDSyxHQUFHLENBQUNDO1lBQ3hCLE9BQU9OLE9BQU9rQixRQUFRLEtBQUtBO1FBQzdCO0lBQ0Y7SUFFQUUsY0FBY0MsR0FBVyxFQUFFQyxVQUFrQixFQUFRO1FBQ25ELHlFQUF5RTtRQUN6RSxJQUFJLENBQUN6QyxXQUFXLENBQUNzQixHQUFHLENBQUNrQixLQUFLQztJQUM1QjtJQUVBQyxjQUFjRixHQUFXLEVBQVU7UUFDakMsTUFBTUMsYUFBYSxJQUFJLENBQUN6QyxXQUFXLENBQUN3QixHQUFHLENBQUNnQjtRQUN4QyxJQUFJQyxlQUFlZixXQUFXO1lBQzVCLE1BQU0sSUFBSUMsTUFBTSxDQUFDLGlCQUFpQixFQUFFYSxLQUFLO1FBQzNDO1FBRUEsT0FBT0M7SUFDVDtJQUVBRSxhQUFhQyxTQUFvQixFQUFFO1FBQ2pDLElBQUksQ0FBQzNDLFVBQVUsQ0FBQ3FCLEdBQUcsQ0FBQ3NCLFVBQVVDLElBQUksRUFBRUQ7SUFDdEM7SUFFQUUsYUFBYU4sR0FBVyxFQUFhO1FBQ25DLE1BQU1JLFlBQVksSUFBSSxDQUFDM0MsVUFBVSxDQUFDdUIsR0FBRyxDQUFDZ0I7UUFDdEMsSUFBSUksY0FBY2xCLFdBQVc7WUFDM0IsTUFBTSxJQUFJQyxNQUFNLENBQUMsa0JBQWtCLEVBQUVhLEtBQUs7UUFDNUM7UUFFQSxPQUFPSTtJQUNUO0lBRUFHLGVBQWV0QixRQUFnQixFQUFxQjtRQUNsRCxzQ0FBc0M7UUFDdEMsTUFBTXVCLGFBQ0p6RCxXQUFXMEQsU0FBUyxDQUFDeEIsY0FBY0EsV0FDL0IsR0FBR0EsU0FBUyxJQUFJLENBQUMsR0FDakJsQyxXQUFXMEQsU0FBUyxDQUFDeEI7UUFFM0IsT0FBTztZQUNMeUIsSUFBSTNELFdBQVc0RCxTQUFTLENBQUM1RCxXQUFXNkQsVUFBVSxDQUFDM0IsV0FBVzRCLFdBQVc7WUFDckVDLFVBQVUvRCxXQUNQNEQsU0FBUyxDQUFDNUQsV0FBVzZELFVBQVUsQ0FBQ0osYUFDaENLLFdBQVc7WUFDZEUsT0FBT2hFLFdBQVdpRSxRQUFRLENBQUMvQixVQUFVO1lBQ3JDZ0MsYUFBYWxFLFdBQVdpRSxRQUFRLENBQUNSLFlBQVk7WUFDN0NVLFNBQVNqQztZQUNUa0MsZUFBZVg7WUFDZlksT0FBT25DLFNBQVNvQyxXQUFXO1lBQzNCQyxVQUFVdkUsV0FBVzZELFVBQVUsQ0FBQzNCLFVBQVVvQyxXQUFXO1FBQ3ZEO0lBQ0Y7SUFFQUUsb0JBQW9CQyxRQUFzQixFQUFVO1FBQ2xELE1BQU1DLFVBQVVELFNBQVNFLEtBQUssQ0FBQztRQUMvQnRFLE9BQU9xRSxTQUFTLENBQUMsRUFBRTtRQUNuQixPQUFPMUUsV0FBV2lFLFFBQVEsQ0FBQ1MsT0FBTyxDQUFDLEVBQUUsQ0FBQ0UsT0FBTyxDQUFDLE9BQU87SUFDdkQ7QUFDRjtBQUVBLE9BQU8sTUFBTW5DLGdCQUFnQixJQUFJbkMscUJBQXFCIn0=
|
|
130
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbnRpdHkvZW50aXR5LW1hbmFnZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGFzc2VydCBmcm9tIFwiYXNzZXJ0XCI7XG5pbXBvcnQgY2hhbGsgZnJvbSBcImNoYWxrXCI7XG5pbXBvcnQgeyBnbG9iLCByZWFkRmlsZSB9IGZyb20gXCJmcy9wcm9taXNlc1wiO1xuaW1wb3J0IGluZmxlY3Rpb24gZnJvbSBcImluZmxlY3Rpb25cIjtcbmltcG9ydCBwYXRoIGZyb20gXCJwYXRoXCI7XG5pbXBvcnQgeyBwcmV0dGlmeUVycm9yIH0gZnJvbSBcInpvZFwiO1xuaW1wb3J0IHsgU29uYW11IH0gZnJvbSBcIi4uL2FwaS9zb25hbXVcIjtcbmltcG9ydCB7IHR5cGUgRW50aXR5SnNvbiwgRW50aXR5SnNvblNjaGVtYSB9IGZyb20gXCIuLi90eXBlcy90eXBlc1wiO1xuaW1wb3J0IHR5cGUgeyBBYnNvbHV0ZVBhdGggfSBmcm9tIFwiLi4vdXRpbHMvcGF0aC11dGlsc1wiO1xuaW1wb3J0IHsgRW50aXR5IH0gZnJvbSBcIi4vZW50aXR5XCI7XG5cbmV4cG9ydCB0eXBlIEVudGl0eU5hbWVzUmVjb3JkID0gUmVjb3JkPFxuICBcImZzXCIgfCBcImZzUGx1cmFsXCIgfCBcImNhbWVsXCIgfCBcImNhbWVsUGx1cmFsXCIgfCBcImNhcGl0YWxcIiB8IFwiY2FwaXRhbFBsdXJhbFwiIHwgXCJ1cHBlclwiIHwgXCJjb25zdGFudFwiLFxuICBzdHJpbmdcbj47XG50eXBlIFRhYmxlU3BlYyA9IHtcbiAgbmFtZTogc3RyaW5nO1xuICB1bmlxdWVJbmRleGVzOiB7IG5hbWU/OiBzdHJpbmc7IGNvbHVtbnM6IHN0cmluZ1tdIH1bXTtcbn07XG5jbGFzcyBFbnRpdHlNYW5hZ2VyQ2xhc3Mge1xuICBwcml2YXRlIGVudGl0aWVzOiBNYXA8c3RyaW5nLCBFbnRpdHk+ID0gbmV3IE1hcCgpO1xuICBwdWJsaWMgbW9kdWxlUGF0aHM6IE1hcDxzdHJpbmcsIHN0cmluZz4gPSBuZXcgTWFwKCk7XG4gIHByaXZhdGUgdGFibGVTcGVjczogTWFwPHN0cmluZywgVGFibGVTcGVjPiA9IG5ldyBNYXAoKTtcbiAgcHVibGljIGlzQXV0b2xvYWRlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8vIOqyveuhnCDsoITri6zrsJvslYQg66qo65OgIGVudGl0eS5qc29uIO2MjOydvCDroZzrk5xcbiAgYXN5bmMgYXV0b2xvYWQoXzogYm9vbGVhbiA9IGZhbHNlKSB7XG4gICAgaWYgKHRoaXMuaXNBdXRvbG9hZGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IHBhdGhQYXR0ZXJuID0gcGF0aC5qb2luKFNvbmFtdS5hcGlSb290UGF0aCwgXCIvc3JjL2FwcGxpY2F0aW9uLyoqLyouZW50aXR5Lmpzb25cIik7XG5cbiAgICBmb3IgYXdhaXQgKGNvbnN0IGZpbGUgb2YgZ2xvYihwYXRoLnJlc29sdmUocGF0aFBhdHRlcm4pKSkge1xuICAgICAgY29uc3QganNvbiA9IEpTT04ucGFyc2UoKGF3YWl0IHJlYWRGaWxlKGZpbGUpKS50b1N0cmluZygpKTtcblxuICAgICAgLy8gZW50aXR5Lmpzb24g7Iqk7YKk66eIIOqygOymnVxuICAgICAgY29uc3QgZXJyb3IgPSB0aGlzLnNjaGVtYVZhbGlkYXRlKGpzb24pO1xuICAgICAgaWYgKGVycm9yKSB7XG4gICAgICAgIGNvbnN0IHJlbGF0aXZlUGF0aCA9IHBhdGgucmVsYXRpdmUoU29uYW11LmFwaVJvb3RQYXRoLCBmaWxlKTtcbiAgICAgICAgY29uc3QgZXJyb3JNZXNzYWdlID0gcHJldHRpZnlFcnJvcihlcnJvcik7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoXG4gICAgICAgICAgY2hhbGsucmVkKGBJbnZhbGlkIGVudGl0eS5qc29uIHNjaGVtYTogJHtyZWxhdGl2ZVBhdGh9XFxuJHtjaGFsay55ZWxsb3coZXJyb3JNZXNzYWdlKX1gKSxcbiAgICAgICAgKTtcbiAgICAgIH1cblxuICAgICAgYXdhaXQgdGhpcy5yZWdpc3Rlcihqc29uKTtcbiAgICB9XG4gICAgLy8gIWRvU2lsZW50ICYmXG4gICAgLy8gICBjb25zb2xlLmxvZyhcbiAgICAvLyAgICAgY2hhbGsuZ3JheShcbiAgICAvLyAgICAgICBgW0xvYWRpbmddIExvYWRlZCBlbnRpdHkgZGVmaW5pdGlvbnMgZnJvbSBcIiouZW50aXR5Lmpzb25cIiBmaWxlczogJHtjb3VudH0gZmlsZXMuYFxuICAgIC8vICAgICApXG4gICAgLy8gICApO1xuXG4gICAgdGhpcy5pc0F1dG9sb2FkZWQgPSB0cnVlO1xuICB9XG5cbiAgc2NoZW1hVmFsaWRhdGUoanNvbjogdW5rbm93bikge1xuICAgIGNvbnN0IHJlc3VsdCA9IEVudGl0eUpzb25TY2hlbWEuc2FmZVBhcnNlKGpzb24pO1xuICAgIHJldHVybiByZXN1bHQuc3VjY2VzcyA/IG51bGwgOiByZXN1bHQuZXJyb3I7XG4gIH1cblxuICBhc3luYyByZWxvYWQoZG9TaWxlbnQ6IGJvb2xlYW4gPSBmYWxzZSkge1xuICAgIHRoaXMuZW50aXRpZXMuY2xlYXIoKTtcbiAgICB0aGlzLm1vZHVsZVBhdGhzLmNsZWFyKCk7XG4gICAgdGhpcy50YWJsZVNwZWNzLmNsZWFyKCk7XG4gICAgdGhpcy5pc0F1dG9sb2FkZWQgPSBmYWxzZTtcblxuICAgIHJldHVybiBhd2FpdCB0aGlzLmF1dG9sb2FkKGRvU2lsZW50KTtcbiAgfVxuXG4gIGFzeW5jIHJlZ2lzdGVyKGpzb246IEVudGl0eUpzb24pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBlbnRpdHkgPSBuZXcgRW50aXR5KGpzb24pO1xuICAgIGF3YWl0IGVudGl0eS5yZWdpc3Rlck1vZHVsZVBhdGhzKCk7XG4gICAgZW50aXR5LnJlZ2lzdGVyVGFibGVTcGVjcygpO1xuICAgIHRoaXMuZW50aXRpZXMuc2V0KGpzb24uaWQsIGVudGl0eSk7XG4gIH1cblxuICBnZXQoZW50aXR5SWQ6IHN0cmluZyk6IEVudGl0eSB7XG4gICAgY29uc3QgZW50aXR5ID0gdGhpcy5lbnRpdGllcy5nZXQoZW50aXR5SWQpO1xuICAgIGlmIChlbnRpdHkgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGDsobTsnqztlZjsp4Ag7JWK64qUIEVudGl0eSDsmpTssq0gJHtlbnRpdHlJZH1gKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZW50aXR5O1xuICB9XG5cbiAgZXhpc3RzKGVudGl0eUlkOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBjb25zdCBlbnRpdHkgPSB0aGlzLmVudGl0aWVzLmdldChlbnRpdHlJZCk7XG4gICAgcmV0dXJuIGVudGl0eSAhPT0gdW5kZWZpbmVkO1xuICB9XG5cbiAgZ2V0QWxsSWRzKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbShFbnRpdHlNYW5hZ2VyLmVudGl0aWVzLmtleXMoKSkuc29ydCgpO1xuICB9XG5cbiAgZ2V0QWxsUGFyZW50SWRzKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gdGhpcy5nZXRBbGxJZHMoKS5maWx0ZXIoKGVudGl0eUlkKSA9PiB7XG4gICAgICBjb25zdCBlbnRpdHkgPSB0aGlzLmdldChlbnRpdHlJZCk7XG4gICAgICByZXR1cm4gZW50aXR5LnBhcmVudElkID09PSB1bmRlZmluZWQ7XG4gICAgfSk7XG4gIH1cblxuICBnZXRDaGlsZHJlbklkcyhwYXJlbnRJZDogc3RyaW5nKTogc3RyaW5nW10ge1xuICAgIHJldHVybiB0aGlzLmdldEFsbElkcygpLmZpbHRlcigoZW50aXR5SWQpID0+IHtcbiAgICAgIGNvbnN0IGVudGl0eSA9IHRoaXMuZ2V0KGVudGl0eUlkKTtcbiAgICAgIHJldHVybiBlbnRpdHkucGFyZW50SWQgPT09IHBhcmVudElkO1xuICAgIH0pO1xuICB9XG5cbiAgc2V0TW9kdWxlUGF0aChrZXk6IHN0cmluZywgbW9kdWxlUGF0aDogc3RyaW5nKTogdm9pZCB7XG4gICAgLy8gY29uc29sZS5kZWJ1ZyhjaGFsay5jeWFuKGBzZXRNb2R1bGVQYXRoIDo6ICR7a2V5fSA6OiAke21vZHVsZVBhdGh9YCkpO1xuICAgIHRoaXMubW9kdWxlUGF0aHMuc2V0KGtleSwgbW9kdWxlUGF0aCk7XG4gIH1cblxuICBnZXRNb2R1bGVQYXRoKGtleTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCBtb2R1bGVQYXRoID0gdGhpcy5tb2R1bGVQYXRocy5nZXQoa2V5KTtcbiAgICBpZiAobW9kdWxlUGF0aCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYOyhtOyerO2VmOyngCDslYrripQg66qo65OIIO2MqOyKpCDsmpTssq0gJHtrZXl9YCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG1vZHVsZVBhdGg7XG4gIH1cblxuICBzZXRUYWJsZVNwZWModGFibGVTcGVjOiBUYWJsZVNwZWMpIHtcbiAgICB0aGlzLnRhYmxlU3BlY3Muc2V0KHRhYmxlU3BlYy5uYW1lLCB0YWJsZVNwZWMpO1xuICB9XG5cbiAgZ2V0VGFibGVTcGVjKGtleTogc3RyaW5nKTogVGFibGVTcGVjIHtcbiAgICBjb25zdCB0YWJsZVNwZWMgPSB0aGlzLnRhYmxlU3BlY3MuZ2V0KGtleSk7XG4gICAgaWYgKHRhYmxlU3BlYyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYOyhtOyerO2VmOyngCDslYrripQg7YWM7J2067iUIOyKpO2OmSDsmpTssq0gJHtrZXl9YCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRhYmxlU3BlYztcbiAgfVxuXG4gIGdldE5hbWVzRnJvbUlkKGVudGl0eUlkOiBzdHJpbmcpOiBFbnRpdHlOYW1lc1JlY29yZCB7XG4gICAgLy8gZW50aXR5SWTqsIAg64uo67O17IiYIOuPme2YlSDri6jslrTsnbgg6rK97JqwIExpc3Qg67aZ7Jes7IScIOyDneyEsVxuICAgIGNvbnN0IHBsdXJhbGl6ZWQgPVxuICAgICAgaW5mbGVjdGlvbi5wbHVyYWxpemUoZW50aXR5SWQpID09PSBlbnRpdHlJZFxuICAgICAgICA/IGAke2VudGl0eUlkfUxpc3RgXG4gICAgICAgIDogaW5mbGVjdGlvbi5wbHVyYWxpemUoZW50aXR5SWQpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGZzOiBpbmZsZWN0aW9uLmRhc2hlcml6ZShpbmZsZWN0aW9uLnVuZGVyc2NvcmUoZW50aXR5SWQpKS50b0xvd2VyQ2FzZSgpLFxuICAgICAgZnNQbHVyYWw6IGluZmxlY3Rpb24uZGFzaGVyaXplKGluZmxlY3Rpb24udW5kZXJzY29yZShwbHVyYWxpemVkKSkudG9Mb3dlckNhc2UoKSxcbiAgICAgIGNhbWVsOiBpbmZsZWN0aW9uLmNhbWVsaXplKGVudGl0eUlkLCB0cnVlKSxcbiAgICAgIGNhbWVsUGx1cmFsOiBpbmZsZWN0aW9uLmNhbWVsaXplKHBsdXJhbGl6ZWQsIHRydWUpLFxuICAgICAgY2FwaXRhbDogZW50aXR5SWQsXG4gICAgICBjYXBpdGFsUGx1cmFsOiBwbHVyYWxpemVkLFxuICAgICAgdXBwZXI6IGVudGl0eUlkLnRvVXBwZXJDYXNlKCksXG4gICAgICBjb25zdGFudDogaW5mbGVjdGlvbi51bmRlcnNjb3JlKGVudGl0eUlkKS50b1VwcGVyQ2FzZSgpLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogRW50aXR5SWTripQgTW9kZWzsnYQg7KCc7Jm47ZWcIFBhc2NhbENhc2Ug7J2066aE7J6F64uI64ukLiAoZXguIFwiVXNlclwiKVxuICAgKiBAcGFyYW0gZmlsZVBhdGhcbiAgICogQHJldHVybnNcbiAgICovXG4gIGdldEVudGl0eUlkRnJvbVBhdGgoZmlsZVBhdGg6IEFic29sdXRlUGF0aCk6IHN0cmluZyB7XG4gICAgY29uc3QgbWF0Y2hlZCA9IGZpbGVQYXRoLm1hdGNoKC9hcHBsaWNhdGlvblxcLyguKylcXC8vKTtcbiAgICBhc3NlcnQobWF0Y2hlZD8uWzFdKTtcbiAgICByZXR1cm4gaW5mbGVjdGlvbi5jYW1lbGl6ZShtYXRjaGVkWzFdLnJlcGxhY2UoLy0vZywgXCJfXCIpKTtcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgRW50aXR5TWFuYWdlciA9IG5ldyBFbnRpdHlNYW5hZ2VyQ2xhc3MoKTtcbiJdLCJuYW1lcyI6WyJhc3NlcnQiLCJjaGFsayIsImdsb2IiLCJyZWFkRmlsZSIsImluZmxlY3Rpb24iLCJwYXRoIiwicHJldHRpZnlFcnJvciIsIlNvbmFtdSIsIkVudGl0eUpzb25TY2hlbWEiLCJFbnRpdHkiLCJFbnRpdHlNYW5hZ2VyQ2xhc3MiLCJlbnRpdGllcyIsIk1hcCIsIm1vZHVsZVBhdGhzIiwidGFibGVTcGVjcyIsImlzQXV0b2xvYWRlZCIsImF1dG9sb2FkIiwiXyIsInBhdGhQYXR0ZXJuIiwiam9pbiIsImFwaVJvb3RQYXRoIiwiZmlsZSIsInJlc29sdmUiLCJqc29uIiwiSlNPTiIsInBhcnNlIiwidG9TdHJpbmciLCJlcnJvciIsInNjaGVtYVZhbGlkYXRlIiwicmVsYXRpdmVQYXRoIiwicmVsYXRpdmUiLCJlcnJvck1lc3NhZ2UiLCJjb25zb2xlIiwicmVkIiwieWVsbG93IiwicmVnaXN0ZXIiLCJyZXN1bHQiLCJzYWZlUGFyc2UiLCJzdWNjZXNzIiwicmVsb2FkIiwiZG9TaWxlbnQiLCJjbGVhciIsImVudGl0eSIsInJlZ2lzdGVyTW9kdWxlUGF0aHMiLCJyZWdpc3RlclRhYmxlU3BlY3MiLCJzZXQiLCJpZCIsImdldCIsImVudGl0eUlkIiwidW5kZWZpbmVkIiwiRXJyb3IiLCJleGlzdHMiLCJnZXRBbGxJZHMiLCJBcnJheSIsImZyb20iLCJFbnRpdHlNYW5hZ2VyIiwia2V5cyIsInNvcnQiLCJnZXRBbGxQYXJlbnRJZHMiLCJmaWx0ZXIiLCJwYXJlbnRJZCIsImdldENoaWxkcmVuSWRzIiwic2V0TW9kdWxlUGF0aCIsImtleSIsIm1vZHVsZVBhdGgiLCJnZXRNb2R1bGVQYXRoIiwic2V0VGFibGVTcGVjIiwidGFibGVTcGVjIiwibmFtZSIsImdldFRhYmxlU3BlYyIsImdldE5hbWVzRnJvbUlkIiwicGx1cmFsaXplZCIsInBsdXJhbGl6ZSIsImZzIiwiZGFzaGVyaXplIiwidW5kZXJzY29yZSIsInRvTG93ZXJDYXNlIiwiZnNQbHVyYWwiLCJjYW1lbCIsImNhbWVsaXplIiwiY2FtZWxQbHVyYWwiLCJjYXBpdGFsIiwiY2FwaXRhbFBsdXJhbCIsInVwcGVyIiwidG9VcHBlckNhc2UiLCJjb25zdGFudCIsImdldEVudGl0eUlkRnJvbVBhdGgiLCJmaWxlUGF0aCIsIm1hdGNoZWQiLCJtYXRjaCIsInJlcGxhY2UiXSwibWFwcGluZ3MiOiJBQUFBLE9BQU9BLFlBQVksU0FBUztBQUM1QixPQUFPQyxXQUFXLFFBQVE7QUFDMUIsU0FBU0MsSUFBSSxFQUFFQyxRQUFRLFFBQVEsbUJBQWM7QUFDN0MsT0FBT0MsZ0JBQWdCLGFBQWE7QUFDcEMsT0FBT0MsVUFBVSxPQUFPO0FBQ3hCLFNBQVNDLGFBQWEsUUFBUSxNQUFNO0FBQ3BDLFNBQVNDLE1BQU0sUUFBUSxtQkFBZ0I7QUFDdkMsU0FBMEJDLGdCQUFnQixRQUFRLG9CQUFpQjtBQUVuRSxTQUFTQyxNQUFNLFFBQVEsY0FBVztBQVVsQyxNQUFNQztJQUNJQyxXQUFnQyxJQUFJQyxNQUFNO0lBQzNDQyxjQUFtQyxJQUFJRCxNQUFNO0lBQzVDRSxhQUFxQyxJQUFJRixNQUFNO0lBQ2hERyxlQUF3QixNQUFNO0lBRXJDLCtCQUErQjtJQUMvQixNQUFNQyxTQUFTQyxJQUFhLEtBQUssRUFBRTtRQUNqQyxJQUFJLElBQUksQ0FBQ0YsWUFBWSxFQUFFO1lBQ3JCO1FBQ0Y7UUFDQSxNQUFNRyxjQUFjYixLQUFLYyxJQUFJLENBQUNaLE9BQU9hLFdBQVcsRUFBRTtRQUVsRCxXQUFXLE1BQU1DLFFBQVFuQixLQUFLRyxLQUFLaUIsT0FBTyxDQUFDSixjQUFlO1lBQ3hELE1BQU1LLE9BQU9DLEtBQUtDLEtBQUssQ0FBQyxBQUFDLENBQUEsTUFBTXRCLFNBQVNrQixLQUFJLEVBQUdLLFFBQVE7WUFFdkQscUJBQXFCO1lBQ3JCLE1BQU1DLFFBQVEsSUFBSSxDQUFDQyxjQUFjLENBQUNMO1lBQ2xDLElBQUlJLE9BQU87Z0JBQ1QsTUFBTUUsZUFBZXhCLEtBQUt5QixRQUFRLENBQUN2QixPQUFPYSxXQUFXLEVBQUVDO2dCQUN2RCxN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
|
package/dist/entity/entity.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { EntityProp, RelationProp, SubsetQuery, EntityPropNode, EntityIndex, EntityJson, EntitySubsetRow } from "../types/types";
|
|
2
1
|
import { z } from "zod";
|
|
2
|
+
import { type EntityIndex, type EntityJson, type EntityProp, type EntityPropNode, type EntitySubsetRow, type RelationProp, type SubsetQuery } from "../types/types";
|
|
3
3
|
export declare class Entity {
|
|
4
4
|
id: string;
|
|
5
5
|
parentId?: string;
|
|
@@ -25,14 +25,16 @@ export declare class Entity {
|
|
|
25
25
|
[name: string]: z.ZodTypeAny;
|
|
26
26
|
};
|
|
27
27
|
enums: {
|
|
28
|
-
[enumId: string]: z.ZodEnum<
|
|
28
|
+
[enumId: string]: z.ZodEnum<Readonly<Record<string, string>>>;
|
|
29
29
|
};
|
|
30
30
|
enumLabels: {
|
|
31
31
|
[enumId: string]: {
|
|
32
32
|
[key: string]: string;
|
|
33
33
|
};
|
|
34
34
|
};
|
|
35
|
-
constructor({ id, parentId, table, title, props, indexes, subsets, enums
|
|
35
|
+
constructor({ id, parentId, table, title, props, indexes, subsets, enums }: EntityJson);
|
|
36
|
+
getPuriSubsetQuery(subsetKey: string): string;
|
|
37
|
+
getPuriLoaderQuery(subsetKey: string): string;
|
|
36
38
|
getSubsetQuery(subsetKey: string): SubsetQuery;
|
|
37
39
|
resolveSubsetQuery(prefix: string, fields: string[], isAlreadyOuterJoined?: boolean): SubsetQuery;
|
|
38
40
|
fieldExprsToPropNodes(fieldExprs: string[], entity?: Entity): EntityPropNode[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../src/entity/entity.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../src/entity/entity.ts"],"names":[],"mappings":"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"}
|