sonamu 0.8.26 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/cli.js +60 -13
- package/dist/_virtual/rolldown_runtime.js +39 -0
- package/dist/ai/agents/agent.d.ts +3 -3
- package/dist/ai/agents/agent.d.ts.map +1 -1
- package/dist/ai/agents/agent.js +76 -73
- package/dist/ai/agents/index.js +3 -3
- package/dist/ai/agents/types.d.ts +3 -3
- package/dist/ai/agents/types.d.ts.map +1 -1
- package/dist/ai/agents/types.js +1 -3
- package/dist/ai/index.js +3 -2
- package/dist/ai/providers/rtzr/api.js +25 -25
- package/dist/ai/providers/rtzr/error.js +25 -26
- package/dist/ai/providers/rtzr/index.js +5 -5
- package/dist/ai/providers/rtzr/model.d.ts +1 -1
- package/dist/ai/providers/rtzr/model.d.ts.map +1 -1
- package/dist/ai/providers/rtzr/model.js +117 -133
- package/dist/ai/providers/rtzr/options.d.ts.map +1 -1
- package/dist/ai/providers/rtzr/options.js +35 -41
- package/dist/ai/providers/rtzr/provider.d.ts +1 -1
- package/dist/ai/providers/rtzr/provider.d.ts.map +1 -1
- package/dist/ai/providers/rtzr/provider.js +53 -51
- package/dist/ai/providers/rtzr/utils.d.ts.map +1 -1
- package/dist/ai/providers/rtzr/utils.js +84 -84
- 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 +29 -19
- package/dist/api/caster.d.ts +1 -1
- package/dist/api/caster.d.ts.map +1 -1
- package/dist/api/caster.js +51 -61
- package/dist/api/code-converters.d.ts +4 -3
- package/dist/api/code-converters.d.ts.map +1 -1
- package/dist/api/code-converters.js +226 -249
- package/dist/api/config.d.ts +17 -17
- package/dist/api/config.d.ts.map +1 -1
- package/dist/api/config.js +37 -30
- package/dist/api/context.d.ts +10 -10
- package/dist/api/context.d.ts.map +1 -1
- package/dist/api/context.js +8 -2
- package/dist/api/decorators.d.ts +8 -8
- package/dist/api/decorators.d.ts.map +1 -1
- package/dist/api/decorators.js +245 -268
- package/dist/api/index.js +39 -7
- package/dist/api/secret.js +22 -15
- package/dist/api/sonamu.d.ts +15 -15
- package/dist/api/sonamu.d.ts.map +1 -1
- package/dist/api/sonamu.js +1012 -1131
- package/dist/api/validator.js +88 -79
- package/dist/auth/auth-generator.d.ts.map +1 -1
- package/dist/auth/auth-generator.js +203 -200
- package/dist/auth/better-auth-entities.d.ts +2 -2
- package/dist/auth/better-auth-entities.d.ts.map +1 -1
- package/dist/auth/better-auth-entities.js +369 -429
- package/dist/auth/index.js +21 -6
- package/dist/auth/knex-adapter.d.ts +2 -2
- package/dist/auth/knex-adapter.d.ts.map +1 -1
- package/dist/auth/knex-adapter.js +153 -157
- package/dist/auth/plugins/entity-definitions/admin.d.ts +1 -1
- package/dist/auth/plugins/entity-definitions/admin.d.ts.map +1 -1
- package/dist/auth/plugins/entity-definitions/admin.js +58 -56
- package/dist/auth/plugins/entity-definitions/anonymous.d.ts +1 -1
- package/dist/auth/plugins/entity-definitions/anonymous.d.ts.map +1 -1
- package/dist/auth/plugins/entity-definitions/anonymous.js +20 -20
- package/dist/auth/plugins/entity-definitions/api-key.d.ts +1 -1
- package/dist/auth/plugins/entity-definitions/api-key.d.ts.map +1 -1
- package/dist/auth/plugins/entity-definitions/api-key.js +185 -196
- package/dist/auth/plugins/entity-definitions/index.d.ts +1 -1
- package/dist/auth/plugins/entity-definitions/index.d.ts.map +1 -1
- package/dist/auth/plugins/entity-definitions/index.js +26 -29
- package/dist/auth/plugins/entity-definitions/jwt.d.ts +1 -1
- package/dist/auth/plugins/entity-definitions/jwt.d.ts.map +1 -1
- package/dist/auth/plugins/entity-definitions/jwt.js +62 -64
- package/dist/auth/plugins/entity-definitions/organization.d.ts +1 -1
- package/dist/auth/plugins/entity-definitions/organization.d.ts.map +1 -1
- package/dist/auth/plugins/entity-definitions/organization.js +362 -421
- package/dist/auth/plugins/entity-definitions/passkey.d.ts +1 -1
- package/dist/auth/plugins/entity-definitions/passkey.d.ts.map +1 -1
- package/dist/auth/plugins/entity-definitions/passkey.js +115 -126
- package/dist/auth/plugins/entity-definitions/phone-number.d.ts +1 -1
- package/dist/auth/plugins/entity-definitions/phone-number.d.ts.map +1 -1
- package/dist/auth/plugins/entity-definitions/phone-number.js +31 -40
- package/dist/auth/plugins/entity-definitions/sso.d.ts +1 -1
- package/dist/auth/plugins/entity-definitions/sso.d.ts.map +1 -1
- package/dist/auth/plugins/entity-definitions/sso.js +94 -107
- package/dist/auth/plugins/entity-definitions/two-factor.d.ts +1 -1
- package/dist/auth/plugins/entity-definitions/two-factor.d.ts.map +1 -1
- package/dist/auth/plugins/entity-definitions/two-factor.js +78 -92
- package/dist/auth/plugins/entity-definitions/types.d.ts +1 -1
- package/dist/auth/plugins/entity-definitions/types.d.ts.map +1 -1
- package/dist/auth/plugins/entity-definitions/types.js +1 -10
- package/dist/auth/plugins/entity-definitions/username.d.ts +1 -1
- package/dist/auth/plugins/entity-definitions/username.d.ts.map +1 -1
- package/dist/auth/plugins/entity-definitions/username.js +31 -40
- package/dist/auth/plugins/index.js +12 -3
- package/dist/auth/plugins/wrappers/admin.d.ts +2 -2
- package/dist/auth/plugins/wrappers/admin.d.ts.map +1 -1
- package/dist/auth/plugins/wrappers/admin.js +28 -29
- package/dist/auth/plugins/wrappers/anonymous.d.ts +2 -1
- package/dist/auth/plugins/wrappers/anonymous.d.ts.map +1 -1
- package/dist/auth/plugins/wrappers/anonymous.js +23 -22
- package/dist/auth/plugins/wrappers/api-key.d.ts +2 -1
- package/dist/auth/plugins/wrappers/api-key.d.ts.map +1 -1
- package/dist/auth/plugins/wrappers/api-key.js +39 -34
- package/dist/auth/plugins/wrappers/index.js +11 -11
- package/dist/auth/plugins/wrappers/jwt.d.ts +2 -1
- package/dist/auth/plugins/wrappers/jwt.d.ts.map +1 -1
- package/dist/auth/plugins/wrappers/jwt.js +31 -26
- package/dist/auth/plugins/wrappers/organization.d.ts +2 -1
- package/dist/auth/plugins/wrappers/organization.d.ts.map +1 -1
- package/dist/auth/plugins/wrappers/organization.js +65 -62
- package/dist/auth/plugins/wrappers/passkey.d.ts +2 -1
- package/dist/auth/plugins/wrappers/passkey.d.ts.map +1 -1
- package/dist/auth/plugins/wrappers/passkey.js +33 -28
- package/dist/auth/plugins/wrappers/phone-number.d.ts.map +1 -1
- package/dist/auth/plugins/wrappers/phone-number.js +26 -23
- package/dist/auth/plugins/wrappers/sso.d.ts.map +1 -1
- package/dist/auth/plugins/wrappers/sso.js +37 -31
- package/dist/auth/plugins/wrappers/two-factor.d.ts.map +1 -1
- package/dist/auth/plugins/wrappers/two-factor.js +31 -28
- package/dist/auth/plugins/wrappers/username.d.ts.map +1 -1
- package/dist/auth/plugins/wrappers/username.js +23 -23
- package/dist/bin/build-config.js +31 -31
- package/dist/bin/cli.js +1063 -1204
- package/dist/bin/fixture.d.ts.map +1 -1
- package/dist/bin/fixture.js +266 -259
- package/dist/bin/hmr-hook-register.d.ts.map +1 -1
- package/dist/bin/hmr-hook-register.js +19 -18
- package/dist/bin/test-command.d.ts.map +1 -1
- package/dist/bin/test-command.js +180 -177
- package/dist/bin/ts-loader-register.js +13 -6
- package/dist/bin/ts-loader-registration.d.ts.map +1 -1
- package/dist/bin/ts-loader-registration.js +28 -38
- package/dist/cache/cache-manager.d.ts +1 -1
- package/dist/cache/cache-manager.d.ts.map +1 -1
- package/dist/cache/cache-manager.js +20 -15
- package/dist/cache/decorator.d.ts +1 -1
- package/dist/cache/decorator.d.ts.map +1 -1
- package/dist/cache/decorator.js +84 -76
- package/dist/cache/drivers.js +21 -34
- package/dist/cache/index.js +10 -7
- package/dist/cache/types.d.ts +2 -2
- package/dist/cache/types.d.ts.map +1 -1
- package/dist/cache/types.js +1 -6
- package/dist/cache-control/cache-control.d.ts +2 -2
- package/dist/cache-control/cache-control.d.ts.map +1 -1
- package/dist/cache-control/cache-control.js +106 -122
- package/dist/cache-control/types.d.ts +2 -2
- package/dist/cache-control/types.d.ts.map +1 -1
- package/dist/cache-control/types.js +1 -19
- package/dist/compress/compress.d.ts +1 -1
- package/dist/compress/compress.d.ts.map +1 -1
- package/dist/compress/compress.js +58 -56
- package/dist/compress/index.js +7 -2
- package/dist/compress/types.js +1 -11
- package/dist/cone/cone-generator.d.ts +1 -1
- package/dist/cone/cone-generator.d.ts.map +1 -1
- package/dist/cone/cone-generator.js +216 -219
- package/dist/database/_batch_update.d.ts +1 -1
- package/dist/database/_batch_update.d.ts.map +1 -1
- package/dist/database/_batch_update.js +107 -102
- package/dist/database/base-model.d.ts +8 -9
- package/dist/database/base-model.d.ts.map +1 -1
- package/dist/database/base-model.js +371 -392
- package/dist/database/base-model.types.d.ts +5 -5
- package/dist/database/base-model.types.d.ts.map +1 -1
- package/dist/database/base-model.types.js +1 -20
- package/dist/database/db.d.ts +5 -2
- package/dist/database/db.d.ts.map +1 -1
- package/dist/database/db.js +185 -171
- package/dist/database/knex.d.ts +1 -1
- package/dist/database/knex.d.ts.map +1 -1
- package/dist/database/knex.js +48 -42
- package/dist/database/puri-subset.types.d.ts +6 -7
- package/dist/database/puri-subset.types.d.ts.map +1 -1
- package/dist/database/puri-subset.types.js +1 -16
- package/dist/database/puri-wrapper.d.ts +6 -6
- package/dist/database/puri-wrapper.d.ts.map +1 -1
- package/dist/database/puri-wrapper.js +99 -101
- package/dist/database/puri.d.ts +4 -5
- package/dist/database/puri.d.ts.map +1 -1
- package/dist/database/puri.js +1021 -1227
- package/dist/database/puri.types.d.ts +6 -6
- package/dist/database/puri.types.d.ts.map +1 -1
- package/dist/database/puri.types.js +15 -6
- package/dist/database/transaction-context.d.ts +2 -2
- package/dist/database/transaction-context.d.ts.map +1 -1
- package/dist/database/transaction-context.js +22 -13
- package/dist/database/upsert-builder.d.ts +3 -3
- package/dist/database/upsert-builder.d.ts.map +1 -1
- package/dist/database/upsert-builder.js +405 -465
- package/dist/dict/en.js +72 -74
- package/dist/dict/index.js +13 -13
- package/dist/dict/ko.js +72 -74
- package/dist/dict/rc-keys.js +150 -168
- package/dist/dict/sd.d.ts +3 -1
- package/dist/dict/sd.d.ts.map +1 -1
- package/dist/dict/sd.js +54 -40
- package/dist/dict/sonamu-dictionary.d.ts +1 -1
- package/dist/dict/sonamu-dictionary.d.ts.map +1 -1
- package/dist/dict/sonamu-dictionary.js +887 -955
- package/dist/dict/types.js +1 -7
- package/dist/dict/utils.js +26 -24
- package/dist/entity/entity-manager.d.ts +9 -9
- package/dist/entity/entity-manager.d.ts.map +1 -1
- package/dist/entity/entity-manager.js +226 -223
- package/dist/entity/entity-template-cone.d.ts +1 -1
- package/dist/entity/entity-template-cone.d.ts.map +1 -1
- package/dist/entity/entity-template-cone.js +152 -151
- package/dist/entity/entity.d.ts.map +1 -1
- package/dist/entity/entity.js +952 -1089
- 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 +32 -27
- 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 +61 -68
- package/dist/filter/index.js +9 -3
- package/dist/filter/types.js +92 -88
- package/dist/filter/utils.d.ts +1 -1
- package/dist/filter/utils.d.ts.map +1 -1
- package/dist/filter/utils.js +147 -161
- package/dist/index.js +87 -40
- package/dist/logger/category.d.ts.map +1 -1
- package/dist/logger/category.js +30 -29
- package/dist/logger/configure.d.ts.map +1 -1
- package/dist/logger/configure.js +83 -107
- package/dist/migration/code-generation.d.ts +2 -2
- package/dist/migration/code-generation.d.ts.map +1 -1
- package/dist/migration/code-generation.js +1385 -1578
- package/dist/migration/migration-set.d.ts +1 -1
- package/dist/migration/migration-set.d.ts.map +1 -1
- package/dist/migration/migration-set.js +177 -227
- package/dist/migration/migrator.d.ts +4 -3
- package/dist/migration/migrator.d.ts.map +1 -1
- package/dist/migration/migrator.js +340 -345
- package/dist/migration/postgresql-schema-reader.d.ts +2 -2
- package/dist/migration/postgresql-schema-reader.d.ts.map +1 -1
- package/dist/migration/postgresql-schema-reader.js +506 -564
- package/dist/migration/slack-confirm.d.ts +2 -2
- package/dist/migration/slack-confirm.d.ts.map +1 -1
- package/dist/migration/slack-confirm.js +205 -193
- package/dist/migration/types.d.ts +2 -2
- package/dist/migration/types.d.ts.map +1 -1
- package/dist/migration/types.js +1 -3
- package/dist/naite/messaging-types.d.ts +1 -0
- package/dist/naite/messaging-types.d.ts.map +1 -1
- package/dist/naite/messaging-types.js +1 -7
- package/dist/naite/naite-reporter.d.ts +2 -2
- package/dist/naite/naite-reporter.d.ts.map +1 -1
- package/dist/naite/naite-reporter.js +127 -120
- package/dist/naite/naite.d.ts +3 -2
- package/dist/naite/naite.d.ts.map +1 -1
- package/dist/naite/naite.js +266 -300
- package/dist/ssr/index.d.ts +2 -2
- package/dist/ssr/index.d.ts.map +1 -1
- package/dist/ssr/index.js +13 -3
- package/dist/ssr/registry.d.ts +1 -1
- package/dist/ssr/registry.d.ts.map +1 -1
- package/dist/ssr/registry.js +45 -37
- package/dist/ssr/renderer.d.ts +4 -4
- package/dist/ssr/renderer.d.ts.map +1 -1
- package/dist/ssr/renderer.js +84 -91
- package/dist/ssr/types.d.ts +2 -2
- package/dist/ssr/types.d.ts.map +1 -1
- package/dist/ssr/types.js +1 -3
- package/dist/storage/base-file.js +54 -41
- 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 +51 -44
- package/dist/storage/drivers.d.ts +2 -2
- package/dist/storage/drivers.d.ts.map +1 -1
- package/dist/storage/drivers.js +12 -7
- package/dist/storage/index.js +14 -7
- package/dist/storage/s3-driver.d.ts +2 -2
- package/dist/storage/s3-driver.d.ts.map +1 -1
- package/dist/storage/s3-driver.js +52 -48
- package/dist/storage/storage-manager.d.ts +2 -2
- package/dist/storage/storage-manager.d.ts.map +1 -1
- package/dist/storage/storage-manager.js +33 -25
- package/dist/storage/types.d.ts +2 -2
- package/dist/storage/types.d.ts.map +1 -1
- package/dist/storage/types.js +1 -5
- package/dist/storage/uploaded-file.d.ts +1 -1
- package/dist/storage/uploaded-file.d.ts.map +1 -1
- package/dist/storage/uploaded-file.js +45 -35
- package/dist/stream/index.js +7 -2
- package/dist/stream/sse.d.ts +2 -2
- package/dist/stream/sse.d.ts.map +1 -1
- package/dist/stream/sse.js +72 -67
- package/dist/syncer/api-parser.d.ts +1 -1
- package/dist/syncer/api-parser.d.ts.map +1 -1
- package/dist/syncer/api-parser.js +224 -245
- package/dist/syncer/checksum.d.ts +1 -1
- package/dist/syncer/checksum.d.ts.map +1 -1
- package/dist/syncer/checksum.js +86 -72
- package/dist/syncer/code-generator.d.ts +2 -2
- package/dist/syncer/code-generator.d.ts.map +1 -1
- package/dist/syncer/code-generator.js +154 -160
- package/dist/syncer/entity-operations.d.ts +1 -1
- package/dist/syncer/entity-operations.d.ts.map +1 -1
- package/dist/syncer/entity-operations.js +63 -54
- 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 +38 -38
- package/dist/syncer/index.js +19 -8
- package/dist/syncer/module-loader.d.ts +5 -5
- package/dist/syncer/module-loader.d.ts.map +1 -1
- package/dist/syncer/module-loader.js +83 -78
- package/dist/syncer/syncer-actions.d.ts +2 -2
- package/dist/syncer/syncer-actions.d.ts.map +1 -1
- package/dist/syncer/syncer-actions.js +76 -91
- package/dist/syncer/syncer.d.ts +7 -6
- package/dist/syncer/syncer.d.ts.map +1 -1
- package/dist/syncer/syncer.js +426 -492
- package/dist/tasks/decorator.d.ts +3 -3
- package/dist/tasks/decorator.d.ts.map +1 -1
- package/dist/tasks/decorator.js +32 -28
- package/dist/tasks/step-wrapper.d.ts +1 -1
- package/dist/tasks/step-wrapper.d.ts.map +1 -1
- package/dist/tasks/step-wrapper.js +42 -41
- package/dist/tasks/workflow-manager.d.ts +2 -2
- package/dist/tasks/workflow-manager.d.ts.map +1 -1
- package/dist/tasks/workflow-manager.js +192 -221
- 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 +103 -103
- package/dist/template/helpers.d.ts.map +1 -1
- package/dist/template/helpers.js +163 -163
- package/dist/template/implementations/entity.template.d.ts +1 -1
- package/dist/template/implementations/entity.template.d.ts.map +1 -1
- package/dist/template/implementations/entity.template.js +76 -85
- package/dist/template/implementations/entry-server.template.d.ts +1 -1
- package/dist/template/implementations/entry-server.template.d.ts.map +1 -1
- package/dist/template/implementations/entry-server.template.js +32 -27
- package/dist/template/implementations/generated.template.d.ts +1 -1
- package/dist/template/implementations/generated.template.d.ts.map +1 -1
- package/dist/template/implementations/generated.template.js +254 -275
- package/dist/template/implementations/generated_http.template.d.ts +2 -2
- package/dist/template/implementations/generated_http.template.d.ts.map +1 -1
- package/dist/template/implementations/generated_http.template.js +114 -133
- package/dist/template/implementations/generated_sso.template.d.ts.map +1 -1
- package/dist/template/implementations/generated_sso.template.js +249 -275
- package/dist/template/implementations/init_types.template.d.ts +1 -1
- package/dist/template/implementations/init_types.template.d.ts.map +1 -1
- package/dist/template/implementations/init_types.template.js +40 -34
- package/dist/template/implementations/model.template.d.ts +1 -1
- package/dist/template/implementations/model.template.d.ts.map +1 -1
- package/dist/template/implementations/model.template.js +56 -53
- package/dist/template/implementations/model_test.template.d.ts +1 -1
- package/dist/template/implementations/model_test.template.d.ts.map +1 -1
- package/dist/template/implementations/model_test.template.js +32 -24
- package/dist/template/implementations/queries.template.d.ts +1 -1
- package/dist/template/implementations/queries.template.d.ts.map +1 -1
- package/dist/template/implementations/queries.template.js +84 -89
- package/dist/template/implementations/sd.template.d.ts +1 -1
- package/dist/template/implementations/sd.template.d.ts.map +1 -1
- package/dist/template/implementations/sd.template.js +137 -144
- package/dist/template/implementations/services.template.d.ts +1 -1
- package/dist/template/implementations/services.template.d.ts.map +1 -1
- package/dist/template/implementations/services.template.js +164 -189
- package/dist/template/implementations/view_form.template.d.ts +1 -1
- package/dist/template/implementations/view_form.template.d.ts.map +1 -1
- package/dist/template/implementations/view_form.template.js +258 -285
- package/dist/template/implementations/view_id_all_select.template.d.ts +1 -1
- package/dist/template/implementations/view_id_all_select.template.d.ts.map +1 -1
- package/dist/template/implementations/view_id_all_select.template.js +31 -25
- package/dist/template/implementations/view_list.template.d.ts +1 -1
- package/dist/template/implementations/view_list.template.d.ts.map +1 -1
- package/dist/template/implementations/view_list.template.js +304 -355
- package/dist/template/implementations/view_search_input.template.d.ts +1 -1
- package/dist/template/implementations/view_search_input.template.d.ts.map +1 -1
- package/dist/template/implementations/view_search_input.template.js +31 -27
- package/dist/template/index.js +21 -7
- package/dist/template/template-manager.d.ts +1 -1
- package/dist/template/template-manager.d.ts.map +1 -1
- package/dist/template/template-manager.js +132 -123
- package/dist/template/template-types.js +8 -6
- package/dist/template/template.d.ts +2 -2
- package/dist/template/template.d.ts.map +1 -1
- package/dist/template/template.js +73 -68
- package/dist/template/zod-converter.d.ts.map +1 -1
- package/dist/template/zod-converter.js +603 -657
- 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 +93 -88
- package/dist/testing/bootstrap.d.ts +22 -13
- package/dist/testing/bootstrap.d.ts.map +1 -1
- package/dist/testing/bootstrap.js +114 -114
- package/dist/testing/data-explorer.d.ts +3 -3
- package/dist/testing/data-explorer.d.ts.map +1 -1
- package/dist/testing/data-explorer.js +237 -265
- package/dist/testing/dev-test-routes.d.ts +2 -2
- package/dist/testing/dev-test-routes.d.ts.map +1 -1
- package/dist/testing/dev-test-routes.js +258 -249
- package/dist/testing/dev-vitest-manager.d.ts +1 -1
- package/dist/testing/dev-vitest-manager.d.ts.map +1 -1
- package/dist/testing/dev-vitest-manager.js +514 -539
- package/dist/testing/faker-mappings.js +422 -420
- package/dist/testing/fixture-generator.d.ts +3 -3
- package/dist/testing/fixture-generator.d.ts.map +1 -1
- package/dist/testing/fixture-generator.js +1216 -1346
- package/dist/testing/fixture-loader.js +26 -25
- package/dist/testing/fixture-manager.d.ts +3 -3
- package/dist/testing/fixture-manager.d.ts.map +1 -1
- package/dist/testing/fixture-manager.js +706 -776
- package/dist/testing/global-setup.js +53 -49
- package/dist/testing/index.js +19 -11
- package/dist/testing/naite-vitest-reporter.js +18 -13
- package/dist/testing/parallel-db-manager.d.ts +1 -1
- package/dist/testing/parallel-db-manager.d.ts.map +1 -1
- package/dist/testing/parallel-db-manager.js +63 -78
- package/dist/testing/vitest-helpers.d.ts +1 -1
- package/dist/testing/vitest-helpers.d.ts.map +1 -1
- package/dist/testing/vitest-helpers.js +37 -33
- package/dist/types/types.d.ts +28 -28
- package/dist/types/types.d.ts.map +1 -1
- package/dist/types/types.js +764 -890
- package/dist/ui/ai-api.d.ts +1 -1
- package/dist/ui/ai-api.d.ts.map +1 -1
- package/dist/ui/ai-api.js +52 -42
- package/dist/ui/ai-client.d.ts +1 -2
- package/dist/ui/ai-client.d.ts.map +1 -1
- package/dist/ui/ai-client.js +353 -388
- package/dist/ui/api.d.ts +1 -1
- package/dist/ui/api.d.ts.map +1 -1
- package/dist/ui/api.js +903 -1145
- package/dist/ui/cdd-service.d.ts +1 -1
- package/dist/ui/cdd-service.d.ts.map +1 -1
- package/dist/ui/cdd-service.js +406 -407
- package/dist/ui/cdd-types.js +1 -3
- package/dist/ui-web/assets/index-C-Zz-wYg.css +1 -0
- package/dist/ui-web/assets/index-DejDON8K.js +238 -0
- package/dist/ui-web/index.html +3 -3
- package/dist/utils/async-utils.js +57 -45
- package/dist/utils/console-util.d.ts.map +1 -1
- package/dist/utils/console-util.js +104 -87
- package/dist/utils/controller.js +26 -19
- package/dist/utils/esm-utils.js +49 -38
- package/dist/utils/formatter.d.ts +1 -2
- package/dist/utils/formatter.d.ts.map +1 -1
- package/dist/utils/formatter.js +89 -115
- package/dist/utils/fs-utils.d.ts.map +1 -1
- package/dist/utils/fs-utils.js +68 -65
- package/dist/utils/lodash-able.js +11 -4
- package/dist/utils/model.d.ts +1 -1
- package/dist/utils/model.d.ts.map +1 -1
- package/dist/utils/model.js +21 -19
- package/dist/utils/object-utils.js +148 -186
- package/dist/utils/path-utils.js +67 -57
- package/dist/utils/process-utils.d.ts.map +1 -1
- package/dist/utils/process-utils.js +37 -31
- package/dist/utils/sql-parser.d.ts +1 -1
- package/dist/utils/sql-parser.d.ts.map +1 -1
- package/dist/utils/sql-parser.js +40 -40
- package/dist/utils/type-utils.js +44 -43
- package/dist/utils/utils.d.ts +2 -3
- package/dist/utils/utils.d.ts.map +1 -1
- package/dist/utils/utils.js +81 -93
- 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 +24 -17
- package/dist/vector/chunking.d.ts +1 -1
- package/dist/vector/chunking.d.ts.map +1 -1
- package/dist/vector/chunking.js +100 -94
- package/dist/vector/config.d.ts +1 -1
- package/dist/vector/config.d.ts.map +1 -1
- package/dist/vector/config.js +76 -78
- package/dist/vector/embedding.d.ts +1 -1
- package/dist/vector/embedding.d.ts.map +1 -1
- package/dist/vector/embedding.js +128 -125
- package/dist/vector/index.js +5 -5
- package/dist/vector/types.js +1 -5
- package/package.json +31 -36
- package/src/ai/agents/agent.ts +12 -5
- package/src/ai/agents/types.ts +5 -5
- package/src/ai/providers/rtzr/model.ts +8 -10
- package/src/ai/providers/rtzr/options.ts +2 -1
- package/src/ai/providers/rtzr/provider.ts +5 -3
- package/src/ai/providers/rtzr/utils.ts +2 -7
- package/src/api/__tests__/config.test.ts +15 -8
- package/src/api/base-frame.ts +5 -3
- package/src/api/caster.ts +7 -6
- package/src/api/code-converters.ts +23 -26
- package/src/api/config.ts +23 -17
- package/src/api/context.ts +18 -11
- package/src/api/decorators.ts +17 -18
- package/src/api/sonamu.ts +44 -49
- package/src/auth/auth-generator.ts +4 -6
- package/src/auth/better-auth-entities.ts +3 -2
- package/src/auth/knex-adapter.ts +6 -5
- package/src/auth/plugins/entity-definitions/admin.ts +1 -1
- package/src/auth/plugins/entity-definitions/anonymous.ts +1 -1
- package/src/auth/plugins/entity-definitions/api-key.ts +1 -1
- package/src/auth/plugins/entity-definitions/index.ts +1 -1
- package/src/auth/plugins/entity-definitions/jwt.ts +1 -1
- package/src/auth/plugins/entity-definitions/organization.ts +1 -1
- package/src/auth/plugins/entity-definitions/passkey.ts +1 -1
- package/src/auth/plugins/entity-definitions/phone-number.ts +1 -1
- package/src/auth/plugins/entity-definitions/sso.ts +1 -1
- package/src/auth/plugins/entity-definitions/two-factor.ts +1 -1
- package/src/auth/plugins/entity-definitions/types.ts +1 -1
- package/src/auth/plugins/entity-definitions/username.ts +1 -1
- package/src/auth/plugins/wrappers/admin.ts +3 -1
- package/src/auth/plugins/wrappers/anonymous.ts +3 -1
- package/src/auth/plugins/wrappers/api-key.ts +3 -1
- package/src/auth/plugins/wrappers/jwt.ts +3 -1
- package/src/auth/plugins/wrappers/organization.ts +3 -1
- package/src/auth/plugins/wrappers/passkey.ts +3 -1
- package/src/auth/plugins/wrappers/phone-number.ts +3 -1
- package/src/auth/plugins/wrappers/sso.ts +2 -1
- package/src/auth/plugins/wrappers/two-factor.ts +3 -1
- package/src/auth/plugins/wrappers/username.ts +3 -1
- package/src/bin/__tests__/ts-loader-register.test.ts +7 -12
- package/src/bin/build-config.ts +3 -3
- package/src/bin/cli.ts +27 -25
- package/src/bin/fixture.ts +4 -2
- package/src/bin/hmr-hook-register.ts +1 -0
- package/src/bin/test-command.ts +4 -2
- package/src/bin/ts-loader-registration.ts +6 -22
- package/src/cache/cache-manager.ts +2 -1
- package/src/cache/decorator.ts +2 -2
- package/src/cache/types.ts +3 -3
- package/src/cache-control/cache-control.ts +3 -2
- package/src/cache-control/types.ts +2 -2
- package/src/compress/compress.ts +1 -1
- package/src/cone/cone-generator.ts +5 -3
- package/src/database/_batch_update.ts +1 -1
- package/src/database/base-model.ts +20 -14
- package/src/database/base-model.types.ts +12 -11
- package/src/database/db.ts +56 -21
- package/src/database/knex.ts +2 -2
- package/src/database/puri-subset.test-d.ts +33 -32
- package/src/database/puri-subset.types.ts +6 -7
- package/src/database/puri-wrapper.ts +29 -26
- package/src/database/puri.ts +36 -34
- package/src/database/puri.types.test-d.ts +6 -5
- package/src/database/puri.types.ts +9 -12
- package/src/database/transaction-context.ts +2 -2
- package/src/database/upsert-builder.ts +17 -10
- package/src/dict/sd.ts +17 -4
- package/src/dict/sonamu-dictionary.ts +23 -17
- package/src/entity/entity-manager.ts +9 -7
- package/src/entity/entity-template-cone.ts +10 -3
- package/src/entity/entity.ts +20 -16
- package/src/exceptions/error-handler.ts +2 -1
- package/src/exceptions/so-exceptions.ts +1 -1
- package/src/filter/utils.ts +3 -2
- package/src/logger/category.ts +1 -0
- package/src/logger/configure.ts +5 -5
- package/src/migration/__tests__/code-generation.search-text.test.ts +2 -3
- package/src/migration/code-generation.ts +26 -25
- package/src/migration/migration-set.ts +16 -18
- package/src/migration/migrator.ts +38 -33
- package/src/migration/postgresql-schema-reader.ts +12 -12
- package/src/migration/slack-confirm.ts +5 -4
- package/src/migration/types.ts +2 -2
- package/src/naite/messaging-types.ts +1 -1
- package/src/naite/naite-reporter.ts +5 -3
- package/src/naite/naite.ts +12 -7
- package/src/shared/app.shared.ts.txt +2 -2
- package/src/shared/web.shared.ts.txt +2 -2
- package/src/skills/AGENTS.md +19 -18
- package/src/skills/commands/sonamu-skills.md +9 -9
- package/src/skills/sonamu/SKILL.md +111 -104
- package/src/skills/sonamu/ai-agents.md +27 -26
- package/src/skills/sonamu/api.md +81 -69
- package/src/skills/sonamu/auth-migration.md +13 -27
- package/src/skills/sonamu/auth-plugins.md +41 -31
- package/src/skills/sonamu/auth.md +30 -24
- package/src/skills/sonamu/cdd.md +26 -17
- package/src/skills/sonamu/cone.md +50 -50
- package/src/skills/sonamu/config.md +74 -51
- package/src/skills/sonamu/create-sonamu.md +31 -19
- package/src/skills/sonamu/database.md +43 -26
- package/src/skills/sonamu/entity-basic.md +61 -61
- package/src/skills/sonamu/entity-relations.md +84 -80
- package/src/skills/sonamu/entity-validation-checklist.md +19 -15
- package/src/skills/sonamu/fixture-cli.md +52 -30
- package/src/skills/sonamu/framework-change.md +9 -7
- package/src/skills/sonamu/frontend.md +64 -82
- package/src/skills/sonamu/i18n.md +45 -37
- package/src/skills/sonamu/migration.md +54 -31
- package/src/skills/sonamu/model.md +98 -66
- package/src/skills/sonamu/naite.md +34 -32
- package/src/skills/sonamu/project-init.md +28 -8
- package/src/skills/sonamu/puri.md +82 -91
- package/src/skills/sonamu/scaffolding.md +44 -32
- package/src/skills/sonamu/skill-contribution.md +50 -45
- package/src/skills/sonamu/subset.md +13 -13
- package/src/skills/sonamu/tasks.md +73 -58
- package/src/skills/sonamu/testing-devrunner.md +56 -36
- package/src/skills/sonamu/testing.md +23 -58
- package/src/skills/sonamu/upsert.md +32 -31
- package/src/skills/sonamu/vector.md +37 -36
- package/src/ssr/index.ts +2 -12
- package/src/ssr/registry.ts +1 -1
- package/src/ssr/renderer.ts +7 -5
- package/src/ssr/types.ts +2 -2
- package/src/storage/buffered-file.ts +4 -2
- package/src/storage/drivers.ts +3 -2
- package/src/storage/s3-driver.ts +7 -4
- package/src/storage/storage-manager.ts +3 -2
- package/src/storage/types.ts +3 -2
- package/src/storage/uploaded-file.ts +1 -1
- package/src/stream/sse.ts +2 -2
- package/src/syncer/api-parser.ts +8 -5
- package/src/syncer/checksum.ts +9 -5
- package/src/syncer/code-generator.ts +16 -8
- package/src/syncer/entity-operations.ts +5 -3
- package/src/syncer/file-patterns.ts +2 -1
- package/src/syncer/module-loader.ts +9 -6
- package/src/syncer/syncer-actions.ts +5 -3
- package/src/syncer/syncer.ts +18 -24
- package/src/tasks/decorator.ts +10 -8
- package/src/tasks/step-wrapper.ts +1 -1
- package/src/tasks/workflow-manager.ts +18 -15
- package/src/template/__tests__/generated.template.search-text.test.ts +1 -0
- package/src/template/entity-converter.ts +4 -2
- package/src/template/generated.template.test-d.ts +2 -1
- package/src/template/helpers.ts +5 -2
- package/src/template/implementations/entity.template.ts +9 -8
- package/src/template/implementations/entry-server.template.ts +1 -1
- package/src/template/implementations/generated.template.ts +21 -29
- package/src/template/implementations/generated_http.template.ts +9 -6
- package/src/template/implementations/generated_sso.template.ts +6 -4
- package/src/template/implementations/init_types.template.ts +3 -2
- package/src/template/implementations/model.template.ts +4 -2
- package/src/template/implementations/model_test.template.ts +3 -2
- package/src/template/implementations/queries.template.ts +6 -14
- package/src/template/implementations/sd.template.ts +4 -2
- package/src/template/implementations/services.template.ts +7 -11
- package/src/template/implementations/view_form.template.ts +5 -3
- package/src/template/implementations/view_id_all_select.template.ts +3 -2
- package/src/template/implementations/view_list.template.ts +7 -5
- package/src/template/implementations/view_search_input.template.ts +3 -2
- package/src/template/template-manager.ts +4 -3
- package/src/template/template.ts +4 -3
- package/src/template/zod-converter.ts +10 -7
- package/src/testing/__tests__/dev-test-routes.test.ts +3 -2
- package/src/testing/__tests__/dev-vitest-manager.test.ts +1 -0
- package/src/testing/_relation-graph.ts +2 -2
- package/src/testing/bootstrap.ts +55 -27
- package/src/testing/data-explorer.ts +5 -4
- package/src/testing/dev-test-routes.ts +8 -5
- package/src/testing/dev-vitest-manager.ts +13 -12
- package/src/testing/fixture-generator.ts +11 -17
- package/src/testing/fixture-manager.ts +21 -17
- package/src/testing/parallel-db-manager.ts +2 -1
- package/src/testing/vitest-helpers.ts +2 -1
- package/src/types/__tests__/entity-json-schema-search-text.test.ts +1 -0
- package/src/types/types.ts +8 -8
- package/src/typings/knex.d.ts +4 -4
- package/src/ui/ai-api.ts +5 -3
- package/src/ui/ai-client.ts +6 -5
- package/src/ui/api.ts +25 -23
- package/src/ui/cdd-service.ts +12 -11
- package/src/utils/console-util.ts +3 -1
- package/src/utils/formatter.ts +94 -102
- package/src/utils/fs-utils.ts +2 -1
- package/src/utils/model.ts +2 -2
- package/src/utils/object-utils.ts +3 -3
- package/src/utils/process-utils.ts +2 -1
- package/src/utils/sql-parser.ts +10 -1
- package/src/utils/type-utils.ts +3 -3
- package/src/utils/utils.ts +9 -7
- package/src/utils/zod-error.ts +1 -1
- package/src/vector/chunking.ts +1 -1
- package/src/vector/config.ts +1 -1
- package/src/vector/embedding.ts +11 -9
- package/tsdown.api.config.ts +50 -0
- package/.swcrc.project-default +0 -18
- package/dist/api/__tests__/config.test.js +0 -189
- package/dist/bin/__tests__/test-command.test.js +0 -112
- package/dist/bin/__tests__/ts-loader-register.test.js +0 -45
- package/dist/database/puri-subset.test-d.js +0 -89
- package/dist/database/puri.types.test-d.js +0 -129
- package/dist/migration/__tests__/code-generation.search-text.test.js +0 -435
- package/dist/template/__tests__/generated.template.search-text.test.js +0 -99
- package/dist/template/generated.template.test-d.js +0 -24
- package/dist/testing/__tests__/dev-test-routes.test.js +0 -144
- package/dist/testing/__tests__/dev-vitest-manager.test.js +0 -152
- package/dist/types/__tests__/entity-json-schema-search-text.test.js +0 -256
- package/dist/typings/knex.d.js +0 -3
- package/dist/ui-web/assets/index-CKo0Z2Iu.css +0 -1
- package/dist/ui-web/assets/index-DK-2aacv.js +0 -257
|
@@ -1,36 +1,42 @@
|
|
|
1
|
+
import { __esmMin } from "../_virtual/rolldown_runtime.js";
|
|
1
2
|
import chalk from "chalk";
|
|
2
|
-
import { setTimeout
|
|
3
|
+
import { setTimeout } from "timers/promises";
|
|
4
|
+
|
|
5
|
+
//#region src/utils/process-utils.ts
|
|
3
6
|
/**
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
7
|
+
* 주어진 작업을 실행합니다.
|
|
8
|
+
* 주어진 프로세스 이벤트(=시그널)가 발생하였을 때에도 최대 한계(delayBeforeShutdown) 동안 작업을 기다린 후 종료합니다.
|
|
9
|
+
* @param {() => Promise<void>} job - 실행할 작업
|
|
10
|
+
* @param {event: NodeJS.Signals; delayBeforeShutdown: number} options - 옵션
|
|
11
|
+
* @param {NodeJS.Signals} options.event - 프로세스 이벤트
|
|
12
|
+
* @param {number} options.delayBeforeShutdown - 최대 한계 시간
|
|
13
|
+
*/
|
|
14
|
+
async function runWithGracefulShutdown(job, { whenThisHappens: event, waitForUpTo: delayBeforeShutdown } = {
|
|
15
|
+
whenThisHappens: "SIGUSR2",
|
|
16
|
+
waitForUpTo: 2e4
|
|
13
17
|
}) {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
abortController.abort();
|
|
33
|
-
process.off(event, onEvent);
|
|
18
|
+
let isRunning = true;
|
|
19
|
+
const abortController = new AbortController();
|
|
20
|
+
const onEvent = async () => {
|
|
21
|
+
if (!isRunning) {
|
|
22
|
+
process.exit(0);
|
|
23
|
+
}
|
|
24
|
+
console.log(chalk.magentaBright(`wait for syncing done....`));
|
|
25
|
+
try {
|
|
26
|
+
await setTimeout(delayBeforeShutdown, "waiting-sync", { signal: abortController.signal });
|
|
27
|
+
} catch {}
|
|
28
|
+
console.log(chalk.magentaBright(`Syncing DONE!`));
|
|
29
|
+
process.exit(0);
|
|
30
|
+
};
|
|
31
|
+
process.on(event, onEvent);
|
|
32
|
+
await job();
|
|
33
|
+
isRunning = false;
|
|
34
|
+
abortController.abort();
|
|
35
|
+
process.off(event, onEvent);
|
|
34
36
|
}
|
|
37
|
+
var init_process_utils = __esmMin((() => {}));
|
|
35
38
|
|
|
36
|
-
//#
|
|
39
|
+
//#endregion
|
|
40
|
+
init_process_utils();
|
|
41
|
+
export { init_process_utils, runWithGracefulShutdown };
|
|
42
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2Vzcy11dGlscy5qcyIsIm5hbWVzIjpbInNldFRpbWVvdXRQcm9taXNlcyJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9wcm9jZXNzLXV0aWxzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHNldFRpbWVvdXQgYXMgc2V0VGltZW91dFByb21pc2VzIH0gZnJvbSBcInRpbWVycy9wcm9taXNlc1wiO1xuXG5pbXBvcnQgY2hhbGsgZnJvbSBcImNoYWxrXCI7XG5cbi8qKlxuICog7KO87Ja07KeEIOyekeyXheydhCDsi6Ttlontlanri4jri6QuXG4gKiDso7zslrTsp4Qg7ZSE66Gc7IS47IqkIOydtOuypO2KuCg97Iuc6re464SQKeqwgCDrsJzsg53tlZjsmIDsnYQg65WM7JeQ64+EIOy1nOuMgCDtlZzqs4QoZGVsYXlCZWZvcmVTaHV0ZG93bikg64+Z7JWIIOyekeyXheydhCDquLDri6TrprAg7ZuEIOyiheujjO2VqeuLiOuLpC5cbiAqIEBwYXJhbSB7KCkgPT4gUHJvbWlzZTx2b2lkPn0gam9iIC0g7Iuk7ZaJ7ZWgIOyekeyXhVxuICogQHBhcmFtIHtldmVudDogTm9kZUpTLlNpZ25hbHM7IGRlbGF5QmVmb3JlU2h1dGRvd246IG51bWJlcn0gb3B0aW9ucyAtIOyYteyFmFxuICogQHBhcmFtIHtOb2RlSlMuU2lnbmFsc30gb3B0aW9ucy5ldmVudCAtIO2UhOuhnOyEuOyKpCDsnbTrsqTtirhcbiAqIEBwYXJhbSB7bnVtYmVyfSBvcHRpb25zLmRlbGF5QmVmb3JlU2h1dGRvd24gLSDstZzrjIAg7ZWc6rOEIOyLnOqwhFxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcnVuV2l0aEdyYWNlZnVsU2h1dGRvd24oXG4gIGpvYjogKCkgPT4gUHJvbWlzZTx2b2lkPixcbiAge1xuICAgIHdoZW5UaGlzSGFwcGVuczogZXZlbnQsXG4gICAgd2FpdEZvclVwVG86IGRlbGF5QmVmb3JlU2h1dGRvd24sXG4gIH06IHsgd2hlblRoaXNIYXBwZW5zOiBOb2RlSlMuU2lnbmFsczsgd2FpdEZvclVwVG86IG51bWJlciB9ID0ge1xuICAgIHdoZW5UaGlzSGFwcGVuczogXCJTSUdVU1IyXCIsXG4gICAgd2FpdEZvclVwVG86IDIwMDAwLFxuICB9LFxuKTogUHJvbWlzZTx2b2lkPiB7XG4gIGxldCBpc1J1bm5pbmcgPSB0cnVlIGFzIGJvb2xlYW47XG5cbiAgY29uc3QgYWJvcnRDb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpO1xuICBjb25zdCBvbkV2ZW50ID0gYXN5bmMgKCkgPT4ge1xuICAgIGlmICghaXNSdW5uaW5nKSB7XG4gICAgICBwcm9jZXNzLmV4aXQoMCk7XG4gICAgfVxuICAgIGNvbnNvbGUubG9nKGNoYWxrLm1hZ2VudGFCcmlnaHQoYHdhaXQgZm9yIHN5bmNpbmcgZG9uZS4uLi5gKSk7XG5cbiAgICB0cnkge1xuICAgICAgYXdhaXQgc2V0VGltZW91dFByb21pc2VzKGRlbGF5QmVmb3JlU2h1dGRvd24sIFwid2FpdGluZy1zeW5jXCIsIHtcbiAgICAgICAgc2lnbmFsOiBhYm9ydENvbnRyb2xsZXIuc2lnbmFsLFxuICAgICAgfSk7XG4gICAgfSBjYXRjaCB7fVxuICAgIGNvbnNvbGUubG9nKGNoYWxrLm1hZ2VudGFCcmlnaHQoYFN5bmNpbmcgRE9ORSFgKSk7XG4gICAgcHJvY2Vzcy5leGl0KDApO1xuICB9O1xuICBwcm9jZXNzLm9uKGV2ZW50LCBvbkV2ZW50KTtcblxuICBhd2FpdCBqb2IoKTtcblxuICBpc1J1bm5pbmcgPSBmYWxzZTtcbiAgYWJvcnRDb250cm9sbGVyLmFib3J0KCk7XG4gIHByb2Nlc3Mub2ZmKGV2ZW50LCBvbkV2ZW50KTtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztBQVlBLGVBQXNCLHdCQUNwQixLQUNBLEVBQ0UsaUJBQWlCLE9BQ2pCLGFBQWEsd0JBQytDO0NBQzVELGlCQUFpQjtDQUNqQixhQUFhO0NBQ2QsRUFDYztDQUNmLElBQUksWUFBWTtDQUVoQixNQUFNLGtCQUFrQixJQUFJLGlCQUFpQjtDQUM3QyxNQUFNLFVBQVUsWUFBWTtBQUMxQixNQUFJLENBQUMsV0FBVztBQUNkLFdBQVEsS0FBSyxFQUFFOztBQUVqQixVQUFRLElBQUksTUFBTSxjQUFjLDRCQUE0QixDQUFDO0FBRTdELE1BQUk7QUFDRixTQUFNQSxXQUFtQixxQkFBcUIsZ0JBQWdCLEVBQzVELFFBQVEsZ0JBQWdCLFFBQ3pCLENBQUM7VUFDSTtBQUNSLFVBQVEsSUFBSSxNQUFNLGNBQWMsZ0JBQWdCLENBQUM7QUFDakQsVUFBUSxLQUFLLEVBQUU7O0FBRWpCLFNBQVEsR0FBRyxPQUFPLFFBQVE7QUFFMUIsT0FBTSxLQUFLO0FBRVgsYUFBWTtBQUNaLGlCQUFnQixPQUFPO0FBQ3ZCLFNBQVEsSUFBSSxPQUFPLFFBQVEifQ==
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type AST, type ColumnRef, type Join } from "node-sql-parser";
|
|
2
2
|
export declare function getTableName(expr: ColumnRef): string | null;
|
|
3
3
|
export declare function getTableNamesFromWhere(ast: AST | AST[]): string[];
|
|
4
4
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sql-parser.d.ts","sourceRoot":"","sources":["../../src/utils/sql-parser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"sql-parser.d.ts","sourceRoot":"","sources":["../../src/utils/sql-parser.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,GAAG,EACR,KAAK,SAAS,EAId,KAAK,IAAI,EAEV,MAAM,iBAAiB,CAAC;AAKzB,wBAAgB,YAAY,CAAC,IAAI,EAAE,SAAS,iBAO3C;AAGD,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,EAAE,GAAG,MAAM,EAAE,CA0BjE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,MAAM,EAAE,CAYnF"}
|
package/dist/utils/sql-parser.js
CHANGED
|
@@ -1,46 +1,46 @@
|
|
|
1
|
+
import { __esmMin } from "../_virtual/rolldown_runtime.js";
|
|
2
|
+
import { init_utils, nonNullable } from "./utils.js";
|
|
1
3
|
import { unique } from "radashi";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
4
|
+
|
|
5
|
+
//#region src/utils/sql-parser.ts
|
|
6
|
+
function getTableName(expr) {
|
|
7
|
+
if ("table" in expr && expr.table !== null) {
|
|
8
|
+
return typeof expr.table === "string" ? expr.table : expr.table.value;
|
|
9
|
+
}
|
|
10
|
+
return null;
|
|
8
11
|
}
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
return [
|
|
27
|
-
...extractTableName(where.left),
|
|
28
|
-
...extractTableName(where.right)
|
|
29
|
-
];
|
|
30
|
-
};
|
|
31
|
-
return unique((Array.isArray(ast) ? ast : [
|
|
32
|
-
ast
|
|
33
|
-
]).flatMap((a)=>a.type === "select" || a.type === "update" || a.type === "delete" ? extractTableNames(a.where) : []));
|
|
12
|
+
function getTableNamesFromWhere(ast) {
|
|
13
|
+
const extractTableNames = (where) => {
|
|
14
|
+
if (where === null || !(where.type === "binary_expr" && "left" in where)) {
|
|
15
|
+
return [];
|
|
16
|
+
}
|
|
17
|
+
const extractTableName = (expr) => {
|
|
18
|
+
if (expr.type === "column_ref") {
|
|
19
|
+
const table = getTableName(expr);
|
|
20
|
+
return table ? [table] : [];
|
|
21
|
+
} else if (expr.type === "binary_expr" && "left" in expr) {
|
|
22
|
+
return extractTableNames(expr);
|
|
23
|
+
}
|
|
24
|
+
return [];
|
|
25
|
+
};
|
|
26
|
+
return [...extractTableName(where.left), ...extractTableName(where.right)];
|
|
27
|
+
};
|
|
28
|
+
return unique((Array.isArray(ast) ? ast : [ast]).flatMap((a) => a.type === "select" || a.type === "update" || a.type === "delete" ? extractTableNames(a.where) : []));
|
|
34
29
|
}
|
|
35
30
|
/**
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
]).flatMap((a)=>a.type === "select" && Array.isArray(a.from) ? extractJoinTables(a.from) : []));
|
|
31
|
+
* 주의: table명이 아닌 alias를 반환함
|
|
32
|
+
*/
|
|
33
|
+
function getJoinTables(ast, joinTypes) {
|
|
34
|
+
const extractJoinTables = (froms) => {
|
|
35
|
+
return froms.map((f) => "join" in f && joinTypes.includes(f.join) ? f.as : null).filter(nonNullable);
|
|
36
|
+
};
|
|
37
|
+
return unique((Array.isArray(ast) ? ast : [ast]).flatMap((a) => a.type === "select" && Array.isArray(a.from) ? extractJoinTables(a.from) : []));
|
|
44
38
|
}
|
|
39
|
+
var init_sql_parser = __esmMin((() => {
|
|
40
|
+
init_utils();
|
|
41
|
+
}));
|
|
45
42
|
|
|
46
|
-
//#
|
|
43
|
+
//#endregion
|
|
44
|
+
init_sql_parser();
|
|
45
|
+
export { getJoinTables, getTableName, getTableNamesFromWhere, init_sql_parser };
|
|
46
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3FsLXBhcnNlci5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvc3FsLXBhcnNlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICB0eXBlIEFTVCxcbiAgdHlwZSBDb2x1bW5SZWYsXG4gIHR5cGUgRXhwcixcbiAgdHlwZSBFeHByZXNzaW9uVmFsdWUsXG4gIHR5cGUgRnJvbSxcbiAgdHlwZSBKb2luLFxuICB0eXBlIFNlbGVjdCxcbn0gZnJvbSBcIm5vZGUtc3FsLXBhcnNlclwiO1xuaW1wb3J0IHsgdW5pcXVlIH0gZnJvbSBcInJhZGFzaGlcIjtcblxuaW1wb3J0IHsgbm9uTnVsbGFibGUgfSBmcm9tIFwiLi91dGlsc1wiO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0VGFibGVOYW1lKGV4cHI6IENvbHVtblJlZikge1xuICBpZiAoXCJ0YWJsZVwiIGluIGV4cHIgJiYgZXhwci50YWJsZSAhPT0gbnVsbCkge1xuICAgIHJldHVybiB0eXBlb2YgZXhwci50YWJsZSA9PT0gXCJzdHJpbmdcIlxuICAgICAgPyBleHByLnRhYmxlXG4gICAgICA6IChleHByLnRhYmxlIGFzIHsgdHlwZTogc3RyaW5nOyB2YWx1ZTogc3RyaW5nIH0pLnZhbHVlO1xuICB9XG4gIHJldHVybiBudWxsO1xufVxuXG4vLyB3aGVyZSDsobDqsbTsl5Ag7IKs7Jqp65CcIO2FjOydtOu4lOuqheydhCDstpTstpxcbmV4cG9ydCBmdW5jdGlvbiBnZXRUYWJsZU5hbWVzRnJvbVdoZXJlKGFzdDogQVNUIHwgQVNUW10pOiBzdHJpbmdbXSB7XG4gIGNvbnN0IGV4dHJhY3RUYWJsZU5hbWVzID0gKHdoZXJlOiBTZWxlY3RbXCJ3aGVyZVwiXSk6IHN0cmluZ1tdID0+IHtcbiAgICBpZiAod2hlcmUgPT09IG51bGwgfHwgISh3aGVyZS50eXBlID09PSBcImJpbmFyeV9leHByXCIgJiYgXCJsZWZ0XCIgaW4gd2hlcmUpKSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuXG4gICAgY29uc3QgZXh0cmFjdFRhYmxlTmFtZSA9IChleHByOiBFeHByIHwgRXhwcmVzc2lvblZhbHVlKTogc3RyaW5nW10gPT4ge1xuICAgICAgaWYgKGV4cHIudHlwZSA9PT0gXCJjb2x1bW5fcmVmXCIpIHtcbiAgICAgICAgY29uc3QgdGFibGUgPSBnZXRUYWJsZU5hbWUoZXhwciBhcyBDb2x1bW5SZWYpO1xuICAgICAgICByZXR1cm4gdGFibGUgPyBbdGFibGVdIDogW107XG4gICAgICB9IGVsc2UgaWYgKGV4cHIudHlwZSA9PT0gXCJiaW5hcnlfZXhwclwiICYmIFwibGVmdFwiIGluIGV4cHIpIHtcbiAgICAgICAgcmV0dXJuIGV4dHJhY3RUYWJsZU5hbWVzKGV4cHIpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIFtdO1xuICAgIH07XG5cbiAgICByZXR1cm4gWy4uLmV4dHJhY3RUYWJsZU5hbWUod2hlcmUubGVmdCksIC4uLmV4dHJhY3RUYWJsZU5hbWUod2hlcmUucmlnaHQpXTtcbiAgfTtcblxuICByZXR1cm4gdW5pcXVlKFxuICAgIChBcnJheS5pc0FycmF5KGFzdCkgPyBhc3QgOiBbYXN0XSkuZmxhdE1hcCgoYSkgPT5cbiAgICAgIGEudHlwZSA9PT0gXCJzZWxlY3RcIiB8fCBhLnR5cGUgPT09IFwidXBkYXRlXCIgfHwgYS50eXBlID09PSBcImRlbGV0ZVwiXG4gICAgICAgID8gZXh0cmFjdFRhYmxlTmFtZXMoYS53aGVyZSlcbiAgICAgICAgOiBbXSxcbiAgICApLFxuICApO1xufVxuXG4vKipcbiAqIOyjvOydmDogdGFibGXrqoXsnbQg7JWE64uMIGFsaWFz66W8IOuwmO2ZmO2VqFxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0Sm9pblRhYmxlcyhhc3Q6IEFTVCB8IEFTVFtdLCBqb2luVHlwZXM6IEpvaW5bXCJqb2luXCJdW10pOiBzdHJpbmdbXSB7XG4gIGNvbnN0IGV4dHJhY3RKb2luVGFibGVzID0gKGZyb21zOiBGcm9tW10pOiBzdHJpbmdbXSA9PiB7XG4gICAgcmV0dXJuIGZyb21zXG4gICAgICAubWFwKChmKSA9PiAoXCJqb2luXCIgaW4gZiAmJiBqb2luVHlwZXMuaW5jbHVkZXMoZi5qb2luKSA/IGYuYXMgOiBudWxsKSlcbiAgICAgIC5maWx0ZXIobm9uTnVsbGFibGUpO1xuICB9O1xuXG4gIHJldHVybiB1bmlxdWUoXG4gICAgKEFycmF5LmlzQXJyYXkoYXN0KSA/IGFzdCA6IFthc3RdKS5mbGF0TWFwKChhKSA9PlxuICAgICAgYS50eXBlID09PSBcInNlbGVjdFwiICYmIEFycmF5LmlzQXJyYXkoYS5mcm9tKSA/IGV4dHJhY3RKb2luVGFibGVzKGEuZnJvbSkgOiBbXSxcbiAgICApLFxuICApO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7OztBQWFBLFNBQWdCLGFBQWEsTUFBaUI7QUFDNUMsS0FBSSxXQUFXLFFBQVEsS0FBSyxVQUFVLE1BQU07QUFDMUMsU0FBTyxPQUFPLEtBQUssVUFBVSxXQUN6QixLQUFLLFFBQ0osS0FBSyxNQUEwQzs7QUFFdEQsUUFBTzs7QUFJVCxTQUFnQix1QkFBdUIsS0FBNEI7Q0FDakUsTUFBTSxxQkFBcUIsVUFBcUM7QUFDOUQsTUFBSSxVQUFVLFFBQVEsRUFBRSxNQUFNLFNBQVMsaUJBQWlCLFVBQVUsUUFBUTtBQUN4RSxVQUFPLEVBQUU7O0VBR1gsTUFBTSxvQkFBb0IsU0FBMkM7QUFDbkUsT0FBSSxLQUFLLFNBQVMsY0FBYztJQUM5QixNQUFNLFFBQVEsYUFBYSxLQUFrQjtBQUM3QyxXQUFPLFFBQVEsQ0FBQyxNQUFNLEdBQUcsRUFBRTtjQUNsQixLQUFLLFNBQVMsaUJBQWlCLFVBQVUsTUFBTTtBQUN4RCxXQUFPLGtCQUFrQixLQUFLOztBQUVoQyxVQUFPLEVBQUU7O0FBR1gsU0FBTyxDQUFDLEdBQUcsaUJBQWlCLE1BQU0sS0FBSyxFQUFFLEdBQUcsaUJBQWlCLE1BQU0sTUFBTSxDQUFDOztBQUc1RSxRQUFPLFFBQ0osTUFBTSxRQUFRLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxFQUFFLFNBQVMsTUFDMUMsRUFBRSxTQUFTLFlBQVksRUFBRSxTQUFTLFlBQVksRUFBRSxTQUFTLFdBQ3JELGtCQUFrQixFQUFFLE1BQU0sR0FDMUIsRUFBRSxDQUNQLENBQ0Y7Ozs7O0FBTUgsU0FBZ0IsY0FBYyxLQUFrQixXQUFxQztDQUNuRixNQUFNLHFCQUFxQixVQUE0QjtBQUNyRCxTQUFPLE1BQ0osS0FBSyxNQUFPLFVBQVUsS0FBSyxVQUFVLFNBQVMsRUFBRSxLQUFLLEdBQUcsRUFBRSxLQUFLLEtBQU0sQ0FDckUsT0FBTyxZQUFZOztBQUd4QixRQUFPLFFBQ0osTUFBTSxRQUFRLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxFQUFFLFNBQVMsTUFDMUMsRUFBRSxTQUFTLFlBQVksTUFBTSxRQUFRLEVBQUUsS0FBSyxHQUFHLGtCQUFrQixFQUFFLEtBQUssR0FBRyxFQUFFLENBQzlFLENBQ0Y7OzthQXREbUMifQ==
|
package/dist/utils/type-utils.js
CHANGED
|
@@ -1,47 +1,48 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
setDeep(result, keys, value);
|
|
33
|
-
return result;
|
|
1
|
+
//#region src/utils/type-utils.ts
|
|
2
|
+
function withProp(obj, path, value) {
|
|
3
|
+
const keys = path.split(".");
|
|
4
|
+
if (keys.length === 0) throw new Error("Path cannot be empty");
|
|
5
|
+
const result = structuredClone(obj);
|
|
6
|
+
const setDeep = (current, keys$1, value$1) => {
|
|
7
|
+
if (keys$1.length === 0) return;
|
|
8
|
+
const [key, ...rest] = keys$1;
|
|
9
|
+
if (rest.length === 0) {
|
|
10
|
+
if (Array.isArray(current)) {
|
|
11
|
+
current.forEach((item) => {
|
|
12
|
+
item[key] = value$1;
|
|
13
|
+
});
|
|
14
|
+
} else {
|
|
15
|
+
current[key] = value$1;
|
|
16
|
+
}
|
|
17
|
+
} else {
|
|
18
|
+
if (!(key in current) || typeof current[key] !== "object") {
|
|
19
|
+
current[key] = {};
|
|
20
|
+
}
|
|
21
|
+
if (Array.isArray(current[key])) {
|
|
22
|
+
current[key].forEach((item) => {
|
|
23
|
+
setDeep(item, rest, value$1);
|
|
24
|
+
});
|
|
25
|
+
} else {
|
|
26
|
+
setDeep(current[key], rest, value$1);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
setDeep(result, keys, value);
|
|
31
|
+
return result;
|
|
34
32
|
}
|
|
35
33
|
/**
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
34
|
+
* 객체를 감싸서 체이닝을 시작합니다.
|
|
35
|
+
*/
|
|
36
|
+
function withProps(obj) {
|
|
37
|
+
return {
|
|
38
|
+
set: (path, value) => {
|
|
39
|
+
const nextObj = withProp(obj, path, value);
|
|
40
|
+
return withProps(nextObj);
|
|
41
|
+
},
|
|
42
|
+
value: () => obj
|
|
43
|
+
};
|
|
45
44
|
}
|
|
46
45
|
|
|
47
|
-
//#
|
|
46
|
+
//#endregion
|
|
47
|
+
export { withProp, withProps };
|
|
48
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS11dGlscy5qcyIsIm5hbWVzIjpbImtleXMiLCJ2YWx1ZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy90eXBlLXV0aWxzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIO2DgOyeheydhCDtjrzss5DshJwg67O07Jes7KO864qUIOycoO2LuOumrO2LsCAo6rCd7LK07JeQ66eMIOyCrOyaqe2VtOyVvCDtlagpXG50eXBlIEV4cGFuZDxUPiA9IFQgZXh0ZW5kcyBpbmZlciBPID8geyBbSyBpbiBrZXlvZiBPXTogT1tLXSB9IDogbmV2ZXI7XG5cbi8vIO2VteyLrCDroZzsp4FcbnR5cGUgU2V0UGF0aDxULCBQIGV4dGVuZHMgc3RyaW5nLCBWPiA9IFQgZXh0ZW5kcyByZWFkb25seSAoaW5mZXIgVSlbXSAvLyBbU3RlcCAxXSDtmITsnqwg7YOA7J6F7J20IOuwsOyXtOyduOqwgD8gLT4g7JqU7IaMKFUp7JeQIOuMgO2VtCDsnqzqt4Ag7Zi47LacIO2bhCDrsLDsl7TroZwg6rCQ7IyIXG4gID8gU2V0UGF0aDxVLCBQLCBWPltdXG4gIDogLy8gW1N0ZXAgMl0g6rK966Gc6rCAIOygkCguKeycvOuhnCDrgpjriZjripTqsIA/XG4gICAgUCBleHRlbmRzIGAke2luZmVyIEt9LiR7aW5mZXIgUmVzdH1gXG4gICAgPyBLIGV4dGVuZHMga2V5b2YgVFxuICAgICAgPyAvLyBbU3RlcCAyLTFdIO2CpOqwgCDsobTsnqztlahcbiAgICAgICAgRXhwYW5kPHtcbiAgICAgICAgICBbS2V5IGluIGtleW9mIFRdOiBLZXkgZXh0ZW5kcyBLXG4gICAgICAgICAgICA/IFNldFBhdGg8VFtLXSwgUmVzdCwgVj4gLy8g7J6s6reAIO2YuOy2nFxuICAgICAgICAgICAgOiBUW0tleV07XG4gICAgICAgIH0+XG4gICAgICA6IC8vIFtTdGVwIDItMl0g7YKk6rCAIOyXhuydjCAo7IOI66Gc7Jq0IOqwneyytCDqsr3roZwg7IOd7ISxKVxuICAgICAgICBFeHBhbmQ8VCAmIHsgW0tleSBpbiBLXTogU2V0UGF0aDx7fSwgUmVzdCwgVj4gfT5cbiAgICA6IC8vIFtTdGVwIDNdIOqyveuhnOydmCDrp4jsp4Drp4kgKEJhc2UgQ2FzZSlcbiAgICAgIFAgZXh0ZW5kcyBrZXlvZiBUXG4gICAgICA/IC8vIFtTdGVwIDMtMV0g6riw7KG0IO2CpCDrja7slrTsk7DquLAgKOq1kOywqCDtg4DsnoUgJiDrjIDsi6Ag7KGw6rG067aAIO2DgOyeheycvOuhnCDsmYTsoIQg6rWQ7LK0KVxuICAgICAgICBFeHBhbmQ8eyBbS2V5IGluIGtleW9mIFRdOiBLZXkgZXh0ZW5kcyBQID8gViA6IFRbS2V5XSB9PlxuICAgICAgOiAvLyBbU3RlcCAzLTJdIOyDiCDtgqQg7LaU6rCAXG4gICAgICAgIEV4cGFuZDxUICYgeyBbS2V5IGluIFBdOiBWIH0+O1xuXG5leHBvcnQgZnVuY3Rpb24gd2l0aFByb3A8VCBleHRlbmRzIG9iamVjdCwgUCBleHRlbmRzIHN0cmluZywgVj4oXG4gIG9iajogVCxcbiAgcGF0aDogUCxcbiAgdmFsdWU6IFYsXG4pOiBTZXRQYXRoPFQsIFAsIFY+IHtcbiAgY29uc3Qga2V5cyA9IHBhdGguc3BsaXQoXCIuXCIpO1xuICBpZiAoa2V5cy5sZW5ndGggPT09IDApIHRocm93IG5ldyBFcnJvcihcIlBhdGggY2Fubm90IGJlIGVtcHR5XCIpO1xuICBjb25zdCByZXN1bHQgPSBzdHJ1Y3R1cmVkQ2xvbmUob2JqKTtcblxuICAvLyBveGxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAtLSDrspTsmqkg67Cw7Je0IOyalOyGjCDtg4DsnoVcbiAgY29uc3Qgc2V0RGVlcCA9IChjdXJyZW50OiBhbnksIGtleXM6IHN0cmluZ1tdLCB2YWx1ZTogVik6IHZvaWQgPT4ge1xuICAgIGlmIChrZXlzLmxlbmd0aCA9PT0gMCkgcmV0dXJuO1xuICAgIGNvbnN0IFtrZXksIC4uLnJlc3RdID0ga2V5cztcblxuICAgIGlmIChyZXN0Lmxlbmd0aCA9PT0gMCkge1xuICAgICAgaWYgKEFycmF5LmlzQXJyYXkoY3VycmVudCkpIHtcbiAgICAgICAgY3VycmVudC5mb3JFYWNoKChpdGVtKSA9PiB7XG4gICAgICAgICAgaXRlbVtrZXldID0gdmFsdWU7XG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY3VycmVudFtrZXldID0gdmFsdWU7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICghKGtleSBpbiBjdXJyZW50KSB8fCB0eXBlb2YgY3VycmVudFtrZXldICE9PSBcIm9iamVjdFwiKSB7XG4gICAgICAgIGN1cnJlbnRba2V5XSA9IHt9O1xuICAgICAgfVxuICAgICAgaWYgKEFycmF5LmlzQXJyYXkoY3VycmVudFtrZXldKSkge1xuICAgICAgICAvLyBveGxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAtLSDrspTsmqkg67Cw7Je0IOyalOyGjCDtg4DsnoVcbiAgICAgICAgY3VycmVudFtrZXldLmZvckVhY2goKGl0ZW06IGFueSkgPT4ge1xuICAgICAgICAgIHNldERlZXAoaXRlbSwgcmVzdCwgdmFsdWUpO1xuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHNldERlZXAoY3VycmVudFtrZXldLCByZXN0LCB2YWx1ZSk7XG4gICAgICB9XG4gICAgfVxuICB9O1xuXG4gIHNldERlZXAocmVzdWx0LCBrZXlzLCB2YWx1ZSk7XG4gIHJldHVybiByZXN1bHQgYXMgU2V0UGF0aDxULCBQLCBWPjtcbn1cblxuaW50ZXJmYWNlIENoYWluV3JhcHBlcjxUPiB7XG4gIC8vIOqyveuhnOyXkCDqsJLsnYQg7ISk7KCV7ZWY6rOgIOuzgOqyveuQnCDtg4DsnoXsnZgg7IOI66Gc7Jq0IOyytOyduCDrnpjtjbzrpbwg67CY7ZmY7ZWp64uI64ukLlxuICBzZXQ8UCBleHRlbmRzIHN0cmluZywgVj4ocGF0aDogUCwgdmFsdWU6IFYpOiBDaGFpbldyYXBwZXI8U2V0UGF0aDxULCBQLCBWPj47XG5cbiAgLy8g7LWc7KKFIOqysOqzvCDqsJ3ssrTrpbwg67CY7ZmY7ZWp64uI64ukLlxuICB2YWx1ZSgpOiBUO1xufVxuXG4vKipcbiAqIOqwneyytOulvCDqsJDsi7jshJwg7LK07J2064ud7J2EIOyLnOyeke2VqeuLiOuLpC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHdpdGhQcm9wczxUIGV4dGVuZHMgb2JqZWN0PihvYmo6IFQpOiBDaGFpbldyYXBwZXI8VD4ge1xuICByZXR1cm4ge1xuICAgIHNldDogPFAgZXh0ZW5kcyBzdHJpbmcsIFY+KHBhdGg6IFAsIHZhbHVlOiBWKSA9PiB7XG4gICAgICBjb25zdCBuZXh0T2JqID0gd2l0aFByb3Aob2JqLCBwYXRoLCB2YWx1ZSk7XG4gICAgICByZXR1cm4gd2l0aFByb3BzKG5leHRPYmopO1xuICAgIH0sXG4gICAgdmFsdWU6ICgpID0+IG9iaixcbiAgfTtcbn1cbiJdLCJtYXBwaW5ncyI6IjtBQXdCQSxTQUFnQixTQUNkLEtBQ0EsTUFDQSxPQUNrQjtDQUNsQixNQUFNLE9BQU8sS0FBSyxNQUFNLElBQUk7QUFDNUIsS0FBSSxLQUFLLFdBQVcsRUFBRyxPQUFNLElBQUksTUFBTSx1QkFBdUI7Q0FDOUQsTUFBTSxTQUFTLGdCQUFnQixJQUFJO0NBR25DLE1BQU0sV0FBVyxTQUFjLFFBQWdCLFlBQW1CO0FBQ2hFLE1BQUlBLE9BQUssV0FBVyxFQUFHO0VBQ3ZCLE1BQU0sQ0FBQyxLQUFLLEdBQUcsUUFBUUE7QUFFdkIsTUFBSSxLQUFLLFdBQVcsR0FBRztBQUNyQixPQUFJLE1BQU0sUUFBUSxRQUFRLEVBQUU7QUFDMUIsWUFBUSxTQUFTLFNBQVM7QUFDeEIsVUFBSyxPQUFPQztNQUNaO1VBQ0c7QUFDTCxZQUFRLE9BQU9BOztTQUVaO0FBQ0wsT0FBSSxFQUFFLE9BQU8sWUFBWSxPQUFPLFFBQVEsU0FBUyxVQUFVO0FBQ3pELFlBQVEsT0FBTyxFQUFFOztBQUVuQixPQUFJLE1BQU0sUUFBUSxRQUFRLEtBQUssRUFBRTtBQUUvQixZQUFRLEtBQUssU0FBUyxTQUFjO0FBQ2xDLGFBQVEsTUFBTSxNQUFNQSxRQUFNO01BQzFCO1VBQ0c7QUFDTCxZQUFRLFFBQVEsTUFBTSxNQUFNQSxRQUFNOzs7O0FBS3hDLFNBQVEsUUFBUSxNQUFNLE1BQU07QUFDNUIsUUFBTzs7Ozs7QUFjVCxTQUFnQixVQUE0QixLQUF5QjtBQUNuRSxRQUFPO0VBQ0wsTUFBMkIsTUFBUyxVQUFhO0dBQy9DLE1BQU0sVUFBVSxTQUFTLEtBQUssTUFBTSxNQUFNO0FBQzFDLFVBQU8sVUFBVSxRQUFROztFQUUzQixhQUFhO0VBQ2QifQ==
|
package/dist/utils/utils.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type
|
|
2
|
-
import type
|
|
1
|
+
import { type FastifyRequest } from "fastify";
|
|
2
|
+
import { type AbsolutePath } from "./path-utils";
|
|
3
3
|
export declare function findAppRootPath(): AbsolutePath;
|
|
4
4
|
export declare function findApiRootPath(): AbsolutePath;
|
|
5
5
|
export declare function nonNullable<T>(value: T): value is NonNullable<T>;
|
|
@@ -7,7 +7,6 @@ export declare function exhaustive(_param: never): void;
|
|
|
7
7
|
export declare function assertExists<T>(value: T | null | undefined, message?: string): T;
|
|
8
8
|
export declare function assertNotNull<T>(value: T | null, message?: string): T;
|
|
9
9
|
export declare function assertDefined<T>(value: T | undefined, message?: string): T;
|
|
10
|
-
export declare function chunk<T>(array: T[], size: number): T[][];
|
|
11
10
|
export declare function intersectionBy<T, K>(arr1: readonly T[], arr2: readonly T[], iteratee: (item: T) => K): T[];
|
|
12
11
|
export declare function differenceWith<T>(arr1: readonly T[], arr2: readonly T[], comparator: (a: T, b: T) => boolean): T[];
|
|
13
12
|
export declare function merge<T extends Record<string, any>>(defaultObj: T, userObj: T): T;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils/utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils/utils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,SAAS,CAAC;AAE9C,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAEjD,wBAAgB,eAAe,IAAI,YAAY,CAG9C;AAED,wBAAgB,eAAe,IAAI,YAAY,CA8B9C;AAED,wBAAgB,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,IAAI,WAAW,CAAC,CAAC,CAAC,CAEhE;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,KAAK,QAEvC;AAGD,wBAAgB,YAAY,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,GAAG,SAAS,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,CAAC,CAKhF;AAGD,wBAAgB,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,CAAC,CAKrE;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,SAAS,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,CAAC,CAK1E;AAGD,wBAAgB,cAAc,CAAC,CAAC,EAAE,CAAC,EACjC,IAAI,EAAE,SAAS,CAAC,EAAE,EAClB,IAAI,EAAE,SAAS,CAAC,EAAE,EAClB,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GACvB,CAAC,EAAE,CAGL;AAED,wBAAgB,cAAc,CAAC,CAAC,EAC9B,IAAI,EAAE,SAAS,CAAC,EAAE,EAClB,IAAI,EAAE,SAAS,CAAC,EAAE,EAClB,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,OAAO,GAClC,CAAC,EAAE,CAEL;AAGD,wBAAgB,KAAK,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,CAsBjF;AAcD,wBAAgB,+BAA+B,CAAC,OAAO,EAAE,cAAc,CAAC,SAAS,CAAC,GAAG,OAAO,CAM3F"}
|
package/dist/utils/utils.js
CHANGED
|
@@ -1,108 +1,96 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { __esmMin } from "../_virtual/rolldown_runtime.js";
|
|
2
2
|
import path from "path";
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
// NOTE: for support npm / yarn / pnpm workspaces
|
|
10
|
-
// 하지만 workspace 쓰면 process.cwd() 하면 되는데... 이건 나중에 협의 후 수정하는걸로
|
|
11
|
-
const workspacePath = process.env.PNPM_SCRIPT_SRC_DIR ?? process.env.INIT_CWD;
|
|
12
|
-
if (nonNullable(workspacePath)) {
|
|
13
|
-
return workspacePath;
|
|
14
|
-
}
|
|
15
|
-
if (nonNullable(process.env.PNPM_PACKAGE_NAME)) {
|
|
16
|
-
return process.cwd().split(path.sep).join(path.sep);
|
|
17
|
-
}
|
|
18
|
-
const basePath = import.meta.filename;
|
|
19
|
-
let dir = path.dirname(basePath);
|
|
20
|
-
if (dir.includes("/.yarn/")) {
|
|
21
|
-
dir = dir.split("/.yarn/")[0];
|
|
22
|
-
}
|
|
23
|
-
do {
|
|
24
|
-
if (fs.existsSync(path.join(dir, "/package.json"))) {
|
|
25
|
-
return dir.split(path.sep).join(path.sep);
|
|
26
|
-
}
|
|
27
|
-
dir = dir.split(path.sep).slice(0, -1).join(path.sep);
|
|
28
|
-
}while (dir.split(path.sep).length > 1)
|
|
29
|
-
throw new Error("Cannot find AppRoot using Sonamu -2");
|
|
3
|
+
import fs from "fs";
|
|
4
|
+
|
|
5
|
+
//#region src/utils/utils.ts
|
|
6
|
+
function findAppRootPath() {
|
|
7
|
+
const apiRootPath = findApiRootPath();
|
|
8
|
+
return path.dirname(apiRootPath);
|
|
30
9
|
}
|
|
31
|
-
|
|
32
|
-
|
|
10
|
+
function findApiRootPath() {
|
|
11
|
+
const workspacePath = process.env.PNPM_SCRIPT_SRC_DIR ?? process.env.INIT_CWD;
|
|
12
|
+
if (nonNullable(workspacePath)) {
|
|
13
|
+
return workspacePath;
|
|
14
|
+
}
|
|
15
|
+
if (nonNullable(process.env.PNPM_PACKAGE_NAME)) {
|
|
16
|
+
return process.cwd().split(path.sep).join(path.sep);
|
|
17
|
+
}
|
|
18
|
+
const cwdPackagePath = path.join(process.cwd(), "package.json");
|
|
19
|
+
if (fs.existsSync(cwdPackagePath)) {
|
|
20
|
+
return process.cwd().split(path.sep).join(path.sep);
|
|
21
|
+
}
|
|
22
|
+
const basePath = import.meta.filename;
|
|
23
|
+
let dir = path.dirname(basePath);
|
|
24
|
+
if (dir.includes("/.yarn/")) {
|
|
25
|
+
dir = dir.split("/.yarn/")[0];
|
|
26
|
+
}
|
|
27
|
+
do {
|
|
28
|
+
if (fs.existsSync(path.join(dir, "/package.json"))) {
|
|
29
|
+
return dir.split(path.sep).join(path.sep);
|
|
30
|
+
}
|
|
31
|
+
dir = dir.split(path.sep).slice(0, -1).join(path.sep);
|
|
32
|
+
} while (dir.split(path.sep).length > 1);
|
|
33
|
+
throw new Error("Cannot find AppRoot using Sonamu -2");
|
|
33
34
|
}
|
|
34
|
-
|
|
35
|
-
|
|
35
|
+
function nonNullable(value) {
|
|
36
|
+
return value !== null && value !== undefined;
|
|
36
37
|
}
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
if (value === null || value === undefined) {
|
|
40
|
-
throw new Error(message ?? "Value must exist");
|
|
41
|
-
}
|
|
42
|
-
return value;
|
|
38
|
+
function exhaustive(_param) {
|
|
39
|
+
throw new Error(`exhaustive`);
|
|
43
40
|
}
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
return value;
|
|
41
|
+
function assertExists(value, message) {
|
|
42
|
+
if (value === null || value === undefined) {
|
|
43
|
+
throw new Error(message ?? "Value must exist");
|
|
44
|
+
}
|
|
45
|
+
return value;
|
|
50
46
|
}
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
return value;
|
|
47
|
+
function assertNotNull(value, message) {
|
|
48
|
+
if (value === null) {
|
|
49
|
+
throw new Error(message ?? "Value must not be null");
|
|
50
|
+
}
|
|
51
|
+
return value;
|
|
57
52
|
}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
53
|
+
function assertDefined(value, message) {
|
|
54
|
+
if (value === undefined) {
|
|
55
|
+
throw new Error(message ?? "Value must be defined");
|
|
56
|
+
}
|
|
57
|
+
return value;
|
|
61
58
|
}
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
return arr1.filter((item)=>arr2Keys.has(iteratee(item)));
|
|
59
|
+
function intersectionBy(arr1, arr2, iteratee) {
|
|
60
|
+
const arr2Keys = new Set(arr2.map(iteratee));
|
|
61
|
+
return arr1.filter((item) => arr2Keys.has(iteratee(item)));
|
|
66
62
|
}
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
return arr1.filter((itemA)=>!arr2.some((itemB)=>comparator(itemA, itemB)));
|
|
63
|
+
function differenceWith(arr1, arr2, comparator) {
|
|
64
|
+
return arr1.filter((itemA) => !arr2.some((itemB) => comparator(itemA, itemB)));
|
|
70
65
|
}
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
result[key] = merge(defaultValue, userValue);
|
|
86
|
-
} else {
|
|
87
|
-
// 그 외의 경우 userObj의 값으로 덮어쓰기
|
|
88
|
-
result[key] = userValue;
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
return result;
|
|
66
|
+
function merge(defaultObj, userObj) {
|
|
67
|
+
const result = { ...defaultObj };
|
|
68
|
+
for (const key in userObj) {
|
|
69
|
+
if (Object.hasOwn(userObj, key)) {
|
|
70
|
+
const userValue = userObj[key];
|
|
71
|
+
const defaultValue = result[key];
|
|
72
|
+
if (isPlainObject(userValue) && isPlainObject(defaultValue)) {
|
|
73
|
+
result[key] = merge(defaultValue, userValue);
|
|
74
|
+
} else {
|
|
75
|
+
result[key] = userValue;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
return result;
|
|
93
80
|
}
|
|
94
|
-
// plain object 판별 헬퍼 함수
|
|
95
|
-
// (배열, null, Date 등을 제외한 순수 객체만 true)
|
|
96
81
|
function isPlainObject(value) {
|
|
97
|
-
|
|
82
|
+
return value !== null && typeof value === "object" && !Array.isArray(value) && Object.prototype.toString.call(value) === "[object Object]";
|
|
98
83
|
}
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
return headersObj;
|
|
84
|
+
function convertFastifyHeadersToStandard(headers) {
|
|
85
|
+
const headersObj = new Headers();
|
|
86
|
+
Object.entries(headers).forEach(([key, value]) => {
|
|
87
|
+
if (value) headersObj.append(key, value.toString());
|
|
88
|
+
});
|
|
89
|
+
return headersObj;
|
|
106
90
|
}
|
|
91
|
+
var init_utils = __esmMin((() => {}));
|
|
107
92
|
|
|
108
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy91dGlscy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEZhc3RpZnlSZXF1ZXN0IH0gZnJvbSBcImZhc3RpZnlcIjtcbmltcG9ydCBmcyBmcm9tIFwiZnNcIjtcbmltcG9ydCBwYXRoIGZyb20gXCJwYXRoXCI7XG5pbXBvcnQgeyBjbHVzdGVyIH0gZnJvbSBcInJhZGFzaGlcIjtcbmltcG9ydCB0eXBlIHsgQWJzb2x1dGVQYXRoIH0gZnJvbSBcIi4vcGF0aC11dGlsc1wiO1xuXG5leHBvcnQgZnVuY3Rpb24gZmluZEFwcFJvb3RQYXRoKCk6IEFic29sdXRlUGF0aCB7XG4gIGNvbnN0IGFwaVJvb3RQYXRoID0gZmluZEFwaVJvb3RQYXRoKCk7XG4gIHJldHVybiBwYXRoLmRpcm5hbWUoYXBpUm9vdFBhdGgpIGFzIEFic29sdXRlUGF0aDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZpbmRBcGlSb290UGF0aCgpOiBBYnNvbHV0ZVBhdGgge1xuICAvLyBOT1RFOiBmb3Igc3VwcG9ydCBucG0gLyB5YXJuIC8gcG5wbSB3b3Jrc3BhY2VzXG4gIC8vIO2VmOyngOunjCB3b3Jrc3BhY2Ug7JOw66m0IHByb2Nlc3MuY3dkKCkg7ZWY66m0IOuQmOuKlOuNsC4uLiDsnbTqsbQg64KY7KSR7JeQIO2YkeydmCDtm4Qg7IiY7KCV7ZWY64qU6rG466GcXG4gIGNvbnN0IHdvcmtzcGFjZVBhdGggPSBwcm9jZXNzLmVudi5QTlBNX1NDUklQVF9TUkNfRElSID8/IHByb2Nlc3MuZW52LklOSVRfQ1dEO1xuICBpZiAobm9uTnVsbGFibGUod29ya3NwYWNlUGF0aCkpIHtcbiAgICByZXR1cm4gd29ya3NwYWNlUGF0aCBhcyBBYnNvbHV0ZVBhdGg7XG4gIH1cblxuICBpZiAobm9uTnVsbGFibGUocHJvY2Vzcy5lbnYuUE5QTV9QQUNLQUdFX05BTUUpKSB7XG4gICAgcmV0dXJuIHByb2Nlc3MuY3dkKCkuc3BsaXQocGF0aC5zZXApLmpvaW4ocGF0aC5zZXApIGFzIEFic29sdXRlUGF0aDtcbiAgfVxuXG4gIGNvbnN0IGJhc2VQYXRoID0gaW1wb3J0Lm1ldGEuZmlsZW5hbWU7XG4gIGxldCBkaXIgPSBwYXRoLmRpcm5hbWUoYmFzZVBhdGgpO1xuICBpZiAoZGlyLmluY2x1ZGVzKFwiLy55YXJuL1wiKSkge1xuICAgIGRpciA9IGRpci5zcGxpdChcIi8ueWFybi9cIilbMF07XG4gIH1cblxuICBkbyB7XG4gICAgaWYgKGZzLmV4aXN0c1N5bmMocGF0aC5qb2luKGRpciwgXCIvcGFja2FnZS5qc29uXCIpKSkge1xuICAgICAgcmV0dXJuIGRpci5zcGxpdChwYXRoLnNlcCkuam9pbihwYXRoLnNlcCkgYXMgQWJzb2x1dGVQYXRoO1xuICAgIH1cbiAgICBkaXIgPSBkaXIuc3BsaXQocGF0aC5zZXApLnNsaWNlKDAsIC0xKS5qb2luKHBhdGguc2VwKTtcbiAgfSB3aGlsZSAoZGlyLnNwbGl0KHBhdGguc2VwKS5sZW5ndGggPiAxKTtcbiAgdGhyb3cgbmV3IEVycm9yKFwiQ2Fubm90IGZpbmQgQXBwUm9vdCB1c2luZyBTb25hbXUgLTJcIik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBub25OdWxsYWJsZTxUPih2YWx1ZTogVCk6IHZhbHVlIGlzIE5vbk51bGxhYmxlPFQ+IHtcbiAgcmV0dXJuIHZhbHVlICE9PSBudWxsICYmIHZhbHVlICE9PSB1bmRlZmluZWQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBleGhhdXN0aXZlKF9wYXJhbTogbmV2ZXIpIHtcbiAgdGhyb3cgbmV3IEVycm9yKGBleGhhdXN0aXZlYCk7XG59XG5cbi8vIOydvOuwmCDrsoTsoIRcbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnRFeGlzdHM8VD4odmFsdWU6IFQgfCBudWxsIHwgdW5kZWZpbmVkLCBtZXNzYWdlPzogc3RyaW5nKTogVCB7XG4gIGlmICh2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKG1lc3NhZ2UgPz8gXCJWYWx1ZSBtdXN0IGV4aXN0XCIpO1xuICB9XG4gIHJldHVybiB2YWx1ZTtcbn1cblxuLy8gbnVsbOunjCDssrTtgaxcbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnROb3ROdWxsPFQ+KHZhbHVlOiBUIHwgbnVsbCwgbWVzc2FnZT86IHN0cmluZyk6IFQge1xuICBpZiAodmFsdWUgPT09IG51bGwpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IobWVzc2FnZSA/PyBcIlZhbHVlIG11c3Qgbm90IGJlIG51bGxcIik7XG4gIH1cbiAgcmV0dXJuIHZhbHVlO1xufVxuLy8gdW5kZWZpbmVk66eMIOyytO2BrFxuZXhwb3J0IGZ1bmN0aW9uIGFzc2VydERlZmluZWQ8VD4odmFsdWU6IFQgfCB1bmRlZmluZWQsIG1lc3NhZ2U/OiBzdHJpbmcpOiBUIHtcbiAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IobWVzc2FnZSA/PyBcIlZhbHVlIG11c3QgYmUgZGVmaW5lZFwiKTtcbiAgfVxuICByZXR1cm4gdmFsdWU7XG59XG5cbi8vIGxvZGFzaCBjaHVuayDrjIDssrQgKHJhZGFzaCBjbHVzdGVyIOyCrOyaqSlcbmV4cG9ydCBmdW5jdGlvbiBjaHVuazxUPihhcnJheTogVFtdLCBzaXplOiBudW1iZXIpOiBUW11bXSB7XG4gIHJldHVybiBjbHVzdGVyKGFycmF5LCBNYXRoLmNlaWwoYXJyYXkubGVuZ3RoIC8gc2l6ZSkpO1xufVxuLy8gbG9kYXNoIGludGVyc2VjdGlvbkJ5IOuMgOyytFxuZXhwb3J0IGZ1bmN0aW9uIGludGVyc2VjdGlvbkJ5PFQsIEs+KFxuICBhcnIxOiByZWFkb25seSBUW10sXG4gIGFycjI6IHJlYWRvbmx5IFRbXSxcbiAgaXRlcmF0ZWU6IChpdGVtOiBUKSA9PiBLLFxuKTogVFtdIHtcbiAgY29uc3QgYXJyMktleXMgPSBuZXcgU2V0KGFycjIubWFwKGl0ZXJhdGVlKSk7XG4gIHJldHVybiBhcnIxLmZpbHRlcigoaXRlbSkgPT4gYXJyMktleXMuaGFzKGl0ZXJhdGVlKGl0ZW0pKSk7XG59XG4vLyBsb2Rhc2ggZGlmZmVyZW5jZVdpdGgg64yA7LK0XG5leHBvcnQgZnVuY3Rpb24gZGlmZmVyZW5jZVdpdGg8VD4oXG4gIGFycjE6IHJlYWRvbmx5IFRbXSxcbiAgYXJyMjogcmVhZG9ubHkgVFtdLFxuICBjb21wYXJhdG9yOiAoYTogVCwgYjogVCkgPT4gYm9vbGVhbixcbik6IFRbXSB7XG4gIHJldHVybiBhcnIxLmZpbHRlcigoaXRlbUEpID0+ICFhcnIyLnNvbWUoKGl0ZW1CKSA9PiBjb21wYXJhdG9yKGl0ZW1BLCBpdGVtQikpKTtcbn1cblxuLy8gYmlvbWUtaWdub3JlIGxpbnQvc3VzcGljaW91cy9ub0V4cGxpY2l0QW55OiBkeW5hbWljIHByb3BlcnR5IGFjY2Vzc1xuZXhwb3J0IGZ1bmN0aW9uIG1lcmdlPFQgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCBhbnk+PihkZWZhdWx0T2JqOiBULCB1c2VyT2JqOiBUKTogVCB7XG4gIC8vIOybkOuzuCDrs7TsobTsnYQg7JyE7ZW0IGRlZmF1bHRPYmog67O17IKsXG4gIGNvbnN0IHJlc3VsdCA9IHsgLi4uZGVmYXVsdE9iaiB9O1xuXG4gIC8vIHVzZXJPYmrsnZgg6rCBIOyGjeyEseydhCDsiJztmoxcbiAgZm9yIChjb25zdCBrZXkgaW4gdXNlck9iaikge1xuICAgIC8vIHVzZXJPYmrsnZggb3duIHByb3BlcnR566eMIOyymOumrCAo7ZSE66Gc7Yag7YOA7J6FIOyytOyduCDsoJzsmbgpXG4gICAgaWYgKE9iamVjdC5oYXNPd24odXNlck9iaiwga2V5KSkge1xuICAgICAgY29uc3QgdXNlclZhbHVlID0gdXNlck9ialtrZXldO1xuICAgICAgY29uc3QgZGVmYXVsdFZhbHVlID0gcmVzdWx0W2tleV07XG5cbiAgICAgIC8vIOuRkCDqsJLsnbQg66qo65GQIOqwneyytOydtOqzoCwg67Cw7Je07J20IOyVhOuLjCDqsr3smrAg7J6s6reA7KCB7Jy866GcIOuzke2VqVxuICAgICAgaWYgKGlzUGxhaW5PYmplY3QodXNlclZhbHVlKSAmJiBpc1BsYWluT2JqZWN0KGRlZmF1bHRWYWx1ZSkpIHtcbiAgICAgICAgcmVzdWx0W2tleV0gPSBtZXJnZShkZWZhdWx0VmFsdWUsIHVzZXJWYWx1ZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyDqt7gg7Jm47J2YIOqyveyasCB1c2VyT2Jq7J2YIOqwkuycvOuhnCDrja7slrTsk7DquLBcbiAgICAgICAgcmVzdWx0W2tleV0gPSB1c2VyVmFsdWU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHJlc3VsdDtcbn1cblxuLy8gcGxhaW4gb2JqZWN0IO2MkOuzhCDtl6ztjbwg7ZWo7IiYXG4vLyAo67Cw7Je0LCBudWxsLCBEYXRlIOuTseydhCDsoJzsmbjtlZwg7Iic7IiYIOqwneyytOunjCB0cnVlKVxuZnVuY3Rpb24gaXNQbGFpbk9iamVjdCh2YWx1ZTogdW5rbm93bik6IHZhbHVlIGlzIFJlY29yZDxzdHJpbmcsIHVua25vd24+IHtcbiAgcmV0dXJuIChcbiAgICB2YWx1ZSAhPT0gbnVsbCAmJlxuICAgIHR5cGVvZiB2YWx1ZSA9PT0gXCJvYmplY3RcIiAmJlxuICAgICFBcnJheS5pc0FycmF5KHZhbHVlKSAmJlxuICAgIE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh2YWx1ZSkgPT09IFwiW29iamVjdCBPYmplY3RdXCJcbiAgKTtcbn1cblxuLy8gQ29udmVydCBGYXN0aWZ5IGhlYWRlcnMgdG8gc3RhbmRhcmQgSGVhZGVycyBvYmplY3RcbmV4cG9ydCBmdW5jdGlvbiBjb252ZXJ0RmFzdGlmeUhlYWRlcnNUb1N0YW5kYXJkKGhlYWRlcnM6IEZhc3RpZnlSZXF1ZXN0W1wiaGVhZGVyc1wiXSk6IEhlYWRlcnMge1xuICBjb25zdCBoZWFkZXJzT2JqID0gbmV3IEhlYWRlcnMoKTtcbiAgT2JqZWN0LmVudHJpZXMoaGVhZGVycykuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgaWYgKHZhbHVlKSBoZWFkZXJzT2JqLmFwcGVuZChrZXksIHZhbHVlLnRvU3RyaW5nKCkpO1xuICB9KTtcbiAgcmV0dXJuIGhlYWRlcnNPYmo7XG59XG4iXSwibmFtZXMiOlsiZnMiLCJwYXRoIiwiY2x1c3RlciIsImZpbmRBcHBSb290UGF0aCIsImFwaVJvb3RQYXRoIiwiZmluZEFwaVJvb3RQYXRoIiwiZGlybmFtZSIsIndvcmtzcGFjZVBhdGgiLCJwcm9jZXNzIiwiZW52IiwiUE5QTV9TQ1JJUFRfU1JDX0RJUiIsIklOSVRfQ1dEIiwibm9uTnVsbGFibGUiLCJQTlBNX1BBQ0tBR0VfTkFNRSIsImN3ZCIsInNwbGl0Iiwic2VwIiwiam9pbiIsImJhc2VQYXRoIiwiZmlsZW5hbWUiLCJkaXIiLCJpbmNsdWRlcyIsImV4aXN0c1N5bmMiLCJzbGljZSIsImxlbmd0aCIsIkVycm9yIiwidmFsdWUiLCJ1bmRlZmluZWQiLCJleGhhdXN0aXZlIiwiX3BhcmFtIiwiYXNzZXJ0RXhpc3RzIiwibWVzc2FnZSIsImFzc2VydE5vdE51bGwiLCJhc3NlcnREZWZpbmVkIiwiY2h1bmsiLCJhcnJheSIsInNpemUiLCJNYXRoIiwiY2VpbCIsImludGVyc2VjdGlvbkJ5IiwiYXJyMSIsImFycjIiLCJpdGVyYXRlZSIsImFycjJLZXlzIiwiU2V0IiwibWFwIiwiZmlsdGVyIiwiaXRlbSIsImhhcyIsImRpZmZlcmVuY2VXaXRoIiwiY29tcGFyYXRvciIsIml0ZW1BIiwic29tZSIsIml0ZW1CIiwibWVyZ2UiLCJkZWZhdWx0T2JqIiwidXNlck9iaiIsInJlc3VsdCIsImtleSIsIk9iamVjdCIsImhhc093biIsInVzZXJWYWx1ZSIsImRlZmF1bHRWYWx1ZSIsImlzUGxhaW5PYmplY3QiLCJBcnJheSIsImlzQXJyYXkiLCJwcm90b3R5cGUiLCJ0b1N0cmluZyIsImNhbGwiLCJjb252ZXJ0RmFzdGlmeUhlYWRlcnNUb1N0YW5kYXJkIiwiaGVhZGVycyIsImhlYWRlcnNPYmoiLCJIZWFkZXJzIiwiZW50cmllcyIsImZvckVhY2giLCJhcHBlbmQiXSwibWFwcGluZ3MiOiJBQUNBLE9BQU9BLFFBQVEs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
|
|
93
|
+
//#endregion
|
|
94
|
+
init_utils();
|
|
95
|
+
export { assertDefined, assertExists, assertNotNull, convertFastifyHeadersToStandard, differenceWith, exhaustive, findApiRootPath, findAppRootPath, init_utils, intersectionBy, merge, nonNullable };
|
|
96
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL3V0aWxzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBmcyBmcm9tIFwiZnNcIjtcbmltcG9ydCBwYXRoIGZyb20gXCJwYXRoXCI7XG5cbmltcG9ydCB7IHR5cGUgRmFzdGlmeVJlcXVlc3QgfSBmcm9tIFwiZmFzdGlmeVwiO1xuXG5pbXBvcnQgeyB0eXBlIEFic29sdXRlUGF0aCB9IGZyb20gXCIuL3BhdGgtdXRpbHNcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIGZpbmRBcHBSb290UGF0aCgpOiBBYnNvbHV0ZVBhdGgge1xuICBjb25zdCBhcGlSb290UGF0aCA9IGZpbmRBcGlSb290UGF0aCgpO1xuICByZXR1cm4gcGF0aC5kaXJuYW1lKGFwaVJvb3RQYXRoKSBhcyBBYnNvbHV0ZVBhdGg7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmaW5kQXBpUm9vdFBhdGgoKTogQWJzb2x1dGVQYXRoIHtcbiAgLy8gTk9URTogZm9yIHN1cHBvcnQgbnBtIC8geWFybiAvIHBucG0gd29ya3NwYWNlc1xuICAvLyDtlZjsp4Drp4wgd29ya3NwYWNlIOyTsOuptCBwcm9jZXNzLmN3ZCgpIO2VmOuptCDrkJjripTrjbAuLi4g7J206rG0IOuCmOykkeyXkCDtmJHsnZgg7ZuEIOyImOygle2VmOuKlOqxuOuhnFxuICBjb25zdCB3b3Jrc3BhY2VQYXRoID0gcHJvY2Vzcy5lbnYuUE5QTV9TQ1JJUFRfU1JDX0RJUiA/PyBwcm9jZXNzLmVudi5JTklUX0NXRDtcbiAgaWYgKG5vbk51bGxhYmxlKHdvcmtzcGFjZVBhdGgpKSB7XG4gICAgcmV0dXJuIHdvcmtzcGFjZVBhdGggYXMgQWJzb2x1dGVQYXRoO1xuICB9XG5cbiAgaWYgKG5vbk51bGxhYmxlKHByb2Nlc3MuZW52LlBOUE1fUEFDS0FHRV9OQU1FKSkge1xuICAgIHJldHVybiBwcm9jZXNzLmN3ZCgpLnNwbGl0KHBhdGguc2VwKS5qb2luKHBhdGguc2VwKSBhcyBBYnNvbHV0ZVBhdGg7XG4gIH1cblxuICBjb25zdCBjd2RQYWNrYWdlUGF0aCA9IHBhdGguam9pbihwcm9jZXNzLmN3ZCgpLCBcInBhY2thZ2UuanNvblwiKTtcbiAgaWYgKGZzLmV4aXN0c1N5bmMoY3dkUGFja2FnZVBhdGgpKSB7XG4gICAgcmV0dXJuIHByb2Nlc3MuY3dkKCkuc3BsaXQocGF0aC5zZXApLmpvaW4ocGF0aC5zZXApIGFzIEFic29sdXRlUGF0aDtcbiAgfVxuXG4gIGNvbnN0IGJhc2VQYXRoID0gaW1wb3J0Lm1ldGEuZmlsZW5hbWU7XG4gIGxldCBkaXIgPSBwYXRoLmRpcm5hbWUoYmFzZVBhdGgpO1xuICBpZiAoZGlyLmluY2x1ZGVzKFwiLy55YXJuL1wiKSkge1xuICAgIGRpciA9IGRpci5zcGxpdChcIi8ueWFybi9cIilbMF07XG4gIH1cblxuICBkbyB7XG4gICAgaWYgKGZzLmV4aXN0c1N5bmMocGF0aC5qb2luKGRpciwgXCIvcGFja2FnZS5qc29uXCIpKSkge1xuICAgICAgcmV0dXJuIGRpci5zcGxpdChwYXRoLnNlcCkuam9pbihwYXRoLnNlcCkgYXMgQWJzb2x1dGVQYXRoO1xuICAgIH1cbiAgICBkaXIgPSBkaXIuc3BsaXQocGF0aC5zZXApLnNsaWNlKDAsIC0xKS5qb2luKHBhdGguc2VwKTtcbiAgfSB3aGlsZSAoZGlyLnNwbGl0KHBhdGguc2VwKS5sZW5ndGggPiAxKTtcbiAgdGhyb3cgbmV3IEVycm9yKFwiQ2Fubm90IGZpbmQgQXBwUm9vdCB1c2luZyBTb25hbXUgLTJcIik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBub25OdWxsYWJsZTxUPih2YWx1ZTogVCk6IHZhbHVlIGlzIE5vbk51bGxhYmxlPFQ+IHtcbiAgcmV0dXJuIHZhbHVlICE9PSBudWxsICYmIHZhbHVlICE9PSB1bmRlZmluZWQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBleGhhdXN0aXZlKF9wYXJhbTogbmV2ZXIpIHtcbiAgdGhyb3cgbmV3IEVycm9yKGBleGhhdXN0aXZlYCk7XG59XG5cbi8vIOydvOuwmCDrsoTsoIRcbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnRFeGlzdHM8VD4odmFsdWU6IFQgfCBudWxsIHwgdW5kZWZpbmVkLCBtZXNzYWdlPzogc3RyaW5nKTogVCB7XG4gIGlmICh2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKG1lc3NhZ2UgPz8gXCJWYWx1ZSBtdXN0IGV4aXN0XCIpO1xuICB9XG4gIHJldHVybiB2YWx1ZTtcbn1cblxuLy8gbnVsbOunjCDssrTtgaxcbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnROb3ROdWxsPFQ+KHZhbHVlOiBUIHwgbnVsbCwgbWVzc2FnZT86IHN0cmluZyk6IFQge1xuICBpZiAodmFsdWUgPT09IG51bGwpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IobWVzc2FnZSA/PyBcIlZhbHVlIG11c3Qgbm90IGJlIG51bGxcIik7XG4gIH1cbiAgcmV0dXJuIHZhbHVlO1xufVxuLy8gdW5kZWZpbmVk66eMIOyytO2BrFxuZXhwb3J0IGZ1bmN0aW9uIGFzc2VydERlZmluZWQ8VD4odmFsdWU6IFQgfCB1bmRlZmluZWQsIG1lc3NhZ2U/OiBzdHJpbmcpOiBUIHtcbiAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IobWVzc2FnZSA/PyBcIlZhbHVlIG11c3QgYmUgZGVmaW5lZFwiKTtcbiAgfVxuICByZXR1cm4gdmFsdWU7XG59XG5cbi8vIGxvZGFzaCBpbnRlcnNlY3Rpb25CeSDrjIDssrRcbmV4cG9ydCBmdW5jdGlvbiBpbnRlcnNlY3Rpb25CeTxULCBLPihcbiAgYXJyMTogcmVhZG9ubHkgVFtdLFxuICBhcnIyOiByZWFkb25seSBUW10sXG4gIGl0ZXJhdGVlOiAoaXRlbTogVCkgPT4gSyxcbik6IFRbXSB7XG4gIGNvbnN0IGFycjJLZXlzID0gbmV3IFNldChhcnIyLm1hcChpdGVyYXRlZSkpO1xuICByZXR1cm4gYXJyMS5maWx0ZXIoKGl0ZW0pID0+IGFycjJLZXlzLmhhcyhpdGVyYXRlZShpdGVtKSkpO1xufVxuLy8gbG9kYXNoIGRpZmZlcmVuY2VXaXRoIOuMgOyytFxuZXhwb3J0IGZ1bmN0aW9uIGRpZmZlcmVuY2VXaXRoPFQ+KFxuICBhcnIxOiByZWFkb25seSBUW10sXG4gIGFycjI6IHJlYWRvbmx5IFRbXSxcbiAgY29tcGFyYXRvcjogKGE6IFQsIGI6IFQpID0+IGJvb2xlYW4sXG4pOiBUW10ge1xuICByZXR1cm4gYXJyMS5maWx0ZXIoKGl0ZW1BKSA9PiAhYXJyMi5zb21lKChpdGVtQikgPT4gY29tcGFyYXRvcihpdGVtQSwgaXRlbUIpKSk7XG59XG5cbi8vIGJpb21lLWlnbm9yZSBsaW50L3N1c3BpY2lvdXMvbm9FeHBsaWNpdEFueTogZHluYW1pYyBwcm9wZXJ0eSBhY2Nlc3NcbmV4cG9ydCBmdW5jdGlvbiBtZXJnZTxUIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgYW55Pj4oZGVmYXVsdE9iajogVCwgdXNlck9iajogVCk6IFQge1xuICAvLyDsm5Drs7gg67O07KG07J2EIOychO2VtCBkZWZhdWx0T2JqIOuzteyCrFxuICBjb25zdCByZXN1bHQgPSB7IC4uLmRlZmF1bHRPYmogfTtcblxuICAvLyB1c2VyT2Jq7J2YIOqwgSDsho3shLHsnYQg7Iic7ZqMXG4gIGZvciAoY29uc3Qga2V5IGluIHVzZXJPYmopIHtcbiAgICAvLyB1c2VyT2Jq7J2YIG93biBwcm9wZXJ0eeunjCDsspjrpqwgKO2UhOuhnO2GoO2DgOyehSDssrTsnbgg7KCc7Jm4KVxuICAgIGlmIChPYmplY3QuaGFzT3duKHVzZXJPYmosIGtleSkpIHtcbiAgICAgIGNvbnN0IHVzZXJWYWx1ZSA9IHVzZXJPYmpba2V5XTtcbiAgICAgIGNvbnN0IGRlZmF1bHRWYWx1ZSA9IHJlc3VsdFtrZXldO1xuXG4gICAgICAvLyDrkZAg6rCS7J20IOuqqOuRkCDqsJ3ssrTsnbTqs6AsIOuwsOyXtOydtCDslYTri4wg6rK97JqwIOyerOq3gOyggeycvOuhnCDrs5HtlalcbiAgICAgIGlmIChpc1BsYWluT2JqZWN0KHVzZXJWYWx1ZSkgJiYgaXNQbGFpbk9iamVjdChkZWZhdWx0VmFsdWUpKSB7XG4gICAgICAgIHJlc3VsdFtrZXldID0gbWVyZ2UoZGVmYXVsdFZhbHVlLCB1c2VyVmFsdWUpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8g6re4IOyZuOydmCDqsr3smrAgdXNlck9iauydmCDqsJLsnLzroZwg642u7Ja07JOw6riwXG4gICAgICAgIHJlc3VsdFtrZXldID0gdXNlclZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiByZXN1bHQ7XG59XG5cbi8vIHBsYWluIG9iamVjdCDtjJDrs4Qg7Zes7Y28IO2VqOyImFxuLy8gKOuwsOyXtCwgbnVsbCwgRGF0ZSDrk7HsnYQg7KCc7Jm47ZWcIOyInOyImCDqsJ3ssrTrp4wgdHJ1ZSlcbmZ1bmN0aW9uIGlzUGxhaW5PYmplY3QodmFsdWU6IHVua25vd24pOiB2YWx1ZSBpcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiB7XG4gIHJldHVybiAoXG4gICAgdmFsdWUgIT09IG51bGwgJiZcbiAgICB0eXBlb2YgdmFsdWUgPT09IFwib2JqZWN0XCIgJiZcbiAgICAhQXJyYXkuaXNBcnJheSh2YWx1ZSkgJiZcbiAgICBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwodmFsdWUpID09PSBcIltvYmplY3QgT2JqZWN0XVwiXG4gICk7XG59XG5cbi8vIENvbnZlcnQgRmFzdGlmeSBoZWFkZXJzIHRvIHN0YW5kYXJkIEhlYWRlcnMgb2JqZWN0XG5leHBvcnQgZnVuY3Rpb24gY29udmVydEZhc3RpZnlIZWFkZXJzVG9TdGFuZGFyZChoZWFkZXJzOiBGYXN0aWZ5UmVxdWVzdFtcImhlYWRlcnNcIl0pOiBIZWFkZXJzIHtcbiAgY29uc3QgaGVhZGVyc09iaiA9IG5ldyBIZWFkZXJzKCk7XG4gIE9iamVjdC5lbnRyaWVzKGhlYWRlcnMpLmZvckVhY2goKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgIGlmICh2YWx1ZSkgaGVhZGVyc09iai5hcHBlbmQoa2V5LCB2YWx1ZS50b1N0cmluZygpKTtcbiAgfSk7XG4gIHJldHVybiBoZWFkZXJzT2JqO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7OztBQU9BLFNBQWdCLGtCQUFnQztDQUM5QyxNQUFNLGNBQWMsaUJBQWlCO0FBQ3JDLFFBQU8sS0FBSyxRQUFRLFlBQVk7O0FBR2xDLFNBQWdCLGtCQUFnQztDQUc5QyxNQUFNLGdCQUFnQixRQUFRLElBQUksdUJBQXVCLFFBQVEsSUFBSTtBQUNyRSxLQUFJLFlBQVksY0FBYyxFQUFFO0FBQzlCLFNBQU87O0FBR1QsS0FBSSxZQUFZLFFBQVEsSUFBSSxrQkFBa0IsRUFBRTtBQUM5QyxTQUFPLFFBQVEsS0FBSyxDQUFDLE1BQU0sS0FBSyxJQUFJLENBQUMsS0FBSyxLQUFLLElBQUk7O0NBR3JELE1BQU0saUJBQWlCLEtBQUssS0FBSyxRQUFRLEtBQUssRUFBRSxlQUFlO0FBQy9ELEtBQUksR0FBRyxXQUFXLGVBQWUsRUFBRTtBQUNqQyxTQUFPLFFBQVEsS0FBSyxDQUFDLE1BQU0sS0FBSyxJQUFJLENBQUMsS0FBSyxLQUFLLElBQUk7O0NBR3JELE1BQU0sV0FBVyxPQUFPLEtBQUs7Q0FDN0IsSUFBSSxNQUFNLEtBQUssUUFBUSxTQUFTO0FBQ2hDLEtBQUksSUFBSSxTQUFTLFVBQVUsRUFBRTtBQUMzQixRQUFNLElBQUksTUFBTSxVQUFVLENBQUM7O0FBRzdCLElBQUc7QUFDRCxNQUFJLEdBQUcsV0FBVyxLQUFLLEtBQUssS0FBSyxnQkFBZ0IsQ0FBQyxFQUFFO0FBQ2xELFVBQU8sSUFBSSxNQUFNLEtBQUssSUFBSSxDQUFDLEtBQUssS0FBSyxJQUFJOztBQUUzQyxRQUFNLElBQUksTUFBTSxLQUFLLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUMsS0FBSyxLQUFLLElBQUk7VUFDOUMsSUFBSSxNQUFNLEtBQUssSUFBSSxDQUFDLFNBQVM7QUFDdEMsT0FBTSxJQUFJLE1BQU0sc0NBQXNDOztBQUd4RCxTQUFnQixZQUFlLE9BQW1DO0FBQ2hFLFFBQU8sVUFBVSxRQUFRLFVBQVU7O0FBR3JDLFNBQWdCLFdBQVcsUUFBZTtBQUN4QyxPQUFNLElBQUksTUFBTSxhQUFhOztBQUkvQixTQUFnQixhQUFnQixPQUE2QixTQUFxQjtBQUNoRixLQUFJLFVBQVUsUUFBUSxVQUFVLFdBQVc7QUFDekMsUUFBTSxJQUFJLE1BQU0sV0FBVyxtQkFBbUI7O0FBRWhELFFBQU87O0FBSVQsU0FBZ0IsY0FBaUIsT0FBaUIsU0FBcUI7QUFDckUsS0FBSSxVQUFVLE1BQU07QUFDbEIsUUFBTSxJQUFJLE1BQU0sV0FBVyx5QkFBeUI7O0FBRXRELFFBQU87O0FBR1QsU0FBZ0IsY0FBaUIsT0FBc0IsU0FBcUI7QUFDMUUsS0FBSSxVQUFVLFdBQVc7QUFDdkIsUUFBTSxJQUFJLE1BQU0sV0FBVyx3QkFBd0I7O0FBRXJELFFBQU87O0FBSVQsU0FBZ0IsZUFDZCxNQUNBLE1BQ0EsVUFDSztDQUNMLE1BQU0sV0FBVyxJQUFJLElBQUksS0FBSyxJQUFJLFNBQVMsQ0FBQztBQUM1QyxRQUFPLEtBQUssUUFBUSxTQUFTLFNBQVMsSUFBSSxTQUFTLEtBQUssQ0FBQyxDQUFDOztBQUc1RCxTQUFnQixlQUNkLE1BQ0EsTUFDQSxZQUNLO0FBQ0wsUUFBTyxLQUFLLFFBQVEsVUFBVSxDQUFDLEtBQUssTUFBTSxVQUFVLFdBQVcsT0FBTyxNQUFNLENBQUMsQ0FBQzs7QUFJaEYsU0FBZ0IsTUFBcUMsWUFBZSxTQUFlO0NBRWpGLE1BQU0sU0FBUyxFQUFFLEdBQUcsWUFBWTtBQUdoQyxNQUFLLE1BQU0sT0FBTyxTQUFTO0FBRXpCLE1BQUksT0FBTyxPQUFPLFNBQVMsSUFBSSxFQUFFO0dBQy9CLE1BQU0sWUFBWSxRQUFRO0dBQzFCLE1BQU0sZUFBZSxPQUFPO0FBRzVCLE9BQUksY0FBYyxVQUFVLElBQUksY0FBYyxhQUFhLEVBQUU7QUFDM0QsV0FBTyxPQUFPLE1BQU0sY0FBYyxVQUFVO1VBQ3ZDO0FBRUwsV0FBTyxPQUFPOzs7O0FBS3BCLFFBQU87O0FBS1QsU0FBUyxjQUFjLE9BQWtEO0FBQ3ZFLFFBQ0UsVUFBVSxRQUNWLE9BQU8sVUFBVSxZQUNqQixDQUFDLE1BQU0sUUFBUSxNQUFNLElBQ3JCLE9BQU8sVUFBVSxTQUFTLEtBQUssTUFBTSxLQUFLOztBQUs5QyxTQUFnQixnQ0FBZ0MsU0FBNkM7Q0FDM0YsTUFBTSxhQUFhLElBQUksU0FBUztBQUNoQyxRQUFPLFFBQVEsUUFBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLLFdBQVc7QUFDaEQsTUFBSSxNQUFPLFlBQVcsT0FBTyxLQUFLLE1BQU0sVUFBVSxDQUFDO0dBQ25EO0FBQ0YsUUFBTyJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zod-error.d.ts","sourceRoot":"","sources":["../../src/utils/zod-error.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"zod-error.d.ts","sourceRoot":"","sources":["../../src/utils/zod-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,CAAC;AAE7B,KAAK,eAAe,GAAG;IACrB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,GAAG,eAAe,EAAE,CAgBrE"}
|