@mrnafisia/type-query 1.2.11 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (124) hide show
  1. package/dist/prd.tsconfig.tsbuildinfo +1 -0
  2. package/dist/src/Table.d.ts +82 -0
  3. package/dist/src/Table.d.ts.map +1 -0
  4. package/dist/{types/pool.js → src/Table.js} +3 -3
  5. package/dist/{types → src}/Table.js.map +1 -1
  6. package/dist/src/context.d.ts +76 -0
  7. package/dist/src/context.d.ts.map +1 -0
  8. package/dist/src/context.js +70 -0
  9. package/dist/src/context.js.map +1 -0
  10. package/dist/src/createModelParser.d.ts +33 -0
  11. package/dist/src/createModelParser.d.ts.map +1 -0
  12. package/dist/src/createModelParser.js +178 -0
  13. package/dist/src/createModelParser.js.map +1 -0
  14. package/dist/src/ddl.d.ts +11 -0
  15. package/dist/src/ddl.d.ts.map +1 -0
  16. package/dist/src/ddl.js +83 -0
  17. package/dist/src/ddl.js.map +1 -0
  18. package/dist/src/entity.d.ts +100 -0
  19. package/dist/src/entity.d.ts.map +1 -0
  20. package/dist/src/entity.js +425 -0
  21. package/dist/src/entity.js.map +1 -0
  22. package/dist/src/index.d.ts +10 -0
  23. package/dist/src/index.d.ts.map +1 -0
  24. package/dist/src/index.js +54 -0
  25. package/dist/src/index.js.map +1 -0
  26. package/dist/src/keywords.d.ts +143 -0
  27. package/dist/src/keywords.d.ts.map +1 -0
  28. package/dist/src/keywords.js +169 -0
  29. package/dist/src/keywords.js.map +1 -0
  30. package/dist/src/resolve.d.ts +15 -0
  31. package/dist/src/resolve.d.ts.map +1 -0
  32. package/dist/src/resolve.js +535 -0
  33. package/dist/src/resolve.js.map +1 -0
  34. package/dist/src/testTransaction.d.ts +19 -0
  35. package/dist/src/testTransaction.d.ts.map +1 -0
  36. package/dist/src/testTransaction.js +85 -0
  37. package/dist/src/testTransaction.js.map +1 -0
  38. package/dist/src/transaction.d.ts +6 -0
  39. package/dist/src/transaction.d.ts.map +1 -0
  40. package/dist/src/transaction.js +28 -0
  41. package/dist/src/transaction.js.map +1 -0
  42. package/dist/src/utils.d.ts +70 -0
  43. package/dist/src/utils.d.ts.map +1 -0
  44. package/dist/src/utils.js +229 -0
  45. package/dist/src/utils.js.map +1 -0
  46. package/package.json +42 -38
  47. package/dist/U.d.ts +0 -3
  48. package/dist/U.d.ts.map +0 -1
  49. package/dist/U.js +0 -29
  50. package/dist/U.js.map +0 -1
  51. package/dist/cast.d.ts +0 -15
  52. package/dist/cast.d.ts.map +0 -1
  53. package/dist/cast.js +0 -151
  54. package/dist/cast.js.map +0 -1
  55. package/dist/context.d.ts +0 -949
  56. package/dist/context.d.ts.map +0 -1
  57. package/dist/context.js +0 -85
  58. package/dist/context.js.map +0 -1
  59. package/dist/dictionary.d.ts +0 -13
  60. package/dist/dictionary.d.ts.map +0 -1
  61. package/dist/dictionary.js +0 -180
  62. package/dist/dictionary.js.map +0 -1
  63. package/dist/entity.d.ts +0 -3469
  64. package/dist/entity.d.ts.map +0 -1
  65. package/dist/entity.js +0 -1067
  66. package/dist/entity.js.map +0 -1
  67. package/dist/error.d.ts +0 -5
  68. package/dist/error.d.ts.map +0 -1
  69. package/dist/error.js +0 -8
  70. package/dist/error.js.map +0 -1
  71. package/dist/index.d.ts +0 -19
  72. package/dist/index.d.ts.map +0 -1
  73. package/dist/index.js +0 -35
  74. package/dist/index.js.map +0 -1
  75. package/dist/model.d.ts +0 -967
  76. package/dist/model.d.ts.map +0 -1
  77. package/dist/model.js +0 -244
  78. package/dist/model.js.map +0 -1
  79. package/dist/pool.d.ts +0 -7
  80. package/dist/pool.d.ts.map +0 -1
  81. package/dist/pool.js +0 -123
  82. package/dist/pool.js.map +0 -1
  83. package/dist/schema.d.ts +0 -26
  84. package/dist/schema.d.ts.map +0 -1
  85. package/dist/schema.js +0 -406
  86. package/dist/schema.js.map +0 -1
  87. package/dist/testUtil.d.ts +0 -5
  88. package/dist/testUtil.d.ts.map +0 -1
  89. package/dist/testUtil.js +0 -338
  90. package/dist/testUtil.js.map +0 -1
  91. package/dist/types/Context.d.ts +0 -52
  92. package/dist/types/Context.d.ts.map +0 -1
  93. package/dist/types/Context.js +0 -3
  94. package/dist/types/Context.js.map +0 -1
  95. package/dist/types/Entity.d.ts +0 -71
  96. package/dist/types/Entity.d.ts.map +0 -1
  97. package/dist/types/Entity.js +0 -3
  98. package/dist/types/Entity.js.map +0 -1
  99. package/dist/types/Json.d.ts +0 -9
  100. package/dist/types/Json.d.ts.map +0 -1
  101. package/dist/types/Json.js +0 -3
  102. package/dist/types/Json.js.map +0 -1
  103. package/dist/types/Model.d.ts +0 -22
  104. package/dist/types/Model.d.ts.map +0 -1
  105. package/dist/types/Model.js +0 -3
  106. package/dist/types/Model.js.map +0 -1
  107. package/dist/types/Table.d.ts +0 -234
  108. package/dist/types/Table.d.ts.map +0 -1
  109. package/dist/types/Table.js +0 -3
  110. package/dist/types/pool.d.ts +0 -19
  111. package/dist/types/pool.d.ts.map +0 -1
  112. package/dist/types/pool.js.map +0 -1
  113. package/dist/types/postgres.d.ts +0 -10
  114. package/dist/types/postgres.d.ts.map +0 -1
  115. package/dist/types/postgres.js +0 -3
  116. package/dist/types/postgres.js.map +0 -1
  117. package/dist/types/testUtil.d.ts +0 -27
  118. package/dist/types/testUtil.d.ts.map +0 -1
  119. package/dist/types/testUtil.js +0 -3
  120. package/dist/types/testUtil.js.map +0 -1
  121. package/dist/utils.d.ts +0 -68
  122. package/dist/utils.d.ts.map +0 -1
  123. package/dist/utils.js +0 -221
  124. package/dist/utils.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"program":{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.es2021.d.ts","../node_modules/typescript/lib/lib.es2022.d.ts","../node_modules/typescript/lib/lib.es2023.d.ts","../node_modules/typescript/lib/lib.esnext.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.es2021.promise.d.ts","../node_modules/typescript/lib/lib.es2021.string.d.ts","../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../node_modules/typescript/lib/lib.es2021.intl.d.ts","../node_modules/typescript/lib/lib.es2022.array.d.ts","../node_modules/typescript/lib/lib.es2022.error.d.ts","../node_modules/typescript/lib/lib.es2022.intl.d.ts","../node_modules/typescript/lib/lib.es2022.object.d.ts","../node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2022.string.d.ts","../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../node_modules/typescript/lib/lib.es2023.array.d.ts","../node_modules/typescript/lib/lib.es2023.collection.d.ts","../node_modules/typescript/lib/lib.esnext.collection.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/typescript/lib/lib.esnext.disposable.d.ts","../node_modules/typescript/lib/lib.esnext.promise.d.ts","../node_modules/typescript/lib/lib.esnext.decorators.d.ts","../node_modules/typescript/lib/lib.esnext.object.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../node_modules/decimal.js/decimal.d.ts","../src/table.ts","../node_modules/never-catch/dist/src/index.d.ts","../src/keywords.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/undici-types/header.d.ts","../node_modules/undici-types/readable.d.ts","../node_modules/undici-types/file.d.ts","../node_modules/undici-types/fetch.d.ts","../node_modules/undici-types/formdata.d.ts","../node_modules/undici-types/connector.d.ts","../node_modules/undici-types/client.d.ts","../node_modules/undici-types/errors.d.ts","../node_modules/undici-types/dispatcher.d.ts","../node_modules/undici-types/global-dispatcher.d.ts","../node_modules/undici-types/global-origin.d.ts","../node_modules/undici-types/pool-stats.d.ts","../node_modules/undici-types/pool.d.ts","../node_modules/undici-types/handlers.d.ts","../node_modules/undici-types/balanced-pool.d.ts","../node_modules/undici-types/agent.d.ts","../node_modules/undici-types/mock-interceptor.d.ts","../node_modules/undici-types/mock-agent.d.ts","../node_modules/undici-types/mock-client.d.ts","../node_modules/undici-types/mock-pool.d.ts","../node_modules/undici-types/mock-errors.d.ts","../node_modules/undici-types/proxy-agent.d.ts","../node_modules/undici-types/api.d.ts","../node_modules/undici-types/cookies.d.ts","../node_modules/undici-types/patch.d.ts","../node_modules/undici-types/filereader.d.ts","../node_modules/undici-types/diagnostics-channel.d.ts","../node_modules/undici-types/websocket.d.ts","../node_modules/undici-types/content-type.d.ts","../node_modules/undici-types/cache.d.ts","../node_modules/undici-types/interceptors.d.ts","../node_modules/undici-types/index.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/dom-events.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/globals.global.d.ts","../node_modules/@types/node/index.d.ts","../node_modules/pg-types/index.d.ts","../node_modules/pg-protocol/dist/messages.d.ts","../node_modules/pg-protocol/dist/serializer.d.ts","../node_modules/pg-protocol/dist/parser.d.ts","../node_modules/pg-protocol/dist/index.d.ts","../node_modules/@types/pg/index.d.ts","../src/entity.ts","../src/resolve.ts","../src/utils.ts","../src/context.ts","../src/createmodelparser.ts","../src/ddl.ts","../src/transaction.ts","../src/testtransaction.ts","../src/index.ts","../node_modules/@babel/types/lib/index.d.ts","../node_modules/@types/babel__generator/index.d.ts","../node_modules/@babel/parser/typings/babel-parser.d.ts","../node_modules/@types/babel__template/index.d.ts","../node_modules/@types/babel__traverse/index.d.ts","../node_modules/@types/babel__core/index.d.ts","../node_modules/@types/graceful-fs/index.d.ts","../node_modules/@types/istanbul-lib-coverage/index.d.ts","../node_modules/@types/istanbul-lib-report/index.d.ts","../node_modules/@types/istanbul-reports/index.d.ts","../node_modules/@jest/expect-utils/build/index.d.ts","../node_modules/chalk/index.d.ts","../node_modules/@sinclair/typebox/typebox.d.ts","../node_modules/@jest/schemas/build/index.d.ts","../node_modules/pretty-format/build/index.d.ts","../node_modules/jest-diff/build/index.d.ts","../node_modules/jest-matcher-utils/build/index.d.ts","../node_modules/expect/build/index.d.ts","../node_modules/@types/jest/index.d.ts","../node_modules/@types/json-schema/index.d.ts","../node_modules/@types/semver/classes/semver.d.ts","../node_modules/@types/semver/functions/parse.d.ts","../node_modules/@types/semver/functions/valid.d.ts","../node_modules/@types/semver/functions/clean.d.ts","../node_modules/@types/semver/functions/inc.d.ts","../node_modules/@types/semver/functions/diff.d.ts","../node_modules/@types/semver/functions/major.d.ts","../node_modules/@types/semver/functions/minor.d.ts","../node_modules/@types/semver/functions/patch.d.ts","../node_modules/@types/semver/functions/prerelease.d.ts","../node_modules/@types/semver/functions/compare.d.ts","../node_modules/@types/semver/functions/rcompare.d.ts","../node_modules/@types/semver/functions/compare-loose.d.ts","../node_modules/@types/semver/functions/compare-build.d.ts","../node_modules/@types/semver/functions/sort.d.ts","../node_modules/@types/semver/functions/rsort.d.ts","../node_modules/@types/semver/functions/gt.d.ts","../node_modules/@types/semver/functions/lt.d.ts","../node_modules/@types/semver/functions/eq.d.ts","../node_modules/@types/semver/functions/neq.d.ts","../node_modules/@types/semver/functions/gte.d.ts","../node_modules/@types/semver/functions/lte.d.ts","../node_modules/@types/semver/functions/cmp.d.ts","../node_modules/@types/semver/functions/coerce.d.ts","../node_modules/@types/semver/classes/comparator.d.ts","../node_modules/@types/semver/classes/range.d.ts","../node_modules/@types/semver/functions/satisfies.d.ts","../node_modules/@types/semver/ranges/max-satisfying.d.ts","../node_modules/@types/semver/ranges/min-satisfying.d.ts","../node_modules/@types/semver/ranges/to-comparators.d.ts","../node_modules/@types/semver/ranges/min-version.d.ts","../node_modules/@types/semver/ranges/valid.d.ts","../node_modules/@types/semver/ranges/outside.d.ts","../node_modules/@types/semver/ranges/gtr.d.ts","../node_modules/@types/semver/ranges/ltr.d.ts","../node_modules/@types/semver/ranges/intersects.d.ts","../node_modules/@types/semver/ranges/simplify.d.ts","../node_modules/@types/semver/ranges/subset.d.ts","../node_modules/@types/semver/internals/identifiers.d.ts","../node_modules/@types/semver/index.d.ts","../node_modules/@types/stack-utils/index.d.ts","../node_modules/@types/yargs-parser/index.d.ts","../node_modules/@types/yargs/index.d.ts"],"fileInfos":[{"version":"824cb491a40f7e8fdeb56f1df5edf91b23f3e3ee6b4cde84d4a99be32338faee","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"5514e54f17d6d74ecefedc73c504eadffdeda79c7ea205cf9febead32d45c4bc","impliedFormat":1},{"version":"1c0cdb8dc619bc549c3e5020643e7cf7ae7940058e8c7e5aefa5871b6d86f44b","impliedFormat":1},{"version":"886e50ef125efb7878f744e86908884c0133e7a6d9d80013f421b0cd8fb2af94","impliedFormat":1},{"version":"138fb588d26538783b78d1e3b2c2cc12d55840b97bf5e08bca7f7a174fbe2f17","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true,"impliedFormat":1},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true,"impliedFormat":1},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true,"impliedFormat":1},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true,"impliedFormat":1},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true,"impliedFormat":1},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","affectsGlobalScope":true,"impliedFormat":1},{"version":"b20fe0eca9a4e405f1a5ae24a2b3290b37cf7f21eba6cbe4fc3fab979237d4f3","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"49ed889be54031e1044af0ad2c603d627b8bda8b50c1a68435fe85583901d072","affectsGlobalScope":true,"impliedFormat":1},{"version":"e93d098658ce4f0c8a0779e6cab91d0259efb88a318137f686ad76f8410ca270","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true,"impliedFormat":1},{"version":"5e07ed3809d48205d5b985642a59f2eba47c402374a7cf8006b686f79efadcbd","affectsGlobalScope":true,"impliedFormat":1},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true,"impliedFormat":1},{"version":"8073890e29d2f46fdbc19b8d6d2eb9ea58db9a2052f8640af20baff9afbc8640","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"51e547984877a62227042850456de71a5c45e7fe86b7c975c6e68896c86fa23b","affectsGlobalScope":true,"impliedFormat":1},{"version":"956d27abdea9652e8368ce029bb1e0b9174e9678a273529f426df4b3d90abd60","affectsGlobalScope":true,"impliedFormat":1},{"version":"4fa6ed14e98aa80b91f61b9805c653ee82af3502dc21c9da5268d3857772ca05","affectsGlobalScope":true,"impliedFormat":1},{"version":"e6633e05da3ff36e6da2ec170d0d03ccf33de50ca4dc6f5aeecb572cedd162fb","affectsGlobalScope":true,"impliedFormat":1},{"version":"d8670852241d4c6e03f2b89d67497a4bbefe29ecaa5a444e2c11a9b05e6fccc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"caccc56c72713969e1cfe5c3d44e5bab151544d9d2b373d7dbe5a1e4166652be","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"50d53ccd31f6667aff66e3d62adf948879a3a16f05d89882d1188084ee415bbc","affectsGlobalScope":true,"impliedFormat":1},{"version":"08a58483392df5fcc1db57d782e87734f77ae9eab42516028acbfe46f29a3ef7","affectsGlobalScope":true,"impliedFormat":1},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"b1cb28af0c891c8c96b2d6b7be76bd394fddcfdb4709a20ba05a7c1605eea0f9","affectsGlobalScope":true,"impliedFormat":1},{"version":"13f6e6380c78e15e140243dc4be2fa546c287c6d61f4729bc2dd7cf449605471","affectsGlobalScope":true,"impliedFormat":1},{"version":"15b98a533864d324e5f57cd3cfc0579b231df58c1c0f6063ea0fcb13c3c74ff9","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac77cb3e8c6d3565793eb90a8373ee8033146315a3dbead3bde8db5eaf5e5ec6","affectsGlobalScope":true,"impliedFormat":1},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true,"impliedFormat":1},{"version":"2fef54945a13095fdb9b84f705f2b5994597640c46afeb2ce78352fab4cb3279","affectsGlobalScope":true,"impliedFormat":1},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"67577c6ac7cc408265b36f54548167d12f419cab47c3567db64d0a990c089e88","impliedFormat":1},{"version":"7649fc6caf65af6c97b1c3ec00ce855ffd0e4253eaf0e28eaf0b647ed6de321b","signature":"85092be7f6fb91311d9e72673bf9dff02ec642e06993df88332d1f030ecffecd","impliedFormat":1},{"version":"620a5080f295ae3637574effff4cad6ccc173baade8ee00225a5bbedb8991b71","impliedFormat":1},{"version":"555b854d7aa5dfd9c5e48bb56020fa560a5eb2205c45589d5922cd545642159d","signature":"52efa40aa7a468ea2c30bbce9caa045cfa8779948198d01b841152a0e1355382","impliedFormat":1},{"version":"efc7d584a33fe3422847783d228f315c4cd1afe74bd7cf8e3f0e4c1125129fef","impliedFormat":1},{"version":"7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","impliedFormat":1},{"version":"7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","impliedFormat":1},{"version":"54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","impliedFormat":1},{"version":"3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","impliedFormat":1},{"version":"e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","impliedFormat":1},{"version":"471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","impliedFormat":1},{"version":"db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","impliedFormat":1},{"version":"c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","impliedFormat":1},{"version":"40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","impliedFormat":1},{"version":"3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","impliedFormat":1},{"version":"33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","impliedFormat":1},{"version":"e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","impliedFormat":1},{"version":"339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","impliedFormat":1},{"version":"9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","impliedFormat":1},{"version":"8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","impliedFormat":1},{"version":"4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1","impliedFormat":1},{"version":"a14ed46fa3f5ffc7a8336b497cd07b45c2084213aaca933a22443fcb2eef0d07","affectsGlobalScope":true,"impliedFormat":1},{"version":"cce1f5f86974c1e916ec4a8cab6eec9aa8e31e8148845bf07fbaa8e1d97b1a2c","impliedFormat":1},{"version":"7fd7fcbf021a5845bdd9397d4649fcf2fe17152d2098140fc723099a215d19ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"df3389f71a71a38bc931aaf1ef97a65fada98f0a27f19dd12f8b8de2b0f4e461","impliedFormat":1},{"version":"7b43160a49cf2c6082da0465876c4a0b164e160b81187caeb0a6ca7a281e85ba","impliedFormat":1},{"version":"41fb2a1c108fbf46609ce5a451b7ec78eb9b5ada95fd5b94643e4b26397de0b3","affectsGlobalScope":true,"impliedFormat":1},{"version":"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb","impliedFormat":1},{"version":"8b809082dfeffc8cc4f3b9c59f55c0ff52ba12f5ae0766cb5c35deee83b8552e","affectsGlobalScope":true,"impliedFormat":1},{"version":"bd3f5d05b6b5e4bfcea7739a45f3ffb4a7f4a3442ba7baf93e0200799285b8f1","impliedFormat":1},{"version":"4c775c2fccabf49483c03cd5e3673f87c1ffb6079d98e7b81089c3def79e29c6","impliedFormat":1},{"version":"d4f9d3ae2fe1ae199e1c832cca2c44f45e0b305dfa2808afdd51249b6f4a5163","impliedFormat":1},{"version":"7525257b4aa35efc7a1bbc00f205a9a96c4e4ab791da90db41b77938c4e0c18e","impliedFormat":1},{"version":"b7fe70be794e13d1b7940e318b8770cd1fb3eced7707805318a2e3aaac2c3e9e","impliedFormat":1},{"version":"2c71199d1fc83bf17636ad5bf63a945633406b7b94887612bba4ef027c662b3e","affectsGlobalScope":true,"impliedFormat":1},{"version":"674168aa3db414ea0a19b2a31d901b2d49705c7a495e43ffdc96928543010f8c","affectsGlobalScope":true,"impliedFormat":1},{"version":"fe1fd6afdfe77976d4c702f3746c05fb05a7e566845c890e0e970fe9376d6a90","impliedFormat":1},{"version":"313a0b063f5188037db113509de1b934a0e286f14e9479af24fada241435e707","impliedFormat":1},{"version":"afb1701fd4be413a8a5a88df6befdd4510c30a31372c07a4138facf61594c66d","impliedFormat":1},{"version":"87ef1a23caa071b07157c72077fa42b86d30568f9dc9e31eed24d5d14fc30ba8","impliedFormat":1},{"version":"396a8939b5e177542bdf9b5262b4eee85d29851b2d57681fa9d7eae30e225830","impliedFormat":1},{"version":"21773f5ac69ddf5a05636ba1f50b5239f4f2d27e4420db147fc2f76a5ae598ac","impliedFormat":1},{"version":"ea455cc68871b049bcecd9f56d4cf27b852d6dafd5e3b54468ca87cc11604e4d","affectsGlobalScope":true,"impliedFormat":1},{"version":"c07146dbbbd8b347241b5df250a51e48f2d7bef19b1e187b1a3f20c849988ff1","impliedFormat":1},{"version":"45b1053e691c5af9bfe85060a3e1542835f8d84a7e6e2e77ca305251eda0cb3c","impliedFormat":1},{"version":"0f05c06ff6196958d76b865ae17245b52d8fe01773626ac3c43214a2458ea7b7","impliedFormat":1},{"version":"ae5507fc333d637dec9f37c6b3f4d423105421ea2820a64818de55db85214d66","affectsGlobalScope":true,"impliedFormat":1},{"version":"0666f4c99b8688c7be5956df8fecf5d1779d3b22f8f2a88258ae7072c7b6026f","affectsGlobalScope":true,"impliedFormat":1},{"version":"8abd0566d2854c4bd1c5e48e05df5c74927187f1541e6770001d9637ac41542e","impliedFormat":1},{"version":"54e854615c4eafbdd3fd7688bd02a3aafd0ccf0e87c98f79d3e9109f047ce6b8","impliedFormat":1},{"version":"d8dba11dc34d50cb4202de5effa9a1b296d7a2f4a029eec871f894bddfb6430d","impliedFormat":1},{"version":"8b71dd18e7e63b6f991b511a201fad7c3bf8d1e0dd98acb5e3d844f335a73634","impliedFormat":1},{"version":"01d8e1419c84affad359cc240b2b551fb9812b450b4d3d456b64cda8102d4f60","impliedFormat":1},{"version":"8221b00f271cf7f535a8eeec03b0f80f0929c7a16116e2d2df089b41066de69b","impliedFormat":1},{"version":"269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","impliedFormat":1},{"version":"93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","impliedFormat":1},{"version":"7fa32887f8a97909fca35ebba3740f8caf8df146618d8fff957a3f89f67a2f6a","impliedFormat":1},{"version":"9a9634296cca836c3308923ba7aa094fa6ed76bb1e366d8ddcf5c65888ab1024","impliedFormat":1},{"version":"bddce945d552a963c9733db106b17a25474eefcab7fc990157a2134ef55d4954","affectsGlobalScope":true,"impliedFormat":1},{"version":"7052b7b0c3829df3b4985bab2fd74531074b4835d5a7b263b75c82f0916ad62f","affectsGlobalScope":true,"impliedFormat":1},{"version":"aa34c3aa493d1c699601027c441b9664547c3024f9dbab1639df7701d63d18fa","impliedFormat":1},{"version":"4b55240c2a03b2c71e98a7fc528b16136faa762211c92e781a01c37821915ea6","impliedFormat":1},{"version":"7c651f8dce91a927ab62925e73f190763574c46098f2b11fb8ddc1b147a6709a","impliedFormat":1},{"version":"7440ab60f4cb031812940cc38166b8bb6fbf2540cfe599f87c41c08011f0c1df","impliedFormat":1},{"version":"94c086dff8dbc5998749326bc69b520e8e4273fb5b7b58b50e0210e0885dfcde","affectsGlobalScope":true,"impliedFormat":1},{"version":"f5b5dc128973498b75f52b1b8c2d5f8629869104899733ae485100c2309b4c12","affectsGlobalScope":true,"impliedFormat":1},{"version":"ebe5facd12fd7745cda5f4bc3319f91fb29dc1f96e57e9c6f8b260a7cc5b67ee","impliedFormat":1},{"version":"79bad8541d5779c85e82a9fb119c1fe06af77a71cc40f869d62ad379473d4b75","impliedFormat":1},{"version":"21c56c6e8eeacef15f63f373a29fab6a2b36e4705be7a528aae8c51469e2737b","impliedFormat":1},{"version":"629d20681ca284d9e38c0a019f647108f5fe02f9c59ac164d56f5694fc3faf4d","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7dbf5716d76846c7522e910896c5747b6df1abd538fee8f5291bdc843461795","impliedFormat":1},{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true,"impliedFormat":1},{"version":"b510d0a18e3db42ac9765d26711083ec1e8b4e21caaca6dc4d25ae6e8623f447","impliedFormat":1},{"version":"a589f9f052276a3fc00b75e62f73b93ea568fce3e935b86ed7052945f99d9dc2","impliedFormat":1},{"version":"17230b34bb564a3a2e36f9d3985372ccab4ad1722df2c43f7c5c2b553f68e5db","impliedFormat":1},{"version":"87ed0f84f0691d5c724b23159db96342e6b04ac69201b02c65936f4281ce1fbe","impliedFormat":1},{"version":"13868c5792808236b17dfe2803eafce911ea4d09d3b2fda95391891a494f988f","impliedFormat":1},{"version":"0dfe35191a04e8f9dc7caeb9f52f2ee07402736563d12cbccd15fb5f31ac877f","impliedFormat":1},{"version":"987ba7e7fb090e9a51e4c0ff392ea12e65534cbae826d977796c8c5260d0ff9a","impliedFormat":1},{"version":"de007b394681d431b72ad1ccad1145032951107cff16717447f9b4bfb2f309f2","signature":"1929f8e7e45f9bf7bfa3790c860535c963622b24cd23f237ac64a13d4d8d32dd","impliedFormat":1},{"version":"384374b414d8a30e104fb583c3986f3fa61d5ff8f6b460cc138454b6986e088b","signature":"cb273b437402c685493e86dc5609ee035de307cd705d9072b5ac7f7d7d60cd15","impliedFormat":1},{"version":"be6ae5306ef10c9bf0171e02ec0eee2bbb6cfe32e7417e509624a769cb4af3d2","signature":"767c1a2391b6fe2b40e4445962a559e65de58473979c406375d6dadca631384d","impliedFormat":1},{"version":"a9e54ba46ca043d08b6cdab9d0623a1f020abcea391955ec8658e99721791f19","signature":"730c6d7bdc967b4978fec90b5283066e951fb9641736cc931e71a22fbc220b46","impliedFormat":1},{"version":"9db59652322115e043b0ffb0256f1cf61559b5ed16a090ab74dee9b86f7b63b3","signature":"af1fd083bb42daa25f531d551e8a8fd70df9f730c8addda9f300b7cf8d433753","impliedFormat":1},{"version":"609169ba57391fb867c5827090de9a5e221c7b853db2a40deaec01d2d0801527","signature":"165b9db8ca773fbbc11a522e70066d9dcb31b343fdb22fa807be24f424c2a596","impliedFormat":1},{"version":"457390da18b22be1a9735ae5e9c93fecee46ff3f9cbf720497da1bf6f0fabfb4","signature":"9db1c2bf6d0187a02f626664813f2fb8eeef9c83027a80e24d855f99a4359ab5","impliedFormat":1},{"version":"2f3b1f0faaa9f970f056fe2a75bcdeac3c9a596f4ea7225bf0b425c96ae4162f","signature":"f2135cca58ad4c958e263ffd2b636ebe9e2ac7ec099e4f711bc028806c78f853","impliedFormat":1},{"version":"a34896e19147cff460f0aa5e4b1d504a0587794a3cf9641d7ff83aa8b672b11c","signature":"64a80dbab8790a5f47fc931c9aadf5b67d08b64d6bffd054b929ba5796b77c81","impliedFormat":1},{"version":"4489c6a9fde8934733aa7df6f7911461ee6e9e4ad092736bd416f6b2cc20b2c6","impliedFormat":1},{"version":"2c8e55457aaf4902941dfdba4061935922e8ee6e120539c9801cd7b400fae050","impliedFormat":1},{"version":"8041cfce439ff29d339742389de04c136e3029d6b1817f07b2d7fcbfb7534990","impliedFormat":1},{"version":"670a76db379b27c8ff42f1ba927828a22862e2ab0b0908e38b671f0e912cc5ed","impliedFormat":1},{"version":"9d38964b57191567a14b396422c87488cecd48f405c642daa734159875ee81d9","impliedFormat":1},{"version":"069bebfee29864e3955378107e243508b163e77ab10de6a5ee03ae06939f0bb9","impliedFormat":1},{"version":"afe73051ff6a03a9565cbd8ebb0e956ee3df5e913ad5c1ded64218aabfa3dcb5","impliedFormat":1},{"version":"035a5df183489c2e22f3cf59fc1ed2b043d27f357eecc0eb8d8e840059d44245","impliedFormat":1},{"version":"a4809f4d92317535e6b22b01019437030077a76fec1d93b9881c9ed4738fcc54","impliedFormat":1},{"version":"5f53fa0bd22096d2a78533f94e02c899143b8f0f9891a46965294ee8b91a9434","impliedFormat":1},{"version":"cdcc132f207d097d7d3aa75615ab9a2e71d6a478162dde8b67f88ea19f3e54de","impliedFormat":1},{"version":"0d14fa22c41fdc7277e6f71473b20ebc07f40f00e38875142335d5b63cdfc9d2","impliedFormat":1},{"version":"c085e9aa62d1ae1375794c1fb927a445fa105fed891a7e24edbb1c3300f7384a","impliedFormat":1},{"version":"f315e1e65a1f80992f0509e84e4ae2df15ecd9ef73df975f7c98813b71e4c8da","impliedFormat":1},{"version":"5b9586e9b0b6322e5bfbd2c29bd3b8e21ab9d871f82346cb71020e3d84bae73e","impliedFormat":1},{"version":"3e70a7e67c2cb16f8cd49097360c0309fe9d1e3210ff9222e9dac1f8df9d4fb6","impliedFormat":1},{"version":"ab68d2a3e3e8767c3fba8f80de099a1cfc18c0de79e42cb02ae66e22dfe14a66","impliedFormat":1},{"version":"d96cc6598148bf1a98fb2e8dcf01c63a4b3558bdaec6ef35e087fd0562eb40ec","impliedFormat":1},{"version":"5ab630d466ac55baa6d32820378098404fc18ba9da6f7bc5df30c5dbb1cffae8","affectsGlobalScope":true,"impliedFormat":1},{"version":"f3d8c757e148ad968f0d98697987db363070abada5f503da3c06aefd9d4248c1","impliedFormat":1},{"version":"cf3d384d082b933d987c4e2fe7bfb8710adfd9dc8155190056ed6695a25a559e","impliedFormat":1},{"version":"9871b7ee672bc16c78833bdab3052615834b08375cb144e4d2cba74473f4a589","impliedFormat":1},{"version":"c863198dae89420f3c552b5a03da6ed6d0acfa3807a64772b895db624b0de707","impliedFormat":1},{"version":"8b03a5e327d7db67112ebbc93b4f744133eda2c1743dbb0a990c61a8007823ef","impliedFormat":1},{"version":"86c73f2ee1752bac8eeeece234fd05dfcf0637a4fbd8032e4f5f43102faa8eec","impliedFormat":1},{"version":"42fad1f540271e35ca37cecda12c4ce2eef27f0f5cf0f8dd761d723c744d3159","impliedFormat":1},{"version":"ff3743a5de32bee10906aff63d1de726f6a7fd6ee2da4b8229054dfa69de2c34","impliedFormat":1},{"version":"83acd370f7f84f203e71ebba33ba61b7f1291ca027d7f9a662c6307d74e4ac22","impliedFormat":1},{"version":"1445cec898f90bdd18b2949b9590b3c012f5b7e1804e6e329fb0fe053946d5ec","impliedFormat":1},{"version":"0e5318ec2275d8da858b541920d9306650ae6ac8012f0e872fe66eb50321a669","impliedFormat":1},{"version":"cf530297c3fb3a92ec9591dd4fa229d58b5981e45fe6702a0bd2bea53a5e59be","impliedFormat":1},{"version":"c1f6f7d08d42148ddfe164d36d7aba91f467dbcb3caa715966ff95f55048b3a4","impliedFormat":1},{"version":"f4e9bf9103191ef3b3612d3ec0044ca4044ca5be27711fe648ada06fad4bcc85","impliedFormat":1},{"version":"0c1ee27b8f6a00097c2d6d91a21ee4d096ab52c1e28350f6362542b55380059a","impliedFormat":1},{"version":"7677d5b0db9e020d3017720f853ba18f415219fb3a9597343b1b1012cfd699f7","impliedFormat":1},{"version":"bc1c6bc119c1784b1a2be6d9c47addec0d83ef0d52c8fbe1f14a51b4dfffc675","impliedFormat":1},{"version":"52cf2ce99c2a23de70225e252e9822a22b4e0adb82643ab0b710858810e00bf1","impliedFormat":1},{"version":"770625067bb27a20b9826255a8d47b6b5b0a2d3dfcbd21f89904c731f671ba77","impliedFormat":1},{"version":"d1ed6765f4d7906a05968fb5cd6d1db8afa14dbe512a4884e8ea5c0f5e142c80","impliedFormat":1},{"version":"799c0f1b07c092626cf1efd71d459997635911bb5f7fc1196efe449bba87e965","impliedFormat":1},{"version":"2a184e4462b9914a30b1b5c41cf80c6d3428f17b20d3afb711fff3f0644001fd","impliedFormat":1},{"version":"9eabde32a3aa5d80de34af2c2206cdc3ee094c6504a8d0c2d6d20c7c179503cc","impliedFormat":1},{"version":"397c8051b6cfcb48aa22656f0faca2553c5f56187262135162ee79d2b2f6c966","impliedFormat":1},{"version":"a8ead142e0c87dcd5dc130eba1f8eeed506b08952d905c47621dc2f583b1bff9","impliedFormat":1},{"version":"a02f10ea5f73130efca046429254a4e3c06b5475baecc8f7b99a0014731be8b3","impliedFormat":1},{"version":"c2576a4083232b0e2d9bd06875dd43d371dee2e090325a9eac0133fd5650c1cb","impliedFormat":1},{"version":"4c9a0564bb317349de6a24eb4efea8bb79898fa72ad63a1809165f5bd42970dd","impliedFormat":1},{"version":"f40ac11d8859092d20f953aae14ba967282c3bb056431a37fced1866ec7a2681","impliedFormat":1},{"version":"cc11e9e79d4746cc59e0e17473a59d6f104692fd0eeea1bdb2e206eabed83b03","impliedFormat":1},{"version":"b444a410d34fb5e98aa5ee2b381362044f4884652e8bc8a11c8fe14bbd85518e","impliedFormat":1},{"version":"c35808c1f5e16d2c571aa65067e3cb95afeff843b259ecfa2fc107a9519b5392","impliedFormat":1},{"version":"14d5dc055143e941c8743c6a21fa459f961cbc3deedf1bfe47b11587ca4b3ef5","impliedFormat":1},{"version":"a3ad4e1fc542751005267d50a6298e6765928c0c3a8dce1572f2ba6ca518661c","impliedFormat":1},{"version":"f237e7c97a3a89f4591afd49ecb3bd8d14f51a1c4adc8fcae3430febedff5eb6","impliedFormat":1},{"version":"3ffdfbec93b7aed71082af62b8c3e0cc71261cc68d796665faa1e91604fbae8f","impliedFormat":1},{"version":"662201f943ed45b1ad600d03a90dffe20841e725203ced8b708c91fcd7f9379a","impliedFormat":1},{"version":"c9ef74c64ed051ea5b958621e7fb853fe3b56e8787c1587aefc6ea988b3c7e79","impliedFormat":1},{"version":"2462ccfac5f3375794b861abaa81da380f1bbd9401de59ffa43119a0b644253d","impliedFormat":1},{"version":"34baf65cfee92f110d6653322e2120c2d368ee64b3c7981dff08ed105c4f19b0","impliedFormat":1},{"version":"7d8ddf0f021c53099e34ee831a06c394d50371816caa98684812f089b4c6b3d4","impliedFormat":1},{"version":"ab82804a14454734010dcdcd43f564ff7b0389bee4c5692eec76ff5b30d4cf66","impliedFormat":1},{"version":"bae8d023ef6b23df7da26f51cea44321f95817c190342a36882e93b80d07a960","impliedFormat":1},{"version":"5d30d04a14ed8527ac5d654dc345a4db11b593334c11a65efb6e4facc5484a0e","impliedFormat":1}],"root":[69,71,[164,172]],"options":{"allowJs":true,"allowSyntheticDefaultImports":true,"allowUnreachableCode":false,"allowUnusedLabels":false,"checkJs":true,"composite":true,"declarationMap":true,"esModuleInterop":true,"module":100,"noEmitOnError":true,"noErrorTruncation":true,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./","removeComments":true,"sourceMap":true,"strict":true,"target":99},"fileIdsList":[[173],[185],[173,174,175,176,177],[173,175],[121,157],[180],[181],[187,190],[72],[107],[108,113,141],[109,120,121,128,138,149],[109,110,120,128],[111,150],[112,113,121,129],[113,138,146],[114,116,120,128],[107,115],[116,117],[120],[118,120],[107,120],[120,121,122,138,149],[120,121,122,135,138,141],[105,108,154],[116,120,123,128,138,149],[120,121,123,124,128,138,146,149],[123,125,138,146,149],[72,73,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156],[120,126],[127,149,154],[116,120,128,138],[129],[130],[107,131],[132,148,154],[133],[134],[120,135,136],[135,137,150,152],[108,120,138,139,140,141],[108,138,140],[138,139],[141],[142],[107,138],[120,144,145],[144,145],[113,128,138,146],[147],[128,148],[108,123,134,149],[113,150],[138,151],[127,152],[153],[108,113,120,122,131,138,149,152,154],[138,155],[120,138,146,157,158,159,162,163],[193,232],[193,217,232],[232],[193],[193,218,232],[193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231],[218,232],[234],[183,189],[187],[184,188],[157,159,160,161],[157],[138,157,159],[186],[82,86,149],[82,138,149],[77],[79,82,146,149],[128,146],[77,157],[79,82,128,149],[74,75,78,81,108,120,138,149],[74,80],[78,82,108,141,149,157],[108,157],[98,108,157],[76,77,157],[82],[76,77,78,79,80,81,82,83,84,86,87,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,104],[82,89,90],[80,82,90,91],[81],[74,77,82],[82,86,90,91],[86],[80,82,85,149],[74,79,80,82,86,89],[108,138],[77,82,98,108,154,157],[68,69,71,166],[69,70,166],[69,71],[69,70,71,163,165,166,167],[69,164,165,166,167,168,169,170,171],[68,69,70,71,164,166],[68],[69,70,163,164,169,170],[70,71,163],[68,69,71,164,165],[68,69,71],[69,70],[69],[69,70,163,167],[69,70,164],[69,163,164,170],[70,163],[68,69,71,164]],"referencedMap":[[175,1],[186,2],[178,3],[174,1],[176,4],[177,1],[179,5],[181,6],[182,7],[191,8],[72,9],[73,9],[107,10],[108,11],[109,12],[110,13],[111,14],[112,15],[113,16],[114,17],[115,18],[116,19],[117,19],[119,20],[118,21],[120,22],[121,23],[122,24],[106,25],[123,26],[124,27],[125,28],[157,29],[126,30],[127,31],[128,32],[129,33],[130,34],[131,35],[132,36],[133,37],[134,38],[135,39],[136,39],[137,40],[138,41],[140,42],[139,43],[141,44],[142,45],[143,46],[144,47],[145,48],[146,49],[147,50],[148,51],[149,52],[150,53],[151,54],[152,55],[153,56],[154,57],[155,58],[163,59],[217,60],[218,61],[193,62],[196,62],[215,60],[216,60],[206,60],[205,63],[203,60],[198,60],[211,60],[209,60],[213,60],[197,60],[210,60],[214,60],[199,60],[200,60],[212,60],[194,60],[201,60],[202,60],[204,60],[208,60],[219,64],[207,60],[195,60],[232,65],[226,64],[228,66],[227,64],[220,64],[221,64],[223,64],[225,64],[229,66],[230,66],[222,66],[224,66],[235,67],[190,68],[188,69],[189,70],[162,71],[159,72],[161,73],[160,72],[187,74],[89,75],[96,76],[88,75],[103,77],[80,78],[79,79],[102,72],[97,80],[100,81],[82,82],[81,83],[77,84],[76,85],[99,86],[78,87],[83,88],[87,88],[105,89],[104,88],[91,90],[92,91],[94,92],[90,93],[93,94],[98,72],[85,95],[86,96],[95,97],[75,98],[101,99],[167,100],[168,101],[169,102],[164,103],[172,104],[165,105],[69,106],[171,107],[170,108],[166,109]],"exportedModulesMap":[[175,1],[186,2],[178,3],[174,1],[176,4],[177,1],[179,5],[181,6],[182,7],[191,8],[72,9],[73,9],[107,10],[108,11],[109,12],[110,13],[111,14],[112,15],[113,16],[114,17],[115,18],[116,19],[117,19],[119,20],[118,21],[120,22],[121,23],[122,24],[106,25],[123,26],[124,27],[125,28],[157,29],[126,30],[127,31],[128,32],[129,33],[130,34],[131,35],[132,36],[133,37],[134,38],[135,39],[136,39],[137,40],[138,41],[140,42],[139,43],[141,44],[142,45],[143,46],[144,47],[145,48],[146,49],[147,50],[148,51],[149,52],[150,53],[151,54],[152,55],[153,56],[154,57],[155,58],[163,59],[217,60],[218,61],[193,62],[196,62],[215,60],[216,60],[206,60],[205,63],[203,60],[198,60],[211,60],[209,60],[213,60],[197,60],[210,60],[214,60],[199,60],[200,60],[212,60],[194,60],[201,60],[202,60],[204,60],[208,60],[219,64],[207,60],[195,60],[232,65],[226,64],[228,66],[227,64],[220,64],[221,64],[223,64],[225,64],[229,66],[230,66],[222,66],[224,66],[235,67],[190,68],[188,69],[189,70],[162,71],[159,72],[161,73],[160,72],[187,74],[89,75],[96,76],[88,75],[103,77],[80,78],[79,79],[102,72],[97,80],[100,81],[82,82],[81,83],[77,84],[76,85],[99,86],[78,87],[83,88],[87,88],[105,89],[104,88],[91,90],[92,91],[94,92],[90,93],[93,94],[98,72],[85,95],[86,96],[95,97],[75,98],[101,99],[167,110],[168,111],[169,112],[164,113],[172,104],[165,114],[69,106],[171,115],[170,116],[166,117]],"semanticDiagnosticsPerFile":[175,173,183,186,185,178,174,176,177,179,180,181,182,191,192,72,73,107,108,109,110,111,112,113,114,115,116,117,119,118,120,121,122,106,156,123,124,125,157,126,127,128,129,130,131,132,133,134,135,136,137,138,140,139,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,163,217,218,193,196,215,216,206,205,203,198,211,209,213,197,210,214,199,200,212,194,201,202,204,208,219,207,195,232,231,226,228,227,220,221,223,225,229,230,222,224,233,234,235,184,68,190,188,189,70,162,159,161,160,158,187,66,67,13,12,2,14,15,16,17,18,19,20,21,3,22,4,23,27,24,25,26,28,29,30,5,31,32,33,34,6,38,35,36,37,39,7,40,45,46,41,42,43,44,8,50,47,48,49,51,9,52,53,54,57,55,56,58,59,10,1,60,11,64,62,61,65,63,89,96,88,103,80,79,102,97,100,82,81,77,76,99,78,83,84,87,74,105,104,91,92,94,90,93,98,85,86,95,75,101,167,168,169,164,172,71,165,69,171,170,166],"latestChangedDtsFile":"./src/index.d.ts"},"version":"5.4.3"}
@@ -0,0 +1,82 @@
1
+ import Decimal from 'decimal.js';
2
+ type Json = JsonObject | JsonArray;
3
+ type JsonObject = {
4
+ [key: number | string]: BaseJsonValue;
5
+ };
6
+ type JsonArray = BaseJsonValue[];
7
+ type BaseJsonValue = undefined | null | boolean | number | bigint | Decimal | string | Date | JsonObject | JsonArray;
8
+ type PgType = 'boolean' | 'int2' | 'int4' | 'int8' | 'float4' | 'float8' | 'decimal' | 'char' | 'varchar' | 'text' | 'uuid' | 'timestamp' | 'timestamptz' | 'json' | 'jsonb';
9
+ type NullableType<T, Nullable extends boolean> = Nullable extends true ? T | null : T;
10
+ type ReferenceActions = 'no-action' | 'restrict' | 'set-null' | 'set-Default' | 'cascade';
11
+ type Schema = Record<string, {
12
+ type: unknown;
13
+ default: boolean;
14
+ nullable: boolean;
15
+ }>;
16
+ type ColumnType<S extends Schema, key extends keyof S> = S[key]['type'] extends number ? {
17
+ type: 'int2' | 'int4' | 'float4' | 'float8';
18
+ min?: number;
19
+ max?: number;
20
+ } : S[key]['type'] extends bigint ? {
21
+ type: 'int8';
22
+ min?: bigint;
23
+ max?: bigint;
24
+ } : S[key]['type'] extends Decimal ? {
25
+ type: 'decimal';
26
+ precision: number;
27
+ scale: number;
28
+ min?: Decimal;
29
+ max?: Decimal;
30
+ } : S[key]['type'] extends string ? {
31
+ type: 'char' | 'varchar' | 'text' | 'uuid';
32
+ minLength?: number;
33
+ maxLength?: number;
34
+ regex?: RegExp;
35
+ } : S[key]['type'] extends Date ? {
36
+ type: 'timestamp' | 'timestamptz';
37
+ length?: number;
38
+ } : S[key]['type'] extends boolean ? {
39
+ type: 'boolean';
40
+ } : {
41
+ type: 'json' | 'jsonb';
42
+ };
43
+ type ColumnDefault<S extends Schema, key extends keyof S> = S[key]['default'] extends true ? {
44
+ default: true;
45
+ } & (S[key]['type'] extends number ? {
46
+ defaultValue: ['sql', string] | ['js', S[key]['type']];
47
+ sequenceTitle?: never;
48
+ } | {
49
+ defaultValue: ['auto-increment'];
50
+ sequenceTitle?: string;
51
+ } : S[key]['type'] extends bigint ? {
52
+ defaultValue: ['sql', string] | ['js', S[key]['type']];
53
+ sequenceTitle?: never;
54
+ } | {
55
+ defaultValue: ['auto-increment'];
56
+ sequenceTitle?: string;
57
+ } : S[key]['type'] extends Date ? {
58
+ defaultValue: ['created-at'] | ['updated-at'] | ['sql', string] | ['js', S[key]['type']];
59
+ } : {
60
+ defaultValue: ['sql', string] | ['js', S[key]['type']];
61
+ }) : {
62
+ default: false;
63
+ };
64
+ type Table<S extends Schema = Schema> = {
65
+ schemaName: string;
66
+ tableName: string;
67
+ columns: {
68
+ [key in keyof S]: ColumnType<S, key> & ColumnDefault<S, key> & {
69
+ nullable: S[key]['nullable'];
70
+ title?: string;
71
+ primary?: S[key]['nullable'] extends false ? true : never;
72
+ reference?: {
73
+ table: Table;
74
+ onUpdate?: ReferenceActions;
75
+ onDelete?: ReferenceActions;
76
+ column: string;
77
+ };
78
+ };
79
+ };
80
+ };
81
+ export type { Json, JsonObject, JsonArray, BaseJsonValue, PgType, NullableType, ReferenceActions, Schema, ColumnType, ColumnDefault, Table };
82
+ //# sourceMappingURL=Table.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../src/Table.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,YAAY,CAAC;AAEjC,KAAK,IAAI,GAAG,UAAU,GAAG,SAAS,CAAC;AACnC,KAAK,UAAU,GAAG;IACd,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,aAAa,CAAC;CACzC,CAAC;AACF,KAAK,SAAS,GAAG,aAAa,EAAE,CAAC;AACjC,KAAK,aAAa,GACZ,SAAS,GACT,IAAI,GACJ,OAAO,GACP,MAAM,GACN,MAAM,GACN,OAAO,GACP,MAAM,GACN,IAAI,GACJ,UAAU,GACV,SAAS,CAAC;AAEhB,KAAK,MAAM,GACL,SAAS,GAET,MAAM,GACN,MAAM,GACN,MAAM,GACN,QAAQ,GACR,QAAQ,GACR,SAAS,GAET,MAAM,GACN,SAAS,GACT,MAAM,GACN,MAAM,GAEN,WAAW,GACX,aAAa,GAEb,MAAM,GACN,OAAO,CAAC;AAEd,KAAK,YAAY,CAAC,CAAC,EAAE,QAAQ,SAAS,OAAO,IAAI,QAAQ,SAAS,IAAI,GAChE,CAAC,GAAG,IAAI,GACR,CAAC,CAAC;AAER,KAAK,gBAAgB,GACf,WAAW,GACX,UAAU,GACV,UAAU,GACV,aAAa,GACb,SAAS,CAAC;AAEhB,KAAK,MAAM,GAAG,MAAM,CAChB,MAAM,EACN;IACI,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;CACrB,CACJ,CAAC;AAEF,KAAK,UAAU,CACX,CAAC,SAAS,MAAM,EAChB,GAAG,SAAS,MAAM,CAAC,IACnB,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,SAAS,MAAM,GAC3B;IACI,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC5C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;CAChB,GACD,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,SAAS,MAAM,GAC3B;IACI,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;CAChB,GACD,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,SAAS,OAAO,GAC5B;IACI,IAAI,EAAE,SAAS,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,GAAG,CAAC,EAAE,OAAO,CAAC;CACjB,GACD,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,SAAS,MAAM,GAC3B;IACI,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB,GACD,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,SAAS,IAAI,GACzB;IACI,IAAI,EAAE,WAAW,GAAG,aAAa,CAAC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB,GACD,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,SAAS,OAAO,GAC5B;IACI,IAAI,EAAE,SAAS,CAAC;CACnB,GACD;IACI,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1B,CAAC;AAClB,KAAK,aAAa,CACd,CAAC,SAAS,MAAM,EAChB,GAAG,SAAS,MAAM,CAAC,IACnB,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,SAAS,IAAI,GAC5B;IACI,OAAO,EAAE,IAAI,CAAC;CACjB,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,SAAS,MAAM,GAEtB;IACI,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IACvD,aAAa,CAAC,EAAE,KAAK,CAAC;CACzB,GACD;IACI,YAAY,EAAE,CAAC,gBAAgB,CAAC,CAAC;IACjC,aAAa,CAAC,EAAE,MAAM,CAAC;CAC1B,GACP,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,SAAS,MAAM,GAErB;IACI,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IACvD,aAAa,CAAC,EAAE,KAAK,CAAC;CACzB,GACD;IACI,YAAY,EAAE,CAAC,gBAAgB,CAAC,CAAC;IACjC,aAAa,CAAC,EAAE,MAAM,CAAC;CAC1B,GACP,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,SAAS,IAAI,GACzB;IACI,YAAY,EACN,CAAC,YAAY,CAAC,GACd,CAAC,YAAY,CAAC,GACd,CAAC,KAAK,EAAE,MAAM,CAAC,GACf,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;CAChC,GACD;IACI,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;CAC1D,CAAC,GACZ;IACI,OAAO,EAAE,KAAK,CAAC;CAClB,CAAC;AACR,KAAK,KAAK,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,IAAI;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE;SACJ,GAAG,IAAI,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC,EAAE,GAAG,CAAC,GAChC,aAAa,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG;YACpB,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC;YAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,OAAO,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,SAAS,KAAK,GAAG,IAAI,GAAG,KAAK,CAAC;YAC1D,SAAS,CAAC,EAAE;gBACR,KAAK,EAAE,KAAK,CAAC;gBACb,QAAQ,CAAC,EAAE,gBAAgB,CAAC;gBAC5B,QAAQ,CAAC,EAAE,gBAAgB,CAAC;gBAC5B,MAAM,EAAE,MAAM,CAAC;aAClB,CAAC;SACL;KACR,CAAC;CACL,CAAC;AAEF,YAAY,EACR,IAAI,EACJ,UAAU,EACV,SAAS,EACT,aAAa,EACb,MAAM,EACN,YAAY,EACZ,gBAAgB,EAChB,MAAM,EACN,UAAU,EACV,aAAa,EACb,KAAK,EACR,CAAC"}
@@ -1,3 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=pool.js.map
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=Table.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Table.js","sourceRoot":"","sources":["../../src/types/Table.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"Table.js","sourceRoot":"","sources":["../../src/Table.ts"],"names":[],"mappings":""}
@@ -0,0 +1,76 @@
1
+ import Decimal from 'decimal.js';
2
+ import { Json, NullableType, Schema, Table } from './Table';
3
+ import { ListOperator, NullOperator, BetweenOperator, BooleanOperator, CompareOperator } from './keywords';
4
+ type Context<S extends Schema = Schema> = {
5
+ column: <C extends keyof S & string>(column: C, alias?: string) => NullableType<S[C]['type'], S[C]['nullable']>;
6
+ compare: <C extends keyof S & string>(column: C, ...args: ContextRule<S, C>) => boolean;
7
+ columnsAnd: (rules: ContextRules<S>, alias?: string) => boolean;
8
+ columnsOr: (rules: ContextRules<S>, alias?: string) => boolean;
9
+ and: <T extends undefined | null | boolean>(...expressions: readonly T[]) => T;
10
+ or: <T extends undefined | null | boolean>(...expressions: readonly T[]) => T;
11
+ };
12
+ declare const createContext: <S extends Schema>(table: Table<S>, alias?: string) => Context<S>;
13
+ type ContextRules<S extends Schema> = {
14
+ [C in keyof S]?: ContextRule<S, C>;
15
+ };
16
+ type ContextRule<S extends Schema, C extends keyof S> = (S[C]['nullable'] extends true ? [operator: NullOperator] : never) | (S[C]['type'] extends boolean ? [operator: BooleanOperator] : S[C]['type'] extends number ? [
17
+ operator: CompareOperator,
18
+ expression: NullableType<number, S[C]['nullable']>
19
+ ] | [
20
+ operator: ListOperator,
21
+ expression: readonly NullableType<number, S[C]['nullable']>[]
22
+ ] | [
23
+ operator: BetweenOperator,
24
+ startExpression: NullableType<number, S[C]['nullable']>,
25
+ endExpression: NullableType<number, S[C]['nullable']>
26
+ ] : S[C]['type'] extends bigint ? [
27
+ operator: CompareOperator,
28
+ expression: NullableType<bigint, S[C]['nullable']>
29
+ ] | [
30
+ operator: ListOperator,
31
+ expression: readonly NullableType<bigint, S[C]['nullable']>[]
32
+ ] | [
33
+ operator: BetweenOperator,
34
+ startExpression: NullableType<bigint, S[C]['nullable']>,
35
+ endExpression: NullableType<bigint, S[C]['nullable']>
36
+ ] : S[C]['type'] extends Decimal ? [
37
+ operator: CompareOperator,
38
+ expression: NullableType<Decimal, S[C]['nullable']>
39
+ ] | [
40
+ operator: ListOperator,
41
+ expression: readonly NullableType<Decimal, S[C]['nullable']>[]
42
+ ] | [
43
+ operator: BetweenOperator,
44
+ startExpression: NullableType<Decimal, S[C]['nullable']>,
45
+ endExpression: NullableType<Decimal, S[C]['nullable']>
46
+ ] : S[C]['type'] extends string ? [
47
+ operator: CompareOperator | 'like',
48
+ expression: NullableType<string, S[C]['nullable']>
49
+ ] | [
50
+ operator: ListOperator | 'like some' | 'like all',
51
+ expression: readonly NullableType<string, S[C]['nullable']>[]
52
+ ] | [
53
+ operator: BetweenOperator,
54
+ startExpression: NullableType<string, S[C]['nullable']>,
55
+ endExpression: NullableType<string, S[C]['nullable']>
56
+ ] : S[C]['type'] extends Date ? [
57
+ operator: CompareOperator,
58
+ expression: NullableType<Date, S[C]['nullable']>
59
+ ] | [
60
+ operator: ListOperator,
61
+ expression: readonly NullableType<Date, S[C]['nullable']>[]
62
+ ] | [
63
+ operator: BetweenOperator,
64
+ startExpression: NullableType<Date, S[C]['nullable']>,
65
+ endExpression: NullableType<Date, S[C]['nullable']>
66
+ ] : S[C]['type'] extends Json ? [
67
+ operator: '@>' | '<@',
68
+ expression: NullableType<Json, S[C]['nullable']>
69
+ ] | [operator: '?', expression: null | string] | [
70
+ operator: '?&' | '?|',
71
+ expression: readonly (null | string)[]
72
+ ] : never);
73
+ declare const createContextHelper: <S extends Schema>(table: Table<S>) => (rules: ContextRules<S>, alias?: string) => boolean[];
74
+ export type { Context, ContextRules };
75
+ export { createContext, createContextHelper };
76
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/context.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.createContextHelper = exports.createContext = void 0;
27
+ const U = __importStar(require("./utils"));
28
+ const createContext = (table, alias = '') => {
29
+ const contextHelper = createContextHelper(table);
30
+ return {
31
+ column: (column, _alias = alias) => U.column(table, column, !!_alias, _alias),
32
+ compare: (column, ...args) => U.compare(U.column(table, column, !!alias, alias), ...args),
33
+ columnsAnd: (rules, _alias = alias) => U.and(...contextHelper(rules, _alias)),
34
+ columnsOr: (rules, _alias = alias) => U.or(...contextHelper(rules, _alias)),
35
+ and: expressions => U.and(expressions),
36
+ or: expressions => U.or(expressions)
37
+ };
38
+ };
39
+ exports.createContext = createContext;
40
+ const createContextHelper = (table) => (rules, alias) => Object.entries(rules).map(([key, value]) => {
41
+ const operator = value[0];
42
+ switch (operator) {
43
+ case '= null':
44
+ case '!= null':
45
+ case '= true':
46
+ case '= false':
47
+ return U.compare(U.column(table, key, !!alias, alias), value[0]);
48
+ case '=':
49
+ case '!=':
50
+ case '>':
51
+ case '>=':
52
+ case '<':
53
+ case '<=':
54
+ case 'in':
55
+ case 'not in':
56
+ case 'like':
57
+ case 'like all':
58
+ case 'like some':
59
+ case '@>':
60
+ case '<@':
61
+ case '?':
62
+ case '?&':
63
+ case '?|':
64
+ return U.compare(U.column(table, key, !!alias, alias), value[0], value[1]);
65
+ case 'between':
66
+ return U.compare(U.column(table, key, !!alias, alias), value[0], value[1], value[2]);
67
+ }
68
+ });
69
+ exports.createContextHelper = createContextHelper;
70
+ //# sourceMappingURL=context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/context.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ import { Result } from 'never-catch';
2
+ import { NullableType, Schema, Table } from './Table';
3
+ declare const Int2Range: {
4
+ min: number;
5
+ max: number;
6
+ };
7
+ declare const Int4Range: {
8
+ min: number;
9
+ max: number;
10
+ };
11
+ declare const Int8Range: {
12
+ min: bigint;
13
+ max: bigint;
14
+ };
15
+ type Model<S extends Schema, R extends readonly (keyof S)[], O extends readonly (keyof S)[]> = {
16
+ [key in Exclude<keyof R, keyof never[]> as R[key] & string]: NullableType<S[R[key] & string]['type'], S[R[key] & string]['nullable']>;
17
+ } & {
18
+ [key in Exclude<keyof O, keyof never[]> as O[key] & string]?: NullableType<S[O[key] & string]['type'], S[O[key] & string]['nullable']>;
19
+ };
20
+ type ModelParser<S extends Schema, EMap extends {
21
+ [key in keyof S]: unknown;
22
+ }> = {
23
+ Parse: <R extends readonly (keyof S & string)[], O extends readonly (keyof S & string)[]>(data: Record<string, unknown>, requires: R, optionals: O) => Result<Model<S, R, O>, EMap[(R[Exclude<keyof R, keyof never[]>] | O[Exclude<keyof O, keyof never[]>]) & keyof EMap]>;
24
+ } & {
25
+ [key in keyof S]: (v: unknown) => NullableType<S[key]['type'], S[key]['nullable']> | undefined;
26
+ };
27
+ declare const createModelParser: <S extends Schema, EMap extends { [key in keyof S]: unknown; } = { [key_1 in keyof S]: key_1; }>({ columns }: Table<S>, { parsers, errorsMap }?: {
28
+ parsers?: { [key_2 in keyof S]?: ((v: NullableType<S[key_2]["type"], S[key_2]["nullable"]>) => NullableType<S[key_2]["type"], S[key_2]["nullable"]> | undefined) | undefined; } | undefined;
29
+ errorsMap?: EMap | undefined;
30
+ }) => ModelParser<S, EMap>;
31
+ export type { Model, ModelParser };
32
+ export { Int2Range, Int4Range, Int8Range, createModelParser };
33
+ //# sourceMappingURL=createModelParser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createModelParser.d.ts","sourceRoot":"","sources":["../../src/createModelParser.ts"],"names":[],"mappings":"AACA,OAAO,EAAW,MAAM,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAU,MAAM,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAE9D,QAAA,MAAM,SAAS;;;CAGd,CAAC;AACF,QAAA,MAAM,SAAS;;;CAGd,CAAC;AACF,QAAA,MAAM,SAAS;;;CAGd,CAAC;AAEF,KAAK,KAAK,CACN,CAAC,SAAS,MAAM,EAChB,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,EAC9B,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,IAC9B;KACC,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,YAAY,CACrE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,MAAM,CAAC,EAC1B,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,UAAU,CAAC,CACjC;CACJ,GAAG;KACC,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,EAAE,YAAY,CACtE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,MAAM,CAAC,EAC1B,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,UAAU,CAAC,CACjC;CACJ,CAAC;AAEF,KAAK,WAAW,CACZ,CAAC,SAAS,MAAM,EAChB,IAAI,SAAS;KAAG,GAAG,IAAI,MAAM,CAAC,GAAG,OAAO;CAAE,IAC1C;IACA,KAAK,EAAE,CACH,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,EAAE,EACvC,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,EAAE,EAEvC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,QAAQ,EAAE,CAAC,EACX,SAAS,EAAE,CAAC,KACX,MAAM,CACP,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EACd,IAAI,CAAC,CACC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,EAAE,CAAC,CAAC,GAClC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,EAAE,CAAC,CAAC,CACvC,GACG,MAAM,IAAI,CAAC,CAClB,CAAC;CACL,GAAG;KACC,GAAG,IAAI,MAAM,CAAC,GAAG,CACd,CAAC,EAAE,OAAO,KACT,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,GAAG,SAAS;CACpE,CAAC;AAEF,QAAA,MAAM,iBAAiB,gHAMN,MAAM,CAAC,CAAC;;;MAStB,YAAY,CAAC,EAAE,IAAI,CAuJrB,CAAC;AAEF,YAAY,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,iBAAiB,EAAE,CAAC"}
@@ -0,0 +1,178 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.createModelParser = exports.Int8Range = exports.Int4Range = exports.Int2Range = void 0;
27
+ const U = __importStar(require("./utils"));
28
+ const never_catch_1 = require("never-catch");
29
+ const Int2Range = {
30
+ min: -32768,
31
+ max: 32767
32
+ };
33
+ exports.Int2Range = Int2Range;
34
+ const Int4Range = {
35
+ min: -2147483648,
36
+ max: 2147483647
37
+ };
38
+ exports.Int4Range = Int4Range;
39
+ const Int8Range = {
40
+ min: BigInt('-9223372036854775808'),
41
+ max: BigInt('9223372036854775807')
42
+ };
43
+ exports.Int8Range = Int8Range;
44
+ const createModelParser = ({ columns }, { parsers, errorsMap } = {}) => {
45
+ const columnsParser = Object.fromEntries(Object.entries(columns).map(([key, column]) => {
46
+ let defaultParser;
47
+ switch (column.type) {
48
+ case 'boolean':
49
+ defaultParser = U.Cast.boolean;
50
+ break;
51
+ case 'int2':
52
+ defaultParser = (v) => {
53
+ const _v = U.Cast.integer(v);
54
+ if (_v !== undefined &&
55
+ (column.min ?? Int2Range.min) <= _v &&
56
+ (column.max ?? Int2Range.max) >= _v) {
57
+ return _v;
58
+ }
59
+ return undefined;
60
+ };
61
+ break;
62
+ case 'int4':
63
+ defaultParser = (v) => {
64
+ const _v = U.Cast.integer(v);
65
+ if (_v !== undefined &&
66
+ (column.min ?? Int4Range.min) <= _v &&
67
+ (column.max ?? Int4Range.max) >= _v) {
68
+ return _v;
69
+ }
70
+ return undefined;
71
+ };
72
+ break;
73
+ case 'int8':
74
+ defaultParser = (v) => {
75
+ const _v = U.Cast.bigInt(v);
76
+ if (_v !== undefined &&
77
+ (column.min ?? Int8Range.min) <= _v &&
78
+ (column.max ?? Int8Range.max) >= _v) {
79
+ return _v;
80
+ }
81
+ return undefined;
82
+ };
83
+ break;
84
+ case 'float4':
85
+ case 'float8':
86
+ defaultParser = (v) => {
87
+ const _v = U.Cast.number(v);
88
+ if (_v !== undefined &&
89
+ (column.min === undefined ||
90
+ column.min <= _v) &&
91
+ (column.max === undefined || column.max >= _v)) {
92
+ return _v;
93
+ }
94
+ return undefined;
95
+ };
96
+ break;
97
+ case 'decimal':
98
+ defaultParser = (v) => {
99
+ const _v = U.Cast.decimal(v);
100
+ if (_v !== undefined &&
101
+ (column.min === undefined ||
102
+ _v.comparedTo(column.min) >= 0) &&
103
+ (column.max === undefined ||
104
+ _v.comparedTo(column.max) <= 0)) {
105
+ return _v;
106
+ }
107
+ return undefined;
108
+ };
109
+ break;
110
+ case 'char':
111
+ case 'varchar':
112
+ case 'text':
113
+ case 'uuid':
114
+ defaultParser = (v) => {
115
+ const _v = U.Cast.string(v);
116
+ if (_v !== undefined &&
117
+ (column.minLength === undefined ||
118
+ column.minLength <= _v.length) &&
119
+ (column.maxLength === undefined ||
120
+ column.maxLength >= _v.length) &&
121
+ (column.regex === undefined ||
122
+ column.regex.test(_v))) {
123
+ return _v;
124
+ }
125
+ return undefined;
126
+ };
127
+ break;
128
+ case 'timestamp':
129
+ case 'timestamptz':
130
+ defaultParser = U.Cast.date;
131
+ break;
132
+ case 'json':
133
+ case 'jsonb':
134
+ defaultParser = U.Cast.json;
135
+ break;
136
+ }
137
+ const customParser = parsers?.[key];
138
+ return [
139
+ key,
140
+ customParser !== undefined
141
+ ? (v) => {
142
+ const _v = defaultParser(v);
143
+ if (_v === undefined) {
144
+ return undefined;
145
+ }
146
+ return customParser(_v);
147
+ }
148
+ : defaultParser
149
+ ];
150
+ }));
151
+ return {
152
+ Parse: (data, requires, optionals) => {
153
+ const result = {};
154
+ for (const key of requires) {
155
+ if (data[key] === undefined) {
156
+ return (0, never_catch_1.err)(errorsMap?.[key] ?? key);
157
+ }
158
+ result[key] = columnsParser[key](data[key]);
159
+ if (result[key] === undefined) {
160
+ return (0, never_catch_1.err)(errorsMap?.[key] ?? key);
161
+ }
162
+ }
163
+ for (const key of optionals) {
164
+ if (data[key] === undefined) {
165
+ continue;
166
+ }
167
+ result[key] = columnsParser[key](data[key]);
168
+ if (result[key] === undefined) {
169
+ return (0, never_catch_1.err)(errorsMap?.[key] ?? key);
170
+ }
171
+ }
172
+ return (0, never_catch_1.ok)(result);
173
+ },
174
+ ...columnsParser
175
+ };
176
+ };
177
+ exports.createModelParser = createModelParser;
178
+ //# sourceMappingURL=createModelParser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createModelParser.js","sourceRoot":"","sources":["../../src/createModelParser.ts"],"names":[],"mappings":"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"}