@rawsql-ts/sql-contract 0.1.0 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rawsql-ts/sql-contract",
3
- "version": "0.1.0",
3
+ "version": "0.3.1",
4
4
  "description": "Lightweight mapper and writer helpers that keep client SQL authoritative while exposing an explicit contract for data hydration and CUD emitters.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -17,6 +17,14 @@
17
17
  "types": "./dist/mapper/*.d.ts",
18
18
  "default": "./dist/mapper/*.js"
19
19
  },
20
+ "./utils/coercions": {
21
+ "types": "./dist/utils/coercions.d.ts",
22
+ "default": "./dist/utils/coercions.js"
23
+ },
24
+ "./utils/*": {
25
+ "types": "./dist/utils/*.d.ts",
26
+ "default": "./dist/utils/*.js"
27
+ },
20
28
  "./writer": {
21
29
  "types": "./dist/writer/index.d.ts",
22
30
  "default": "./dist/writer/index.js"
@@ -26,6 +34,14 @@
26
34
  "default": "./dist/writer/*.js"
27
35
  }
28
36
  },
37
+ "scripts": {
38
+ "build": "tsc -p tsconfig.json",
39
+ "test": "vitest run --config vitest.config.ts",
40
+ "test:consumer-validation": "vitest run --config vitest.config.ts",
41
+ "test:integration": "vitest run --config ../../vitest.integration.config.ts",
42
+ "test:watch": "vitest --config vitest.config.ts",
43
+ "lint": "eslint src --ext .ts"
44
+ },
29
45
  "keywords": [
30
46
  "sql",
31
47
  "mapper",
@@ -47,17 +63,12 @@
47
63
  "node": ">=20"
48
64
  },
49
65
  "devDependencies": {
66
+ "zod": "^4.3.6",
50
67
  "typescript": "^5.8.2",
51
68
  "vitest": "^4.0.7",
52
69
  "pg-promise": "^12.0.0"
53
70
  },
54
71
  "files": [
55
72
  "dist"
56
- ],
57
- "scripts": {
58
- "build": "tsc -p tsconfig.json",
59
- "test": "vitest run",
60
- "test:watch": "vitest",
61
- "lint": "eslint src --ext .ts"
62
- }
63
- }
73
+ ]
74
+ }
package/LICENSE DELETED
@@ -1,21 +0,0 @@
1
- MIT License
2
-
3
- Copyright (c) 2025 MSugiura
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
package/dist/.tsbuildinfo DELETED
@@ -1 +0,0 @@
1
- {"fileNames":["../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.decorators.legacy.d.ts","../src/query-params.ts","../src/mapper/index.ts","../src/writer/presets.ts","../src/writer/index.ts","../src/index.ts","../../../node_modules/.pnpm/@types+benchmark@2.1.5/node_modules/@types/benchmark/index.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/compatibility/disposable.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/compatibility/indexable.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/compatibility/iterators.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/compatibility/index.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/globals.typedarray.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/buffer.buffer.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/globals.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/web-globals/abortcontroller.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/web-globals/domexception.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/web-globals/events.d.ts","../../../node_modules/.pnpm/buffer@6.0.3/node_modules/buffer/index.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/header.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/readable.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/file.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/fetch.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/formdata.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/connector.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/client.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/errors.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/dispatcher.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/global-dispatcher.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/global-origin.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/pool-stats.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/pool.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/handlers.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/balanced-pool.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/agent.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/mock-interceptor.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/mock-agent.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/mock-client.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/mock-pool.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/mock-errors.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/proxy-agent.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/env-http-proxy-agent.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/retry-handler.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/retry-agent.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/api.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/interceptors.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/util.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/cookies.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/patch.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/websocket.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/eventsource.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/filereader.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/diagnostics-channel.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/content-type.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/cache.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/index.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/web-globals/fetch.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/web-globals/navigator.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/web-globals/storage.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/assert.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/assert/strict.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/async_hooks.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/buffer.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/child_process.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/cluster.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/console.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/constants.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/crypto.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/dgram.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/diagnostics_channel.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/dns.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/dns/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/domain.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/events.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/fs.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/fs/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/http.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/http2.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/https.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/inspector.generated.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/module.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/net.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/os.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/path.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/process.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/punycode.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/querystring.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/readline.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/readline/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/repl.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/sea.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/sqlite.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/stream.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/stream/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/stream/consumers.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/stream/web.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/string_decoder.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/test.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/timers.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/timers/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/tls.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/trace_events.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/tty.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/url.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/util.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/v8.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/vm.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/wasi.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/worker_threads.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/zlib.d.ts","../../../node_modules/.pnpm/@types+node@22.18.7/node_modules/@types/node/index.d.ts","../../../node_modules/.pnpm/pg-types@2.2.0/node_modules/pg-types/index.d.ts","../../../node_modules/.pnpm/pg-protocol@1.10.3/node_modules/pg-protocol/dist/messages.d.ts","../../../node_modules/.pnpm/pg-protocol@1.10.3/node_modules/pg-protocol/dist/serializer.d.ts","../../../node_modules/.pnpm/pg-protocol@1.10.3/node_modules/pg-protocol/dist/parser.d.ts","../../../node_modules/.pnpm/pg-protocol@1.10.3/node_modules/pg-protocol/dist/index.d.ts","../../../node_modules/.pnpm/@types+pg@8.15.6/node_modules/@types/pg/lib/type-overrides.d.ts","../../../node_modules/.pnpm/@types+pg@8.15.6/node_modules/@types/pg/index.d.ts"],"fileIdsList":[[57,106],[57,103,106],[57,105,106],[106],[57,106,111,140],[57,106,107,112,117,125,137,148],[57,106,107,108,117,125],[52,53,54,57,106],[57,106,109,149],[57,106,110,111,118,126],[57,106,111,137,145],[57,106,112,114,117,125],[57,105,106,113],[57,106,114,115],[57,106,116,117],[57,105,106,117],[57,106,117,118,119,137,148],[57,106,117,118,119,132,137,140],[57,99,106,114,117,120,125,137,148],[57,106,117,118,120,121,125,137,145,148],[57,106,120,122,137,145,148],[55,56,57,58,59,60,61,100,101,102,103,104,105,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],[57,106,117,123],[57,106,124,148],[57,106,114,117,125,137],[57,106,126],[57,106,127],[57,105,106,128],[57,103,104,105,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],[57,106,130],[57,106,131],[57,106,117,132,133],[57,106,132,134,149,151],[57,106,117,137,138,140],[57,106,139,140],[57,106,137,138],[57,106,140],[57,106,141],[57,103,106,137,142],[57,106,117,143,144],[57,106,143,144],[57,106,111,125,137,145],[57,106,146],[57,106,125,147],[57,106,120,131,148],[57,106,111,149],[57,106,137,150],[57,106,124,151],[57,106,152],[57,99,106],[57,99,106,117,119,128,137,140,148,150,151,153],[57,106,137,154],[57,106,117,137,145,155,156,157,160,161,162],[57,106,162],[57,106,155,157,158,159],[57,106,155],[57,106,137,155,157],[57,71,75,106,148],[57,71,106,137,148],[57,66,106],[57,68,71,106,145,148],[57,106,125,145],[57,66,106,155],[57,68,71,106,125,148],[57,63,64,67,70,106,117,137,148],[57,71,78,106],[57,63,69,106],[57,71,92,93,106],[57,67,71,106,140,148,155],[57,92,106,155],[57,65,66,106,155],[57,71,106],[57,65,66,67,68,69,70,71,72,73,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,93,94,95,96,97,98,106],[57,71,86,106],[57,71,78,79,106],[57,69,71,79,80,106],[57,70,106],[57,63,66,71,106],[57,71,75,79,80,106],[57,75,106],[57,69,71,74,106,148],[57,63,68,71,78,106],[57,106,137],[57,66,71,92,106,153,155],[47,49,57,106],[46,57,106],[46,48,57,106],[46,49,57,106]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","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":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","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":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"11efede98fb20dc886d6b360ffff640681d863a0da7e24da4fa112b5f9be1482","signature":"12dc2a6c0ab83c0da3f87d95e354e38976fe192c9b0afb4183dc9559385ce585"},{"version":"437ff0b7086f9a2c93e3c25264895d856ed8b0bb051855de3842a21905decb27","signature":"e47b071b341110c4045230967474a45095072923028eeb03586ab7e4bbbf0429"},{"version":"0e9dcf8e1071e6908300d691fbd5d39242d801394328386ffdd545f673024d79","signature":"c307a66302665c099b7182fadd9e244b5d492d87ea6067744951b72d520d2e8b"},{"version":"c814bd87437b33ff71bed90933743ded6ed0f1811eb9f95ed2dd41c36343179e","signature":"1b05802189bcd3391ebe43027954f7e2b98b9468d0e7d0ccb74d507114113728"},{"version":"4f3237a23fc4af0afaa80cc03a58c31a8ea2dd949c454201cda5854f631f04fc","signature":"ecadbd046f840a0f86f17c4c4be19307c413b8e32a149fab0bca5b5f7c7b1802"},{"version":"d64fc2b6e71cc0aa542509bf15c62001e4b57a2a45a22c730fafbb58e192a91c","impliedFormat":1},{"version":"6c7176368037af28cb72f2392010fa1cef295d6d6744bca8cfb54985f3a18c3e","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab41ef1f2cdafb8df48be20cd969d875602483859dc194e9c97c8a576892c052","affectsGlobalScope":true,"impliedFormat":1},{"version":"437e20f2ba32abaeb7985e0afe0002de1917bc74e949ba585e49feba65da6ca1","affectsGlobalScope":true,"impliedFormat":1},{"version":"21d819c173c0cf7cc3ce57c3276e77fd9a8a01d35a06ad87158781515c9a438a","impliedFormat":1},{"version":"a79e62f1e20467e11a904399b8b18b18c0c6eea6b50c1168bf215356d5bebfaf","affectsGlobalScope":true,"impliedFormat":1},{"version":"d802f0e6b5188646d307f070d83512e8eb94651858de8a82d1e47f60fb6da4e2","affectsGlobalScope":true,"impliedFormat":1},{"version":"17bb4105d0ea2ab2bfcb4f77ff8585691d5569c90ae15f4fa8d5ff9fb42b910b","affectsGlobalScope":true,"impliedFormat":1},{"version":"1db0b7dca579049ca4193d034d835f6bfe73096c73663e5ef9a0b5779939f3d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"9798340ffb0d067d69b1ae5b32faa17ab31b82466a3fc00d8f2f2df0c8554aaa","affectsGlobalScope":true,"impliedFormat":1},{"version":"f26b11d8d8e4b8028f1c7d618b22274c892e4b0ef5b3678a8ccbad85419aef43","affectsGlobalScope":true,"impliedFormat":1},{"version":"4967529644e391115ca5592184d4b63980569adf60ee685f968fd59ab1557188","impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","impliedFormat":1},{"version":"763fe0f42b3d79b440a9b6e51e9ba3f3f91352469c1e4b3b67bfa4ff6352f3f4","impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","impliedFormat":1},{"version":"c464d66b20788266e5353b48dc4aa6bc0dc4a707276df1e7152ab0c9ae21fad8","impliedFormat":1},{"version":"78d0d27c130d35c60b5e5566c9f1e5be77caf39804636bc1a40133919a949f21","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"1d6e127068ea8e104a912e42fc0a110e2aa5a66a356a917a163e8cf9a65e4a75","impliedFormat":1},{"version":"5ded6427296cdf3b9542de4471d2aa8d3983671d4cac0f4bf9c637208d1ced43","impliedFormat":1},{"version":"7f182617db458e98fc18dfb272d40aa2fff3a353c44a89b2c0ccb3937709bfb5","impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","impliedFormat":1},{"version":"0b8a9268adaf4da35e7fa830c8981cfa22adbbe5b3f6f5ab91f6658899e657a7","impliedFormat":1},{"version":"11396ed8a44c02ab9798b7dca436009f866e8dae3c9c25e8c1fbc396880bf1bb","impliedFormat":1},{"version":"ba7bc87d01492633cb5a0e5da8a4a42a1c86270e7b3d2dea5d156828a84e4882","impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","impliedFormat":1},{"version":"c21dc52e277bcfc75fac0436ccb75c204f9e1b3fa5e12729670910639f27343e","impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","impliedFormat":1},{"version":"ea0148f897b45a76544ae179784c95af1bd6721b8610af9ffa467a518a086a43","impliedFormat":1},{"version":"24c6a117721e606c9984335f71711877293a9651e44f59f3d21c1ea0856f9cc9","impliedFormat":1},{"version":"dd3273ead9fbde62a72949c97dbec2247ea08e0c6952e701a483d74ef92d6a17","impliedFormat":1},{"version":"405822be75ad3e4d162e07439bac80c6bcc6dbae1929e179cf467ec0b9ee4e2e","impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","impliedFormat":1},{"version":"e61be3f894b41b7baa1fbd6a66893f2579bfad01d208b4ff61daef21493ef0a8","impliedFormat":1},{"version":"bd0532fd6556073727d28da0edfd1736417a3f9f394877b6d5ef6ad88fba1d1a","impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","impliedFormat":1},{"version":"615ba88d0128ed16bf83ef8ccbb6aff05c3ee2db1cc0f89ab50a4939bfc1943f","impliedFormat":1},{"version":"a4d551dbf8746780194d550c88f26cf937caf8d56f102969a110cfaed4b06656","impliedFormat":1},{"version":"8bd86b8e8f6a6aa6c49b71e14c4ffe1211a0e97c80f08d2c8cc98838006e4b88","impliedFormat":1},{"version":"317e63deeb21ac07f3992f5b50cdca8338f10acd4fbb7257ebf56735bf52ab00","impliedFormat":1},{"version":"4732aec92b20fb28c5fe9ad99521fb59974289ed1e45aecb282616202184064f","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"bf67d53d168abc1298888693338cb82854bdb2e69ef83f8a0092093c2d562107","impliedFormat":1},{"version":"2cbe0621042e2a68c7cbce5dfed3906a1862a16a7d496010636cdbdb91341c0f","affectsGlobalScope":true,"impliedFormat":1},{"version":"f9501cc13ce624c72b61f12b3963e84fad210fbdf0ffbc4590e08460a3f04eba","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7721c4f69f93c91360c26a0a84ee885997d748237ef78ef665b153e622b36c1","affectsGlobalScope":true,"impliedFormat":1},{"version":"df48adbf5b82b79ed989ec3bef2979d988b94978907fd86b4f30ba2b668e49de","impliedFormat":1},{"version":"7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","impliedFormat":1},{"version":"2b06b93fd01bcd49d1a6bd1f9b65ddcae6480b9a86e9061634d6f8e354c1468f","impliedFormat":1},{"version":"7b988bc259155186e6b09dd8b32856d9e45c8d261e63c19abaf590bb6550f922","affectsGlobalScope":true,"impliedFormat":1},{"version":"fe7b52f993f9336b595190f3c1fcc259bb2cf6dcb4ac8fdb1e0454cc5df7301e","impliedFormat":1},{"version":"e9b97d69510658d2f4199b7d384326b7c4053b9e6645f5c19e1c2a54ede427fc","impliedFormat":1},{"version":"c2510f124c0293ab80b1777c44d80f812b75612f297b9857406468c0f4dafe29","affectsGlobalScope":true,"impliedFormat":1},{"version":"5524481e56c48ff486f42926778c0a3cce1cc85dc46683b92b1271865bcf015a","impliedFormat":1},{"version":"81711af669f63d43ccb4c08e15beda796656dd46673d0def001c7055db53852d","affectsGlobalScope":true,"impliedFormat":1},{"version":"19d5f8d3930e9f99aa2c36258bf95abbe5adf7e889e6181872d1cdba7c9a7dd5","impliedFormat":1},{"version":"9855e02d837744303391e5623a531734443a5f8e6e8755e018c41d63ad797db2","impliedFormat":1},{"version":"bdba81959361810be44bcfdd283f4d601e406ab5ad1d2bdff0ed480cf983c9d7","impliedFormat":1},{"version":"836a356aae992ff3c28a0212e3eabcb76dd4b0cc06bcb9607aeef560661b860d","impliedFormat":1},{"version":"1e0d1f8b0adfa0b0330e028c7941b5a98c08b600efe7f14d2d2a00854fb2f393","impliedFormat":1},{"version":"a912401ec6f333808ae72660e6860ba4e72185ffd7dbb658cd41064936e34b62","affectsGlobalScope":true,"impliedFormat":1},{"version":"c8420c7c2b778b334587a4c0311833b5212ff2f684ea37b2f0e2b117f1d7210d","impliedFormat":1},{"version":"b6b08215821c9833b0e8e30ea1ed178009f2f3ff5d7fae3865ee42f97cc87784","impliedFormat":1},{"version":"3f735210f444dc3fd2d4d2f020d195fe827dad5e30a6d743807c5d1de3a2be73","impliedFormat":1},{"version":"73cf6cc19f16c0191e4e9d497ab0c11c7b38f1ca3f01ad0f09a3a5a971aac4b8","impliedFormat":1},{"version":"3e81d8b837057db6f9c82263e0ef7e5b9a55437342e7028eb8003199ccc69604","impliedFormat":1},{"version":"ed58b9974bb3114f39806c9c2c6258c4ffa6a255921976a7c53dfa94bf178f42","impliedFormat":1},{"version":"e6fa9ad47c5f71ff733744a029d1dc472c618de53804eae08ffc243b936f87ff","affectsGlobalScope":true,"impliedFormat":1},{"version":"f72bc8fe16da67e4e3268599295797b202b95e54bd215a03f97e925dd1502a36","impliedFormat":1},{"version":"b1b6ee0d012aeebe11d776a155d8979730440082797695fc8e2a5c326285678f","impliedFormat":1},{"version":"45875bcae57270aeb3ebc73a5e3fb4c7b9d91d6b045f107c1d8513c28ece71c0","impliedFormat":1},{"version":"915e18c559321c0afaa8d34674d3eb77e1ded12c3e85bf2a9891ec48b07a1ca5","affectsGlobalScope":true,"impliedFormat":1},{"version":"e9727a118ce60808e62457c89762fe5a4e2be8e9fd0112d12432d1bafdba942f","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f16a7e4deafa527ed9995a772bb380eb7d3c2c0fd4ae178c5263ed18394db2c","impliedFormat":1},{"version":"933921f0bb0ec12ef45d1062a1fc0f27635318f4d294e4d99de9a5493e618ca2","impliedFormat":1},{"version":"71a0f3ad612c123b57239a7749770017ecfe6b66411488000aba83e4546fde25","impliedFormat":1},{"version":"70b57b5529051497e9f6482b76d91c0dcbb103d9ead8a0549f5bab8f65e5d031","impliedFormat":1},{"version":"4f9d8ca0c417b67b69eeb54c7ca1bedd7b56034bb9bfd27c5d4f3bc4692daca7","impliedFormat":1},{"version":"814118df420c4e38fe5ae1b9a3bafb6e9c2aa40838e528cde908381867be6466","impliedFormat":1},{"version":"3a90b9beac4c2bfdf6517faae0940a042b81652badf747df0a7c7593456f6ebe","impliedFormat":1},{"version":"8302157cd431b3943eed09ad439b4441826c673d9f870dcb0e1f48e891a4211e","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"125d792ec6c0c0f657d758055c494301cc5fdb327d9d9d5960b3f129aff76093","impliedFormat":1},{"version":"dba28a419aec76ed864ef43e5f577a5c99a010c32e5949fe4e17a4d57c58dd11","affectsGlobalScope":true,"impliedFormat":1},{"version":"2754d8221d77c7b382096651925eb476f1066b3348da4b73fe71ced7801edada","impliedFormat":1},{"version":"c959a391a75be9789b43c8468f71e3fa06488b4d691d5729dde1416dcd38225b","impliedFormat":1},{"version":"f0be1b8078cd549d91f37c30c222c2a187ac1cf981d994fb476a1adc61387b14","affectsGlobalScope":true,"impliedFormat":1},{"version":"0aaed1d72199b01234152f7a60046bc947f1f37d78d182e9ae09c4289e06a592","impliedFormat":1},{"version":"98ffdf93dfdd206516971d28e3e473f417a5cfd41172e46b4ce45008f640588e","impliedFormat":1},{"version":"66ba1b2c3e3a3644a1011cd530fb444a96b1b2dfe2f5e837a002d41a1a799e60","impliedFormat":1},{"version":"7e514f5b852fdbc166b539fdd1f4e9114f29911592a5eb10a94bb3a13ccac3c4","impliedFormat":1},{"version":"cee74f5970ffc01041e5bffc3f324c20450534af4054d2c043cb49dbbd4ec8f7","affectsGlobalScope":true,"impliedFormat":1},{"version":"1a654e0d950353614ba4637a8de4f9d367903a0692b748e11fccf8c880c99735","affectsGlobalScope":true,"impliedFormat":1},{"version":"42da246c46ca3fd421b6fd88bb4466cda7137cf33e87ba5ceeded30219c428bd","impliedFormat":1},{"version":"3a051941721a7f905544732b0eb819c8d88333a96576b13af08b82c4f17581e4","impliedFormat":1},{"version":"ac5ed35e649cdd8143131964336ab9076937fa91802ec760b3ea63b59175c10a","impliedFormat":1},{"version":"c760027bae5a6188fee611641e37bede79caae3f3f7cc78ca5ce8ac1083e01bb","affectsGlobalScope":true,"impliedFormat":1},{"version":"db3d77167a7da6c5ba0c51c5b654820e3464093f21724ccd774c0b9bc3f81bc0","impliedFormat":1},{"version":"bdf1feb266c87edbee61f12ceaaef60ab0e2e5dba70ca19360b6448911c53d52","impliedFormat":1},{"version":"f60e3e3060207ac982da13363181fd7ee4beecc19a7c569f0d6bb034331066c2","impliedFormat":1},{"version":"17230b34bb564a3a2e36f9d3985372ccab4ad1722df2c43f7c5c2b553f68e5db","impliedFormat":1},{"version":"6e5c9272f6b3783be7bdddaf207cccdb8e033be3d14c5beacc03ae9d27d50929","impliedFormat":1},{"version":"9b4f7ff9681448c72abe38ea8eefd7ffe0c3aefe495137f02012a08801373f71","impliedFormat":1},{"version":"0dfe35191a04e8f9dc7caeb9f52f2ee07402736563d12cbccd15fb5f31ac877f","impliedFormat":1},{"version":"798367363a3274220cbed839b883fe2f52ba7197b25e8cb2ac59c1e1fd8af6b7","impliedFormat":1},{"version":"6ded4be4f8a693d0c1646dfa2f1b6582e34b73c66ce334cb5e86c7bf8c2e52b7","impliedFormat":1}],"root":[[46,50]],"options":{"composite":true,"declaration":true,"declarationDir":"./","esModuleInterop":true,"module":1,"outDir":"./","rootDir":"../src","skipLibCheck":true,"sourceMap":true,"strict":true,"target":6,"tsBuildInfoFile":"./.tsbuildinfo"},"referencedMap":[[51,1],[103,2],[104,2],[105,3],[57,4],[106,5],[107,6],[108,7],[52,1],[55,8],[53,1],[54,1],[109,9],[110,10],[111,11],[112,12],[113,13],[114,14],[115,14],[116,15],[117,16],[118,17],[119,18],[58,1],[56,1],[120,19],[121,20],[122,21],[155,22],[123,23],[124,24],[125,25],[126,26],[127,27],[128,28],[129,29],[130,30],[131,31],[132,32],[133,32],[134,33],[135,1],[136,1],[137,34],[139,35],[138,36],[140,37],[141,38],[142,39],[143,40],[144,41],[145,42],[146,43],[147,44],[148,45],[149,46],[150,47],[151,48],[152,49],[59,1],[60,1],[61,1],[100,50],[101,1],[102,1],[153,51],[154,52],[162,53],[161,54],[62,1],[160,55],[157,56],[159,57],[158,1],[156,1],[44,1],[45,1],[9,1],[8,1],[2,1],[10,1],[11,1],[12,1],[13,1],[14,1],[15,1],[16,1],[17,1],[3,1],[18,1],[19,1],[4,1],[20,1],[24,1],[21,1],[22,1],[23,1],[25,1],[26,1],[27,1],[5,1],[28,1],[29,1],[30,1],[31,1],[6,1],[35,1],[32,1],[33,1],[34,1],[36,1],[7,1],[37,1],[42,1],[43,1],[38,1],[39,1],[40,1],[41,1],[1,1],[78,58],[88,59],[77,58],[98,60],[69,61],[68,62],[97,56],[91,63],[96,64],[71,65],[85,66],[70,67],[94,68],[66,69],[65,56],[95,70],[67,71],[72,72],[73,1],[76,72],[63,1],[99,73],[89,74],[80,75],[81,76],[83,77],[79,78],[82,79],[92,56],[74,80],[75,81],[84,82],[64,83],[87,74],[86,72],[90,1],[93,84],[50,85],[47,86],[46,1],[49,87],[48,88]],"latestChangedDtsFile":"./writer/index.d.ts","version":"5.9.2"}
package/dist/index.d.ts DELETED
@@ -1,2 +0,0 @@
1
- export * from './mapper';
2
- export * from './writer';
package/dist/index.js DELETED
@@ -1,19 +0,0 @@
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./mapper"), exports);
18
- __exportStar(require("./writer"), exports);
19
- //# sourceMappingURL=index.js.map
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAwB;AACxB,2CAAwB"}
@@ -1,192 +0,0 @@
1
- import type { QueryParams } from '../query-params';
2
- export type { QueryParams } from '../query-params';
3
- /**
4
- * A single database row returned by a SQL driver.
5
- * Row keys are SQL column names, which must be strings; symbol keys are not supported.
6
- */
7
- export type Row = Record<string, unknown>;
8
- /**
9
- * Executes SQL and returns the resulting rows.
10
- *
11
- * The mapper keeps this layer DBMS/driver agnostic; callers inject the concrete
12
- * executor that speaks to the desired database.
13
- */
14
- export type QueryExecutor = (sql: string, params: QueryParams) => Promise<Row[]>;
15
- /**
16
- * Defines how a column prefix, key, and optional overrides describe a row mapping.
17
- */
18
- export interface RowMappingOptions<T, K extends Extract<keyof T, string>> {
19
- name: string;
20
- key: K;
21
- prefix?: string;
22
- columnMap?: Partial<Record<Extract<keyof T, string>, string>>;
23
- coerce?: boolean;
24
- /**
25
- * Row mappings rely on a very narrow coercion helper; it only receives the
26
- * raw column value so callers can swap in their own rules.
27
- */
28
- coerceFn?: (value: unknown) => unknown;
29
- }
30
- export type { RowMappingOptions as EntityOptions };
31
- /**
32
- * Describes how a child mapping references a parent mapping.
33
- */
34
- export interface BelongsToOptions {
35
- optional?: boolean;
36
- }
37
- /**
38
- * Controls how raw column names are normalized for simple mapping.
39
- */
40
- export type KeyTransform = 'snake_to_camel' | 'none' | ((column: string) => string);
41
- /**
42
- * Supported type hints for `mapSimpleRows`, controlling how primitive values are coerced before identifier normalization.
43
- */
44
- export type SimpleMapTypeHint = 'string' | 'number' | 'boolean' | 'date' | 'bigint';
45
- /**
46
- * Options that influence simple (duck-typed) row mapping.
47
- */
48
- export interface MapperOptions {
49
- keyTransform?: KeyTransform;
50
- idKeysAsString?: boolean;
51
- typeHints?: Record<string, SimpleMapTypeHint>;
52
- coerceDates?: boolean;
53
- /**
54
- * Receives both the normalized property name and the original column name so callers
55
- * can implement property-specific logic without re-running normalization.
56
- */
57
- coerceFn?: (args: {
58
- key: string;
59
- sourceKey: string;
60
- value: unknown;
61
- }) => unknown;
62
- }
63
- /**
64
- * A mapping-bound reader that executes SQL and enforces row-count contracts.
65
- */
66
- export interface MapperReader<T> {
67
- list(sql: string, params?: QueryParams): Promise<T[]>;
68
- one(sql: string, params?: QueryParams): Promise<T>;
69
- }
70
- /**
71
- * Named presets for simple mapping that avoid implicit inference.
72
- */
73
- export declare const mapperPresets: {
74
- safe(): MapperOptions;
75
- appLike(): MapperOptions;
76
- };
77
- type ParentLink<T> = {
78
- propertyName: string;
79
- parent: RowMapping<any>;
80
- localKey: string;
81
- optional: boolean;
82
- };
83
- type RowContext = {
84
- row: Row;
85
- normalizedColumns: Map<string, string>;
86
- };
87
- /**
88
- * Builds a row mapping that can be consumed by {@link Mapper#query} or {@link mapRows}.
89
- */
90
- export declare class RowMapping<T, K extends Extract<keyof T, string> = Extract<keyof T, string>> {
91
- readonly name: string;
92
- readonly key: K;
93
- readonly prefix: string;
94
- readonly parents: ParentLink<T>[];
95
- private readonly columnMap;
96
- private readonly overrideLookup;
97
- private readonly prefixNormalized;
98
- private readonly prefixLength;
99
- private readonly shouldCoerce;
100
- private readonly coerceFn;
101
- constructor(options: RowMappingOptions<T, K>);
102
- /**
103
- * Registers a parent relationship that will be attached after the current row is mapped.
104
- */
105
- belongsTo<P, PK extends Extract<keyof P, string>>(propertyName: Extract<keyof T, string>, parent: RowMapping<P, PK>, localKey: Extract<keyof T, string>, options?: BelongsToOptions): this;
106
- /**
107
- * Registers a parent relationship with an explicit local key.
108
- */
109
- belongsToWithLocalKey<P, PK extends Extract<keyof P, string>>(propertyName: Extract<keyof T, string>, parent: RowMapping<P, PK>, localKey: Extract<keyof T, string>): this;
110
- /**
111
- * Registers an optional parent relationship with an explicit local key.
112
- */
113
- belongsToOptional<P, PK extends Extract<keyof P, string>>(propertyName: Extract<keyof T, string>, parent: RowMapping<P, PK>, localKey?: Extract<keyof T, string>): this;
114
- matchColumn(columnName: string): string | undefined;
115
- resolveColumnName(propertyName: string): string;
116
- readKeyValue(ctx: RowContext): unknown;
117
- assignFields(target: Record<string, unknown>, ctx: RowContext): void;
118
- private normalizeColumnValue;
119
- }
120
- export { RowMapping as EntityMapping };
121
- /**
122
- * Creates a new row mapping from the provided options.
123
- */
124
- export declare function rowMapping<T, K extends Extract<keyof T, string> = Extract<keyof T, string>>(options: RowMappingOptions<T, K>): RowMapping<T, K>;
125
- /**
126
- * @deprecated Use {@link rowMapping} instead.
127
- */
128
- export declare function entity<T, K extends Extract<keyof T, string> = Extract<keyof T, string>>(options: RowMappingOptions<T, K>): RowMapping<T, K>;
129
- /**
130
- * Builds a column map by prefixing each property with the provided prefix and
131
- * converting property names to snake_case.
132
- */
133
- export declare function columnMapFromPrefix<K extends string>(prefix: string, properties: readonly K[]): Record<K, string>;
134
- /**
135
- * Executes SQL via the provided executor and maps the rows using the supplied mapping.
136
- */
137
- export declare class Mapper {
138
- private readonly executor;
139
- private readonly defaults;
140
- constructor(executor: QueryExecutor, defaults?: MapperOptions | undefined);
141
- query<T>(sql: string, params: QueryParams, mapping: RowMapping<T>): Promise<T[]>;
142
- query<T>(sql: string, params?: QueryParams, options?: MapperOptions): Promise<T[]>;
143
- queryOne<T>(sql: string, params: QueryParams, mapping: RowMapping<T>): Promise<T | undefined>;
144
- queryOne<T>(sql: string, params?: QueryParams, options?: MapperOptions): Promise<T | undefined>;
145
- /**
146
- * Binds a structured row mapping to a reader that exposes `list` and `one`.
147
- */
148
- bind<T>(mapping: RowMapping<T>): MapperReader<T>;
149
- }
150
- /**
151
- * This package maps rows and does not manage DB drivers.
152
- * Inject a query executor rather than wiring connections inside the mapper.
153
- */
154
- export declare function createMapper(executor: QueryExecutor, defaults?: MapperOptions): Mapper;
155
- /**
156
- * Creates a mapper using the supplied executor and user defaults.
157
- * This helper is the recommended entry point when wiring an executor because
158
- * it clearly signals where defaults are configured.
159
- */
160
- export declare function createMapperFromExecutor(executor: QueryExecutor, defaults?: MapperOptions): Mapper;
161
- /**
162
- * Creates a reader-bound mapper using the supplied executor.
163
- * When no overrides are provided, the app-like preset is applied so snake_case
164
- * columns are normalized to camelCase keys by default.
165
- */
166
- export declare function createReader(executor: QueryExecutor, options?: MapperOptions): Mapper;
167
- /**
168
- * Normalizes an executor returning `{ rows }` so it can be consumed by the mapper.
169
- */
170
- export declare function toRowsExecutor(executorOrTarget: ((sql: string, params: QueryParams) => Promise<{
171
- rows: Row[];
172
- } | {
173
- rows: Row[];
174
- rowCount?: number;
175
- } | Row[]>) | {
176
- [key: string]: (...args: unknown[]) => Promise<unknown>;
177
- }, methodName?: string): QueryExecutor;
178
- /**
179
- * Maps a pre-fetched row array into typed objects defined by a row mapping.
180
- * Row values remain `unknown`, and the mapper only applies the general-purpose
181
- * coercion rules declared in `coerceColumnValue`.
182
- */
183
- export declare function mapRows<T>(rows: Row[], mapping: RowMapping<T>): T[];
184
- /**
185
- * Maps pre-fetched rows into typed DTOs using the simple map preset, honoring key transforms, type hints, and optional coercion settings.
186
- *
187
- * @template T Target DTO shape.
188
- * @param rows Rows produced by the SQL executor.
189
- * @param options Optional overrides that control key normalization, coercion, and type hints.
190
- * @returns An array of `T` instances synthesized from `rows`.
191
- */
192
- export declare function mapSimpleRows<T>(rows: Row[], options?: MapperOptions): T[];