sonamu 0.10.12 → 0.10.13
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/dist/ai/agents/agent.d.ts +1 -1
- package/dist/ai/agents/agent.d.ts.map +1 -1
- package/dist/ai/agents/agent.js +5 -6
- package/dist/ai/agents/types.d.ts +1 -1
- package/dist/ai/agents/types.d.ts.map +1 -1
- package/dist/ai/providers/rtzr/api.js +18 -18
- package/dist/ai/providers/rtzr/error.d.ts.map +1 -1
- package/dist/ai/providers/rtzr/error.js +17 -15
- package/dist/ai/providers/rtzr/model.d.ts.map +1 -1
- package/dist/ai/providers/rtzr/model.js +3 -2
- package/dist/ai/providers/rtzr/options.d.ts.map +1 -1
- package/dist/ai/providers/rtzr/options.js +16 -16
- package/dist/ai/providers/rtzr/provider.d.ts.map +1 -1
- package/dist/ai/providers/rtzr/provider.js +9 -9
- package/dist/ai/providers/rtzr/utils.d.ts.map +1 -1
- package/dist/ai/providers/rtzr/utils.js +1 -1
- package/dist/api/caster.d.ts.map +1 -1
- package/dist/api/caster.js +17 -17
- package/dist/api/code-converters.d.ts +4 -2
- package/dist/api/code-converters.d.ts.map +1 -1
- package/dist/api/code-converters.js +100 -19
- package/dist/api/config.d.ts +16 -1
- package/dist/api/config.d.ts.map +1 -1
- package/dist/api/config.js +28 -21
- package/dist/api/context.d.ts +2 -2
- package/dist/api/context.d.ts.map +1 -1
- package/dist/api/context.js +1 -1
- package/dist/api/decorators.d.ts.map +1 -1
- package/dist/api/decorators.js +18 -11
- package/dist/api/http-validator.d.ts +36 -0
- package/dist/api/http-validator.d.ts.map +1 -0
- package/dist/api/http-validator.js +72 -0
- package/dist/api/index.js +6 -4
- package/dist/api/sonamu.d.ts +59 -20
- package/dist/api/sonamu.d.ts.map +1 -1
- package/dist/api/sonamu.js +250 -106
- package/dist/api/websocket-helpers.d.ts +7 -5
- package/dist/api/websocket-helpers.d.ts.map +1 -1
- package/dist/api/websocket-helpers.js +6 -6
- package/dist/auth/audit-log/builders.d.ts.map +1 -1
- package/dist/auth/audit-log/builders.js +1 -1
- package/dist/auth/audit-log/client-ip.d.ts +1 -1
- package/dist/auth/audit-log/client-ip.d.ts.map +1 -1
- package/dist/auth/audit-log/client-ip.js +4 -2
- package/dist/auth/audit-log/events.d.ts +5 -1
- package/dist/auth/audit-log/events.d.ts.map +1 -1
- package/dist/auth/audit-log/events.js +1 -1
- package/dist/auth/audit-log/plugin.d.ts +0 -8
- package/dist/auth/audit-log/plugin.d.ts.map +1 -1
- package/dist/auth/audit-log/plugin.js +48 -52
- package/dist/auth/audit-log-ingestor.d.ts.map +1 -1
- package/dist/auth/audit-log-ingestor.js +16 -12
- package/dist/auth/auth-generator.d.ts.map +1 -1
- package/dist/auth/auth-generator.js +1 -1
- package/dist/auth/better-auth-request.d.ts.map +1 -1
- package/dist/auth/better-auth-request.js +6 -5
- package/dist/auth/knex-adapter.js +1 -1
- package/dist/auth/plugins/entity-definitions/index.d.ts +13 -1
- package/dist/auth/plugins/entity-definitions/index.d.ts.map +1 -1
- package/dist/auth/plugins/entity-definitions/index.js +1 -1
- package/dist/auth/plugins/wrappers/admin.d.ts +1 -1
- package/dist/bin/build-config.d.ts +25 -0
- package/dist/bin/build-config.d.ts.map +1 -1
- package/dist/bin/build-config.js +105 -2
- package/dist/bin/cli.js +131 -27
- package/dist/bin/compiler-policy.d.ts +3 -0
- package/dist/bin/compiler-policy.d.ts.map +1 -0
- package/dist/bin/compiler-policy.js +24 -0
- package/dist/bin/fixture.d.ts.map +1 -1
- package/dist/bin/fixture.js +5 -3
- package/dist/bin/test-command.d.ts +22 -1
- package/dist/bin/test-command.d.ts.map +1 -1
- package/dist/bin/test-command.js +18 -10
- package/dist/bin/ts-loader-registration.d.ts +7 -1
- package/dist/bin/ts-loader-registration.d.ts.map +1 -1
- package/dist/bin/ts-loader-registration.js +13 -4
- package/dist/cache/decorator.d.ts.map +1 -1
- package/dist/cache/decorator.js +11 -4
- package/dist/compress/compress.d.ts.map +1 -1
- package/dist/compress/compress.js +1 -1
- package/dist/cone/cone-generator.d.ts +14 -1
- package/dist/cone/cone-generator.d.ts.map +1 -1
- package/dist/cone/cone-generator.js +13 -9
- package/dist/database/_batch_update.js +1 -1
- package/dist/database/base-model.d.ts +22 -10
- package/dist/database/base-model.d.ts.map +1 -1
- package/dist/database/base-model.js +26 -16
- package/dist/database/base-model.types.d.ts +15 -3
- package/dist/database/base-model.types.d.ts.map +1 -1
- package/dist/database/db.d.ts +12 -2
- package/dist/database/db.d.ts.map +1 -1
- package/dist/database/db.js +10 -7
- package/dist/database/knex.d.ts.map +1 -1
- package/dist/database/knex.js +17 -14
- package/dist/database/puri.d.ts +11 -9
- package/dist/database/puri.d.ts.map +1 -1
- package/dist/database/puri.js +93 -79
- package/dist/database/puri.types.d.ts +21 -21
- package/dist/database/puri.types.d.ts.map +1 -1
- package/dist/database/puri.types.js +1 -1
- package/dist/database/upsert-builder.d.ts +12 -10
- package/dist/database/upsert-builder.d.ts.map +1 -1
- package/dist/database/upsert-builder.js +20 -12
- package/dist/dict/sd.d.ts.map +1 -1
- package/dist/dict/sd.js +1 -1
- package/dist/dict/sonamu-dictionary.d.ts.map +1 -1
- package/dist/dict/sonamu-dictionary.js +1 -1
- package/dist/dict/utils.d.ts.map +1 -1
- package/dist/dict/utils.js +7 -2
- package/dist/entity/entity-manager.d.ts +13 -4
- package/dist/entity/entity-manager.d.ts.map +1 -1
- package/dist/entity/entity-manager.js +19 -11
- package/dist/entity/entity-template-cone.d.ts +73 -5
- package/dist/entity/entity-template-cone.d.ts.map +1 -1
- package/dist/entity/entity-template-cone.js +4 -2
- package/dist/entity/entity.d.ts +6 -2
- package/dist/entity/entity.d.ts.map +1 -1
- package/dist/entity/entity.js +30 -28
- package/dist/env.d.ts +3 -1
- package/dist/env.d.ts.map +1 -1
- package/dist/env.js +1 -1
- package/dist/exceptions/error-handler.d.ts.map +1 -1
- package/dist/exceptions/error-handler.js +7 -2
- package/dist/exceptions/so-exceptions.d.ts +24 -20
- package/dist/exceptions/so-exceptions.d.ts.map +1 -1
- package/dist/exceptions/so-exceptions.js +4 -2
- package/dist/filter/utils.d.ts +7 -2
- package/dist/filter/utils.d.ts.map +1 -1
- package/dist/filter/utils.js +8 -6
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -6
- package/dist/logger/configure.d.ts.map +1 -1
- package/dist/logger/configure.js +10 -10
- package/dist/migration/code-generation.d.ts.map +1 -1
- package/dist/migration/code-generation.js +50 -46
- package/dist/migration/index-where-predicate.d.ts.map +1 -1
- package/dist/migration/index-where-predicate.js +22 -8
- package/dist/migration/migration-set.d.ts.map +1 -1
- package/dist/migration/migration-set.js +1 -1
- package/dist/migration/migrator.d.ts +3 -2
- package/dist/migration/migrator.d.ts.map +1 -1
- package/dist/migration/migrator.js +27 -21
- package/dist/migration/postgresql-schema-reader.d.ts.map +1 -1
- package/dist/migration/postgresql-schema-reader.js +51 -36
- package/dist/migration/slack-confirm.d.ts.map +1 -1
- package/dist/migration/slack-confirm.js +1 -1
- package/dist/naite/naite-reporter.js +2 -2
- package/dist/naite/naite.d.ts +74 -15
- package/dist/naite/naite.d.ts.map +1 -1
- package/dist/naite/naite.js +5 -19
- package/dist/runtime-type.d.ts +6 -0
- package/dist/runtime-type.d.ts.map +1 -0
- package/dist/runtime-type.js +26 -0
- package/dist/ssr/hmr-opt-out.d.ts +26 -0
- package/dist/ssr/hmr-opt-out.d.ts.map +1 -0
- package/dist/ssr/hmr-opt-out.js +59 -0
- package/dist/ssr/renderer.d.ts.map +1 -1
- package/dist/ssr/renderer.js +4 -1
- package/dist/storage/base-file.js +14 -14
- package/dist/storage/buffered-file.d.ts +2 -2
- package/dist/storage/buffered-file.d.ts.map +1 -1
- package/dist/storage/buffered-file.js +12 -12
- package/dist/storage/s3-driver.d.ts.map +1 -1
- package/dist/storage/s3-driver.js +1 -1
- package/dist/storage/uploaded-file.d.ts +2 -2
- package/dist/storage/uploaded-file.d.ts.map +1 -1
- package/dist/storage/uploaded-file.js +8 -8
- package/dist/stream/sse.js +11 -11
- package/dist/stream/ws-core.d.ts +1 -1
- package/dist/stream/ws-core.d.ts.map +1 -1
- package/dist/stream/ws-delivery.d.ts +1 -1
- package/dist/stream/ws-delivery.d.ts.map +1 -1
- package/dist/stream/ws-delivery.js +6 -4
- package/dist/stream/ws-local-connection-store.d.ts.map +1 -1
- package/dist/stream/ws-local-connection-store.js +4 -2
- package/dist/stream/ws-presence-store.js +1 -1
- package/dist/stream/ws-registry.d.ts +4 -4
- package/dist/stream/ws-registry.d.ts.map +1 -1
- package/dist/stream/ws-registry.js +4 -2
- package/dist/stream/ws-telemetry.d.ts +16 -12
- package/dist/stream/ws-telemetry.d.ts.map +1 -1
- package/dist/stream/ws-telemetry.js +22 -18
- package/dist/stream/ws.d.ts +18 -12
- package/dist/stream/ws.d.ts.map +1 -1
- package/dist/stream/ws.js +26 -22
- package/dist/syncer/api-parser.js +1 -1
- package/dist/syncer/checksum.d.ts.map +1 -1
- package/dist/syncer/checksum.js +7 -8
- package/dist/syncer/code-generator.d.ts.map +1 -1
- package/dist/syncer/code-generator.js +13 -14
- package/dist/syncer/entity-operations.d.ts.map +1 -1
- package/dist/syncer/entity-operations.js +5 -6
- package/dist/syncer/file-copy.d.ts +5 -0
- package/dist/syncer/file-copy.d.ts.map +1 -0
- package/dist/syncer/file-copy.js +36 -0
- package/dist/syncer/file-patterns.d.ts +1 -0
- package/dist/syncer/file-patterns.d.ts.map +1 -1
- package/dist/syncer/file-patterns.js +5 -2
- package/dist/syncer/file-tracking.d.ts.map +1 -1
- package/dist/syncer/file-tracking.js +5 -4
- package/dist/syncer/filesystem-dependencies.d.ts +15 -0
- package/dist/syncer/filesystem-dependencies.d.ts.map +1 -0
- package/dist/syncer/filesystem-dependencies.js +53 -0
- package/dist/syncer/module-loader.d.ts +1 -1
- package/dist/syncer/module-loader.d.ts.map +1 -1
- package/dist/syncer/module-loader.js +6 -4
- package/dist/syncer/syncer-actions.d.ts +4 -0
- package/dist/syncer/syncer-actions.d.ts.map +1 -1
- package/dist/syncer/syncer-actions.js +34 -17
- package/dist/syncer/syncer.d.ts +17 -6
- package/dist/syncer/syncer.d.ts.map +1 -1
- package/dist/syncer/syncer.js +71 -29
- package/dist/syncer/watcher.d.ts.map +1 -1
- package/dist/syncer/watcher.js +3 -3
- package/dist/tasks/decorator.d.ts +6 -6
- package/dist/tasks/decorator.d.ts.map +1 -1
- package/dist/tasks/decorator.js +4 -4
- package/dist/tasks/step-wrapper.d.ts +6 -4
- package/dist/tasks/step-wrapper.d.ts.map +1 -1
- package/dist/tasks/step-wrapper.js +5 -5
- package/dist/tasks/workflow-manager.d.ts.map +1 -1
- package/dist/tasks/workflow-manager.js +13 -7
- 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 +2 -2
- package/dist/template/helpers.d.ts +8 -6
- package/dist/template/helpers.d.ts.map +1 -1
- package/dist/template/helpers.js +1 -1
- package/dist/template/implementations/generated.template.d.ts.map +1 -1
- package/dist/template/implementations/generated.template.js +4 -4
- package/dist/template/implementations/generated_http.template.d.ts +7 -4
- package/dist/template/implementations/generated_http.template.d.ts.map +1 -1
- package/dist/template/implementations/generated_http.template.js +21 -21
- package/dist/template/implementations/generated_sso.template.d.ts.map +1 -1
- package/dist/template/implementations/generated_sso.template.js +6 -3
- package/dist/template/implementations/http_validators.template.d.ts +18 -0
- package/dist/template/implementations/http_validators.template.d.ts.map +1 -0
- package/dist/template/implementations/http_validators.template.js +127 -0
- package/dist/template/implementations/model.template.d.ts.map +1 -1
- package/dist/template/implementations/model.template.js +1 -1
- package/dist/template/implementations/queries.template.js +1 -1
- package/dist/template/implementations/sd.template.d.ts.map +1 -1
- package/dist/template/implementations/sd.template.js +79 -39
- package/dist/template/implementations/services.template.d.ts.map +1 -1
- package/dist/template/implementations/services.template.js +6 -4
- package/dist/template/implementations/view_form.template.d.ts +6 -1
- package/dist/template/implementations/view_form.template.d.ts.map +1 -1
- package/dist/template/implementations/view_form.template.js +23 -15
- package/dist/template/implementations/view_list.template.d.ts.map +1 -1
- package/dist/template/implementations/view_list.template.js +11 -6
- package/dist/template/template-manager.d.ts.map +1 -1
- package/dist/template/template-manager.js +9 -7
- package/dist/template/template-types.d.ts +12 -5
- package/dist/template/template-types.d.ts.map +1 -1
- package/dist/template/template-types.js +1 -1
- package/dist/template/template.d.ts +2 -2
- package/dist/template/template.d.ts.map +1 -1
- package/dist/template/template.js +6 -4
- package/dist/template/zod-converter.d.ts +0 -19
- package/dist/template/zod-converter.d.ts.map +1 -1
- package/dist/template/zod-converter.js +100 -84
- package/dist/testing/_relation-graph.d.ts.map +1 -1
- package/dist/testing/_relation-graph.js +2 -1
- package/dist/testing/bootstrap.d.ts.map +1 -1
- package/dist/testing/bootstrap.js +9 -6
- package/dist/testing/data-explorer.d.ts +32 -7
- package/dist/testing/data-explorer.d.ts.map +1 -1
- package/dist/testing/data-explorer.js +77 -31
- package/dist/testing/dev-test-routes.d.ts +8 -1
- package/dist/testing/dev-test-routes.d.ts.map +1 -1
- package/dist/testing/dev-test-routes.js +125 -108
- package/dist/testing/dev-vitest-manager.d.ts +54 -8
- package/dist/testing/dev-vitest-manager.d.ts.map +1 -1
- package/dist/testing/dev-vitest-manager.js +24 -9
- package/dist/testing/faker-mappings.d.ts +412 -1
- package/dist/testing/faker-mappings.d.ts.map +1 -1
- package/dist/testing/faker-mappings.js +1 -1
- package/dist/testing/filesystem.d.ts +2 -0
- package/dist/testing/filesystem.d.ts.map +1 -0
- package/dist/testing/filesystem.js +7 -0
- package/dist/testing/fixture-generator.d.ts +25 -8
- package/dist/testing/fixture-generator.d.ts.map +1 -1
- package/dist/testing/fixture-generator.js +132 -73
- package/dist/testing/fixture-loader.d.ts +3 -1
- package/dist/testing/fixture-loader.d.ts.map +1 -1
- package/dist/testing/fixture-loader.js +1 -20
- package/dist/testing/fixture-manager.d.ts +8 -7
- package/dist/testing/fixture-manager.d.ts.map +1 -1
- package/dist/testing/fixture-manager.js +91 -59
- package/dist/testing/global-setup.d.ts.map +1 -1
- package/dist/testing/global-setup.js +5 -2
- package/dist/testing/index.d.ts +2 -0
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +6 -3
- package/dist/types/types.d.ts +101 -99
- package/dist/types/types.d.ts.map +1 -1
- package/dist/types/types.js +234 -225
- package/dist/ui/ai-api.d.ts.map +1 -1
- package/dist/ui/ai-api.js +1 -1
- package/dist/ui/ai-client.d.ts.map +1 -1
- package/dist/ui/ai-client.js +28 -18
- package/dist/ui/api.d.ts.map +1 -1
- package/dist/ui/api.js +135 -128
- package/dist/ui/async-route.d.ts +3 -0
- package/dist/ui/async-route.d.ts.map +1 -0
- package/dist/ui/async-route.js +12 -0
- package/dist/ui/cdd-service.d.ts +9 -7
- package/dist/ui/cdd-service.d.ts.map +1 -1
- package/dist/ui/cdd-service.js +7 -5
- package/dist/ui/migrations-api.d.ts.map +1 -1
- package/dist/ui/migrations-api.js +17 -15
- package/dist/ui-web/assets/index-DV1AAq6W.js +178 -0
- package/dist/ui-web/index.html +1 -1
- package/dist/utils/formatter.d.ts.map +1 -1
- package/dist/utils/formatter.js +7 -5
- package/dist/utils/fs-utils.d.ts +3 -3
- package/dist/utils/fs-utils.d.ts.map +1 -1
- package/dist/utils/fs-utils.js +6 -6
- package/dist/utils/model.d.ts +3 -5
- package/dist/utils/model.d.ts.map +1 -1
- package/dist/utils/model.js +1 -1
- package/dist/utils/object-utils.d.ts +1 -1
- package/dist/utils/object-utils.d.ts.map +1 -1
- package/dist/utils/object-utils.js +17 -16
- package/dist/utils/process-utils.d.ts.map +1 -1
- package/dist/utils/process-utils.js +4 -2
- package/dist/utils/runtime-value.d.ts +13 -0
- package/dist/utils/runtime-value.d.ts.map +1 -0
- package/dist/utils/runtime-value.js +40 -0
- package/dist/utils/sql-parser.d.ts +8 -1
- package/dist/utils/sql-parser.d.ts.map +1 -1
- package/dist/utils/sql-parser.js +6 -3
- package/dist/utils/type-utils.d.ts.map +1 -1
- package/dist/utils/type-utils.js +10 -8
- package/dist/utils/utils.d.ts +2 -2
- package/dist/utils/utils.d.ts.map +1 -1
- package/dist/utils/utils.js +11 -8
- package/dist/utils/zod-error.d.ts.map +1 -1
- package/dist/utils/zod-error.js +7 -4
- package/dist/vector/chunking.d.ts.map +1 -1
- package/dist/vector/chunking.js +1 -1
- package/dist/vector/embedding.d.ts.map +1 -1
- package/dist/vector/embedding.js +1 -1
- package/dist/vector/types.d.ts +3 -2
- package/dist/vector/types.d.ts.map +1 -1
- package/package.json +5 -3
- package/src/ai/agents/agent.ts +5 -5
- package/src/ai/agents/types.ts +1 -1
- package/src/ai/providers/rtzr/__tests__/model.test.ts +2 -2
- package/src/ai/providers/rtzr/error.ts +5 -3
- package/src/ai/providers/rtzr/model.ts +3 -2
- package/src/ai/providers/rtzr/options.ts +10 -5
- package/src/ai/providers/rtzr/provider.ts +10 -10
- package/src/ai/providers/rtzr/utils.ts +3 -1
- package/src/api/__tests__/config.test.ts +11 -21
- package/src/api/__tests__/sonamu.http-validator.test.ts +512 -0
- package/src/api/__tests__/sonamu.websocket.test.ts +51 -41
- package/src/api/__tests__/zod-compiler-policy.test.ts +95 -0
- package/src/api/caster.ts +6 -8
- package/src/api/code-converters.ts +136 -36
- package/src/api/config.ts +62 -4
- package/src/api/context.ts +3 -3
- package/src/api/decorators.ts +28 -17
- package/src/api/http-validator.ts +149 -0
- package/src/api/sonamu.ts +459 -152
- package/src/api/websocket-helpers.ts +24 -17
- package/src/auth/audit-log/builders.ts +3 -2
- package/src/auth/audit-log/client-ip.ts +4 -2
- package/src/auth/audit-log/events.ts +15 -1
- package/src/auth/audit-log/plugin.ts +129 -200
- package/src/auth/audit-log-ingestor.ts +19 -15
- package/src/auth/auth-generator.ts +10 -5
- package/src/auth/better-auth-request.ts +4 -3
- package/src/auth/knex-adapter.ts +8 -2
- package/src/auth/plugins/entity-definitions/index.ts +6 -5
- package/src/bin/__tests__/http-validator-benchmark.test.ts +94 -0
- package/src/bin/__tests__/test-command.test.ts +9 -15
- package/src/bin/__tests__/ts-loader-register.test.ts +15 -17
- package/src/bin/__tests__/zod-compiler-build.test.ts +307 -0
- package/src/bin/build-config.ts +167 -0
- package/src/bin/cli.ts +153 -36
- package/src/bin/compiler-policy.ts +35 -0
- package/src/bin/fixture.ts +14 -3
- package/src/bin/test-command.ts +74 -29
- package/src/bin/ts-loader-registration.ts +22 -4
- package/src/cache/decorator.ts +10 -3
- package/src/compress/compress.ts +17 -4
- package/src/cone/cone-generator.ts +34 -6
- package/src/database/__tests__/db.test.ts +1 -0
- package/src/database/__tests__/puri.test.ts +16 -15
- package/src/database/__tests__/transaction-scope.test.ts +5 -0
- package/src/database/_batch_update.ts +1 -0
- package/src/database/base-model.ts +81 -50
- package/src/database/base-model.types.ts +6 -6
- package/src/database/db.ts +29 -19
- package/src/database/knex.ts +30 -17
- package/src/database/puri-subset.test-d.ts +17 -0
- package/src/database/puri.ts +181 -143
- package/src/database/puri.types.test-d.ts +31 -1
- package/src/database/puri.types.ts +23 -21
- package/src/database/upsert-builder.ts +75 -53
- package/src/dict/sd.ts +15 -5
- package/src/dict/sonamu-dictionary.ts +6 -6
- package/src/dict/utils.ts +9 -1
- package/src/entity/entity-manager.ts +26 -9
- package/src/entity/entity-template-cone.ts +5 -10
- package/src/entity/entity.ts +50 -34
- package/src/env.ts +7 -3
- package/src/exceptions/error-handler.ts +17 -2
- package/src/exceptions/so-exceptions.ts +26 -20
- package/src/filter/utils.ts +21 -11
- package/src/index.ts +3 -0
- package/src/logger/configure.ts +26 -18
- package/src/migration/__tests__/migrator.test.ts +50 -57
- package/src/migration/code-generation.ts +132 -104
- package/src/migration/index-where-predicate.ts +51 -24
- package/src/migration/migration-set.ts +11 -5
- package/src/migration/migrator.ts +68 -41
- package/src/migration/postgresql-schema-reader.ts +52 -47
- package/src/migration/slack-confirm.ts +17 -15
- package/src/naite/naite-reporter.ts +1 -1
- package/src/naite/naite.ts +97 -24
- package/src/runtime-type.ts +34 -0
- package/src/ssr/hmr-opt-out.ts +78 -0
- package/src/ssr/renderer.ts +6 -0
- package/src/storage/base-file.ts +13 -13
- package/src/storage/buffered-file.ts +11 -11
- package/src/storage/s3-driver.ts +4 -1
- package/src/storage/uploaded-file.ts +8 -8
- package/src/stream/__tests__/ws-contracts.test.ts +4 -2
- package/src/stream/__tests__/ws-telemetry.test.ts +1 -1
- package/src/stream/__tests__/ws.test.ts +30 -6
- package/src/stream/sse.ts +12 -11
- package/src/stream/ws-core.ts +1 -1
- package/src/stream/ws-delivery.ts +16 -7
- package/src/stream/ws-local-connection-store.ts +2 -3
- package/src/stream/ws-presence-store.ts +6 -1
- package/src/stream/ws-registry.ts +16 -7
- package/src/stream/ws-telemetry.ts +66 -43
- package/src/stream/ws.ts +73 -39
- package/src/syncer/__tests__/api-parser.websocket-type-ref.test.ts +3 -2
- package/src/syncer/__tests__/http-validator-registry.test.ts +137 -0
- package/src/syncer/api-parser.ts +67 -27
- package/src/syncer/checksum.ts +17 -11
- package/src/syncer/code-generator.ts +25 -17
- package/src/syncer/entity-operations.ts +3 -5
- package/src/syncer/file-copy.ts +46 -0
- package/src/syncer/file-patterns.ts +11 -8
- package/src/syncer/file-tracking.ts +3 -4
- package/src/syncer/filesystem-dependencies.ts +73 -0
- package/src/syncer/module-loader.ts +8 -4
- package/src/syncer/syncer-actions.ts +56 -18
- package/src/syncer/syncer.ts +116 -43
- package/src/syncer/watcher.ts +8 -4
- package/src/tasks/decorator.ts +20 -12
- package/src/tasks/step-wrapper.ts +19 -9
- package/src/tasks/workflow-manager.ts +15 -9
- package/src/template/__tests__/http_validators.template.test.ts +160 -0
- package/src/template/__tests__/services.template.mutation.test.ts +24 -23
- package/src/template/__tests__/services.template.websocket.test.ts +21 -25
- package/src/template/entity-converter.ts +5 -2
- package/src/template/helpers.ts +8 -9
- package/src/template/implementations/generated.template.ts +5 -4
- package/src/template/implementations/generated_http.template.ts +61 -15
- package/src/template/implementations/generated_sso.template.ts +15 -4
- package/src/template/implementations/http_validators.template.ts +175 -0
- package/src/template/implementations/model.template.ts +3 -1
- package/src/template/implementations/sd.template.ts +81 -41
- package/src/template/implementations/services.template.ts +2 -2
- package/src/template/implementations/view_form.template.ts +56 -39
- package/src/template/implementations/view_list.template.ts +31 -23
- package/src/template/template-manager.ts +15 -13
- package/src/template/template-types.ts +13 -5
- package/src/template/template.ts +4 -3
- package/src/template/zod-converter.ts +206 -91
- package/src/testing/__tests__/dev-test-routes.test.ts +85 -25
- package/src/testing/__tests__/dev-vitest-manager.test.ts +15 -15
- package/src/testing/_relation-graph.ts +4 -1
- package/src/testing/bootstrap.ts +12 -5
- package/src/testing/data-explorer.ts +102 -53
- package/src/testing/dev-test-routes.ts +87 -50
- package/src/testing/dev-vitest-manager.ts +88 -32
- package/src/testing/faker-mappings.ts +2 -2
- package/src/testing/filesystem.ts +1 -0
- package/src/testing/fixture-generator.ts +191 -131
- package/src/testing/fixture-loader.ts +5 -1
- package/src/testing/fixture-manager.ts +129 -90
- package/src/testing/global-setup.ts +7 -3
- package/src/testing/index.ts +5 -0
- package/src/types/__tests__/entity-json-schema-search-text.test.ts +9 -3
- package/src/types/types.ts +184 -158
- package/src/ui/ai-api.ts +9 -7
- package/src/ui/ai-client.ts +61 -56
- package/src/ui/api.ts +727 -616
- package/src/ui/async-route.ts +4 -0
- package/src/ui/cdd-service.ts +35 -12
- package/src/ui/migrations-api.ts +63 -51
- package/src/utils/formatter.ts +7 -3
- package/src/utils/fs-utils.ts +5 -5
- package/src/utils/model.ts +4 -5
- package/src/utils/object-utils.ts +32 -22
- package/src/utils/process-utils.ts +4 -1
- package/src/utils/runtime-value.ts +43 -0
- package/src/utils/sql-parser.ts +13 -6
- package/src/utils/type-utils.ts +9 -7
- package/src/utils/utils.ts +19 -21
- package/src/utils/zod-error.ts +4 -2
- package/src/vector/chunking.ts +6 -1
- package/src/vector/embedding.ts +2 -1
- package/src/vector/types.ts +4 -2
- package/tsdown.api.config.ts +5 -2
- package/dist/ui-web/assets/index-C0m1pk6K.js +0 -177
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { __esmMin } from "../_virtual/_rolldown/runtime.js";
|
|
2
|
+
import { init_runtime_value, isFunctionValue } from "../utils/runtime-value.js";
|
|
2
3
|
import { globAsync, init_async_utils } from "../utils/async-utils.js";
|
|
3
4
|
import { importMembers, init_esm_utils } from "../utils/esm-utils.js";
|
|
4
5
|
import { Template, init_template } from "./template.js";
|
|
@@ -8,6 +9,7 @@ var TemplateManagerClass, TemplateManager;
|
|
|
8
9
|
var init_template_manager = __esmMin((() => {
|
|
9
10
|
init_async_utils();
|
|
10
11
|
init_esm_utils();
|
|
12
|
+
init_runtime_value();
|
|
11
13
|
init_template();
|
|
12
14
|
TemplateManagerClass = class TemplateManagerClass {
|
|
13
15
|
templates = /* @__PURE__ */ new Map();
|
|
@@ -20,12 +22,12 @@ var init_template_manager = __esmMin((() => {
|
|
|
20
22
|
const templateFiles = await globAsync(path.join(import.meta.dirname, "implementations/*.template.js"));
|
|
21
23
|
for (const templateFile of templateFiles) {
|
|
22
24
|
const templates = await importMembers(templateFile);
|
|
23
|
-
if (templates.length === 1 &&
|
|
25
|
+
if (templates.length === 1 && this.isTemplateClass(templates[0].value)) {
|
|
24
26
|
const instance = new templates[0].value();
|
|
25
27
|
this.templates.set(instance.key, instance);
|
|
26
28
|
} else throw new Error(`Template ${templateFile} should export only one class that extends Template`);
|
|
27
29
|
}
|
|
28
|
-
for (const [key, template] of this.templates) Template.
|
|
30
|
+
for (const [key, template] of this.templates) Template.getTemplatesMap().set(key, template);
|
|
29
31
|
this.isAutoloaded = true;
|
|
30
32
|
}
|
|
31
33
|
/**
|
|
@@ -33,7 +35,7 @@ var init_template_manager = __esmMin((() => {
|
|
|
33
35
|
*/
|
|
34
36
|
async reload() {
|
|
35
37
|
this.templates.clear();
|
|
36
|
-
Template.
|
|
38
|
+
Template.clearTemplates();
|
|
37
39
|
this.isAutoloaded = false;
|
|
38
40
|
await this.autoload();
|
|
39
41
|
}
|
|
@@ -54,14 +56,14 @@ var init_template_manager = __esmMin((() => {
|
|
|
54
56
|
return count;
|
|
55
57
|
}
|
|
56
58
|
isTemplateClass(value) {
|
|
57
|
-
return
|
|
59
|
+
return isFunctionValue(value) && value.prototype instanceof Template;
|
|
58
60
|
}
|
|
59
61
|
/**
|
|
60
62
|
* 템플릿 등록
|
|
61
63
|
*/
|
|
62
64
|
register(template) {
|
|
63
65
|
this.templates.set(template.key, template);
|
|
64
|
-
Template.
|
|
66
|
+
Template.getTemplatesMap().set(template.key, template);
|
|
65
67
|
}
|
|
66
68
|
/**
|
|
67
69
|
* 여러 템플릿 등록
|
|
@@ -103,7 +105,7 @@ var init_template_manager = __esmMin((() => {
|
|
|
103
105
|
reset() {
|
|
104
106
|
this.templates.clear();
|
|
105
107
|
this.isAutoloaded = false;
|
|
106
|
-
Template.
|
|
108
|
+
Template.clearTemplates();
|
|
107
109
|
}
|
|
108
110
|
/**
|
|
109
111
|
* 격리된 인스턴스 생성 (테스트용)
|
|
@@ -118,4 +120,4 @@ var init_template_manager = __esmMin((() => {
|
|
|
118
120
|
init_template_manager();
|
|
119
121
|
export { TemplateManager, TemplateManagerClass, init_template_manager };
|
|
120
122
|
|
|
121
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
123
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUtbWFuYWdlci5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdGVtcGxhdGUvdGVtcGxhdGUtbWFuYWdlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgcGF0aCBmcm9tIFwicGF0aFwiO1xuXG5pbXBvcnQgeyB0eXBlIFRlbXBsYXRlS2V5IH0gZnJvbSBcIi4uL3R5cGVzL3R5cGVzXCI7XG5pbXBvcnQgeyBnbG9iQXN5bmMgfSBmcm9tIFwiLi4vdXRpbHMvYXN5bmMtdXRpbHNcIjtcbmltcG9ydCB7IGltcG9ydE1lbWJlcnMgfSBmcm9tIFwiLi4vdXRpbHMvZXNtLXV0aWxzXCI7XG5pbXBvcnQgeyBpc0Z1bmN0aW9uVmFsdWUgfSBmcm9tIFwiLi4vdXRpbHMvcnVudGltZS12YWx1ZVwiO1xuaW1wb3J0IHsgVGVtcGxhdGUgfSBmcm9tIFwiLi90ZW1wbGF0ZVwiO1xuXG50eXBlIFRlbXBsYXRlQ29uc3RydWN0b3IgPSBuZXcgKCkgPT4gVGVtcGxhdGU7XG5cbmNsYXNzIFRlbXBsYXRlTWFuYWdlckNsYXNzIHtcbiAgcHJpdmF0ZSB0ZW1wbGF0ZXM6IE1hcDxUZW1wbGF0ZUtleSB8IHN0cmluZywgVGVtcGxhdGU+ID0gbmV3IE1hcCgpO1xuICBpc0F1dG9sb2FkZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyDquLDrs7gg66mU7ISc65OcXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLyoqXG4gICAqIOu5jO2KuOyduCDthZztlIzrpr8g66Gc65OcIChpbXBsZW1lbnRhdGlvbnMvKi50ZW1wbGF0ZS5qcylcbiAgICovXG4gIGFzeW5jIGF1dG9sb2FkKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICh0aGlzLmlzQXV0b2xvYWRlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCB0ZW1wbGF0ZUZpbGVzID0gYXdhaXQgZ2xvYkFzeW5jKFxuICAgICAgcGF0aC5qb2luKGltcG9ydC5tZXRhLmRpcm5hbWUsIFwiaW1wbGVtZW50YXRpb25zLyoudGVtcGxhdGUuanNcIiksXG4gICAgKTtcblxuICAgIGZvciAoY29uc3QgdGVtcGxhdGVGaWxlIG9mIHRlbXBsYXRlRmlsZXMpIHtcbiAgICAgIGNvbnN0IHRlbXBsYXRlcyA9IGF3YWl0IGltcG9ydE1lbWJlcnM8dW5rbm93bj4odGVtcGxhdGVGaWxlKTtcbiAgICAgIGlmICh0ZW1wbGF0ZXMubGVuZ3RoID09PSAxICYmIHRoaXMuaXNUZW1wbGF0ZUNsYXNzKHRlbXBsYXRlc1swXS52YWx1ZSkpIHtcbiAgICAgICAgY29uc3QgaW5zdGFuY2UgPSBuZXcgdGVtcGxhdGVzWzBdLnZhbHVlKCk7XG4gICAgICAgIHRoaXMudGVtcGxhdGVzLnNldChpbnN0YW5jZS5rZXksIGluc3RhbmNlKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICBgVGVtcGxhdGUgJHt0ZW1wbGF0ZUZpbGV9IHNob3VsZCBleHBvcnQgb25seSBvbmUgY2xhc3MgdGhhdCBleHRlbmRzIFRlbXBsYXRlYCxcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IFtrZXksIHRlbXBsYXRlXSBvZiB0aGlzLnRlbXBsYXRlcykge1xuICAgICAgVGVtcGxhdGUuZ2V0VGVtcGxhdGVzTWFwKCkuc2V0KFxuICAgICAgICAvKiBTQUZFVFk6IOyEoO2WiSBab2Qg7KKF66WYIOu2hOq4sOyZgCDthZztlIzrpr8g7J6F66ClIOqzhOyVveydtCDsnbQg6rCS7J2YIO2DgOyeheydhCDrs7TsnqXtlZzri6QuICovIGtleSBhcyBUZW1wbGF0ZUtleSxcbiAgICAgICAgdGVtcGxhdGUsXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMuaXNBdXRvbG9hZGVkID0gdHJ1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiDthZztlIzrpr8g64uk7IucIOuhnOuTnFxuICAgKi9cbiAgYXN5bmMgcmVsb2FkKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRoaXMudGVtcGxhdGVzLmNsZWFyKCk7XG4gICAgVGVtcGxhdGUuY2xlYXJUZW1wbGF0ZXMoKTtcbiAgICB0aGlzLmlzQXV0b2xvYWRlZCA9IGZhbHNlO1xuICAgIGF3YWl0IHRoaXMuYXV0b2xvYWQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiDtlITroZzsoJ3tirgg65SU66CJ7Yag66as7JeQ7IScIOy7pOyKpO2FgCDthZztlIzrpr8g66Gc65OcXG4gICAqL1xuICBhc3luYyBsb2FkRnJvbURpcmVjdG9yeShkaXI6IHN0cmluZyk6IFByb21pc2U8bnVtYmVyPiB7XG4gICAgY29uc3QgdGVtcGxhdGVGaWxlcyA9IGF3YWl0IGdsb2JBc3luYyhwYXRoLmpvaW4oZGlyLCBcIioudGVtcGxhdGUue3RzLGpzfVwiKSk7XG4gICAgbGV0IGNvdW50ID0gMDtcblxuICAgIGZvciAoY29uc3QgZmlsZSBvZiB0ZW1wbGF0ZUZpbGVzKSB7XG4gICAgICBjb25zdCB0ZW1wbGF0ZXMgPSBhd2FpdCBpbXBvcnRNZW1iZXJzPHVua25vd24+KGZpbGUpO1xuICAgICAgZm9yIChjb25zdCB7IHZhbHVlIH0gb2YgdGVtcGxhdGVzKSB7XG4gICAgICAgIGlmICh0aGlzLmlzVGVtcGxhdGVDbGFzcyh2YWx1ZSkpIHtcbiAgICAgICAgICBjb25zdCBpbnN0YW5jZSA9IG5ldyB2YWx1ZSgpO1xuICAgICAgICAgIHRoaXMucmVnaXN0ZXIoaW5zdGFuY2UpO1xuICAgICAgICAgIGNvdW50Kys7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gY291bnQ7XG4gIH1cblxuICBwcml2YXRlIGlzVGVtcGxhdGVDbGFzczxWYWx1ZT4odmFsdWU6IFZhbHVlKTogdmFsdWUgaXMgVmFsdWUgJiBUZW1wbGF0ZUNvbnN0cnVjdG9yIHtcbiAgICByZXR1cm4gaXNGdW5jdGlvblZhbHVlKHZhbHVlKSAmJiB2YWx1ZS5wcm90b3R5cGUgaW5zdGFuY2VvZiBUZW1wbGF0ZTtcbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIO2FnO2UjOumvyDrk7HroZ1cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvKipcbiAgICog7YWc7ZSM66a/IOuTseuhnVxuICAgKi9cbiAgcmVnaXN0ZXIodGVtcGxhdGU6IFRlbXBsYXRlKTogdm9pZCB7XG4gICAgdGhpcy50ZW1wbGF0ZXMuc2V0KHRlbXBsYXRlLmtleSwgdGVtcGxhdGUpO1xuICAgIC8vIO2VmOychCDtmLjtmZhcbiAgICBUZW1wbGF0ZS5nZXRUZW1wbGF0ZXNNYXAoKS5zZXQodGVtcGxhdGUua2V5LCB0ZW1wbGF0ZSk7XG4gIH1cblxuICAvKipcbiAgICog7Jes65+sIO2FnO2UjOumvyDrk7HroZ1cbiAgICovXG4gIHJlZ2lzdGVyQWxsKHRlbXBsYXRlczogVGVtcGxhdGVbXSk6IHZvaWQge1xuICAgIGZvciAoY29uc3QgdGVtcGxhdGUgb2YgdGVtcGxhdGVzKSB7XG4gICAgICB0aGlzLnJlZ2lzdGVyKHRlbXBsYXRlKTtcbiAgICB9XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyDthZztlIzrpr8g7KGw7ZqMXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLyoqXG4gICAqIO2FnO2UjOumvyDsobDtmoxcbiAgICog67mM7Yq47J24IDog7J6Q64+Z7JmE7ISxIOyngOybkFxuICAgKiDsu6TsiqTthYAgOiDsnoTsnZgg66y47J6Q7Je0IOyngOybkFxuICAgKi9cbiAgZ2V0KGtleTogVGVtcGxhdGVLZXkgfCAoc3RyaW5nICYge30pKTogVGVtcGxhdGUge1xuICAgIGNvbnN0IHRlbXBsYXRlID0gdGhpcy50ZW1wbGF0ZXMuZ2V0KGtleSk7XG4gICAgaWYgKCF0ZW1wbGF0ZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBUZW1wbGF0ZSAnJHtrZXl9JyBub3QgZm91bmQuIEF2YWlsYWJsZTogWyR7dGhpcy5nZXRBbGxLZXlzKCkuam9pbihcIiwgXCIpfV1gKTtcbiAgICB9XG4gICAgcmV0dXJuIHRlbXBsYXRlO1xuICB9XG5cbiAgLyoqXG4gICAqIO2FnO2UjOumvyDsobTsnqwg7Jes67aAXG4gICAqL1xuICBleGlzdHMoa2V5OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50ZW1wbGF0ZXMuaGFzKGtleSk7XG4gIH1cblxuICAvKipcbiAgICog66qo65OgIO2FnO2UjOumvyDtgqQg66qp66GdXG4gICAqL1xuICBnZXRBbGxLZXlzKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLnRlbXBsYXRlcy5rZXlzKCkpLnRvU29ydGVkKCk7XG4gIH1cblxuICAvKipcbiAgICog65Ox66Gd65CcIO2FnO2UjOumvyDqsJzsiJhcbiAgICovXG4gIGdldCBzaXplKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMudGVtcGxhdGVzLnNpemU7XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyDthYzsiqTtirgg7Jyg7Yu466as7YuwXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLyoqXG4gICAqIOuqqOuToCDsg4Htg5wg7LSI6riw7ZmUICjthYzsiqTtirjsmqkpXG4gICAqL1xuICByZXNldCgpOiB2b2lkIHtcbiAgICB0aGlzLnRlbXBsYXRlcy5jbGVhcigpO1xuICAgIHRoaXMuaXNBdXRvbG9hZGVkID0gZmFsc2U7XG4gICAgVGVtcGxhdGUuY2xlYXJUZW1wbGF0ZXMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiDqsqnrpqzrkJwg7J247Iqk7YS07IqkIOyDneyEsSAo7YWM7Iqk7Yq47JqpKVxuICAgKi9cbiAgc3RhdGljIGNyZWF0ZUluc3RhbmNlKCk6IFRlbXBsYXRlTWFuYWdlckNsYXNzIHtcbiAgICByZXR1cm4gbmV3IFRlbXBsYXRlTWFuYWdlckNsYXNzKCk7XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IFRlbXBsYXRlTWFuYWdlciA9IG5ldyBUZW1wbGF0ZU1hbmFnZXJDbGFzcygpO1xuZXhwb3J0IHsgVGVtcGxhdGVNYW5hZ2VyQ2xhc3MgfTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O2tCQUdnRDtnQkFDRTtvQkFDTTtlQUNuQjtDQUkvQix1QkFBTixNQUFNLHFCQUFxQjtFQUN6Qiw0QkFBeUQsSUFBSSxJQUFJO0VBQ2pFLGVBQXdCOzs7O0VBU3hCLE1BQU0sV0FBMEI7R0FDOUIsSUFBSSxLQUFLLGNBQ1A7R0FFRixNQUFNLGdCQUFnQixNQUFNLFVBQzFCLEtBQUssS0FBSyxPQUFPLEtBQUssU0FBUywrQkFBK0IsQ0FDaEU7R0FFQSxLQUFLLE1BQU0sZ0JBQWdCLGVBQWU7SUFDeEMsTUFBTSxZQUFZLE1BQU0sY0FBdUIsWUFBWTtJQUMzRCxJQUFJLFVBQVUsV0FBVyxLQUFLLEtBQUssZ0JBQWdCLFVBQVUsRUFBRSxDQUFDLEtBQUssR0FBRztLQUN0RSxNQUFNLFdBQVcsSUFBSSxVQUFVLEVBQUUsQ0FBQyxNQUFNO0tBQ3hDLEtBQUssVUFBVSxJQUFJLFNBQVMsS0FBSyxRQUFRO0lBQzNDLE9BQ0UsTUFBTSxJQUFJLE1BQ1IsWUFBWSxhQUFhLG9EQUMzQjtHQUVKO0dBRUEsS0FBSyxNQUFNLENBQUMsS0FBSyxhQUFhLEtBQUssV0FDakMsU0FBUyxnQkFBZ0IsQ0FBQyxDQUFDLElBQzZCLEtBQ3RELFFBQ0Y7R0FHRixLQUFLLGVBQWU7RUFDdEI7Ozs7RUFLQSxNQUFNLFNBQXdCO0dBQzVCLEtBQUssVUFBVSxNQUFNO0dBQ3JCLFNBQVMsZUFBZTtHQUN4QixLQUFLLGVBQWU7R0FDcEIsTUFBTSxLQUFLLFNBQVM7RUFDdEI7Ozs7RUFLQSxNQUFNLGtCQUFrQixLQUE4QjtHQUNwRCxNQUFNLGdCQUFnQixNQUFNLFVBQVUsS0FBSyxLQUFLLEtBQUssb0JBQW9CLENBQUM7R0FDMUUsSUFBSSxRQUFRO0dBRVosS0FBSyxNQUFNLFFBQVEsZUFBZTtJQUNoQyxNQUFNLFlBQVksTUFBTSxjQUF1QixJQUFJO0lBQ25ELEtBQUssTUFBTSxFQUFFLFdBQVcsV0FDdEIsSUFBSSxLQUFLLGdCQUFnQixLQUFLLEdBQUc7S0FDL0IsTUFBTSxXQUFXLElBQUksTUFBTTtLQUMzQixLQUFLLFNBQVMsUUFBUTtLQUN0QjtJQUNGO0dBRUo7R0FFQSxPQUFPO0VBQ1Q7RUFFQSxnQkFBK0IsT0FBb0Q7R0FDakYsT0FBTyxnQkFBZ0IsS0FBSyxLQUFLLE1BQU0scUJBQXFCO0VBQzlEOzs7O0VBU0EsU0FBUyxVQUEwQjtHQUNqQyxLQUFLLFVBQVUsSUFBSSxTQUFTLEtBQUssUUFBUTtHQUV6QyxTQUFTLGdCQUFnQixDQUFDLENBQUMsSUFBSSxTQUFTLEtBQUssUUFBUTtFQUN2RDs7OztFQUtBLFlBQVksV0FBNkI7R0FDdkMsS0FBSyxNQUFNLFlBQVksV0FDckIsS0FBSyxTQUFTLFFBQVE7RUFFMUI7Ozs7OztFQVdBLElBQUksS0FBNEM7R0FDOUMsTUFBTSxXQUFXLEtBQUssVUFBVSxJQUFJLEdBQUc7R0FDdkMsSUFBSSxDQUFDLFVBQ0gsTUFBTSxJQUFJLE1BQU0sYUFBYSxJQUFJLDJCQUEyQixLQUFLLFdBQVcsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFLEVBQUU7R0FFN0YsT0FBTztFQUNUOzs7O0VBS0EsT0FBTyxLQUFzQjtHQUMzQixPQUFPLEtBQUssVUFBVSxJQUFJLEdBQUc7RUFDL0I7Ozs7RUFLQSxhQUF1QjtHQUNyQixPQUFPLE1BQU0sS0FBSyxLQUFLLFVBQVUsS0FBSyxDQUFDLENBQUMsQ0FBQyxTQUFTO0VBQ3BEOzs7O0VBS0EsSUFBSSxPQUFlO0dBQ2pCLE9BQU8sS0FBSyxVQUFVO0VBQ3hCOzs7O0VBU0EsUUFBYztHQUNaLEtBQUssVUFBVSxNQUFNO0dBQ3JCLEtBQUssZUFBZTtHQUNwQixTQUFTLGVBQWU7RUFDMUI7Ozs7RUFLQSxPQUFPLGlCQUF1QztHQUM1QyxPQUFPLElBQUkscUJBQXFCO0VBQ2xDO0NBQ0Y7Q0FFYSxrQkFBa0IsSUFBSSxxQkFBcUIifQ==
|
|
@@ -1,16 +1,23 @@
|
|
|
1
|
+
import { type TemplateKey, type TemplateOptions } from "../types/types";
|
|
2
|
+
type TemplateGroupEntry = {
|
|
3
|
+
[Key in TemplateKey]: {
|
|
4
|
+
key: Key;
|
|
5
|
+
getOptions: (baseOptions: Partial<TemplateOptions>) => TemplateOptions[Key];
|
|
6
|
+
};
|
|
7
|
+
}[TemplateKey];
|
|
1
8
|
/**
|
|
2
9
|
* 템플릿 그룹 (관련 템플릿 묶음 실행)
|
|
3
10
|
*/
|
|
4
11
|
export type TemplateGroup = {
|
|
5
12
|
name: string;
|
|
6
13
|
description?: string;
|
|
7
|
-
templates:
|
|
8
|
-
key: string;
|
|
9
|
-
getOptions: (baseOptions: Record<string, unknown>) => Record<string, unknown>;
|
|
10
|
-
}>;
|
|
14
|
+
templates: TemplateGroupEntry[];
|
|
11
15
|
};
|
|
12
16
|
/**
|
|
13
17
|
* 템플릿 프리셋 (템플릿별 기본 옵션)
|
|
14
18
|
*/
|
|
15
|
-
export type TemplatePreset =
|
|
19
|
+
export type TemplatePreset = Partial<{
|
|
20
|
+
[Key in TemplateKey]: TemplateOptions[Key];
|
|
21
|
+
}>;
|
|
22
|
+
export {};
|
|
16
23
|
//# sourceMappingURL=template-types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"template-types.d.ts","sourceRoot":"","sources":["../../src/template/template-types.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"template-types.d.ts","sourceRoot":"","sources":["../../src/template/template-types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAExE,KAAK,kBAAkB,GAAG;KACvB,GAAG,IAAI,WAAW,GAAG;QACpB,GAAG,EAAE,GAAG,CAAC;QACT,UAAU,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC,eAAe,CAAC,KAAK,eAAe,CAAC,GAAG,CAAC,CAAC;KAC7E;CACF,CAAC,WAAW,CAAC,CAAC;AAEf;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,kBAAkB,EAAE,CAAC;CACjC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,OAAO,CAAC;KAClC,GAAG,IAAI,WAAW,GAAG,eAAe,CAAC,GAAG,CAAC;CAC3C,CAAC,CAAC"}
|
|
@@ -5,4 +5,4 @@ var init_template_types = __esmMin((() => {}));
|
|
|
5
5
|
init_template_types();
|
|
6
6
|
export { init_template_types };
|
|
7
7
|
|
|
8
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
8
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUtdHlwZXMuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3RlbXBsYXRlL3RlbXBsYXRlLXR5cGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHR5cGUgVGVtcGxhdGVLZXksIHR5cGUgVGVtcGxhdGVPcHRpb25zIH0gZnJvbSBcIi4uL3R5cGVzL3R5cGVzXCI7XG5cbnR5cGUgVGVtcGxhdGVHcm91cEVudHJ5ID0ge1xuICBbS2V5IGluIFRlbXBsYXRlS2V5XToge1xuICAgIGtleTogS2V5O1xuICAgIGdldE9wdGlvbnM6IChiYXNlT3B0aW9uczogUGFydGlhbDxUZW1wbGF0ZU9wdGlvbnM+KSA9PiBUZW1wbGF0ZU9wdGlvbnNbS2V5XTtcbiAgfTtcbn1bVGVtcGxhdGVLZXldO1xuXG4vKipcbiAqIO2FnO2UjOumvyDqt7jro7kgKOq0gOugqCDthZztlIzrpr8g66y27J2MIOyLpO2WiSlcbiAqL1xuZXhwb3J0IHR5cGUgVGVtcGxhdGVHcm91cCA9IHtcbiAgbmFtZTogc3RyaW5nO1xuICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgdGVtcGxhdGVzOiBUZW1wbGF0ZUdyb3VwRW50cnlbXTtcbn07XG5cbi8qKlxuICog7YWc7ZSM66a/IO2UhOumrOyFiyAo7YWc7ZSM66a/67OEIOq4sOuzuCDsmLXshZgpXG4gKi9cbmV4cG9ydCB0eXBlIFRlbXBsYXRlUHJlc2V0ID0gUGFydGlhbDx7XG4gIFtLZXkgaW4gVGVtcGxhdGVLZXldOiBUZW1wbGF0ZU9wdGlvbnNbS2V5XTtcbn0+O1xuIl0sIm1hcHBpbmdzIjoiIn0=
|
|
@@ -35,11 +35,11 @@ export declare abstract class Template {
|
|
|
35
35
|
/**
|
|
36
36
|
* 내부용: TemplateManager에서 사용
|
|
37
37
|
*/
|
|
38
|
-
static
|
|
38
|
+
static getTemplatesMap(): Map<TemplateKey, Template>;
|
|
39
39
|
/**
|
|
40
40
|
* 내부용: TemplateManager에서 사용
|
|
41
41
|
*/
|
|
42
|
-
static
|
|
42
|
+
static clearTemplates(): void;
|
|
43
43
|
abstract render(options: TemplateOptions[TemplateKey], ...extra: unknown[]): RenderedTemplate | Promise<RenderedTemplate>;
|
|
44
44
|
abstract getTargetAndPath(names?: EntityNamesRecord, ...extra: unknown[]): {
|
|
45
45
|
target: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../src/template/template.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../src/template/template.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAKxE,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,YAAY,CAAC,EAAE;QACb,GAAG,EAAE,WAAW,CAAC;QACjB,OAAO,EAAE,eAAe,CAAC,WAAW,CAAC,CAAC;KACvC,EAAE,CAAC;CACL,CAAC;AAEF;;GAEG;AACH,8BAAsB,QAAQ;IAGT,GAAG,EAAE,WAAW;IAFnC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAyC;gBAE9C,GAAG,EAAE,WAAW;IAEnC;;;;OAIG;WACiB,QAAQ;IA8B5B;;;;;;OAMG;WACW,IAAI,CAAC,GAAG,EAAE,WAAW,GAAG,QAAQ;IAU9C;;OAEG;WACW,eAAe,IAAI,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAC;IAI3D;;OAEG;WACW,cAAc,IAAI,IAAI;aAIpB,MAAM,CACpB,OAAO,EAAE,eAAe,CAAC,WAAW,CAAC,EACrC,GAAG,KAAK,EAAE,OAAO,EAAE,GAClB,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;aAE/B,gBAAgB,CAC9B,KAAK,CAAC,EAAE,iBAAiB,EACzB,GAAG,KAAK,EAAE,OAAO,EAAE,GAClB;QACD,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;KACd;IAED;;;;;OAKG;IACI,mBAAmB,IAAI,MAAM,EAAE,GAAG,IAAI;CAI9C"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { __esmMin } from "../_virtual/_rolldown/runtime.js";
|
|
2
|
+
import { init_runtime_value, isFunctionValue } from "../utils/runtime-value.js";
|
|
2
3
|
import { globAsync, init_async_utils } from "../utils/async-utils.js";
|
|
3
4
|
import { importMembers, init_esm_utils } from "../utils/esm-utils.js";
|
|
4
5
|
import path from "path";
|
|
@@ -7,6 +8,7 @@ var Template;
|
|
|
7
8
|
var init_template = __esmMin((() => {
|
|
8
9
|
init_async_utils();
|
|
9
10
|
init_esm_utils();
|
|
11
|
+
init_runtime_value();
|
|
10
12
|
Template = class Template {
|
|
11
13
|
key;
|
|
12
14
|
static templates = /* @__PURE__ */ new Map();
|
|
@@ -22,7 +24,7 @@ var init_template = __esmMin((() => {
|
|
|
22
24
|
const templateFiles = await globAsync(path.join(import.meta.dirname, "implementations/*.template.js"));
|
|
23
25
|
for (const templateFile of templateFiles) {
|
|
24
26
|
const templates = await importMembers(templateFile);
|
|
25
|
-
if (templates.length === 1 &&
|
|
27
|
+
if (templates.length === 1 && isFunctionValue(templates[0].value) && templates[0].value.prototype instanceof Template) {
|
|
26
28
|
const instance = new templates[0].value();
|
|
27
29
|
Template.templates.set(instance.key, instance);
|
|
28
30
|
} else throw new Error(`Template ${templateFile} should export only one class that extends Template`);
|
|
@@ -43,13 +45,13 @@ var init_template = __esmMin((() => {
|
|
|
43
45
|
/**
|
|
44
46
|
* 내부용: TemplateManager에서 사용
|
|
45
47
|
*/
|
|
46
|
-
static
|
|
48
|
+
static getTemplatesMap() {
|
|
47
49
|
return Template.templates;
|
|
48
50
|
}
|
|
49
51
|
/**
|
|
50
52
|
* 내부용: TemplateManager에서 사용
|
|
51
53
|
*/
|
|
52
|
-
static
|
|
54
|
+
static clearTemplates() {
|
|
53
55
|
Template.templates.clear();
|
|
54
56
|
}
|
|
55
57
|
/**
|
|
@@ -67,4 +69,4 @@ var init_template = __esmMin((() => {
|
|
|
67
69
|
init_template();
|
|
68
70
|
export { Template, init_template };
|
|
69
71
|
|
|
70
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
72
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3RlbXBsYXRlL3RlbXBsYXRlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBwYXRoIGZyb20gXCJwYXRoXCI7XG5cbmltcG9ydCB7IHR5cGUgRW50aXR5TmFtZXNSZWNvcmQgfSBmcm9tIFwiLi4vZW50aXR5L2VudGl0eS1tYW5hZ2VyXCI7XG5pbXBvcnQgeyB0eXBlIFRlbXBsYXRlS2V5LCB0eXBlIFRlbXBsYXRlT3B0aW9ucyB9IGZyb20gXCIuLi90eXBlcy90eXBlc1wiO1xuaW1wb3J0IHsgZ2xvYkFzeW5jIH0gZnJvbSBcIi4uL3V0aWxzL2FzeW5jLXV0aWxzXCI7XG5pbXBvcnQgeyBpbXBvcnRNZW1iZXJzIH0gZnJvbSBcIi4uL3V0aWxzL2VzbS11dGlsc1wiO1xuaW1wb3J0IHsgaXNGdW5jdGlvblZhbHVlIH0gZnJvbSBcIi4uL3V0aWxzL3J1bnRpbWUtdmFsdWVcIjtcblxuZXhwb3J0IHR5cGUgUmVuZGVyZWRUZW1wbGF0ZSA9IHtcbiAgdGFyZ2V0OiBzdHJpbmc7XG4gIHBhdGg6IHN0cmluZztcbiAgYm9keTogc3RyaW5nO1xuICBpbXBvcnRLZXlzOiBzdHJpbmdbXTtcbiAgY3VzdG9tSGVhZGVycz86IHN0cmluZ1tdO1xuICBwcmVUZW1wbGF0ZXM/OiB7XG4gICAga2V5OiBUZW1wbGF0ZUtleTtcbiAgICBvcHRpb25zOiBUZW1wbGF0ZU9wdGlvbnNbVGVtcGxhdGVLZXldO1xuICB9W107XG59O1xuXG4vKipcbiAqIO2FnO2UjOumv+ydhCDrgpjtg4DrgrTripQg67Kg7J207IqkIO2BtOuemOyKpOyeheuLiOuLpC5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFRlbXBsYXRlIHtcbiAgcHJpdmF0ZSBzdGF0aWMgdGVtcGxhdGVzOiBNYXA8VGVtcGxhdGVLZXksIFRlbXBsYXRlPiA9IG5ldyBNYXAoKTtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMga2V5OiBUZW1wbGF0ZUtleSkge31cblxuICAvKipcbiAgICog7YWc7ZSM66a/IOq1rO2YhOyytOqwgCDsnojripQg65SU66CJ7Yag66as7J2YIOuqqOuToCDthZztlIzrpr/snYQg66Gc65Oc7ZWp64uI64ukLlxuICAgKiDthZztlIzrpr/snbQg7ZWE7JqUKFRlbXBsYXRlTWFuYWdlci5nZXQp7ZW07KeA6riwIOyghOyXkCDstZzshowg7ZWcIOuyiCDtmLjstpztlbTso7zshZTslbwg7ZWp64uI64ukLlxuICAgKiBAZGVwcmVjYXRlZCBUZW1wbGF0ZU1hbmFnZXIuYXV0b2xvYWQoKSDsgqzsmqkg6raM7J6lXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGFzeW5jIGF1dG9sb2FkKCkge1xuICAgIGNvbnN0IHRlbXBsYXRlRmlsZXMgPSBhd2FpdCBnbG9iQXN5bmMoXG4gICAgICAvLyBTb25hbXXsnZgg7L2U65Oc67Kg7J207Iqk64qUIO2VreyDgSDruYzrk5zrkJwg7LGE66GcIGRpc3Qg7IaN7JeQIOuouOustOultOuvgOuhnCxcbiAgICAgIC8vIO2YhOyerCDtjIzsnbzsnYQg6riw7KSA7Jy866GcIOuniOywrOqwgOyngOuhnCBkaXN0IOyGjeyXkCDsnojripQg7YWc7ZSM66a/IOq1rO2YhOyytCBqcyDtjIzsnbzrk6TsnYQg7LC+7Iq164uI64ukLlxuICAgICAgcGF0aC5qb2luKGltcG9ydC5tZXRhLmRpcm5hbWUsIFwiaW1wbGVtZW50YXRpb25zLyoudGVtcGxhdGUuanNcIiksXG4gICAgKTtcblxuICAgIGZvciAoY29uc3QgdGVtcGxhdGVGaWxlIG9mIHRlbXBsYXRlRmlsZXMpIHtcbiAgICAgIC8vIG94bGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55IC0tIGltcG9ydE1lbWJlcnPsnZgg67CY7ZmYIO2DgOyeheydhCDrqoXsi5zsoIHsnLzroZwg7KeA7KCV7ZWgIOyImCDsl4bsnYxcbiAgICAgIGNvbnN0IHRlbXBsYXRlcyA9IGF3YWl0IGltcG9ydE1lbWJlcnM8YW55Pih0ZW1wbGF0ZUZpbGUpO1xuICAgICAgaWYgKFxuICAgICAgICB0ZW1wbGF0ZXMubGVuZ3RoID09PSAxICYmXG4gICAgICAgIGlzRnVuY3Rpb25WYWx1ZSh0ZW1wbGF0ZXNbMF0udmFsdWUpICYmXG4gICAgICAgIHRlbXBsYXRlc1swXS52YWx1ZS5wcm90b3R5cGUgaW5zdGFuY2VvZiBUZW1wbGF0ZVxuICAgICAgKSB7XG4gICAgICAgIC8vIO2BtOuemOyKpOydmCDsnbjsiqTthLTsiqTrpbwg7IOd7ISx7ZWY7JesIOuTseuhnVxuICAgICAgICBjb25zdCBpbnN0YW5jZSA9IG5ldyB0ZW1wbGF0ZXNbMF0udmFsdWUoKTtcbiAgICAgICAgVGVtcGxhdGUudGVtcGxhdGVzLnNldChpbnN0YW5jZS5rZXksIGluc3RhbmNlKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICBgVGVtcGxhdGUgJHt0ZW1wbGF0ZUZpbGV9IHNob3VsZCBleHBvcnQgb25seSBvbmUgY2xhc3MgdGhhdCBleHRlbmRzIFRlbXBsYXRlYCxcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBjb25zb2xlLmxvZyhcbiAgICAvLyAgIGNoYWxrLmdyYXkoYFtMb2FkaW5nXSBMb2FkZWQgJHt0aGlzLnRlbXBsYXRlcy5zaXplfSB0ZW1wbGF0ZXMuYClcbiAgICAvLyApO1xuICB9XG5cbiAgLyoqXG4gICAqIO2FnO2UjOumvyAqKuyduOyKpO2EtOyKpCoq66W8IGtleeuhnCDssL7slYTsmLXri4jri6QuXG4gICAqIOunjOyVvSDthZztlIzrpr/snbQg66Gc65OcKGF1dG9sb2FkKeuQmOyngCDslYrslZjqsbDrgpgg7LC+64qUIO2FnO2UjOumv+ydtCDsl4bri6TrqbQg7JeQ65+s66W8IOuNmOynkeuLiOuLpC5cbiAgICogQGRlcHJlY2F0ZWQgVGVtcGxhdGVNYW5hZ2VyLmdldCgpIOyCrOyaqSDqtozsnqVcbiAgICogQHBhcmFtIGtleVxuICAgKiBAcmV0dXJuc1xuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmaW5kKGtleTogVGVtcGxhdGVLZXkpOiBUZW1wbGF0ZSB7XG4gICAgY29uc3QgaW5zdGFuY2UgPSBUZW1wbGF0ZS50ZW1wbGF0ZXMuZ2V0KGtleSk7XG4gICAgaWYgKCFpbnN0YW5jZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBgVGVtcGxhdGUgJHtrZXl9IG5vdCBmb3VuZC4gSXQgbWlnaHQgYmUgYmVjYXVzZSB5b3UgdHJpZWQgdG8gZmluZCBhIHRlbXBsYXRlIGJlZm9yZSBsb2FkaW5nIGFsbCB0ZW1wbGF0ZXMuIERpZCB5b3UgY2FsbCBUZW1wbGF0ZU1hbmFnZXIuYXV0b2xvYWQoKT9gLFxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIGluc3RhbmNlO1xuICB9XG5cbiAgLyoqXG4gICAqIOuCtOu2gOyaqTogVGVtcGxhdGVNYW5hZ2Vy7JeQ7IScIOyCrOyaqVxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBnZXRUZW1wbGF0ZXNNYXAoKTogTWFwPFRlbXBsYXRlS2V5LCBUZW1wbGF0ZT4ge1xuICAgIHJldHVybiBUZW1wbGF0ZS50ZW1wbGF0ZXM7XG4gIH1cblxuICAvKipcbiAgICog64K067aA7JqpOiBUZW1wbGF0ZU1hbmFnZXLsl5DshJwg7IKs7JqpXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNsZWFyVGVtcGxhdGVzKCk6IHZvaWQge1xuICAgIFRlbXBsYXRlLnRlbXBsYXRlcy5jbGVhcigpO1xuICB9XG5cbiAgcHVibGljIGFic3RyYWN0IHJlbmRlcihcbiAgICBvcHRpb25zOiBUZW1wbGF0ZU9wdGlvbnNbVGVtcGxhdGVLZXldLFxuICAgIC4uLmV4dHJhOiB1bmtub3duW11cbiAgKTogUmVuZGVyZWRUZW1wbGF0ZSB8IFByb21pc2U8UmVuZGVyZWRUZW1wbGF0ZT47XG5cbiAgcHVibGljIGFic3RyYWN0IGdldFRhcmdldEFuZFBhdGgoXG4gICAgbmFtZXM/OiBFbnRpdHlOYW1lc1JlY29yZCxcbiAgICAuLi5leHRyYTogdW5rbm93bltdXG4gICk6IHtcbiAgICB0YXJnZXQ6IHN0cmluZztcbiAgICBwYXRoOiBzdHJpbmc7XG4gIH07XG5cbiAgLyoqXG4gICAqIOydtCDthZztlIzrpr/snbQg7ZWE7JqU66GcIO2VmOuKlCBpMThuIGRpY3Qg7YKk66W8IOuwmO2ZmO2VqeuLiOuLpC5cbiAgICog7Iqk7LqQ7Y+065SpIOyLnCDsl6zrn6wg7YWc7ZSM66a/7J2YIO2CpOulvCDrqqjslYTshJwg7ZWcIOuyiOyXkCDsspjrpqztlanri4jri6QuXG4gICAqXG4gICAqIEByZXR1cm5zIO2VhOyalO2VnCBkaWN0IO2CpCDrsLDsl7Qg65iQ64qUIG51bGwgKGkxOG4g67aI7ZWE7JqUIOyLnClcbiAgICovXG4gIHB1YmxpYyBnZXRSZXF1aXJlZERpY3RLZXlzKCk6IHN0cmluZ1tdIHwgbnVsbCB7XG4gICAgLy8g6riw67O47KCB7Jy866GcIGRpY3Qg7YKk6rCAIO2VhOyalCDsl4bsnYwuIO2VhOyalO2VnCDthZztlIzrpr/sl5DshJwg7Jik67KE65287J2065OcXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7a0JBSWdEO2dCQUNFO29CQUNNO0NBaUJsQyxXQUF0QixNQUFzQixTQUFTO0VBR1Y7RUFGbkIsT0FBZSw0QkFBd0MsSUFBSSxJQUFJO0VBRS9ELFlBQVksS0FBeUI7R0FBbEIsS0FBQSxNQUFBO0VBQW1COzs7Ozs7RUFPdEMsYUFBb0IsV0FBVztHQUM3QixNQUFNLGdCQUFnQixNQUFNLFVBRzFCLEtBQUssS0FBSyxPQUFPLEtBQUssU0FBUywrQkFBK0IsQ0FDaEU7R0FFQSxLQUFLLE1BQU0sZ0JBQWdCLGVBQWU7SUFFeEMsTUFBTSxZQUFZLE1BQU0sY0FBbUIsWUFBWTtJQUN2RCxJQUNFLFVBQVUsV0FBVyxLQUNyQixnQkFBZ0IsVUFBVSxFQUFFLENBQUMsS0FBSyxLQUNsQyxVQUFVLEVBQUUsQ0FBQyxNQUFNLHFCQUFxQixVQUN4QztLQUVBLE1BQU0sV0FBVyxJQUFJLFVBQVUsRUFBRSxDQUFDLE1BQU07S0FDeEMsU0FBUyxVQUFVLElBQUksU0FBUyxLQUFLLFFBQVE7SUFDL0MsT0FDRSxNQUFNLElBQUksTUFDUixZQUFZLGFBQWEsb0RBQzNCO0dBRUo7RUFLRjs7Ozs7Ozs7RUFTQSxPQUFjLEtBQUssS0FBNEI7R0FDN0MsTUFBTSxXQUFXLFNBQVMsVUFBVSxJQUFJLEdBQUc7R0FDM0MsSUFBSSxDQUFDLFVBQ0gsTUFBTSxJQUFJLE1BQ1IsWUFBWSxJQUFJLG9JQUNsQjtHQUVGLE9BQU87RUFDVDs7OztFQUtBLE9BQWMsa0JBQThDO0dBQzFELE9BQU8sU0FBUztFQUNsQjs7OztFQUtBLE9BQWMsaUJBQXVCO0dBQ25DLFNBQVMsVUFBVSxNQUFNO0VBQzNCOzs7Ozs7O0VBcUJBLHNCQUE4QztHQUU1QyxPQUFPO0VBQ1Q7Q0FDRiJ9
|
|
@@ -1,22 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* zod-converter 구성
|
|
3
|
-
* 1. 유틸리티
|
|
4
|
-
* - getZodTypeById
|
|
5
|
-
*
|
|
6
|
-
* 2. Zod 타입 변환 (EntityProp -> ZodType)
|
|
7
|
-
* - propToZodType
|
|
8
|
-
*
|
|
9
|
-
* 3. EntityProp/Node -> Zod 코드 문자열
|
|
10
|
-
* - propToZodTypeDef
|
|
11
|
-
* - propNodeToZodTypeDef
|
|
12
|
-
*
|
|
13
|
-
* 4. Zod 타입 인스턴스를 해당하는 Zod 코드 문자열로 변환 (ZodType -> ZodCode)
|
|
14
|
-
* - zodTypeToZodCode
|
|
15
|
-
*
|
|
16
|
-
* 5. Zod 타입을 UI 렌더링에 사용할 수 있는 RenderingNode로 변환 (ZodType -> RenderingNode)
|
|
17
|
-
* - zodTypeToRenderingNode
|
|
18
|
-
* - resolveRenderType
|
|
19
|
-
*/
|
|
20
1
|
import { z } from "zod";
|
|
21
2
|
import { type EntityProp, type EntityPropNode, type RenderingNode } from "../types/types";
|
|
22
3
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zod-converter.d.ts","sourceRoot":"","sources":["../../src/template/zod-converter.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"zod-converter.d.ts","sourceRoot":"","sources":["../../src/template/zod-converter.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAoCxB,OAAO,EACL,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,aAAa,EAEnB,MAAM,gBAAgB,CAAC;AAexB;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;CAWjB,CAAC;AAqGX;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CA8B7E;AAED;;;GAGG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAsG3E;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,EAAE,GAAG,MAAM,CA0HrF;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,EAAE,GAAG,MAAM,CA0BjG;AAED,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,GAAG,MAAM,CAmHxD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,gBAAgB,GAAE,MAAM,EAAO,GAAG,MAAM,CAuJvF;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,CAAC,CAAC,UAAU,EACrB,OAAO,GAAE,MAAe,GACvB,aAAa,CAiGf"}
|