@milaboratories/pl-model-common 1.25.1 → 1.25.3

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 (288) hide show
  1. package/dist/_virtual/_rolldown/runtime.cjs +29 -0
  2. package/dist/author_marker.d.ts +9 -6
  3. package/dist/base32_encode.cjs +40 -46
  4. package/dist/base32_encode.cjs.map +1 -1
  5. package/dist/base32_encode.js +40 -45
  6. package/dist/base32_encode.js.map +1 -1
  7. package/dist/base64.cjs +5 -4
  8. package/dist/base64.cjs.map +1 -1
  9. package/dist/base64.d.ts +10 -6
  10. package/dist/base64.js +5 -3
  11. package/dist/base64.js.map +1 -1
  12. package/dist/block_state.d.ts +21 -23
  13. package/dist/bmodel/block_config.cjs +9 -10
  14. package/dist/bmodel/block_config.cjs.map +1 -1
  15. package/dist/bmodel/block_config.d.ts +53 -72
  16. package/dist/bmodel/block_config.js +9 -9
  17. package/dist/bmodel/block_config.js.map +1 -1
  18. package/dist/bmodel/code.cjs +7 -6
  19. package/dist/bmodel/code.cjs.map +1 -1
  20. package/dist/bmodel/code.d.ts +17 -13
  21. package/dist/bmodel/code.js +6 -4
  22. package/dist/bmodel/code.js.map +1 -1
  23. package/dist/bmodel/container.d.ts +46 -44
  24. package/dist/bmodel/index.cjs +3 -0
  25. package/dist/bmodel/index.d.ts +5 -6
  26. package/dist/bmodel/index.js +3 -0
  27. package/dist/bmodel/normalization.cjs +90 -106
  28. package/dist/bmodel/normalization.cjs.map +1 -1
  29. package/dist/bmodel/normalization.d.ts +7 -3
  30. package/dist/bmodel/normalization.js +90 -105
  31. package/dist/bmodel/normalization.js.map +1 -1
  32. package/dist/bmodel/types.d.ts +4 -1
  33. package/dist/branding.d.ts +5 -5
  34. package/dist/common_types.d.ts +19 -15
  35. package/dist/driver_kit.d.ts +25 -17
  36. package/dist/drivers/ChunkedStreamReader.cjs +168 -203
  37. package/dist/drivers/ChunkedStreamReader.cjs.map +1 -1
  38. package/dist/drivers/ChunkedStreamReader.d.ts +104 -100
  39. package/dist/drivers/ChunkedStreamReader.js +168 -202
  40. package/dist/drivers/ChunkedStreamReader.js.map +1 -1
  41. package/dist/drivers/blob.cjs +15 -17
  42. package/dist/drivers/blob.cjs.map +1 -1
  43. package/dist/drivers/blob.d.ts +35 -35
  44. package/dist/drivers/blob.js +14 -15
  45. package/dist/drivers/blob.js.map +1 -1
  46. package/dist/drivers/index.cjs +18 -0
  47. package/dist/drivers/index.d.ts +29 -9
  48. package/dist/drivers/index.js +18 -0
  49. package/dist/drivers/interfaces.d.ts +17 -14
  50. package/dist/drivers/log.cjs +4 -3
  51. package/dist/drivers/log.cjs.map +1 -1
  52. package/dist/drivers/log.d.ts +52 -49
  53. package/dist/drivers/log.js +4 -2
  54. package/dist/drivers/log.js.map +1 -1
  55. package/dist/drivers/ls.cjs +16 -19
  56. package/dist/drivers/ls.cjs.map +1 -1
  57. package/dist/drivers/ls.d.ts +73 -76
  58. package/dist/drivers/ls.js +16 -17
  59. package/dist/drivers/ls.js.map +1 -1
  60. package/dist/drivers/pframe/column_filter.d.ts +19 -15
  61. package/dist/drivers/pframe/data_info.cjs +201 -252
  62. package/dist/drivers/pframe/data_info.cjs.map +1 -1
  63. package/dist/drivers/pframe/data_info.d.ts +84 -109
  64. package/dist/drivers/pframe/data_info.js +201 -250
  65. package/dist/drivers/pframe/data_info.js.map +1 -1
  66. package/dist/drivers/pframe/data_types.cjs +38 -63
  67. package/dist/drivers/pframe/data_types.cjs.map +1 -1
  68. package/dist/drivers/pframe/data_types.d.ts +91 -93
  69. package/dist/drivers/pframe/data_types.js +38 -61
  70. package/dist/drivers/pframe/data_types.js.map +1 -1
  71. package/dist/drivers/pframe/driver.cjs +7 -0
  72. package/dist/drivers/pframe/driver.cjs.map +1 -0
  73. package/dist/drivers/pframe/driver.d.ts +50 -45
  74. package/dist/drivers/pframe/driver.js +6 -0
  75. package/dist/drivers/pframe/driver.js.map +1 -0
  76. package/dist/drivers/pframe/filter_spec.d.ts +127 -123
  77. package/dist/drivers/pframe/find_columns.d.ts +21 -17
  78. package/dist/drivers/pframe/index.cjs +15 -0
  79. package/dist/drivers/pframe/index.d.ts +23 -16
  80. package/dist/drivers/pframe/index.js +15 -0
  81. package/dist/drivers/pframe/linker_columns.cjs +184 -238
  82. package/dist/drivers/pframe/linker_columns.cjs.map +1 -1
  83. package/dist/drivers/pframe/linker_columns.d.ts +45 -38
  84. package/dist/drivers/pframe/linker_columns.js +184 -236
  85. package/dist/drivers/pframe/linker_columns.js.map +1 -1
  86. package/dist/drivers/pframe/pframe.d.ts +26 -21
  87. package/dist/drivers/pframe/query/index.cjs +1 -0
  88. package/dist/drivers/pframe/query/index.d.ts +3 -4
  89. package/dist/drivers/pframe/query/index.js +1 -0
  90. package/dist/drivers/pframe/query/query_common.d.ts +205 -247
  91. package/dist/drivers/pframe/query/query_data.d.ts +25 -23
  92. package/dist/drivers/pframe/query/query_spec.d.ts +30 -29
  93. package/dist/drivers/pframe/query/utils.cjs +164 -183
  94. package/dist/drivers/pframe/query/utils.cjs.map +1 -1
  95. package/dist/drivers/pframe/query/utils.d.ts +13 -12
  96. package/dist/drivers/pframe/query/utils.js +164 -181
  97. package/dist/drivers/pframe/query/utils.js.map +1 -1
  98. package/dist/drivers/pframe/spec/anchored.cjs +178 -216
  99. package/dist/drivers/pframe/spec/anchored.cjs.map +1 -1
  100. package/dist/drivers/pframe/spec/anchored.d.ts +53 -49
  101. package/dist/drivers/pframe/spec/anchored.js +176 -214
  102. package/dist/drivers/pframe/spec/anchored.js.map +1 -1
  103. package/dist/drivers/pframe/spec/filtered_column.cjs +8 -7
  104. package/dist/drivers/pframe/spec/filtered_column.cjs.map +1 -1
  105. package/dist/drivers/pframe/spec/filtered_column.d.ts +20 -17
  106. package/dist/drivers/pframe/spec/filtered_column.js +8 -6
  107. package/dist/drivers/pframe/spec/filtered_column.js.map +1 -1
  108. package/dist/drivers/pframe/spec/ids.cjs +16 -14
  109. package/dist/drivers/pframe/spec/ids.cjs.map +1 -1
  110. package/dist/drivers/pframe/spec/ids.d.ts +13 -8
  111. package/dist/drivers/pframe/spec/ids.js +14 -12
  112. package/dist/drivers/pframe/spec/ids.js.map +1 -1
  113. package/dist/drivers/pframe/spec/index.cjs +6 -0
  114. package/dist/drivers/pframe/spec/index.d.ts +6 -7
  115. package/dist/drivers/pframe/spec/index.js +6 -0
  116. package/dist/drivers/pframe/spec/native_id.cjs +16 -16
  117. package/dist/drivers/pframe/spec/native_id.cjs.map +1 -1
  118. package/dist/drivers/pframe/spec/native_id.d.ts +9 -4
  119. package/dist/drivers/pframe/spec/native_id.js +13 -13
  120. package/dist/drivers/pframe/spec/native_id.js.map +1 -1
  121. package/dist/drivers/pframe/spec/selectors.cjs +72 -112
  122. package/dist/drivers/pframe/spec/selectors.cjs.map +1 -1
  123. package/dist/drivers/pframe/spec/selectors.d.ts +99 -94
  124. package/dist/drivers/pframe/spec/selectors.js +72 -110
  125. package/dist/drivers/pframe/spec/selectors.js.map +1 -1
  126. package/dist/drivers/pframe/spec/spec.cjs +282 -324
  127. package/dist/drivers/pframe/spec/spec.cjs.map +1 -1
  128. package/dist/drivers/pframe/spec/spec.d.ts +263 -272
  129. package/dist/drivers/pframe/spec/spec.js +281 -322
  130. package/dist/drivers/pframe/spec/spec.js.map +1 -1
  131. package/dist/drivers/pframe/table.d.ts +28 -24
  132. package/dist/drivers/pframe/table_calculate.cjs +117 -147
  133. package/dist/drivers/pframe/table_calculate.cjs.map +1 -1
  134. package/dist/drivers/pframe/table_calculate.d.ts +219 -220
  135. package/dist/drivers/pframe/table_calculate.js +117 -145
  136. package/dist/drivers/pframe/table_calculate.js.map +1 -1
  137. package/dist/drivers/pframe/table_common.cjs +13 -14
  138. package/dist/drivers/pframe/table_common.cjs.map +1 -1
  139. package/dist/drivers/pframe/table_common.d.ts +24 -19
  140. package/dist/drivers/pframe/table_common.js +13 -13
  141. package/dist/drivers/pframe/table_common.js.map +1 -1
  142. package/dist/drivers/pframe/unique_values.d.ts +23 -18
  143. package/dist/drivers/upload.d.ts +21 -18
  144. package/dist/drivers/urls.cjs +5 -6
  145. package/dist/drivers/urls.cjs.map +1 -1
  146. package/dist/drivers/urls.d.ts +12 -9
  147. package/dist/drivers/urls.js +5 -5
  148. package/dist/drivers/urls.js.map +1 -1
  149. package/dist/errors.cjs +65 -86
  150. package/dist/errors.cjs.map +1 -1
  151. package/dist/errors.d.ts +36 -33
  152. package/dist/errors.js +65 -85
  153. package/dist/errors.js.map +1 -1
  154. package/dist/flags/block_flags.cjs +7 -6
  155. package/dist/flags/block_flags.cjs.map +1 -1
  156. package/dist/flags/block_flags.d.ts +12 -8
  157. package/dist/flags/block_flags.js +7 -5
  158. package/dist/flags/block_flags.js.map +1 -1
  159. package/dist/flags/flag_utils.cjs +69 -108
  160. package/dist/flags/flag_utils.cjs.map +1 -1
  161. package/dist/flags/flag_utils.d.ts +40 -42
  162. package/dist/flags/flag_utils.js +70 -107
  163. package/dist/flags/flag_utils.js.map +1 -1
  164. package/dist/flags/type_utils.d.ts +12 -11
  165. package/dist/httpAuth.cjs +16 -20
  166. package/dist/httpAuth.cjs.map +1 -1
  167. package/dist/httpAuth.d.ts +10 -7
  168. package/dist/httpAuth.js +16 -19
  169. package/dist/httpAuth.js.map +1 -1
  170. package/dist/index.cjs +176 -179
  171. package/dist/index.d.ts +58 -20
  172. package/dist/index.js +37 -34
  173. package/dist/json.cjs +10 -8
  174. package/dist/json.cjs.map +1 -1
  175. package/dist/json.d.ts +18 -18
  176. package/dist/json.js +8 -6
  177. package/dist/json.js.map +1 -1
  178. package/dist/navigation.cjs +3 -2
  179. package/dist/navigation.cjs.map +1 -1
  180. package/dist/navigation.d.ts +18 -21
  181. package/dist/navigation.js +3 -1
  182. package/dist/navigation.js.map +1 -1
  183. package/dist/plid.cjs +16 -20
  184. package/dist/plid.cjs.map +1 -1
  185. package/dist/plid.d.ts +11 -7
  186. package/dist/plid.js +15 -18
  187. package/dist/plid.js.map +1 -1
  188. package/dist/pool/entry.d.ts +11 -11
  189. package/dist/pool/index.d.ts +3 -4
  190. package/dist/pool/query.cjs +21 -43
  191. package/dist/pool/query.cjs.map +1 -1
  192. package/dist/pool/query.d.ts +25 -20
  193. package/dist/pool/query.js +20 -40
  194. package/dist/pool/query.js.map +1 -1
  195. package/dist/pool/spec.cjs +40 -47
  196. package/dist/pool/spec.cjs.map +1 -1
  197. package/dist/pool/spec.d.ts +33 -31
  198. package/dist/pool/spec.js +40 -45
  199. package/dist/pool/spec.js.map +1 -1
  200. package/dist/ref.cjs +51 -71
  201. package/dist/ref.cjs.map +1 -1
  202. package/dist/ref.d.ts +36 -33
  203. package/dist/ref.js +50 -69
  204. package/dist/ref.js.map +1 -1
  205. package/dist/utag.d.ts +18 -14
  206. package/dist/util.cjs +8 -7
  207. package/dist/util.cjs.map +1 -1
  208. package/dist/util.d.ts +5 -2
  209. package/dist/util.js +8 -6
  210. package/dist/util.js.map +1 -1
  211. package/dist/value_or_error.cjs +7 -3
  212. package/dist/value_or_error.cjs.map +1 -1
  213. package/dist/value_or_error.d.ts +9 -6
  214. package/dist/value_or_error.js +7 -2
  215. package/dist/value_or_error.js.map +1 -1
  216. package/package.json +6 -6
  217. package/src/flags/block_flags.ts +2 -1
  218. package/src/flags/flag_utils.ts +0 -22
  219. package/dist/author_marker.d.ts.map +0 -1
  220. package/dist/base32_encode.d.ts +0 -8
  221. package/dist/base32_encode.d.ts.map +0 -1
  222. package/dist/base64.d.ts.map +0 -1
  223. package/dist/block_state.d.ts.map +0 -1
  224. package/dist/bmodel/block_config.d.ts.map +0 -1
  225. package/dist/bmodel/code.d.ts.map +0 -1
  226. package/dist/bmodel/container.d.ts.map +0 -1
  227. package/dist/bmodel/index.d.ts.map +0 -1
  228. package/dist/bmodel/normalization.d.ts.map +0 -1
  229. package/dist/bmodel/types.d.ts.map +0 -1
  230. package/dist/branding.d.ts.map +0 -1
  231. package/dist/common_types.d.ts.map +0 -1
  232. package/dist/driver_kit.d.ts.map +0 -1
  233. package/dist/drivers/ChunkedStreamReader.d.ts.map +0 -1
  234. package/dist/drivers/blob.d.ts.map +0 -1
  235. package/dist/drivers/index.d.ts.map +0 -1
  236. package/dist/drivers/interfaces.d.ts.map +0 -1
  237. package/dist/drivers/log.d.ts.map +0 -1
  238. package/dist/drivers/ls.d.ts.map +0 -1
  239. package/dist/drivers/pframe/column_filter.d.ts.map +0 -1
  240. package/dist/drivers/pframe/data_info.d.ts.map +0 -1
  241. package/dist/drivers/pframe/data_types.d.ts.map +0 -1
  242. package/dist/drivers/pframe/driver.d.ts.map +0 -1
  243. package/dist/drivers/pframe/filter_spec.d.ts.map +0 -1
  244. package/dist/drivers/pframe/find_columns.d.ts.map +0 -1
  245. package/dist/drivers/pframe/index.d.ts.map +0 -1
  246. package/dist/drivers/pframe/linker_columns.d.ts.map +0 -1
  247. package/dist/drivers/pframe/pframe.d.ts.map +0 -1
  248. package/dist/drivers/pframe/query/index.d.ts.map +0 -1
  249. package/dist/drivers/pframe/query/query_common.d.ts.map +0 -1
  250. package/dist/drivers/pframe/query/query_data.d.ts.map +0 -1
  251. package/dist/drivers/pframe/query/query_spec.d.ts.map +0 -1
  252. package/dist/drivers/pframe/query/utils.d.ts.map +0 -1
  253. package/dist/drivers/pframe/spec/anchored.d.ts.map +0 -1
  254. package/dist/drivers/pframe/spec/filtered_column.d.ts.map +0 -1
  255. package/dist/drivers/pframe/spec/ids.d.ts.map +0 -1
  256. package/dist/drivers/pframe/spec/index.d.ts.map +0 -1
  257. package/dist/drivers/pframe/spec/native_id.d.ts.map +0 -1
  258. package/dist/drivers/pframe/spec/selectors.d.ts.map +0 -1
  259. package/dist/drivers/pframe/spec/spec.d.ts.map +0 -1
  260. package/dist/drivers/pframe/table.d.ts.map +0 -1
  261. package/dist/drivers/pframe/table_calculate.d.ts.map +0 -1
  262. package/dist/drivers/pframe/table_common.d.ts.map +0 -1
  263. package/dist/drivers/pframe/type_util.d.ts +0 -5
  264. package/dist/drivers/pframe/type_util.d.ts.map +0 -1
  265. package/dist/drivers/pframe/unique_values.d.ts.map +0 -1
  266. package/dist/drivers/upload.d.ts.map +0 -1
  267. package/dist/drivers/urls.d.ts.map +0 -1
  268. package/dist/errors.d.ts.map +0 -1
  269. package/dist/flags/block_flags.d.ts.map +0 -1
  270. package/dist/flags/flag_utils.d.ts.map +0 -1
  271. package/dist/flags/index.d.ts +0 -4
  272. package/dist/flags/index.d.ts.map +0 -1
  273. package/dist/flags/type_utils.d.ts.map +0 -1
  274. package/dist/httpAuth.d.ts.map +0 -1
  275. package/dist/index.cjs.map +0 -1
  276. package/dist/index.d.ts.map +0 -1
  277. package/dist/index.js.map +0 -1
  278. package/dist/json.d.ts.map +0 -1
  279. package/dist/navigation.d.ts.map +0 -1
  280. package/dist/plid.d.ts.map +0 -1
  281. package/dist/pool/entry.d.ts.map +0 -1
  282. package/dist/pool/index.d.ts.map +0 -1
  283. package/dist/pool/query.d.ts.map +0 -1
  284. package/dist/pool/spec.d.ts.map +0 -1
  285. package/dist/ref.d.ts.map +0 -1
  286. package/dist/utag.d.ts.map +0 -1
  287. package/dist/util.d.ts.map +0 -1
  288. package/dist/value_or_error.d.ts.map +0 -1
package/dist/json.cjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"json.cjs","sources":["../src/json.ts"],"sourcesContent":["import canonicalize from \"canonicalize\";\n\ntype JsonPrimitive = string | number | boolean | null;\n\ntype JsonValue = JsonPrimitive | JsonValue[] | { [key: string]: JsonValue };\n\nexport type JsonSerializable =\n | JsonPrimitive\n | JsonSerializable[]\n | { [key: string]: JsonSerializable }\n | { toJSON(): JsonValue };\n\n// eslint-disable-next-line @typescript-eslint/no-unsafe-function-type\ntype NotAssignableToJson = bigint | symbol | Function;\n\nexport type JsonCompatible<T> = unknown extends T\n ? unknown\n : [T] extends [JsonValue]\n ? T\n : [T] extends [NotAssignableToJson]\n ? never\n : {\n [P in keyof T]: [Exclude<T[P], undefined>] extends [JsonValue]\n ? T[P]\n : [Exclude<T[P], undefined>] extends [NotAssignableToJson]\n ? never\n : JsonCompatible<T[P]>;\n };\n\nexport type StringifiedJson<T = unknown> =\n JsonCompatible<T> extends never\n ? never\n : string & {\n __json_stringified: T;\n };\n\nexport function stringifyJson<T>(value: JsonCompatible<T>): StringifiedJson<T>;\nexport function stringifyJson<T extends JsonSerializable>(value: T): string;\nexport function stringifyJson(value: unknown): string {\n return JSON.stringify(value);\n}\n\nexport type CanonicalizedJson<T = unknown> =\n JsonCompatible<T> extends never\n ? never\n : string & {\n __json_canonicalized: T;\n };\n\nexport function canonicalizeJson<T>(value: JsonCompatible<T>): CanonicalizedJson<T>;\nexport function canonicalizeJson<T extends JsonSerializable>(value: T): string;\nexport function canonicalizeJson(value: unknown): string {\n return canonicalize(value)!;\n}\n\nexport function parseJson<T>(value: StringifiedJson<T> | CanonicalizedJson<T>): T {\n return JSON.parse(value) as T;\n}\n\nexport function bigintReplacer(_key: string, value: unknown): unknown {\n return typeof value === \"bigint\" ? value.toString() : value;\n}\n"],"names":[],"mappings":";;;;AAsCM,SAAU,aAAa,CAAC,KAAc,EAAA;AAC1C,IAAA,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;AAC9B;AAWM,SAAU,gBAAgB,CAAC,KAAc,EAAA;AAC7C,IAAA,OAAO,YAAY,CAAC,KAAK,CAAE;AAC7B;AAEM,SAAU,SAAS,CAAI,KAAgD,EAAA;AAC3E,IAAA,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAM;AAC/B;AAEM,SAAU,cAAc,CAAC,IAAY,EAAE,KAAc,EAAA;AACzD,IAAA,OAAO,OAAO,KAAK,KAAK,QAAQ,GAAG,KAAK,CAAC,QAAQ,EAAE,GAAG,KAAK;AAC7D;;;;;;;"}
1
+ {"version":3,"file":"json.cjs","names":[],"sources":["../src/json.ts"],"sourcesContent":["import canonicalize from \"canonicalize\";\n\ntype JsonPrimitive = string | number | boolean | null;\n\ntype JsonValue = JsonPrimitive | JsonValue[] | { [key: string]: JsonValue };\n\nexport type JsonSerializable =\n | JsonPrimitive\n | JsonSerializable[]\n | { [key: string]: JsonSerializable }\n | { toJSON(): JsonValue };\n\n// eslint-disable-next-line @typescript-eslint/no-unsafe-function-type\ntype NotAssignableToJson = bigint | symbol | Function;\n\nexport type JsonCompatible<T> = unknown extends T\n ? unknown\n : [T] extends [JsonValue]\n ? T\n : [T] extends [NotAssignableToJson]\n ? never\n : {\n [P in keyof T]: [Exclude<T[P], undefined>] extends [JsonValue]\n ? T[P]\n : [Exclude<T[P], undefined>] extends [NotAssignableToJson]\n ? never\n : JsonCompatible<T[P]>;\n };\n\nexport type StringifiedJson<T = unknown> =\n JsonCompatible<T> extends never\n ? never\n : string & {\n __json_stringified: T;\n };\n\nexport function stringifyJson<T>(value: JsonCompatible<T>): StringifiedJson<T>;\nexport function stringifyJson<T extends JsonSerializable>(value: T): string;\nexport function stringifyJson(value: unknown): string {\n return JSON.stringify(value);\n}\n\nexport type CanonicalizedJson<T = unknown> =\n JsonCompatible<T> extends never\n ? never\n : string & {\n __json_canonicalized: T;\n };\n\nexport function canonicalizeJson<T>(value: JsonCompatible<T>): CanonicalizedJson<T>;\nexport function canonicalizeJson<T extends JsonSerializable>(value: T): string;\nexport function canonicalizeJson(value: unknown): string {\n return canonicalize(value)!;\n}\n\nexport function parseJson<T>(value: StringifiedJson<T> | CanonicalizedJson<T>): T {\n return JSON.parse(value) as T;\n}\n\nexport function bigintReplacer(_key: string, value: unknown): unknown {\n return typeof value === \"bigint\" ? value.toString() : value;\n}\n"],"mappings":";;;;;AAsCA,SAAgB,cAAc,OAAwB;AACpD,QAAO,KAAK,UAAU,MAAM;;AAY9B,SAAgB,iBAAiB,OAAwB;AACvD,kCAAoB,MAAM;;AAG5B,SAAgB,UAAa,OAAqD;AAChF,QAAO,KAAK,MAAM,MAAM;;AAG1B,SAAgB,eAAe,MAAc,OAAyB;AACpE,QAAO,OAAO,UAAU,WAAW,MAAM,UAAU,GAAG"}
package/dist/json.d.ts CHANGED
@@ -1,27 +1,27 @@
1
+ //#region src/json.d.ts
1
2
  type JsonPrimitive = string | number | boolean | null;
2
3
  type JsonValue = JsonPrimitive | JsonValue[] | {
3
- [key: string]: JsonValue;
4
+ [key: string]: JsonValue;
4
5
  };
5
- export type JsonSerializable = JsonPrimitive | JsonSerializable[] | {
6
- [key: string]: JsonSerializable;
6
+ type JsonSerializable = JsonPrimitive | JsonSerializable[] | {
7
+ [key: string]: JsonSerializable;
7
8
  } | {
8
- toJSON(): JsonValue;
9
+ toJSON(): JsonValue;
9
10
  };
10
11
  type NotAssignableToJson = bigint | symbol | Function;
11
- export type JsonCompatible<T> = unknown extends T ? unknown : [T] extends [JsonValue] ? T : [T] extends [NotAssignableToJson] ? never : {
12
- [P in keyof T]: [Exclude<T[P], undefined>] extends [JsonValue] ? T[P] : [Exclude<T[P], undefined>] extends [NotAssignableToJson] ? never : JsonCompatible<T[P]>;
12
+ type JsonCompatible<T> = unknown extends T ? unknown : [T] extends [JsonValue] ? T : [T] extends [NotAssignableToJson] ? never : { [P in keyof T]: [Exclude<T[P], undefined>] extends [JsonValue] ? T[P] : [Exclude<T[P], undefined>] extends [NotAssignableToJson] ? never : JsonCompatible<T[P]> };
13
+ type StringifiedJson<T = unknown> = JsonCompatible<T> extends never ? never : string & {
14
+ __json_stringified: T;
13
15
  };
14
- export type StringifiedJson<T = unknown> = JsonCompatible<T> extends never ? never : string & {
15
- __json_stringified: T;
16
+ declare function stringifyJson<T>(value: JsonCompatible<T>): StringifiedJson<T>;
17
+ declare function stringifyJson<T extends JsonSerializable>(value: T): string;
18
+ type CanonicalizedJson<T = unknown> = JsonCompatible<T> extends never ? never : string & {
19
+ __json_canonicalized: T;
16
20
  };
17
- export declare function stringifyJson<T>(value: JsonCompatible<T>): StringifiedJson<T>;
18
- export declare function stringifyJson<T extends JsonSerializable>(value: T): string;
19
- export type CanonicalizedJson<T = unknown> = JsonCompatible<T> extends never ? never : string & {
20
- __json_canonicalized: T;
21
- };
22
- export declare function canonicalizeJson<T>(value: JsonCompatible<T>): CanonicalizedJson<T>;
23
- export declare function canonicalizeJson<T extends JsonSerializable>(value: T): string;
24
- export declare function parseJson<T>(value: StringifiedJson<T> | CanonicalizedJson<T>): T;
25
- export declare function bigintReplacer(_key: string, value: unknown): unknown;
26
- export {};
21
+ declare function canonicalizeJson<T>(value: JsonCompatible<T>): CanonicalizedJson<T>;
22
+ declare function canonicalizeJson<T extends JsonSerializable>(value: T): string;
23
+ declare function parseJson<T>(value: StringifiedJson<T> | CanonicalizedJson<T>): T;
24
+ declare function bigintReplacer(_key: string, value: unknown): unknown;
25
+ //#endregion
26
+ export { CanonicalizedJson, JsonCompatible, JsonSerializable, StringifiedJson, bigintReplacer, canonicalizeJson, parseJson, stringifyJson };
27
27
  //# sourceMappingURL=json.d.ts.map
package/dist/json.js CHANGED
@@ -1,17 +1,19 @@
1
- import canonicalize from 'canonicalize';
1
+ import canonicalize from "canonicalize";
2
2
 
3
+ //#region src/json.ts
3
4
  function stringifyJson(value) {
4
- return JSON.stringify(value);
5
+ return JSON.stringify(value);
5
6
  }
6
7
  function canonicalizeJson(value) {
7
- return canonicalize(value);
8
+ return canonicalize(value);
8
9
  }
9
10
  function parseJson(value) {
10
- return JSON.parse(value);
11
+ return JSON.parse(value);
11
12
  }
12
13
  function bigintReplacer(_key, value) {
13
- return typeof value === "bigint" ? value.toString() : value;
14
+ return typeof value === "bigint" ? value.toString() : value;
14
15
  }
15
16
 
17
+ //#endregion
16
18
  export { bigintReplacer, canonicalizeJson, parseJson, stringifyJson };
17
- //# sourceMappingURL=json.js.map
19
+ //# sourceMappingURL=json.js.map
package/dist/json.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"json.js","sources":["../src/json.ts"],"sourcesContent":["import canonicalize from \"canonicalize\";\n\ntype JsonPrimitive = string | number | boolean | null;\n\ntype JsonValue = JsonPrimitive | JsonValue[] | { [key: string]: JsonValue };\n\nexport type JsonSerializable =\n | JsonPrimitive\n | JsonSerializable[]\n | { [key: string]: JsonSerializable }\n | { toJSON(): JsonValue };\n\n// eslint-disable-next-line @typescript-eslint/no-unsafe-function-type\ntype NotAssignableToJson = bigint | symbol | Function;\n\nexport type JsonCompatible<T> = unknown extends T\n ? unknown\n : [T] extends [JsonValue]\n ? T\n : [T] extends [NotAssignableToJson]\n ? never\n : {\n [P in keyof T]: [Exclude<T[P], undefined>] extends [JsonValue]\n ? T[P]\n : [Exclude<T[P], undefined>] extends [NotAssignableToJson]\n ? never\n : JsonCompatible<T[P]>;\n };\n\nexport type StringifiedJson<T = unknown> =\n JsonCompatible<T> extends never\n ? never\n : string & {\n __json_stringified: T;\n };\n\nexport function stringifyJson<T>(value: JsonCompatible<T>): StringifiedJson<T>;\nexport function stringifyJson<T extends JsonSerializable>(value: T): string;\nexport function stringifyJson(value: unknown): string {\n return JSON.stringify(value);\n}\n\nexport type CanonicalizedJson<T = unknown> =\n JsonCompatible<T> extends never\n ? never\n : string & {\n __json_canonicalized: T;\n };\n\nexport function canonicalizeJson<T>(value: JsonCompatible<T>): CanonicalizedJson<T>;\nexport function canonicalizeJson<T extends JsonSerializable>(value: T): string;\nexport function canonicalizeJson(value: unknown): string {\n return canonicalize(value)!;\n}\n\nexport function parseJson<T>(value: StringifiedJson<T> | CanonicalizedJson<T>): T {\n return JSON.parse(value) as T;\n}\n\nexport function bigintReplacer(_key: string, value: unknown): unknown {\n return typeof value === \"bigint\" ? value.toString() : value;\n}\n"],"names":[],"mappings":";;AAsCM,SAAU,aAAa,CAAC,KAAc,EAAA;AAC1C,IAAA,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;AAC9B;AAWM,SAAU,gBAAgB,CAAC,KAAc,EAAA;AAC7C,IAAA,OAAO,YAAY,CAAC,KAAK,CAAE;AAC7B;AAEM,SAAU,SAAS,CAAI,KAAgD,EAAA;AAC3E,IAAA,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAM;AAC/B;AAEM,SAAU,cAAc,CAAC,IAAY,EAAE,KAAc,EAAA;AACzD,IAAA,OAAO,OAAO,KAAK,KAAK,QAAQ,GAAG,KAAK,CAAC,QAAQ,EAAE,GAAG,KAAK;AAC7D;;;;"}
1
+ {"version":3,"file":"json.js","names":[],"sources":["../src/json.ts"],"sourcesContent":["import canonicalize from \"canonicalize\";\n\ntype JsonPrimitive = string | number | boolean | null;\n\ntype JsonValue = JsonPrimitive | JsonValue[] | { [key: string]: JsonValue };\n\nexport type JsonSerializable =\n | JsonPrimitive\n | JsonSerializable[]\n | { [key: string]: JsonSerializable }\n | { toJSON(): JsonValue };\n\n// eslint-disable-next-line @typescript-eslint/no-unsafe-function-type\ntype NotAssignableToJson = bigint | symbol | Function;\n\nexport type JsonCompatible<T> = unknown extends T\n ? unknown\n : [T] extends [JsonValue]\n ? T\n : [T] extends [NotAssignableToJson]\n ? never\n : {\n [P in keyof T]: [Exclude<T[P], undefined>] extends [JsonValue]\n ? T[P]\n : [Exclude<T[P], undefined>] extends [NotAssignableToJson]\n ? never\n : JsonCompatible<T[P]>;\n };\n\nexport type StringifiedJson<T = unknown> =\n JsonCompatible<T> extends never\n ? never\n : string & {\n __json_stringified: T;\n };\n\nexport function stringifyJson<T>(value: JsonCompatible<T>): StringifiedJson<T>;\nexport function stringifyJson<T extends JsonSerializable>(value: T): string;\nexport function stringifyJson(value: unknown): string {\n return JSON.stringify(value);\n}\n\nexport type CanonicalizedJson<T = unknown> =\n JsonCompatible<T> extends never\n ? never\n : string & {\n __json_canonicalized: T;\n };\n\nexport function canonicalizeJson<T>(value: JsonCompatible<T>): CanonicalizedJson<T>;\nexport function canonicalizeJson<T extends JsonSerializable>(value: T): string;\nexport function canonicalizeJson(value: unknown): string {\n return canonicalize(value)!;\n}\n\nexport function parseJson<T>(value: StringifiedJson<T> | CanonicalizedJson<T>): T {\n return JSON.parse(value) as T;\n}\n\nexport function bigintReplacer(_key: string, value: unknown): unknown {\n return typeof value === \"bigint\" ? value.toString() : value;\n}\n"],"mappings":";;;AAsCA,SAAgB,cAAc,OAAwB;AACpD,QAAO,KAAK,UAAU,MAAM;;AAY9B,SAAgB,iBAAiB,OAAwB;AACvD,QAAO,aAAa,MAAM;;AAG5B,SAAgB,UAAa,OAAqD;AAChF,QAAO,KAAK,MAAM,MAAM;;AAG1B,SAAgB,eAAe,MAAc,OAAyB;AACpE,QAAO,OAAO,UAAU,WAAW,MAAM,UAAU,GAAG"}
@@ -1,6 +1,7 @@
1
- 'use strict';
2
1
 
2
+ //#region src/navigation.ts
3
3
  const DefaultNavigationState = { href: "/" };
4
4
 
5
+ //#endregion
5
6
  exports.DefaultNavigationState = DefaultNavigationState;
6
- //# sourceMappingURL=navigation.cjs.map
7
+ //# sourceMappingURL=navigation.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"navigation.cjs","sources":["../src/navigation.ts"],"sourcesContent":["/** Block section visualized as items in left panel block overview */\nexport type BlockSection = BlockSectionLink | BlockSectionDelimiter;\n\n/** Tells the system that specific section from the main UI of this block should\n * be opened */\nexport type BlockSectionLink = {\n /** Potentially there may be multiple section types, i.e. for \"+\" rows and for\n * sections directly opening html from the outputs. */\n readonly type: \"link\";\n\n /** Internal block section identifier */\n readonly href: `/${string}`;\n\n /** Link visual appearance */\n readonly appearance?: BlockSectionLinkAppearance;\n\n /** Visible section title, can also be used in the window header. */\n readonly label: string;\n\n /** Optional text shown as a small badge next to the section */\n readonly badge?: string;\n};\n\n/** Different variants for link section appearance */\nexport type BlockSectionLinkAppearance =\n /** Shows a section of type `link` with a `+` icon and a certain specific style */\n \"add-section\";\n\n/** Create a horizontal line between sections */\nexport type BlockSectionDelimiter = {\n readonly type: \"delimiter\";\n};\n\n/**\n * Part of the block state, representing current navigation information\n * (i.e. currently selected section)\n */\nexport type NavigationState<Href extends `/${string}` = `/${string}`> = {\n readonly href: Href;\n};\n\nexport const DefaultNavigationState: NavigationState = { href: \"/\" };\n"],"names":[],"mappings":";;MAyCa,sBAAsB,GAAoB,EAAE,IAAI,EAAE,GAAG;;;;"}
1
+ {"version":3,"file":"navigation.cjs","names":[],"sources":["../src/navigation.ts"],"sourcesContent":["/** Block section visualized as items in left panel block overview */\nexport type BlockSection = BlockSectionLink | BlockSectionDelimiter;\n\n/** Tells the system that specific section from the main UI of this block should\n * be opened */\nexport type BlockSectionLink = {\n /** Potentially there may be multiple section types, i.e. for \"+\" rows and for\n * sections directly opening html from the outputs. */\n readonly type: \"link\";\n\n /** Internal block section identifier */\n readonly href: `/${string}`;\n\n /** Link visual appearance */\n readonly appearance?: BlockSectionLinkAppearance;\n\n /** Visible section title, can also be used in the window header. */\n readonly label: string;\n\n /** Optional text shown as a small badge next to the section */\n readonly badge?: string;\n};\n\n/** Different variants for link section appearance */\nexport type BlockSectionLinkAppearance =\n /** Shows a section of type `link` with a `+` icon and a certain specific style */\n \"add-section\";\n\n/** Create a horizontal line between sections */\nexport type BlockSectionDelimiter = {\n readonly type: \"delimiter\";\n};\n\n/**\n * Part of the block state, representing current navigation information\n * (i.e. currently selected section)\n */\nexport type NavigationState<Href extends `/${string}` = `/${string}`> = {\n readonly href: Href;\n};\n\nexport const DefaultNavigationState: NavigationState = { href: \"/\" };\n"],"mappings":";;AAyCA,MAAa,yBAA0C,EAAE,MAAM,KAAK"}
@@ -1,34 +1,31 @@
1
+ //#region src/navigation.d.ts
1
2
  /** Block section visualized as items in left panel block overview */
2
- export type BlockSection = BlockSectionLink | BlockSectionDelimiter;
3
+ type BlockSection = BlockSectionLink | BlockSectionDelimiter;
3
4
  /** Tells the system that specific section from the main UI of this block should
4
5
  * be opened */
5
- export type BlockSectionLink = {
6
- /** Potentially there may be multiple section types, i.e. for "+" rows and for
7
- * sections directly opening html from the outputs. */
8
- readonly type: "link";
9
- /** Internal block section identifier */
10
- readonly href: `/${string}`;
11
- /** Link visual appearance */
12
- readonly appearance?: BlockSectionLinkAppearance;
13
- /** Visible section title, can also be used in the window header. */
14
- readonly label: string;
15
- /** Optional text shown as a small badge next to the section */
16
- readonly badge?: string;
6
+ type BlockSectionLink = {
7
+ /** Potentially there may be multiple section types, i.e. for "+" rows and for
8
+ * sections directly opening html from the outputs. */
9
+ readonly type: "link"; /** Internal block section identifier */
10
+ readonly href: `/${string}`; /** Link visual appearance */
11
+ readonly appearance?: BlockSectionLinkAppearance; /** Visible section title, can also be used in the window header. */
12
+ readonly label: string; /** Optional text shown as a small badge next to the section */
13
+ readonly badge?: string;
17
14
  };
18
15
  /** Different variants for link section appearance */
19
- export type BlockSectionLinkAppearance =
20
- /** Shows a section of type `link` with a `+` icon and a certain specific style */
21
- "add-section";
16
+ type BlockSectionLinkAppearance = /** Shows a section of type `link` with a `+` icon and a certain specific style */"add-section";
22
17
  /** Create a horizontal line between sections */
23
- export type BlockSectionDelimiter = {
24
- readonly type: "delimiter";
18
+ type BlockSectionDelimiter = {
19
+ readonly type: "delimiter";
25
20
  };
26
21
  /**
27
22
  * Part of the block state, representing current navigation information
28
23
  * (i.e. currently selected section)
29
24
  */
30
- export type NavigationState<Href extends `/${string}` = `/${string}`> = {
31
- readonly href: Href;
25
+ type NavigationState<Href extends `/${string}` = `/${string}`> = {
26
+ readonly href: Href;
32
27
  };
33
- export declare const DefaultNavigationState: NavigationState;
28
+ declare const DefaultNavigationState: NavigationState;
29
+ //#endregion
30
+ export { BlockSection, BlockSectionDelimiter, BlockSectionLink, BlockSectionLinkAppearance, DefaultNavigationState, NavigationState };
34
31
  //# sourceMappingURL=navigation.d.ts.map
@@ -1,4 +1,6 @@
1
+ //#region src/navigation.ts
1
2
  const DefaultNavigationState = { href: "/" };
2
3
 
4
+ //#endregion
3
5
  export { DefaultNavigationState };
4
- //# sourceMappingURL=navigation.js.map
6
+ //# sourceMappingURL=navigation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"navigation.js","sources":["../src/navigation.ts"],"sourcesContent":["/** Block section visualized as items in left panel block overview */\nexport type BlockSection = BlockSectionLink | BlockSectionDelimiter;\n\n/** Tells the system that specific section from the main UI of this block should\n * be opened */\nexport type BlockSectionLink = {\n /** Potentially there may be multiple section types, i.e. for \"+\" rows and for\n * sections directly opening html from the outputs. */\n readonly type: \"link\";\n\n /** Internal block section identifier */\n readonly href: `/${string}`;\n\n /** Link visual appearance */\n readonly appearance?: BlockSectionLinkAppearance;\n\n /** Visible section title, can also be used in the window header. */\n readonly label: string;\n\n /** Optional text shown as a small badge next to the section */\n readonly badge?: string;\n};\n\n/** Different variants for link section appearance */\nexport type BlockSectionLinkAppearance =\n /** Shows a section of type `link` with a `+` icon and a certain specific style */\n \"add-section\";\n\n/** Create a horizontal line between sections */\nexport type BlockSectionDelimiter = {\n readonly type: \"delimiter\";\n};\n\n/**\n * Part of the block state, representing current navigation information\n * (i.e. currently selected section)\n */\nexport type NavigationState<Href extends `/${string}` = `/${string}`> = {\n readonly href: Href;\n};\n\nexport const DefaultNavigationState: NavigationState = { href: \"/\" };\n"],"names":[],"mappings":"MAyCa,sBAAsB,GAAoB,EAAE,IAAI,EAAE,GAAG;;;;"}
1
+ {"version":3,"file":"navigation.js","names":[],"sources":["../src/navigation.ts"],"sourcesContent":["/** Block section visualized as items in left panel block overview */\nexport type BlockSection = BlockSectionLink | BlockSectionDelimiter;\n\n/** Tells the system that specific section from the main UI of this block should\n * be opened */\nexport type BlockSectionLink = {\n /** Potentially there may be multiple section types, i.e. for \"+\" rows and for\n * sections directly opening html from the outputs. */\n readonly type: \"link\";\n\n /** Internal block section identifier */\n readonly href: `/${string}`;\n\n /** Link visual appearance */\n readonly appearance?: BlockSectionLinkAppearance;\n\n /** Visible section title, can also be used in the window header. */\n readonly label: string;\n\n /** Optional text shown as a small badge next to the section */\n readonly badge?: string;\n};\n\n/** Different variants for link section appearance */\nexport type BlockSectionLinkAppearance =\n /** Shows a section of type `link` with a `+` icon and a certain specific style */\n \"add-section\";\n\n/** Create a horizontal line between sections */\nexport type BlockSectionDelimiter = {\n readonly type: \"delimiter\";\n};\n\n/**\n * Part of the block state, representing current navigation information\n * (i.e. currently selected section)\n */\nexport type NavigationState<Href extends `/${string}` = `/${string}`> = {\n readonly href: Href;\n};\n\nexport const DefaultNavigationState: NavigationState = { href: \"/\" };\n"],"mappings":";AAyCA,MAAa,yBAA0C,EAAE,MAAM,KAAK"}
package/dist/plid.cjs CHANGED
@@ -1,37 +1,33 @@
1
- 'use strict';
2
-
3
- var zod = require('zod');
4
- var base32_encode = require('./base32_encode.cjs');
1
+ const require_runtime = require('./_virtual/_rolldown/runtime.cjs');
2
+ const require_base32_encode = require('./base32_encode.cjs');
3
+ let zod = require("zod");
5
4
 
5
+ //#region src/plid.ts
6
6
  /** Number of raw bytes in the PlId. */
7
7
  const PlIdBytes = 15;
8
8
  /** Characters in string representation */
9
- const PlIdLength = 24; // = 15 bytes * 8 bits / 5 bits per char in base32
10
- const PlId = zod.z
11
- .string()
12
- .length(PlIdLength)
13
- .regex(/[ABCDEFGHIJKLMNOPQRSTUVWXYZ234567]/) // RFC4648
14
- .brand("PlId");
9
+ const PlIdLength = 24;
10
+ const PlId = zod.z.string().length(PlIdLength).regex(/[ABCDEFGHIJKLMNOPQRSTUVWXYZ234567]/).brand("PlId");
15
11
  function uniquePlId() {
16
- const data = new Uint8Array(PlIdBytes);
17
- crypto.getRandomValues(data);
18
- return PlId.parse(base32_encode.base32Encode(data, "RFC4648"));
12
+ const data = new Uint8Array(PlIdBytes);
13
+ crypto.getRandomValues(data);
14
+ return PlId.parse(require_base32_encode.base32Encode(data, "RFC4648"));
19
15
  }
20
16
  function plId(bytes) {
21
- if (bytes.length !== PlIdBytes)
22
- throw new Error(`Wrong number of bytes: ${bytes.length}`);
23
- return PlId.parse(base32_encode.base32Encode(bytes, "RFC4648"));
17
+ if (bytes.length !== PlIdBytes) throw new Error(`Wrong number of bytes: ${bytes.length}`);
18
+ return PlId.parse(require_base32_encode.base32Encode(bytes, "RFC4648"));
24
19
  }
25
20
  async function digestPlId(data) {
26
- const encoder = new TextEncoder();
27
- const bytes = await crypto.subtle.digest("SHA-256", encoder.encode(data));
28
- return plId(new Uint8Array(bytes.slice(0, 15)));
21
+ const encoder = new TextEncoder();
22
+ const bytes = await crypto.subtle.digest("SHA-256", encoder.encode(data));
23
+ return plId(new Uint8Array(bytes.slice(0, 15)));
29
24
  }
30
25
 
26
+ //#endregion
31
27
  exports.PlId = PlId;
32
28
  exports.PlIdBytes = PlIdBytes;
33
29
  exports.PlIdLength = PlIdLength;
34
30
  exports.digestPlId = digestPlId;
35
31
  exports.plId = plId;
36
32
  exports.uniquePlId = uniquePlId;
37
- //# sourceMappingURL=plid.cjs.map
33
+ //# sourceMappingURL=plid.cjs.map
package/dist/plid.cjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"plid.cjs","sources":["../src/plid.ts"],"sourcesContent":["import { z } from \"zod\";\nimport { base32Encode } from \"./base32_encode\";\n\n/** Number of raw bytes in the PlId. */\nexport const PlIdBytes = 15;\n/** Characters in string representation */\nexport const PlIdLength = 24; // = 15 bytes * 8 bits / 5 bits per char in base32\n\nexport const PlId = z\n .string()\n .length(PlIdLength)\n .regex(/[ABCDEFGHIJKLMNOPQRSTUVWXYZ234567]/) // RFC4648\n .brand(\"PlId\");\nexport type PlId = z.infer<typeof PlId>;\n\nexport function uniquePlId(): PlId {\n const data = new Uint8Array(PlIdBytes);\n crypto.getRandomValues(data);\n return PlId.parse(base32Encode(data, \"RFC4648\"));\n}\n\nexport function plId(bytes: Uint8Array): PlId {\n if (bytes.length !== PlIdBytes) throw new Error(`Wrong number of bytes: ${bytes.length}`);\n return PlId.parse(base32Encode(bytes, \"RFC4648\"));\n}\n\nexport async function digestPlId(data: string): Promise<PlId> {\n const encoder = new TextEncoder();\n const bytes = await crypto.subtle.digest(\"SHA-256\", encoder.encode(data));\n return plId(new Uint8Array(bytes.slice(0, 15)));\n}\n"],"names":["z","base32Encode"],"mappings":";;;;;AAGA;AACO,MAAM,SAAS,GAAG;AACzB;AACO,MAAM,UAAU,GAAG,GAAG;AAEtB,MAAM,IAAI,GAAGA;AACjB,KAAA,MAAM;KACN,MAAM,CAAC,UAAU;AACjB,KAAA,KAAK,CAAC,oCAAoC,CAAC;KAC3C,KAAK,CAAC,MAAM;SAGC,UAAU,GAAA;AACxB,IAAA,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC,SAAS,CAAC;AACtC,IAAA,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC;IAC5B,OAAO,IAAI,CAAC,KAAK,CAACC,0BAAY,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;AAClD;AAEM,SAAU,IAAI,CAAC,KAAiB,EAAA;AACpC,IAAA,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,CAAA,uBAAA,EAA0B,KAAK,CAAC,MAAM,CAAA,CAAE,CAAC;IACzF,OAAO,IAAI,CAAC,KAAK,CAACA,0BAAY,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;AACnD;AAEO,eAAe,UAAU,CAAC,IAAY,EAAA;AAC3C,IAAA,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE;AACjC,IAAA,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AACzE,IAAA,OAAO,IAAI,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AACjD;;;;;;;;;"}
1
+ {"version":3,"file":"plid.cjs","names":["z","base32Encode"],"sources":["../src/plid.ts"],"sourcesContent":["import { z } from \"zod\";\nimport { base32Encode } from \"./base32_encode\";\n\n/** Number of raw bytes in the PlId. */\nexport const PlIdBytes = 15;\n/** Characters in string representation */\nexport const PlIdLength = 24; // = 15 bytes * 8 bits / 5 bits per char in base32\n\nexport const PlId = z\n .string()\n .length(PlIdLength)\n .regex(/[ABCDEFGHIJKLMNOPQRSTUVWXYZ234567]/) // RFC4648\n .brand(\"PlId\");\nexport type PlId = z.infer<typeof PlId>;\n\nexport function uniquePlId(): PlId {\n const data = new Uint8Array(PlIdBytes);\n crypto.getRandomValues(data);\n return PlId.parse(base32Encode(data, \"RFC4648\"));\n}\n\nexport function plId(bytes: Uint8Array): PlId {\n if (bytes.length !== PlIdBytes) throw new Error(`Wrong number of bytes: ${bytes.length}`);\n return PlId.parse(base32Encode(bytes, \"RFC4648\"));\n}\n\nexport async function digestPlId(data: string): Promise<PlId> {\n const encoder = new TextEncoder();\n const bytes = await crypto.subtle.digest(\"SHA-256\", encoder.encode(data));\n return plId(new Uint8Array(bytes.slice(0, 15)));\n}\n"],"mappings":";;;;;;AAIA,MAAa,YAAY;;AAEzB,MAAa,aAAa;AAE1B,MAAa,OAAOA,MACjB,QAAQ,CACR,OAAO,WAAW,CAClB,MAAM,qCAAqC,CAC3C,MAAM,OAAO;AAGhB,SAAgB,aAAmB;CACjC,MAAM,OAAO,IAAI,WAAW,UAAU;AACtC,QAAO,gBAAgB,KAAK;AAC5B,QAAO,KAAK,MAAMC,mCAAa,MAAM,UAAU,CAAC;;AAGlD,SAAgB,KAAK,OAAyB;AAC5C,KAAI,MAAM,WAAW,UAAW,OAAM,IAAI,MAAM,0BAA0B,MAAM,SAAS;AACzF,QAAO,KAAK,MAAMA,mCAAa,OAAO,UAAU,CAAC;;AAGnD,eAAsB,WAAW,MAA6B;CAC5D,MAAM,UAAU,IAAI,aAAa;CACjC,MAAM,QAAQ,MAAM,OAAO,OAAO,OAAO,WAAW,QAAQ,OAAO,KAAK,CAAC;AACzE,QAAO,KAAK,IAAI,WAAW,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC"}
package/dist/plid.d.ts CHANGED
@@ -1,11 +1,15 @@
1
1
  import { z } from "zod";
2
+
3
+ //#region src/plid.d.ts
2
4
  /** Number of raw bytes in the PlId. */
3
- export declare const PlIdBytes = 15;
5
+ declare const PlIdBytes = 15;
4
6
  /** Characters in string representation */
5
- export declare const PlIdLength = 24;
6
- export declare const PlId: z.ZodBranded<z.ZodString, "PlId">;
7
- export type PlId = z.infer<typeof PlId>;
8
- export declare function uniquePlId(): PlId;
9
- export declare function plId(bytes: Uint8Array): PlId;
10
- export declare function digestPlId(data: string): Promise<PlId>;
7
+ declare const PlIdLength = 24;
8
+ declare const PlId: z.ZodBranded<z.ZodString, "PlId">;
9
+ type PlId = z.infer<typeof PlId>;
10
+ declare function uniquePlId(): PlId;
11
+ declare function plId(bytes: Uint8Array): PlId;
12
+ declare function digestPlId(data: string): Promise<PlId>;
13
+ //#endregion
14
+ export { PlId, PlIdBytes, PlIdLength, digestPlId, plId, uniquePlId };
11
15
  //# sourceMappingURL=plid.d.ts.map
package/dist/plid.js CHANGED
@@ -1,30 +1,27 @@
1
- import { z } from 'zod';
2
- import { base32Encode } from './base32_encode.js';
1
+ import { base32Encode } from "./base32_encode.js";
2
+ import { z } from "zod";
3
3
 
4
+ //#region src/plid.ts
4
5
  /** Number of raw bytes in the PlId. */
5
6
  const PlIdBytes = 15;
6
7
  /** Characters in string representation */
7
- const PlIdLength = 24; // = 15 bytes * 8 bits / 5 bits per char in base32
8
- const PlId = z
9
- .string()
10
- .length(PlIdLength)
11
- .regex(/[ABCDEFGHIJKLMNOPQRSTUVWXYZ234567]/) // RFC4648
12
- .brand("PlId");
8
+ const PlIdLength = 24;
9
+ const PlId = z.string().length(PlIdLength).regex(/[ABCDEFGHIJKLMNOPQRSTUVWXYZ234567]/).brand("PlId");
13
10
  function uniquePlId() {
14
- const data = new Uint8Array(PlIdBytes);
15
- crypto.getRandomValues(data);
16
- return PlId.parse(base32Encode(data, "RFC4648"));
11
+ const data = new Uint8Array(PlIdBytes);
12
+ crypto.getRandomValues(data);
13
+ return PlId.parse(base32Encode(data, "RFC4648"));
17
14
  }
18
15
  function plId(bytes) {
19
- if (bytes.length !== PlIdBytes)
20
- throw new Error(`Wrong number of bytes: ${bytes.length}`);
21
- return PlId.parse(base32Encode(bytes, "RFC4648"));
16
+ if (bytes.length !== PlIdBytes) throw new Error(`Wrong number of bytes: ${bytes.length}`);
17
+ return PlId.parse(base32Encode(bytes, "RFC4648"));
22
18
  }
23
19
  async function digestPlId(data) {
24
- const encoder = new TextEncoder();
25
- const bytes = await crypto.subtle.digest("SHA-256", encoder.encode(data));
26
- return plId(new Uint8Array(bytes.slice(0, 15)));
20
+ const encoder = new TextEncoder();
21
+ const bytes = await crypto.subtle.digest("SHA-256", encoder.encode(data));
22
+ return plId(new Uint8Array(bytes.slice(0, 15)));
27
23
  }
28
24
 
25
+ //#endregion
29
26
  export { PlId, PlIdBytes, PlIdLength, digestPlId, plId, uniquePlId };
30
- //# sourceMappingURL=plid.js.map
27
+ //# sourceMappingURL=plid.js.map
package/dist/plid.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"plid.js","sources":["../src/plid.ts"],"sourcesContent":["import { z } from \"zod\";\nimport { base32Encode } from \"./base32_encode\";\n\n/** Number of raw bytes in the PlId. */\nexport const PlIdBytes = 15;\n/** Characters in string representation */\nexport const PlIdLength = 24; // = 15 bytes * 8 bits / 5 bits per char in base32\n\nexport const PlId = z\n .string()\n .length(PlIdLength)\n .regex(/[ABCDEFGHIJKLMNOPQRSTUVWXYZ234567]/) // RFC4648\n .brand(\"PlId\");\nexport type PlId = z.infer<typeof PlId>;\n\nexport function uniquePlId(): PlId {\n const data = new Uint8Array(PlIdBytes);\n crypto.getRandomValues(data);\n return PlId.parse(base32Encode(data, \"RFC4648\"));\n}\n\nexport function plId(bytes: Uint8Array): PlId {\n if (bytes.length !== PlIdBytes) throw new Error(`Wrong number of bytes: ${bytes.length}`);\n return PlId.parse(base32Encode(bytes, \"RFC4648\"));\n}\n\nexport async function digestPlId(data: string): Promise<PlId> {\n const encoder = new TextEncoder();\n const bytes = await crypto.subtle.digest(\"SHA-256\", encoder.encode(data));\n return plId(new Uint8Array(bytes.slice(0, 15)));\n}\n"],"names":[],"mappings":";;;AAGA;AACO,MAAM,SAAS,GAAG;AACzB;AACO,MAAM,UAAU,GAAG,GAAG;AAEtB,MAAM,IAAI,GAAG;AACjB,KAAA,MAAM;KACN,MAAM,CAAC,UAAU;AACjB,KAAA,KAAK,CAAC,oCAAoC,CAAC;KAC3C,KAAK,CAAC,MAAM;SAGC,UAAU,GAAA;AACxB,IAAA,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC,SAAS,CAAC;AACtC,IAAA,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC;IAC5B,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;AAClD;AAEM,SAAU,IAAI,CAAC,KAAiB,EAAA;AACpC,IAAA,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,CAAA,uBAAA,EAA0B,KAAK,CAAC,MAAM,CAAA,CAAE,CAAC;IACzF,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;AACnD;AAEO,eAAe,UAAU,CAAC,IAAY,EAAA;AAC3C,IAAA,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE;AACjC,IAAA,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AACzE,IAAA,OAAO,IAAI,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AACjD;;;;"}
1
+ {"version":3,"file":"plid.js","names":[],"sources":["../src/plid.ts"],"sourcesContent":["import { z } from \"zod\";\nimport { base32Encode } from \"./base32_encode\";\n\n/** Number of raw bytes in the PlId. */\nexport const PlIdBytes = 15;\n/** Characters in string representation */\nexport const PlIdLength = 24; // = 15 bytes * 8 bits / 5 bits per char in base32\n\nexport const PlId = z\n .string()\n .length(PlIdLength)\n .regex(/[ABCDEFGHIJKLMNOPQRSTUVWXYZ234567]/) // RFC4648\n .brand(\"PlId\");\nexport type PlId = z.infer<typeof PlId>;\n\nexport function uniquePlId(): PlId {\n const data = new Uint8Array(PlIdBytes);\n crypto.getRandomValues(data);\n return PlId.parse(base32Encode(data, \"RFC4648\"));\n}\n\nexport function plId(bytes: Uint8Array): PlId {\n if (bytes.length !== PlIdBytes) throw new Error(`Wrong number of bytes: ${bytes.length}`);\n return PlId.parse(base32Encode(bytes, \"RFC4648\"));\n}\n\nexport async function digestPlId(data: string): Promise<PlId> {\n const encoder = new TextEncoder();\n const bytes = await crypto.subtle.digest(\"SHA-256\", encoder.encode(data));\n return plId(new Uint8Array(bytes.slice(0, 15)));\n}\n"],"mappings":";;;;;AAIA,MAAa,YAAY;;AAEzB,MAAa,aAAa;AAE1B,MAAa,OAAO,EACjB,QAAQ,CACR,OAAO,WAAW,CAClB,MAAM,qCAAqC,CAC3C,MAAM,OAAO;AAGhB,SAAgB,aAAmB;CACjC,MAAM,OAAO,IAAI,WAAW,UAAU;AACtC,QAAO,gBAAgB,KAAK;AAC5B,QAAO,KAAK,MAAM,aAAa,MAAM,UAAU,CAAC;;AAGlD,SAAgB,KAAK,OAAyB;AAC5C,KAAI,MAAM,WAAW,UAAW,OAAM,IAAI,MAAM,0BAA0B,MAAM,SAAS;AACzF,QAAO,KAAK,MAAM,aAAa,OAAO,UAAU,CAAC;;AAGnD,eAAsB,WAAW,MAA6B;CAC5D,MAAM,UAAU,IAAI,aAAa;CACjC,MAAM,QAAQ,MAAM,OAAO,OAAO,OAAO,WAAW,QAAQ,OAAO,KAAK,CAAC;AACzE,QAAO,KAAK,IAAI,WAAW,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC"}
@@ -1,16 +1,16 @@
1
- import type { PlRef } from "../ref";
1
+ import { PlRef } from "../ref.js";
2
+
3
+ //#region src/pool/entry.d.ts
2
4
  /** Result pool entry */
3
- export type ResultPoolEntry<O> = {
4
- /** Reference that can be passed to args to import the object in workflow */
5
- readonly ref: PlRef;
6
- /** Object. Normally spec or PObject. */
7
- readonly obj: O;
5
+ type ResultPoolEntry<O> = {
6
+ /** Reference that can be passed to args to import the object in workflow */readonly ref: PlRef; /** Object. Normally spec or PObject. */
7
+ readonly obj: O;
8
8
  };
9
9
  /** Collection of results from the result pool */
10
- export type ResultCollection<O> = {
11
- /** List of results from the pool */
12
- readonly entries: ResultPoolEntry<O>[];
13
- /** False means that current collection is not fully loaded due to some computations still taking place */
14
- readonly isComplete: boolean;
10
+ type ResultCollection<O> = {
11
+ /** List of results from the pool */readonly entries: ResultPoolEntry<O>[]; /** False means that current collection is not fully loaded due to some computations still taking place */
12
+ readonly isComplete: boolean;
15
13
  };
14
+ //#endregion
15
+ export { ResultCollection, ResultPoolEntry };
16
16
  //# sourceMappingURL=entry.d.ts.map
@@ -1,4 +1,3 @@
1
- export * from "./entry";
2
- export * from "./spec";
3
- export * from "./query";
4
- //# sourceMappingURL=index.d.ts.map
1
+ import { ResultCollection, ResultPoolEntry } from "./entry.js";
2
+ import { PObject, PObjectId, PObjectSpec, ensurePColumn, extractAllColumns, isPColumn, isPColumnResult, isPColumnSpec, isPColumnSpecResult, mapPObjectData } from "./spec.js";
3
+ import { PSpecPredicate, executePSpecPredicate } from "./query.js";
@@ -1,49 +1,27 @@
1
- 'use strict';
2
-
3
- var spec = require('./spec.cjs');
1
+ const require_spec = require('./spec.cjs');
4
2
 
3
+ //#region src/pool/query.ts
5
4
  function assertNever(x) {
6
- throw new Error("Unexpected object: " + x); // This is ok, because this is a possible runtime error
5
+ throw new Error("Unexpected object: " + x);
7
6
  }
8
- function executePSpecPredicate(predicate, spec$1) {
9
- switch (predicate.type) {
10
- case "and":
11
- for (const operator of predicate.operands)
12
- if (!executePSpecPredicate(operator, spec$1))
13
- return false;
14
- return true;
15
- case "or":
16
- for (const operator of predicate.operands)
17
- if (executePSpecPredicate(operator, spec$1))
18
- return true;
19
- return false;
20
- case "not":
21
- return !executePSpecPredicate(predicate.operand, spec$1);
22
- case "name":
23
- return spec.isPColumnSpec(spec$1) && spec$1.name === predicate.name;
24
- case "name_pattern":
25
- return spec.isPColumnSpec(spec$1) && Boolean(spec$1.name.match(predicate.pattern));
26
- case "annotation":
27
- return (spec.isPColumnSpec(spec$1) &&
28
- spec$1.annotations !== undefined &&
29
- spec$1.annotations[predicate.annotation] === predicate.value);
30
- case "annotation_pattern":
31
- return (spec.isPColumnSpec(spec$1) &&
32
- spec$1.annotations !== undefined &&
33
- spec$1.annotations[predicate.annotation] !== undefined &&
34
- Boolean(spec$1.annotations[predicate.annotation].match(predicate.pattern)));
35
- case "has_axes":
36
- return (spec.isPColumnSpec(spec$1) &&
37
- predicate.axes.every((matcher) => spec$1.axesSpec.some((axisSpec) => (matcher.type === undefined || matcher.type === axisSpec.type) &&
38
- (matcher.name === undefined || matcher.name === axisSpec.name) &&
39
- (matcher.domain === undefined ||
40
- Object.keys(matcher.domain).length === 0 ||
41
- (axisSpec.domain !== undefined &&
42
- Object.entries(matcher.domain).every(([domain, domainValue]) => axisSpec.domain[domain] === domainValue))))));
43
- default:
44
- assertNever(predicate);
45
- }
7
+ function executePSpecPredicate(predicate, spec) {
8
+ switch (predicate.type) {
9
+ case "and":
10
+ for (const operator of predicate.operands) if (!executePSpecPredicate(operator, spec)) return false;
11
+ return true;
12
+ case "or":
13
+ for (const operator of predicate.operands) if (executePSpecPredicate(operator, spec)) return true;
14
+ return false;
15
+ case "not": return !executePSpecPredicate(predicate.operand, spec);
16
+ case "name": return require_spec.isPColumnSpec(spec) && spec.name === predicate.name;
17
+ case "name_pattern": return require_spec.isPColumnSpec(spec) && Boolean(spec.name.match(predicate.pattern));
18
+ case "annotation": return require_spec.isPColumnSpec(spec) && spec.annotations !== void 0 && spec.annotations[predicate.annotation] === predicate.value;
19
+ case "annotation_pattern": return require_spec.isPColumnSpec(spec) && spec.annotations !== void 0 && spec.annotations[predicate.annotation] !== void 0 && Boolean(spec.annotations[predicate.annotation].match(predicate.pattern));
20
+ case "has_axes": return require_spec.isPColumnSpec(spec) && predicate.axes.every((matcher) => spec.axesSpec.some((axisSpec) => (matcher.type === void 0 || matcher.type === axisSpec.type) && (matcher.name === void 0 || matcher.name === axisSpec.name) && (matcher.domain === void 0 || Object.keys(matcher.domain).length === 0 || axisSpec.domain !== void 0 && Object.entries(matcher.domain).every(([domain, domainValue]) => axisSpec.domain[domain] === domainValue))));
21
+ default: assertNever(predicate);
22
+ }
46
23
  }
47
24
 
25
+ //#endregion
48
26
  exports.executePSpecPredicate = executePSpecPredicate;
49
- //# sourceMappingURL=query.cjs.map
27
+ //# sourceMappingURL=query.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"query.cjs","sources":["../../src/pool/query.ts"],"sourcesContent":["import type { AxisId } from \"../drivers\";\nimport type { PObjectSpec } from \"./spec\";\nimport { isPColumnSpec } from \"./spec\";\n\nexport type PSpecPredicate =\n | {\n type: \"and\" | \"or\";\n operands: PSpecPredicate[];\n }\n | {\n type: \"not\";\n operand: PSpecPredicate;\n }\n | {\n type: \"name\";\n name: string;\n }\n | {\n type: \"name_pattern\";\n pattern: string;\n }\n | {\n type: \"annotation\";\n annotation: string;\n value: string;\n }\n | {\n type: \"annotation_pattern\";\n annotation: string;\n pattern: string;\n }\n | {\n type: \"has_axes\";\n axes: Partial<AxisId>[];\n };\n\nfunction assertNever(x: never): never {\n throw new Error(\"Unexpected object: \" + x); // This is ok, because this is a possible runtime error\n}\n\nexport function executePSpecPredicate(predicate: PSpecPredicate, spec: PObjectSpec): boolean {\n switch (predicate.type) {\n case \"and\":\n for (const operator of predicate.operands)\n if (!executePSpecPredicate(operator, spec)) return false;\n return true;\n case \"or\":\n for (const operator of predicate.operands)\n if (executePSpecPredicate(operator, spec)) return true;\n return false;\n case \"not\":\n return !executePSpecPredicate(predicate.operand, spec);\n case \"name\":\n return isPColumnSpec(spec) && spec.name === predicate.name;\n case \"name_pattern\":\n return isPColumnSpec(spec) && Boolean(spec.name.match(predicate.pattern));\n case \"annotation\":\n return (\n isPColumnSpec(spec) &&\n spec.annotations !== undefined &&\n spec.annotations[predicate.annotation] === predicate.value\n );\n case \"annotation_pattern\":\n return (\n isPColumnSpec(spec) &&\n spec.annotations !== undefined &&\n spec.annotations[predicate.annotation] !== undefined &&\n Boolean(spec.annotations[predicate.annotation].match(predicate.pattern))\n );\n case \"has_axes\":\n return (\n isPColumnSpec(spec) &&\n predicate.axes.every((matcher) =>\n spec.axesSpec.some(\n (axisSpec) =>\n (matcher.type === undefined || matcher.type === axisSpec.type) &&\n (matcher.name === undefined || matcher.name === axisSpec.name) &&\n (matcher.domain === undefined ||\n Object.keys(matcher.domain).length === 0 ||\n (axisSpec.domain !== undefined &&\n Object.entries(matcher.domain).every(\n ([domain, domainValue]) => axisSpec.domain![domain] === domainValue,\n ))),\n ),\n )\n );\n default:\n assertNever(predicate);\n }\n}\n"],"names":["spec","isPColumnSpec"],"mappings":";;;;AAoCA,SAAS,WAAW,CAAC,CAAQ,EAAA;IAC3B,MAAM,IAAI,KAAK,CAAC,qBAAqB,GAAG,CAAC,CAAC,CAAC;AAC7C;AAEM,SAAU,qBAAqB,CAAC,SAAyB,EAAEA,MAAiB,EAAA;AAChF,IAAA,QAAQ,SAAS,CAAC,IAAI;AACpB,QAAA,KAAK,KAAK;AACR,YAAA,KAAK,MAAM,QAAQ,IAAI,SAAS,CAAC,QAAQ;AACvC,gBAAA,IAAI,CAAC,qBAAqB,CAAC,QAAQ,EAAEA,MAAI,CAAC;AAAE,oBAAA,OAAO,KAAK;AAC1D,YAAA,OAAO,IAAI;AACb,QAAA,KAAK,IAAI;AACP,YAAA,KAAK,MAAM,QAAQ,IAAI,SAAS,CAAC,QAAQ;AACvC,gBAAA,IAAI,qBAAqB,CAAC,QAAQ,EAAEA,MAAI,CAAC;AAAE,oBAAA,OAAO,IAAI;AACxD,YAAA,OAAO,KAAK;AACd,QAAA,KAAK,KAAK;YACR,OAAO,CAAC,qBAAqB,CAAC,SAAS,CAAC,OAAO,EAAEA,MAAI,CAAC;AACxD,QAAA,KAAK,MAAM;AACT,YAAA,OAAOC,kBAAa,CAACD,MAAI,CAAC,IAAIA,MAAI,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI;AAC5D,QAAA,KAAK,cAAc;AACjB,YAAA,OAAOC,kBAAa,CAACD,MAAI,CAAC,IAAI,OAAO,CAACA,MAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;AAC3E,QAAA,KAAK,YAAY;AACf,YAAA,QACEC,kBAAa,CAACD,MAAI,CAAC;gBACnBA,MAAI,CAAC,WAAW,KAAK,SAAS;AAC9B,gBAAAA,MAAI,CAAC,WAAW,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,SAAS,CAAC,KAAK;AAE9D,QAAA,KAAK,oBAAoB;AACvB,YAAA,QACEC,kBAAa,CAACD,MAAI,CAAC;gBACnBA,MAAI,CAAC,WAAW,KAAK,SAAS;gBAC9BA,MAAI,CAAC,WAAW,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,SAAS;AACpD,gBAAA,OAAO,CAACA,MAAI,CAAC,WAAW,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;AAE5E,QAAA,KAAK,UAAU;AACb,YAAA,QACEC,kBAAa,CAACD,MAAI,CAAC;AACnB,gBAAA,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,KAC3BA,MAAI,CAAC,QAAQ,CAAC,IAAI,CAChB,CAAC,QAAQ,KACP,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI;AAC7D,qBAAC,OAAO,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,CAAC;AAC9D,qBAAC,OAAO,CAAC,MAAM,KAAK,SAAS;wBAC3B,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC;AACxC,yBAAC,QAAQ,CAAC,MAAM,KAAK,SAAS;AAC5B,4BAAA,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CAClC,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,KAAK,QAAQ,CAAC,MAAO,CAAC,MAAM,CAAC,KAAK,WAAW,CACpE,CAAC,CAAC,CACV,CACF;AAEL,QAAA;YACE,WAAW,CAAC,SAAS,CAAC;;AAE5B;;;;"}
1
+ {"version":3,"file":"query.cjs","names":["isPColumnSpec"],"sources":["../../src/pool/query.ts"],"sourcesContent":["import type { AxisId } from \"../drivers\";\nimport type { PObjectSpec } from \"./spec\";\nimport { isPColumnSpec } from \"./spec\";\n\nexport type PSpecPredicate =\n | {\n type: \"and\" | \"or\";\n operands: PSpecPredicate[];\n }\n | {\n type: \"not\";\n operand: PSpecPredicate;\n }\n | {\n type: \"name\";\n name: string;\n }\n | {\n type: \"name_pattern\";\n pattern: string;\n }\n | {\n type: \"annotation\";\n annotation: string;\n value: string;\n }\n | {\n type: \"annotation_pattern\";\n annotation: string;\n pattern: string;\n }\n | {\n type: \"has_axes\";\n axes: Partial<AxisId>[];\n };\n\nfunction assertNever(x: never): never {\n throw new Error(\"Unexpected object: \" + x); // This is ok, because this is a possible runtime error\n}\n\nexport function executePSpecPredicate(predicate: PSpecPredicate, spec: PObjectSpec): boolean {\n switch (predicate.type) {\n case \"and\":\n for (const operator of predicate.operands)\n if (!executePSpecPredicate(operator, spec)) return false;\n return true;\n case \"or\":\n for (const operator of predicate.operands)\n if (executePSpecPredicate(operator, spec)) return true;\n return false;\n case \"not\":\n return !executePSpecPredicate(predicate.operand, spec);\n case \"name\":\n return isPColumnSpec(spec) && spec.name === predicate.name;\n case \"name_pattern\":\n return isPColumnSpec(spec) && Boolean(spec.name.match(predicate.pattern));\n case \"annotation\":\n return (\n isPColumnSpec(spec) &&\n spec.annotations !== undefined &&\n spec.annotations[predicate.annotation] === predicate.value\n );\n case \"annotation_pattern\":\n return (\n isPColumnSpec(spec) &&\n spec.annotations !== undefined &&\n spec.annotations[predicate.annotation] !== undefined &&\n Boolean(spec.annotations[predicate.annotation].match(predicate.pattern))\n );\n case \"has_axes\":\n return (\n isPColumnSpec(spec) &&\n predicate.axes.every((matcher) =>\n spec.axesSpec.some(\n (axisSpec) =>\n (matcher.type === undefined || matcher.type === axisSpec.type) &&\n (matcher.name === undefined || matcher.name === axisSpec.name) &&\n (matcher.domain === undefined ||\n Object.keys(matcher.domain).length === 0 ||\n (axisSpec.domain !== undefined &&\n Object.entries(matcher.domain).every(\n ([domain, domainValue]) => axisSpec.domain![domain] === domainValue,\n ))),\n ),\n )\n );\n default:\n assertNever(predicate);\n }\n}\n"],"mappings":";;;AAoCA,SAAS,YAAY,GAAiB;AACpC,OAAM,IAAI,MAAM,wBAAwB,EAAE;;AAG5C,SAAgB,sBAAsB,WAA2B,MAA4B;AAC3F,SAAQ,UAAU,MAAlB;EACE,KAAK;AACH,QAAK,MAAM,YAAY,UAAU,SAC/B,KAAI,CAAC,sBAAsB,UAAU,KAAK,CAAE,QAAO;AACrD,UAAO;EACT,KAAK;AACH,QAAK,MAAM,YAAY,UAAU,SAC/B,KAAI,sBAAsB,UAAU,KAAK,CAAE,QAAO;AACpD,UAAO;EACT,KAAK,MACH,QAAO,CAAC,sBAAsB,UAAU,SAAS,KAAK;EACxD,KAAK,OACH,QAAOA,2BAAc,KAAK,IAAI,KAAK,SAAS,UAAU;EACxD,KAAK,eACH,QAAOA,2BAAc,KAAK,IAAI,QAAQ,KAAK,KAAK,MAAM,UAAU,QAAQ,CAAC;EAC3E,KAAK,aACH,QACEA,2BAAc,KAAK,IACnB,KAAK,gBAAgB,UACrB,KAAK,YAAY,UAAU,gBAAgB,UAAU;EAEzD,KAAK,qBACH,QACEA,2BAAc,KAAK,IACnB,KAAK,gBAAgB,UACrB,KAAK,YAAY,UAAU,gBAAgB,UAC3C,QAAQ,KAAK,YAAY,UAAU,YAAY,MAAM,UAAU,QAAQ,CAAC;EAE5E,KAAK,WACH,QACEA,2BAAc,KAAK,IACnB,UAAU,KAAK,OAAO,YACpB,KAAK,SAAS,MACX,cACE,QAAQ,SAAS,UAAa,QAAQ,SAAS,SAAS,UACxD,QAAQ,SAAS,UAAa,QAAQ,SAAS,SAAS,UACxD,QAAQ,WAAW,UAClB,OAAO,KAAK,QAAQ,OAAO,CAAC,WAAW,KACtC,SAAS,WAAW,UACnB,OAAO,QAAQ,QAAQ,OAAO,CAAC,OAC5B,CAAC,QAAQ,iBAAiB,SAAS,OAAQ,YAAY,YACzD,EACR,CACF;EAEL,QACE,aAAY,UAAU"}
@@ -1,28 +1,33 @@
1
- import type { AxisId } from "../drivers";
2
- import type { PObjectSpec } from "./spec";
3
- export type PSpecPredicate = {
4
- type: "and" | "or";
5
- operands: PSpecPredicate[];
1
+ import { PObjectSpec } from "./spec.js";
2
+ import { AxisId } from "../drivers/pframe/spec/spec.js";
3
+ import "../drivers/index.js";
4
+
5
+ //#region src/pool/query.d.ts
6
+ type PSpecPredicate = {
7
+ type: "and" | "or";
8
+ operands: PSpecPredicate[];
6
9
  } | {
7
- type: "not";
8
- operand: PSpecPredicate;
10
+ type: "not";
11
+ operand: PSpecPredicate;
9
12
  } | {
10
- type: "name";
11
- name: string;
13
+ type: "name";
14
+ name: string;
12
15
  } | {
13
- type: "name_pattern";
14
- pattern: string;
16
+ type: "name_pattern";
17
+ pattern: string;
15
18
  } | {
16
- type: "annotation";
17
- annotation: string;
18
- value: string;
19
+ type: "annotation";
20
+ annotation: string;
21
+ value: string;
19
22
  } | {
20
- type: "annotation_pattern";
21
- annotation: string;
22
- pattern: string;
23
+ type: "annotation_pattern";
24
+ annotation: string;
25
+ pattern: string;
23
26
  } | {
24
- type: "has_axes";
25
- axes: Partial<AxisId>[];
27
+ type: "has_axes";
28
+ axes: Partial<AxisId>[];
26
29
  };
27
- export declare function executePSpecPredicate(predicate: PSpecPredicate, spec: PObjectSpec): boolean;
30
+ declare function executePSpecPredicate(predicate: PSpecPredicate, spec: PObjectSpec): boolean;
31
+ //#endregion
32
+ export { PSpecPredicate, executePSpecPredicate };
28
33
  //# sourceMappingURL=query.d.ts.map