litedbmodel 2.2.5 → 2.2.7

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 (116) hide show
  1. package/README.md +145 -86
  2. package/dist/Column.d.ts +17 -4
  3. package/dist/Column.d.ts.map +1 -1
  4. package/dist/Column.js.map +1 -1
  5. package/dist/DBModel.d.ts +13 -14
  6. package/dist/DBModel.d.ts.map +1 -1
  7. package/dist/DBModel.js +20 -21
  8. package/dist/DBModel.js.map +1 -1
  9. package/dist/LazyRelation.d.ts +2 -2
  10. package/dist/LazyRelation.js +2 -2
  11. package/dist/decorators.d.ts +120 -60
  12. package/dist/decorators.d.ts.map +1 -1
  13. package/dist/decorators.js +379 -248
  14. package/dist/decorators.js.map +1 -1
  15. package/dist/index.cjs +283 -217
  16. package/dist/index.d.ts +2 -2
  17. package/dist/index.d.ts.map +1 -1
  18. package/dist/index.js.map +1 -1
  19. package/dist/scp/coltype.d.ts +14 -5
  20. package/dist/scp/coltype.d.ts.map +1 -1
  21. package/dist/scp/coltype.js +35 -36
  22. package/dist/scp/coltype.js.map +1 -1
  23. package/dist/scp/decorator-adapter.d.ts +11 -15
  24. package/dist/scp/decorator-adapter.d.ts.map +1 -1
  25. package/dist/scp/decorator-adapter.js +11 -15
  26. package/dist/scp/decorator-adapter.js.map +1 -1
  27. package/dist/scp/index.cjs +186 -193
  28. package/dist/scp/index.mjs +186 -193
  29. package/dist/scp/makesql/json-array.d.ts +6 -0
  30. package/dist/scp/makesql/json-array.d.ts.map +1 -1
  31. package/dist/scp/makesql/json-array.js +17 -2
  32. package/dist/scp/makesql/json-array.js.map +1 -1
  33. package/dist/scp/makesql/tx.d.ts.map +1 -1
  34. package/dist/scp/makesql/tx.js +1 -3
  35. package/dist/scp/makesql/tx.js.map +1 -1
  36. package/dist/scp/relation.d.ts.map +1 -1
  37. package/dist/scp/relation.js +8 -10
  38. package/dist/scp/relation.js.map +1 -1
  39. package/docs/BENCHMARK.md +3 -3
  40. package/docs/COMPARISON.md +7 -7
  41. package/docs/api/README.md +18 -18
  42. package/docs/api/classes/Conditions.md +1 -1
  43. package/docs/api/classes/DBHandler.md +1 -1
  44. package/docs/api/classes/DBModel.md +82 -82
  45. package/docs/api/classes/LimitExceededError.md +1 -1
  46. package/docs/api/classes/Middleware.md +1 -1
  47. package/docs/api/classes/SqlRaw.md +1 -1
  48. package/docs/api/classes/SqlRef.md +1 -1
  49. package/docs/api/classes/Values.md +1 -1
  50. package/docs/api/classes/WriteInReadOnlyContextError.md +1 -1
  51. package/docs/api/classes/WriteOutsideTransactionError.md +1 -1
  52. package/docs/api/functions/belongsTo.md +10 -4
  53. package/docs/api/functions/closeAllPools.md +1 -1
  54. package/docs/api/functions/condsToRecord.md +2 -2
  55. package/docs/api/functions/createMiddleware.md +1 -1
  56. package/docs/api/functions/createPostgresDriver.md +1 -1
  57. package/docs/api/functions/createSqliteDriver.md +1 -1
  58. package/docs/api/functions/dbCast.md +1 -1
  59. package/docs/api/functions/dbCastIn.md +1 -1
  60. package/docs/api/functions/dbDynamic.md +1 -1
  61. package/docs/api/functions/dbFalse.md +1 -1
  62. package/docs/api/functions/dbImmediate.md +1 -1
  63. package/docs/api/functions/dbIn.md +1 -1
  64. package/docs/api/functions/dbNotNull.md +1 -1
  65. package/docs/api/functions/dbNow.md +1 -1
  66. package/docs/api/functions/dbNull.md +1 -1
  67. package/docs/api/functions/dbRaw.md +1 -1
  68. package/docs/api/functions/dbTrue.md +1 -1
  69. package/docs/api/functions/dbUuid.md +1 -1
  70. package/docs/api/functions/dbUuidIn.md +1 -1
  71. package/docs/api/functions/formatLocalDate.md +1 -1
  72. package/docs/api/functions/formatUTCDate.md +1 -1
  73. package/docs/api/functions/getDBConfig.md +1 -1
  74. package/docs/api/functions/getDBHandler.md +1 -1
  75. package/docs/api/functions/getTransactionConnection.md +1 -1
  76. package/docs/api/functions/getTransactionContext.md +1 -1
  77. package/docs/api/functions/hasMany.md +11 -5
  78. package/docs/api/functions/hasOne.md +10 -4
  79. package/docs/api/functions/initDBHandler.md +1 -1
  80. package/docs/api/functions/isAnySqlFragment.md +1 -1
  81. package/docs/api/functions/isConnectionError.md +1 -1
  82. package/docs/api/functions/isSqlCondition.md +1 -1
  83. package/docs/api/functions/isSqlFragment.md +1 -1
  84. package/docs/api/functions/isSqlRaw.md +1 -1
  85. package/docs/api/functions/isSqlRef.md +1 -1
  86. package/docs/api/functions/isSqlTypedFragment.md +1 -1
  87. package/docs/api/functions/model.md +8 -155
  88. package/docs/api/functions/parentRef.md +1 -1
  89. package/docs/api/functions/sql.md +1 -1
  90. package/docs/api/globals.md +96 -58
  91. package/docs/api/interfaces/Column.md +1 -1
  92. package/docs/api/interfaces/ColumnDecorator.md +81 -0
  93. package/docs/api/interfaces/ColumnOptions.md +6 -10
  94. package/docs/api/interfaces/CreatedMiddlewareClass.md +1 -1
  95. package/docs/api/interfaces/DBConfig.md +1 -1
  96. package/docs/api/interfaces/DBConfigOptions.md +1 -1
  97. package/docs/api/interfaces/DeleteOptions.md +1 -1
  98. package/docs/api/interfaces/InsertOptions.md +1 -1
  99. package/docs/api/interfaces/LimitConfig.md +1 -1
  100. package/docs/api/interfaces/MiddlewareConfig.md +1 -1
  101. package/docs/api/interfaces/ModelClassDecorator.md +64 -0
  102. package/docs/api/interfaces/ModelOptions.md +1 -1
  103. package/docs/api/interfaces/PkeyResult.md +1 -1
  104. package/docs/api/interfaces/RelationDecorator.md +72 -0
  105. package/docs/api/interfaces/SelectOptions.md +1 -1
  106. package/docs/api/interfaces/SqlCondition.md +1 -1
  107. package/docs/api/interfaces/SqlFragment.md +1 -1
  108. package/docs/api/interfaces/SqlTypedFragment.md +1 -1
  109. package/docs/api/interfaces/TransactionOptions.md +1 -1
  110. package/docs/api/interfaces/UpdateManyOptions.md +1 -1
  111. package/docs/api/interfaces/UpdateOptions.md +1 -1
  112. package/docs/api-guide.md +17 -17
  113. package/docs/architecture.md +3 -3
  114. package/docs/sql-tagged-template.md +5 -5
  115. package/eslint-plugin/rules/require-declare-for-relations.js +59 -4
  116. package/package.json +11 -10
package/dist/index.d.ts CHANGED
@@ -10,9 +10,9 @@ export { DBHandler, closeAllPools, initDBHandler, getDBHandler, getDBConfig, cre
10
10
  type DBConfig, type DBConnection, } from './DBHandler';
11
11
  export { DBConditions, DBOrConditions, and, or as _legacyOr, normalizeConditions, type ConditionObject, type ConditionValue } from './DBConditions';
12
12
  export { DBToken, DBImmediateValue, DBNullValue, DBNotNullValue, DBBoolValue, DBArrayValue, DBDynamicValue, DBRawValue, DBTupleIn, DBCast, DBCastArray, DBSubquery, DBExists, DBParentRef, type SubqueryCondition, dbNull, dbNotNull, dbTrue, dbFalse, dbNow, dbIn, dbDynamic, dbRaw, dbImmediate, dbTupleIn, parentRef, dbCast, dbUuid, dbCastIn, dbUuidIn, } from './DBValues';
13
- export { type Column, createColumn, isColumn, type ColumnsOf, type ColumnOf, type ModelOfColumn, Values, Conditions, OrderColumn, isOrderColumn, type OrderColumnOf, type OrderSpec, orderToString, columnsToNames, type CV, type CVs, pairsToRecord, SKIP, type SkipType, type Cond, type CondOf, type CondElement, type CondElementOf, type Conds, type CondsOf, type OrCond, type OrCondOf, isOrCond, condsToRecord, } from './Column';
13
+ export { type Column, createColumn, isColumn, type ColumnsOf, type ColumnOf, type ModelOfColumn, Values, Conditions, OrderColumn, isOrderColumn, type OrderColumnOf, type OrderSpec, orderToString, columnsToNames, type CV, type CVs, type WriteValue, pairsToRecord, SKIP, type SkipType, type Cond, type CondOf, type CondElement, type CondElementOf, type Conds, type CondsOf, type OrCond, type OrCondOf, isOrCond, condsToRecord, } from './Column';
14
14
  export { sql, type SqlFragment, type SqlTypedFragment, type SqlCondition, type SqlInterpolation, SqlRaw, SqlRef, isSqlFragment, isSqlTypedFragment, isSqlCondition, isAnySqlFragment, isSqlRaw, isSqlRef, } from './SqlFragment';
15
- export { model, column, hasMany, belongsTo, hasOne, getColumnMeta, getRelationMeta, getModelColumnNames, getModelPropertyNames, type ColumnOptions, type ColumnMeta, type RelationMeta, type RelationType, type KeyPair, type CompositeKeyPairs, type KeysFactory, type RelationDecoratorOptions, } from './decorators';
15
+ export { model, column, hasMany, belongsTo, hasOne, getColumnMeta, getRelationMeta, getModelColumnNames, getModelPropertyNames, type ColumnOptions, type ColumnDecorator, type RelationDecorator, type ModelClassDecorator, type ColumnMeta, type RelationMeta, type RelationType, type KeyPair, type CompositeKeyPairs, type KeysFactory, type RelationDecoratorOptions, } from './decorators';
16
16
  export { castToDatetime, castToBoolean, castToIntegerArray, castToNumericArray, castToStringArray, castToBooleanArray, castToDatetimeArray, castToJson, getTypeCast, setTypeCastImpl, resetTypeCastImpl, type TypeCastFunctions, } from './TypeCast';
17
17
  export { LazyRelationContext, createRelationContext, preloadRelations, type RelationConfig, } from './LazyRelation';
18
18
  export { DBModel as LazyLoadingDBModel } from './DBModel';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;AAEH,+CAA+C;AAC/C,eAAe;AACf,+CAA+C;AAE/C,qCAKmB;AAJjB,kGAAA,OAAO,OAAA;AACP,gHAAA,qBAAqB,OAAA;AACrB,mHAAA,wBAAwB,OAAA;AACxB,+GAAA,oBAAoB,OAAA;AAEtB,yCAUqB;AATnB,sGAAA,SAAS,OAAA;AACT,0GAAA,aAAa,OAAA;AACb,0GAAA,aAAa,OAAA;AACb,yGAAA,YAAY,OAAA;AACZ,wGAAA,WAAW,OAAA;AACX,wHAAA,2BAA2B,OAAA;AAC3B,oHAAA,uBAAuB,OAAA;AAIzB,+CAAoJ;AAA3I,4GAAA,YAAY,OAAA;AAAE,8GAAA,cAAc,OAAA;AAAE,mGAAA,GAAG,OAAA;AAAE,yGAAA,EAAE,OAAa;AAAE,mHAAA,mBAAmB,OAAA;AAEhF,+CAA+C;AAC/C,iBAAiB;AACjB,+CAA+C;AAE/C,uCAmCoB;AAlClB,mGAAA,OAAO,OAAA;AACP,4GAAA,gBAAgB,OAAA;AAChB,uGAAA,WAAW,OAAA;AACX,0GAAA,cAAc,OAAA;AACd,uGAAA,WAAW,OAAA;AACX,wGAAA,YAAY,OAAA;AACZ,0GAAA,cAAc,OAAA;AACd,sGAAA,UAAU,OAAA;AACV,qGAAA,SAAS,OAAA;AACT,uBAAuB;AACvB,kGAAA,MAAM,OAAA;AACN,uGAAA,WAAW,OAAA;AACX,mBAAmB;AACnB,sGAAA,UAAU,OAAA;AACV,oGAAA,QAAQ,OAAA;AACR,uGAAA,WAAW,OAAA;AAEX,oBAAoB;AACpB,kGAAA,MAAM,OAAA;AACN,qGAAA,SAAS,OAAA;AACT,kGAAA,MAAM,OAAA;AACN,mGAAA,OAAO,OAAA;AACP,iGAAA,KAAK,OAAA;AACL,gGAAA,IAAI,OAAA;AACJ,qGAAA,SAAS,OAAA;AACT,iGAAA,KAAK,OAAA;AACL,uGAAA,WAAW,OAAA;AACX,qGAAA,SAAS,OAAA;AACT,qGAAA,SAAS,OAAA;AACT,8BAA8B;AAC9B,kGAAA,MAAM,OAAA;AACN,kGAAA,MAAM,OAAA;AACN,oGAAA,QAAQ,OAAA;AACR,oGAAA,QAAQ,OAAA;AAGV,+CAA+C;AAC/C,uCAAuC;AACvC,+CAA+C;AAE/C,mCAkCkB;AAhChB,sGAAA,YAAY,OAAA;AACZ,kGAAA,QAAQ,OAAA;AAIR,gGAAA,MAAM,OAAA;AACN,oGAAA,UAAU,OAAA;AACV,qGAAA,WAAW,OAAA;AACX,uGAAA,aAAa,OAAA;AAGb,uGAAA,aAAa,OAAA;AACb,wGAAA,cAAc,OAAA;AAKd,uGAAA,aAAa,OAAA;AACb,uCAAuC;AACvC,8FAAA,IAAI,OAAA;AAWJ,kGAAA,QAAQ,OAAA;AACR,uGAAA,aAAa,OAAA;AAEf,+CAA+C;AAC/C,8BAA8B;AAC9B,+CAA+C;AAE/C,6CAcuB;AAbrB,kGAAA,GAAG,OAAA;AAKH,qGAAA,MAAM,OAAA;AACN,qGAAA,MAAM,OAAA;AACN,4GAAA,aAAa,OAAA;AACb,iHAAA,kBAAkB,OAAA;AAClB,6GAAA,cAAc,OAAA;AACd,+GAAA,gBAAgB,OAAA;AAChB,uGAAA,QAAQ,OAAA;AACR,uGAAA,QAAQ,OAAA;AAGV,2CAqBsB;AApBpB,mGAAA,KAAK,OAAA;AACL,oGAAA,MAAM,OAAA;AACN,qGAAA,OAAO,OAAA;AACP,uGAAA,SAAS,OAAA;AACT,oGAAA,MAAM,OAAA;AACN,2GAAA,aAAa,OAAA;AACb,6GAAA,eAAe,OAAA;AACf,iHAAA,mBAAmB,OAAA;AACnB,mHAAA,qBAAqB,OAAA;AAcvB,+CAA+C;AAC/C,mCAAmC;AACnC,+CAA+C;AAE/C,uCAeoB;AAdlB,+DAA+D;AAC/D,0GAAA,cAAc,OAAA;AACd,yGAAA,aAAa,OAAA;AACb,8GAAA,kBAAkB,OAAA;AAClB,8GAAA,kBAAkB,OAAA;AAClB,6GAAA,iBAAiB,OAAA;AACjB,8GAAA,kBAAkB,OAAA;AAClB,+GAAA,mBAAmB,OAAA;AACnB,sGAAA,UAAU,OAAA;AACV,0BAA0B;AAC1B,uGAAA,WAAW,OAAA;AACX,2GAAA,eAAe,OAAA;AACf,6GAAA,iBAAiB,OAAA;AAInB,+CAA+C;AAC/C,yBAAyB;AACzB,+CAA+C;AAE/C,+CAKwB;AAJtB,mHAAA,mBAAmB,OAAA;AACnB,qHAAA,qBAAqB,OAAA;AACrB,gHAAA,gBAAgB,OAAA;AAIlB,iEAAiE;AACjE,qCAA0D;AAAjD,6GAAA,OAAO,OAAsB;AAEtC,+CAA+C;AAC/C,aAAa;AACb,+CAA+C;AAE/C,2CAkBsB;AAjBpB,wGAAA,UAAU,OAAA;AACV,8GAAA,gBAAgB,OAAA;AAkBlB,qBAAqB;AACrB,6CAAqD;AAA5C,mHAAA,oBAAoB,OAAA;AAmB7B,iCAIiB;AAHf,2GAAA,kBAAkB,OAAA;AAClB,qHAAA,4BAA4B,OAAA;AAC5B,oHAAA,2BAA2B,OAAA;AAG7B,+CAA+C;AAC/C,mBAAmB;AACnB,+CAA+C;AAE/C,qCAQmB;AAPjB,yGAAA,cAAc,OAAA;AACd,+GAAA,oBAAoB,OAAA;AACpB,uGAAA,YAAY,OAAA;AACZ,6GAAA,kBAAkB,OAAA;AAMpB,+CAA+C;AAC/C,iBAAiB;AACjB,+CAA+C;AAE/C,uCAA4D;AAAnD,2GAAA,eAAe,OAAA;AAAE,yGAAA,aAAa,OAAA;AAEvC,+CAA+C;AAC/C,6BAA6B;AAC7B,+CAA+C;AAE/C,yDAAwD;AAA/C,sHAAA,iBAAiB,OAAA"}
@@ -54,13 +54,22 @@ export declare function sqlTypeToBcScalar(sqlType: string): BcScalar;
54
54
  * - `'passthrough'` — every other class (float, text, decimal-as-string, json, uuid): the driver
55
55
  * value already matches the outType, so no coercion.
56
56
  */
57
- export type MaterializeClass = 'int32' | 'int64' | 'date' | 'bool' | 'passthrough';
57
+ /**
58
+ * The JS form a read cell is coerced to. `int` is ONE class, not two: behavior-contracts' value model
59
+ * has a single integer type (`int` = a JS `bigint`, checked i64 — `ts/src/canonical.ts`,
60
+ * `ts/src/behavior.ts`), and this library declares INTEGER *and* BIGINT to it as that same `int`
61
+ * ({@link sqlTypeToBcScalar}). Splitting the read by width and handing back a JS `number` for the
62
+ * narrow one and a decimal STRING for the wide one contradicted the type this library had already
63
+ * declared, and undid what the drivers do: they are configured to return every integer as a BigInt
64
+ * (`configurePgDeboxTypeParsers`, `mysqlDeboxPoolOptions`, better-sqlite3 `safeIntegers`).
65
+ */
66
+ export type MaterializeClass = 'int' | 'date' | 'bool' | 'passthrough';
58
67
  /**
59
68
  * Derive the TS read-path {@link MaterializeClass} for a SQL type (spec §4.1 owner de-box). Uses
60
69
  * the SAME normalization + closed-set discipline as {@link sqlTypeToBcScalar} (unknown ⇒ throw),
61
70
  * so a column that types for the bc scalar also types for materialization (and vice-versa). The
62
- * `int` scalar splits int32/int64 by width; `date`/`bool` get their own class; everything else is
63
- * `passthrough`.
71
+ * `int` covers every integer width (bc has one integer type); `date`/`bool` get their own class;
72
+ * everything else is `passthrough`.
64
73
  */
65
74
  export declare function arrayElementType(sqlType: string): string | null;
66
75
  export declare function sqlTypeToMaterializeClass(sqlType: string): MaterializeClass;
@@ -68,8 +77,8 @@ export declare function sqlTypeToMaterializeClass(sqlType: string): MaterializeC
68
77
  * The bc scalar of a de-boxed READ KEY value — the element type a relation key-array (`pluck` → `.as`)
69
78
  * carries when it is bound to `= ANY($1)` / `json_each(?)` (#141, spec §4.1). A key array is an opaque
70
79
  * transport value list, so its bc element tag is the JS type of the READ-materialized key cell, NOT the
71
- * column's `sqlTypeToBcScalar` outType: an `int32` column materializes to a JS `number` (bc `float`),
72
- * a `BIGINT`/`int64` to a decimal STRING (bc `string`), a `date` to a string, a `bool` to a boolean.
80
+ * column's `sqlTypeToBcScalar` outType: an integer column materializes to a JS `bigint` (bc `int`),
81
+ * a `date` to a string, a `bool` to a boolean.
73
82
  * Derived by composing {@link sqlTypeToMaterializeClass} (the read de-box class) with the base scalar,
74
83
  * so it stays the SINGLE type-system SoT — no hand-rolled type table at the relation call site.
75
84
  */
@@ -1 +1 @@
1
- {"version":3,"file":"coltype.d.ts","sourceRoot":"","sources":["../../src/scp/coltype.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,0EAA0E;AAC1E,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;AAEpE;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAQ7D;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ,CAgE3D;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,aAAa,CAAC;AAEnF;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAG/D;AAED,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,gBAAgB,CAoE3E;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ,CAa5D;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAsDhF;AAaD;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;AAE3E;;;;;;;GAOG;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,gBAAgB,GAAG,SAAS,CAAC;AAElG;;;;;GAKG;AACH,wBAAgB,gCAAgC,CAC9C,WAAW,EAAE,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAC5D,mBAAmB,CAKrB;AAED;;;;;;;;GAQG;AACH,wBAAgB,0CAA0C,CACxD,WAAW,EAAE,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAC5D,mBAAmB,CAQrB;AAED;;;;;;GAMG;AACH,wBAAgB,+BAA+B,CAC7C,WAAW,EAAE,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAC5D,kBAAkB,CAmBpB;AAED,mGAAmG;AACnG,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAMzF;AAED;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,SAAS,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAwB/F;AAyCD;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,SAAS,MAAM,EAAE,GAAG,kBAAkB,CAqBnF"}
1
+ {"version":3,"file":"coltype.d.ts","sourceRoot":"","sources":["../../src/scp/coltype.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,0EAA0E;AAC1E,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;AAEpE;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAQ7D;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ,CAgE3D;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH;;;;;;;;GAQG;AACH,MAAM,MAAM,gBAAgB,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,aAAa,CAAC;AAEvE;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAG/D;AAED,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,gBAAgB,CAoE3E;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ,CAY5D;AAYD;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAgDhF;AAaD;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;AAE3E;;;;;;;GAOG;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,gBAAgB,GAAG,SAAS,CAAC;AAElG;;;;;GAKG;AACH,wBAAgB,gCAAgC,CAC9C,WAAW,EAAE,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAC5D,mBAAmB,CAKrB;AAED;;;;;;;;GAQG;AACH,wBAAgB,0CAA0C,CACxD,WAAW,EAAE,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAC5D,mBAAmB,CAQrB;AAED;;;;;;GAMG;AACH,wBAAgB,+BAA+B,CAC7C,WAAW,EAAE,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAC5D,kBAAkB,CAmBpB;AAED,mGAAmG;AACnG,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAMzF;AAED;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,SAAS,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAwB/F;AAyCD;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,SAAS,MAAM,EAAE,GAAG,kBAAkB,CAqBnF"}
@@ -118,8 +118,8 @@ function sqlTypeToBcScalar(sqlType) {
118
118
  * Derive the TS read-path {@link MaterializeClass} for a SQL type (spec §4.1 owner de-box). Uses
119
119
  * the SAME normalization + closed-set discipline as {@link sqlTypeToBcScalar} (unknown ⇒ throw),
120
120
  * so a column that types for the bc scalar also types for materialization (and vice-versa). The
121
- * `int` scalar splits int32/int64 by width; `date`/`bool` get their own class; everything else is
122
- * `passthrough`.
121
+ * `int` covers every integer width (bc has one integer type); `date`/`bool` get their own class;
122
+ * everything else is `passthrough`.
123
123
  */
124
124
  function arrayElementType(sqlType) {
125
125
  const m = /^(.+?)\s*\[\s*\]$/.exec(normalizeSqlTypeToken(sqlType));
@@ -138,8 +138,8 @@ function sqlTypeToMaterializeClass(sqlType) {
138
138
  return 'passthrough';
139
139
  }
140
140
  switch (t) {
141
- // 32-bit int family: JS number holds the full range exactly. The PostgreSQL SERIAL family maps to
142
- // its underlying int width (SERIAL/SERIAL4=int4, SMALLSERIAL/SERIAL2=int2).
141
+ // Integer family. The PostgreSQL SERIAL types are the same integers under an auto-increment
142
+ // default (SERIAL/SERIAL4=int4, SMALLSERIAL/SERIAL2=int2, BIGSERIAL/SERIAL8=int8).
143
143
  case 'INTEGER':
144
144
  case 'INT':
145
145
  case 'SMALLINT':
@@ -151,13 +151,13 @@ function sqlTypeToMaterializeClass(sqlType) {
151
151
  case 'SERIAL4':
152
152
  case 'SMALLSERIAL':
153
153
  case 'SERIAL2':
154
- return 'int32';
155
- // 64-bit int: needs JS bigint for exactness.
156
154
  case 'BIGINT':
157
155
  case 'INT8':
158
156
  case 'BIGSERIAL':
159
157
  case 'SERIAL8':
160
- return 'int64';
158
+ // Every width is bc's one `int`. The declared SQL type still carries the width — it is a column
159
+ // CONSTRAINT, not a separate read type ({@link sqlTypeToBcScalar}: "bigint を別型にしない").
160
+ return 'int';
161
161
  case 'BOOLEAN':
162
162
  case 'BOOL':
163
163
  return 'bool';
@@ -196,18 +196,17 @@ function sqlTypeToMaterializeClass(sqlType) {
196
196
  * The bc scalar of a de-boxed READ KEY value — the element type a relation key-array (`pluck` → `.as`)
197
197
  * carries when it is bound to `= ANY($1)` / `json_each(?)` (#141, spec §4.1). A key array is an opaque
198
198
  * transport value list, so its bc element tag is the JS type of the READ-materialized key cell, NOT the
199
- * column's `sqlTypeToBcScalar` outType: an `int32` column materializes to a JS `number` (bc `float`),
200
- * a `BIGINT`/`int64` to a decimal STRING (bc `string`), a `date` to a string, a `bool` to a boolean.
199
+ * column's `sqlTypeToBcScalar` outType: an integer column materializes to a JS `bigint` (bc `int`),
200
+ * a `date` to a string, a `bool` to a boolean.
201
201
  * Derived by composing {@link sqlTypeToMaterializeClass} (the read de-box class) with the base scalar,
202
202
  * so it stays the SINGLE type-system SoT — no hand-rolled type table at the relation call site.
203
203
  */
204
204
  function keyArrayElemScalar(sqlType) {
205
205
  switch (sqlTypeToMaterializeClass(sqlType)) {
206
- case 'int32':
207
- return 'float'; // materializes to a JS number → bc float
208
- case 'int64':
206
+ case 'int':
207
+ return 'int'; // materializes to a JS bigint → bc int
209
208
  case 'date':
210
- return 'string'; // materializes to a decimal / TZ string → bc string
209
+ return 'string'; // materializes to a TZ string → bc string
211
210
  case 'bool':
212
211
  return 'bool';
213
212
  case 'passthrough':
@@ -215,6 +214,15 @@ function keyArrayElemScalar(sqlType) {
215
214
  return sqlTypeToBcScalar(sqlType) === 'float' ? 'float' : 'string';
216
215
  }
217
216
  }
217
+ /** bc's `int` is a checked i64 (`behavior-contracts` #272): a wider value is outside the value model. */
218
+ const I64_MIN = -(2n ** 63n);
219
+ const I64_MAX = 2n ** 63n - 1n;
220
+ function checkI64(v) {
221
+ if (v < I64_MIN || v > I64_MAX) {
222
+ throw new Error(`materialize int: ${v} is outside the i64 range behavior-contracts' \`int\` admits`);
223
+ }
224
+ return v;
225
+ }
218
226
  /**
219
227
  * Coerce ONE raw driver cell to the JS form its {@link MaterializeClass} declares (issue #59 TS
220
228
  * read-path de-box). NULL passes through (nullable columns). This is driver-agnostic: it accepts
@@ -231,38 +239,29 @@ function materializeCell(value, klass) {
231
239
  if (value === null || value === undefined)
232
240
  return value;
233
241
  switch (klass) {
234
- case 'int64': {
235
- // BIGINT → a value-preserving decimal STRING (exact + JSON-safe; a JS bigint throws in
236
- // JSON.stringify, a JS number rounds past 2^53). Accept each driver's exact form.
242
+ case 'int': {
243
+ // An integer column reads back as a JS `bigint` — behavior-contracts' `int`, checked i64. The
244
+ // drivers already hand one over; accept the other exact forms a driver may still produce, and
245
+ // refuse anything that has ALREADY lost the value before it got here.
237
246
  if (typeof value === 'bigint')
238
- return value.toString();
247
+ return checkI64(value);
239
248
  if (typeof value === 'string') {
240
249
  if (!/^-?\d+$/.test(value))
241
- throw new Error(`materialize int64: driver returned a non-integer string '${value}'`);
242
- return value; // already the exact decimal string (pg int8 / mysql2 bigNumberStrings)
250
+ throw new Error(`materialize int: driver returned a non-integer string '${value}'`);
251
+ return checkI64(BigInt(value)); // pg int8-as-string / mysql2 bigNumberStrings
243
252
  }
244
253
  if (typeof value === 'number') {
245
254
  if (!Number.isInteger(value))
246
- throw new Error(`materialize int64: driver returned a non-integer number ${value} for a 64-bit int column`);
247
- // A JS number past 2^53 already lost precision at the driver boundary; that is exactly the
248
- // hole this de-box closes, so a number here means the driver was NOT put in exact mode.
255
+ throw new Error(`materialize int: driver returned a non-integer number ${value} for an integer column`);
249
256
  if (!Number.isSafeInteger(value)) {
250
- throw new Error(`materialize int64: driver returned an UNSAFE JS number ${value} for a 64-bit int column — ` +
251
- `precision was already lost before materialization (the driver must return int8 as string/bigint, ` +
252
- `not a rounded double). Configure the driver (better-sqlite3 safeIntegers / mysql2 supportBigNumbers+bigNumberStrings / pg int8-as-string).`);
257
+ throw new Error(`materialize int: driver returned an UNSAFE JS number ${value} for an integer column — ` +
258
+ `precision was already lost before materialization (the driver must return integers as ` +
259
+ `bigint/string, not a rounded double). Configure the driver (better-sqlite3 safeIntegers / ` +
260
+ `mysql2 supportBigNumbers+bigNumberStrings / pg int-as-bigint).`);
253
261
  }
254
- return value.toString(); // a small BIGINT value that fit safely — stringify for a uniform exact string
262
+ return BigInt(value);
255
263
  }
256
- throw new Error(`materialize int64: unexpected driver JS type ${typeof value}`);
257
- }
258
- case 'int32': {
259
- if (typeof value === 'number')
260
- return value;
261
- if (typeof value === 'bigint')
262
- return Number(value);
263
- if (typeof value === 'string' && /^-?\d+$/.test(value))
264
- return Number(value);
265
- throw new Error(`materialize int32: unexpected driver JS type ${typeof value} (${String(value)})`);
264
+ throw new Error(`materialize int: unexpected driver JS type ${typeof value}`);
266
265
  }
267
266
  case 'date': {
268
267
  if (typeof value === 'string')
@@ -1 +1 @@
1
- {"version":3,"file":"coltype.js","sourceRoot":"","sources":["../../src/scp/coltype.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coltype.js","sourceRoot":"","sources":["../../src/scp/coltype.ts"],"names":[],"mappings":"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"}
@@ -47,8 +47,8 @@ export type KeyTypeResolver = (table: string, column: string) => BcScalar;
47
47
  /**
48
48
  * The decorator's `ColumnMeta.sqlCast` type-family token → the canonical §4.1 SQL-type token the SCP
49
49
  * `static columns` SoT carries (validated by `coltype.ts`). The decorator ALREADY knows the family
50
- * (it set `sqlCast` from the `@column.*` variant / the `design:type` inference — `src/decorators.ts`),
51
- * so this is a pure token normalization, no inference. `coltype.ts` accepts every RHS here:
50
+ * (the model DECLARED it with a `@column.*` variant — `src/decorators.ts`), so this is a pure token
51
+ * normalization, no inference. `coltype.ts` accepts every RHS here:
52
52
  * BOOLEAN/BIGINT/TIMESTAMP/DATE/UUID/JSONB are scalar; the array tokens de-box as `passthrough`
53
53
  * (`sqlTypeToMaterializeClass`).
54
54
  *
@@ -63,15 +63,12 @@ export type KeyTypeResolver = (table: string, column: string) => BcScalar;
63
63
  */
64
64
  export declare const COLUMN_FAMILY_SQL_TYPE: Readonly<Record<string, string>>;
65
65
  /**
66
- * The LAST-RESORT SQL type for a column that carries NO `sqlCast` family, NO `baseSqlType` (its
67
- * `design:type` is absent — no `emitDecoratorMetadata` — or is an Array/Object family), and NO
68
- * `columnTypes` override. Phase F-2 (#105 option B) made {@link columnSqlType} consult the decorator's
69
- * `baseSqlType` (derived from the field's TS `design:type`: String→TEXT / Number→INTEGER / Boolean→
70
- * BOOLEAN / Date→TIMESTAMP / BigInt→BIGINT) BEFORE this default, so a bare `@column() name: string`
71
- * types as `TEXT` (not `INTEGER`) — the fix for F1's blanket-INTEGER read-de-box defect (it threw
72
- * `materialize int32` on a live string column). This default now only applies when `design:type` is
73
- * genuinely unavailable; a REAL/DECIMAL column (a `Number` that is not INT) is pinned via
74
- * {@link DeriveColumnsOptions.columnTypes} (the escape hatch, unchanged from F1).
66
+ * The LAST-RESORT SQL type for a column that carries NO `sqlCast` family, NO `baseSqlType` and NO
67
+ * `columnTypes` override — `@column.number()`, whose JS `number` does not say whether the column is
68
+ * INTEGER or REAL/DECIMAL. The DBModel read path pins such a column to `TEXT` (passthrough) via
69
+ * {@link DeriveColumnsOptions.columnTypes} before it reaches here, so this default is only taken by a
70
+ * caller that supplies its own metadata; a REAL/DECIMAL column is pinned the same way (the escape
71
+ * hatch, unchanged from F1).
75
72
  */
76
73
  export declare const DEFAULT_UNCAST_SQL_TYPE = "INTEGER";
77
74
  /** Options for {@link deriveModelColumns}. */
@@ -89,10 +86,9 @@ export interface DeriveColumnsOptions {
89
86
  * option B):
90
87
  * 1. an explicit `columnTypes` override (the REAL/DECIMAL/width escape hatch) wins;
91
88
  * 2. else the family token from {@link COLUMN_FAMILY_SQL_TYPE} (an explicit `@column.*` `sqlCast`);
92
- * 3. else the decorator's `baseSqlType` — derived from the field's TS `design:type` (String→TEXT /
93
- * Number→INTEGER / Boolean→BOOLEAN / Date→TIMESTAMP / BigInt→BIGINT), so a bare `@column()` types
94
- * correctly for the SCP typed-read de-box (the fix for F1's blanket-INTEGER default);
95
- * 4. else {@link DEFAULT_UNCAST_SQL_TYPE} (only when `design:type` is unavailable).
89
+ * 3. else the decorator's `baseSqlType` — the token a cast-free family declares (`@column.text()`
90
+ * → `TEXT`), so it types the SCP typed-read de-box exactly as a cast-carrying family does;
91
+ * 4. else {@link DEFAULT_UNCAST_SQL_TYPE}.
96
92
  * Fail-closed: a family token the mapping does not know, or a produced token `coltype.ts` rejects,
97
93
  * THROWS (naming the column) — never a silent skip (no-assume, no-fallback).
98
94
  */
@@ -1 +1 @@
1
- {"version":3,"file":"decorator-adapter.d.ts","sourceRoot":"","sources":["../../src/scp/decorator-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"decorator-adapter.d.ts","sourceRoot":"","sources":["../../src/scp/decorator-adapter.ts"],"names":[],"mappings":"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"}
@@ -48,8 +48,8 @@ const Column_1 = require("../Column");
48
48
  /**
49
49
  * The decorator's `ColumnMeta.sqlCast` type-family token → the canonical §4.1 SQL-type token the SCP
50
50
  * `static columns` SoT carries (validated by `coltype.ts`). The decorator ALREADY knows the family
51
- * (it set `sqlCast` from the `@column.*` variant / the `design:type` inference — `src/decorators.ts`),
52
- * so this is a pure token normalization, no inference. `coltype.ts` accepts every RHS here:
51
+ * (the model DECLARED it with a `@column.*` variant — `src/decorators.ts`), so this is a pure token
52
+ * normalization, no inference. `coltype.ts` accepts every RHS here:
53
53
  * BOOLEAN/BIGINT/TIMESTAMP/DATE/UUID/JSONB are scalar; the array tokens de-box as `passthrough`
54
54
  * (`sqlTypeToMaterializeClass`).
55
55
  *
@@ -75,15 +75,12 @@ exports.COLUMN_FAMILY_SQL_TYPE = {
75
75
  'boolean[]': 'BOOLEAN[]',
76
76
  };
77
77
  /**
78
- * The LAST-RESORT SQL type for a column that carries NO `sqlCast` family, NO `baseSqlType` (its
79
- * `design:type` is absent — no `emitDecoratorMetadata` — or is an Array/Object family), and NO
80
- * `columnTypes` override. Phase F-2 (#105 option B) made {@link columnSqlType} consult the decorator's
81
- * `baseSqlType` (derived from the field's TS `design:type`: String→TEXT / Number→INTEGER / Boolean→
82
- * BOOLEAN / Date→TIMESTAMP / BigInt→BIGINT) BEFORE this default, so a bare `@column() name: string`
83
- * types as `TEXT` (not `INTEGER`) — the fix for F1's blanket-INTEGER read-de-box defect (it threw
84
- * `materialize int32` on a live string column). This default now only applies when `design:type` is
85
- * genuinely unavailable; a REAL/DECIMAL column (a `Number` that is not INT) is pinned via
86
- * {@link DeriveColumnsOptions.columnTypes} (the escape hatch, unchanged from F1).
78
+ * The LAST-RESORT SQL type for a column that carries NO `sqlCast` family, NO `baseSqlType` and NO
79
+ * `columnTypes` override — `@column.number()`, whose JS `number` does not say whether the column is
80
+ * INTEGER or REAL/DECIMAL. The DBModel read path pins such a column to `TEXT` (passthrough) via
81
+ * {@link DeriveColumnsOptions.columnTypes} before it reaches here, so this default is only taken by a
82
+ * caller that supplies its own metadata; a REAL/DECIMAL column is pinned the same way (the escape
83
+ * hatch, unchanged from F1).
87
84
  */
88
85
  exports.DEFAULT_UNCAST_SQL_TYPE = 'INTEGER';
89
86
  /**
@@ -91,10 +88,9 @@ exports.DEFAULT_UNCAST_SQL_TYPE = 'INTEGER';
91
88
  * option B):
92
89
  * 1. an explicit `columnTypes` override (the REAL/DECIMAL/width escape hatch) wins;
93
90
  * 2. else the family token from {@link COLUMN_FAMILY_SQL_TYPE} (an explicit `@column.*` `sqlCast`);
94
- * 3. else the decorator's `baseSqlType` — derived from the field's TS `design:type` (String→TEXT /
95
- * Number→INTEGER / Boolean→BOOLEAN / Date→TIMESTAMP / BigInt→BIGINT), so a bare `@column()` types
96
- * correctly for the SCP typed-read de-box (the fix for F1's blanket-INTEGER default);
97
- * 4. else {@link DEFAULT_UNCAST_SQL_TYPE} (only when `design:type` is unavailable).
91
+ * 3. else the decorator's `baseSqlType` — the token a cast-free family declares (`@column.text()`
92
+ * → `TEXT`), so it types the SCP typed-read de-box exactly as a cast-carrying family does;
93
+ * 4. else {@link DEFAULT_UNCAST_SQL_TYPE}.
98
94
  * Fail-closed: a family token the mapping does not know, or a produced token `coltype.ts` rejects,
99
95
  * THROWS (naming the column) — never a silent skip (no-assume, no-fallback).
100
96
  */
@@ -1 +1 @@
1
- {"version":3,"file":"decorator-adapter.js","sourceRoot":"","sources":["../../src/scp/decorator-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"decorator-adapter.js","sourceRoot":"","sources":["../../src/scp/decorator-adapter.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;;;AA+FH,sCAgBC;AAYD,gDASC;AAcD,kCAEC;AAkBD,oCAEC;AAwBD,kDASC;AAGD,kDAMC;AAOD,kDAMC;AAQD,0DAgBC;AAGD,kDAUC;AAiBD,kDAMC;AAOD,wCA+BC;AAOD,gDAYC;AAlVD,iDAKwB;AACxB,yCAAsG;AACtG,uCAAmJ;AAInJ,8CAAmG;AACnG,sCAA0D;AAiB1D,mGAAmG;AAEnG;;;;;;;;;;;;;;;;GAgBG;AACU,QAAA,sBAAsB,GAAqC;IACtE,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,SAAS,EAAE,WAAW;IACtB,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,QAAQ;IAClB,OAAO,EAAE,OAAO;IAChB,WAAW,EAAE,WAAW;IACxB,WAAW,EAAE,WAAW;CACzB,CAAC;AAEF;;;;;;;GAOG;AACU,QAAA,uBAAuB,GAAG,SAAS,CAAC;AAajD;;;;;;;;;;GAUG;AACH,SAAgB,aAAa,CAAC,OAAe,EAAE,IAAgB,EAAE,QAAiB;IAChF,MAAM,OAAO,GACX,QAAQ;QACR,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,8BAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/E,IAAI,CAAC,WAAW;QAChB,+BAAuB,CAAC;IAC1B,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS,IAAI,8BAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,SAAS,EAAE,CAAC;QAC/G,MAAM,IAAI,KAAK,CACb,8BAA8B,OAAO,mCAAmC,IAAI,CAAC,OAAO,YAAY;YAC9F,+EAA+E;YAC/E,wBAAwB,OAAO,6BAA6B,CAC/D,CAAC;IACJ,CAAC;IACD,gGAAgG;IAChG,IAAA,mCAAyB,EAAC,OAAO,CAAC,CAAC;IACnC,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;;;GASG;AACH,SAAgB,kBAAkB,CAAC,UAA0B,EAAE,UAAgC,EAAE;IAC/F,MAAM,IAAI,GAAG,IAAA,0BAAa,EAAC,UAAU,CAAC,CAAC;IACvC,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACrD,MAAM,KAAK,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;IACtC,MAAM,IAAI,GAA2B,EAAE,CAAC;IACxC,KAAK,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,aAAa,CAAC,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IACjF,CAAC;IACD,OAAO,EAAE,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;AAC3B,CAAC;AAaD,0GAA0G;AAC1G,SAAgB,WAAW,CAAC,UAA0B;IACpD,OAAO,UAAU,CAAC,UAAU,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;AAChE,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,SAAgB,YAAY,CAAC,UAA0B;IACrD,OAAO,UAAU,CAAC,UAAU,CAAC;AAC/B,CAAC;AAED,mGAAmG;AACnG;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,SAAgB,mBAAmB,CACjC,UAA0B,EAC1B,IAAY,EACZ,OAAiG,EACjG,UAAuB,QAAQ,EAC/B,cAAqC;IAErC,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IAC1E,OAAO,IAAA,sCAAuB,EAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,iBAAiB,CAAC,CAAC;AAC5E,CAAC;AAED,iHAAiH;AACjH,SAAgB,mBAAmB,CACjC,IAAY,EACZ,OAA+B,EAC/B,UAAuB,QAAQ;IAE/B,OAAO,IAAA,sCAAuB,EAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AACzD,CAAC;AAED;;;;GAIG;AACH,SAAgB,mBAAmB,CACjC,IAAY,EACZ,OAAyG,EACzG,UAAuB,QAAQ;IAE/B,OAAO,IAAA,sCAAuB,EAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AACzD,CAAC;AAED;;;;;GAKG;AACH,SAAgB,uBAAuB,CACrC,UAA0B,EAC1B,cAAqC;IAErC,MAAM,OAAO,GAAG,kBAAkB,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IAC/D,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACxD,OAAO,CAAC,KAAa,EAAE,MAAc,EAAE,EAAE;QACvC,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;QACzC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CACb,2CAA2C,KAAK,IAAI,MAAM,wCAAwC;gBAChG,6FAA6F,CAChG,CAAC;QACJ,CAAC;QACD,OAAO,IAAA,4BAAkB,EAAC,OAAO,CAAC,CAAC;IACrC,CAAC,CAAC;AACJ,CAAC;AAED,kIAAkI;AAClI,SAAgB,mBAAmB,CACjC,UAA0B,EAC1B,cAAqC;IAErC,MAAM,OAAO,GAAG,kBAAkB,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IAC/D,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC1C,MAAM,GAAG,GAAG,IAAI,GAAG,EAA+B,CAAC;IACnD,KAAK,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC3F,OAAO,IAAA,yCAA+B,EAAC,GAAG,CAAC,CAAC;AAC9C,CAAC;AAED,uGAAuG;AAEvG;;;;;;;;;;;;GAYG;AACH,SAAgB,mBAAmB,CACjC,UAA0B,EAC1B,kBAAyD,EACzD,UAAuB,QAAQ;IAE/B,OAAO,IAAA,4BAAe,EAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,cAAc,CAAC,GAAG,EAAE,kBAAkB,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC;AACzG,CAAC;AAED;;;;GAIG;AACH,SAAgB,cAAc,CAC5B,GAAiB,EACjB,kBAAyD,EACzD,UAAuB,QAAQ;IAE/B,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;IAC5C,MAAM,WAAW,GAAG,kBAAkB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IAC/D,MAAM,WAAW,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;IAC7C,MAAM,MAAM,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;IAC7C,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,IAAA,sBAAa,EAAC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAe,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAE/F,sFAAsF;IACtF,oGAAoG;IACpG,qGAAqG;IACrG,+CAA+C;IAC/C,MAAM,UAAU,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IAC7C,MAAM,IAAI,GAAG;QACX,IAAI,EAAE,GAAG,CAAC,WAAW;QACrB,IAAI,EAAE,GAAG,CAAC,IAAoB;QAC9B,WAAW;QACX,MAAM;QACN,OAAO;QACP,GAAG,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnD,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzC,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACtF,CAAC;IACF,MAAM,IAAI,GAAiB,MAAM,CAAC,SAAS;QACzC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE;QAC3E,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;IAClF,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;AAC/B,CAAC;AAED;;;;GAIG;AACH,SAAgB,kBAAkB,CAChC,UAA0B,EAC1B,kBAAyD,EACzD,UAAuB,QAAQ,EAC/B,cAAqC;IAErC,MAAM,GAAG,GAA+B,EAAE,CAAC;IAC3C,KAAK,MAAM,GAAG,IAAI,IAAA,4BAAe,EAAC,UAAU,CAAC,EAAE,CAAC;QAC9C,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,cAAc,CAAC,GAAG,EAAE,kBAAkB,EAAE,OAAO,CAAC,CAAC;QAC/E,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAA,4BAAiB,EAAC,IAAI,EAAE,mBAAmB,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC,CAAC;IAC7F,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAWD,0GAA0G;AAC1G,SAAS,SAAS,CAAC,IAAa;IAM9B,MAAM,GAAG,GAAG,IAA0B,CAAC;IACvC,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACxC,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,KAAK,GAAG,GAA4B,CAAC;QAC3C,OAAO;YACL,SAAS,EAAE,IAAI;YACf,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;YAC7C,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;YAC7C,eAAe,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;SACvC,CAAC;IACJ,CAAC;IACD,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,GAA4B,CAAC;IAChD,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,UAAU,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,eAAe,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC;AAC1H,CAAC;AAED,2GAA2G;AAC3G,SAAS,gBAAgB,CAAC,WAA2B;IACnD,MAAM,IAAI,GAAG,IAAA,0BAAa,EAAC,WAAW,CAAC,CAAC;IACxC,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IAClC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;AAC5D,CAAC"}