@milaboratories/pl-model-common 1.31.1 → 1.32.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (279) hide show
  1. package/dist/_virtual/_rolldown/runtime.cjs +7 -13
  2. package/dist/author_marker.d.ts.map +1 -0
  3. package/dist/base32_encode.cjs +1 -2
  4. package/dist/base32_encode.cjs.map +1 -1
  5. package/dist/base32_encode.js +1 -1
  6. package/dist/base32_encode.js.map +1 -1
  7. package/dist/base64.cjs +1 -2
  8. package/dist/base64.cjs.map +1 -1
  9. package/dist/base64.d.ts.map +1 -0
  10. package/dist/base64.js +1 -1
  11. package/dist/block_state.d.ts.map +1 -0
  12. package/dist/bmodel/block_config.cjs +1 -2
  13. package/dist/bmodel/block_config.cjs.map +1 -1
  14. package/dist/bmodel/block_config.d.ts +0 -1
  15. package/dist/bmodel/block_config.d.ts.map +1 -0
  16. package/dist/bmodel/block_config.js +1 -1
  17. package/dist/bmodel/block_config.js.map +1 -1
  18. package/dist/bmodel/code.cjs +2 -3
  19. package/dist/bmodel/code.cjs.map +1 -1
  20. package/dist/bmodel/code.d.ts +0 -1
  21. package/dist/bmodel/code.d.ts.map +1 -0
  22. package/dist/bmodel/code.js +1 -2
  23. package/dist/bmodel/code.js.map +1 -1
  24. package/dist/bmodel/container.d.ts.map +1 -0
  25. package/dist/bmodel/index.cjs +3 -3
  26. package/dist/bmodel/index.js +3 -3
  27. package/dist/bmodel/normalization.cjs +2 -4
  28. package/dist/bmodel/normalization.cjs.map +1 -1
  29. package/dist/bmodel/normalization.d.ts.map +1 -0
  30. package/dist/bmodel/normalization.js +2 -3
  31. package/dist/bmodel/normalization.js.map +1 -1
  32. package/dist/bmodel/types.d.ts.map +1 -0
  33. package/dist/branding.d.ts.map +1 -0
  34. package/dist/common_types.d.ts.map +1 -0
  35. package/dist/driver_kit.d.ts +0 -1
  36. package/dist/driver_kit.d.ts.map +1 -0
  37. package/dist/drivers/ChunkedStreamReader.cjs +1 -2
  38. package/dist/drivers/ChunkedStreamReader.cjs.map +1 -1
  39. package/dist/drivers/ChunkedStreamReader.d.ts.map +1 -0
  40. package/dist/drivers/ChunkedStreamReader.js +1 -1
  41. package/dist/drivers/ChunkedStreamReader.js.map +1 -1
  42. package/dist/drivers/blob.cjs +2 -3
  43. package/dist/drivers/blob.cjs.map +1 -1
  44. package/dist/drivers/blob.d.ts.map +1 -0
  45. package/dist/drivers/blob.js +1 -2
  46. package/dist/drivers/blob.js.map +1 -1
  47. package/dist/drivers/index.cjs +18 -18
  48. package/dist/drivers/index.d.ts +5 -6
  49. package/dist/drivers/index.js +17 -17
  50. package/dist/drivers/interfaces.d.ts.map +1 -0
  51. package/dist/drivers/log.cjs +11 -4
  52. package/dist/drivers/log.cjs.map +1 -1
  53. package/dist/drivers/log.d.ts +14 -7
  54. package/dist/drivers/log.d.ts.map +1 -0
  55. package/dist/drivers/log.js +11 -4
  56. package/dist/drivers/log.js.map +1 -1
  57. package/dist/drivers/ls.cjs +2 -3
  58. package/dist/drivers/ls.cjs.map +1 -1
  59. package/dist/drivers/ls.d.ts +0 -2
  60. package/dist/drivers/ls.d.ts.map +1 -0
  61. package/dist/drivers/ls.js +1 -2
  62. package/dist/drivers/ls.js.map +1 -1
  63. package/dist/drivers/pframe/column_filter.d.ts.map +1 -0
  64. package/dist/drivers/pframe/data_info.cjs +2 -3
  65. package/dist/drivers/pframe/data_info.cjs.map +1 -1
  66. package/dist/drivers/pframe/data_info.d.ts.map +1 -0
  67. package/dist/drivers/pframe/data_info.js +1 -2
  68. package/dist/drivers/pframe/data_info.js.map +1 -1
  69. package/dist/drivers/pframe/data_types.cjs +4 -5
  70. package/dist/drivers/pframe/data_types.cjs.map +1 -1
  71. package/dist/drivers/pframe/data_types.d.ts.map +1 -0
  72. package/dist/drivers/pframe/data_types.js +3 -4
  73. package/dist/drivers/pframe/data_types.js.map +1 -1
  74. package/dist/drivers/pframe/driver.cjs +1 -2
  75. package/dist/drivers/pframe/driver.cjs.map +1 -1
  76. package/dist/drivers/pframe/driver.d.ts +0 -1
  77. package/dist/drivers/pframe/driver.d.ts.map +1 -0
  78. package/dist/drivers/pframe/driver.js +1 -1
  79. package/dist/drivers/pframe/filter_spec.d.ts.map +1 -0
  80. package/dist/drivers/pframe/find_columns.d.ts.map +1 -0
  81. package/dist/drivers/pframe/index.cjs +15 -15
  82. package/dist/drivers/pframe/index.d.ts +4 -6
  83. package/dist/drivers/pframe/index.js +12 -12
  84. package/dist/drivers/pframe/linker_columns.cjs +3 -4
  85. package/dist/drivers/pframe/linker_columns.cjs.map +1 -1
  86. package/dist/drivers/pframe/linker_columns.d.ts.map +1 -0
  87. package/dist/drivers/pframe/linker_columns.js +1 -2
  88. package/dist/drivers/pframe/linker_columns.js.map +1 -1
  89. package/dist/drivers/pframe/pframe.d.ts +0 -2
  90. package/dist/drivers/pframe/pframe.d.ts.map +1 -0
  91. package/dist/drivers/pframe/query/index.cjs +1 -1
  92. package/dist/drivers/pframe/query/index.d.ts +2 -2
  93. package/dist/drivers/pframe/query/index.js +1 -1
  94. package/dist/drivers/pframe/query/query_common.d.ts +39 -4
  95. package/dist/drivers/pframe/query/query_common.d.ts.map +1 -0
  96. package/dist/drivers/pframe/query/query_data.d.ts +18 -5
  97. package/dist/drivers/pframe/query/query_data.d.ts.map +1 -0
  98. package/dist/drivers/pframe/query/query_spec.d.ts +14 -6
  99. package/dist/drivers/pframe/query/query_spec.d.ts.map +1 -0
  100. package/dist/drivers/pframe/query/utils.cjs +30 -4
  101. package/dist/drivers/pframe/query/utils.cjs.map +1 -1
  102. package/dist/drivers/pframe/query/utils.d.ts.map +1 -0
  103. package/dist/drivers/pframe/query/utils.js +28 -2
  104. package/dist/drivers/pframe/query/utils.js.map +1 -1
  105. package/dist/drivers/pframe/spec/anchored.cjs +4 -5
  106. package/dist/drivers/pframe/spec/anchored.cjs.map +1 -1
  107. package/dist/drivers/pframe/spec/anchored.d.ts +3 -3
  108. package/dist/drivers/pframe/spec/anchored.d.ts.map +1 -0
  109. package/dist/drivers/pframe/spec/anchored.js +1 -2
  110. package/dist/drivers/pframe/spec/anchored.js.map +1 -1
  111. package/dist/drivers/pframe/spec/filtered_column.cjs +1 -2
  112. package/dist/drivers/pframe/spec/filtered_column.cjs.map +1 -1
  113. package/dist/drivers/pframe/spec/filtered_column.d.ts.map +1 -0
  114. package/dist/drivers/pframe/spec/filtered_column.js +1 -1
  115. package/dist/drivers/pframe/spec/ids.cjs +2 -3
  116. package/dist/drivers/pframe/spec/ids.cjs.map +1 -1
  117. package/dist/drivers/pframe/spec/ids.d.ts +0 -2
  118. package/dist/drivers/pframe/spec/ids.d.ts.map +1 -0
  119. package/dist/drivers/pframe/spec/ids.js +1 -2
  120. package/dist/drivers/pframe/spec/ids.js.map +1 -1
  121. package/dist/drivers/pframe/spec/index.cjs +6 -6
  122. package/dist/drivers/pframe/spec/index.d.ts +1 -1
  123. package/dist/drivers/pframe/spec/index.js +6 -6
  124. package/dist/drivers/pframe/spec/native_id.cjs +4 -5
  125. package/dist/drivers/pframe/spec/native_id.cjs.map +1 -1
  126. package/dist/drivers/pframe/spec/native_id.d.ts +0 -2
  127. package/dist/drivers/pframe/spec/native_id.d.ts.map +1 -0
  128. package/dist/drivers/pframe/spec/native_id.js +1 -2
  129. package/dist/drivers/pframe/spec/native_id.js.map +1 -1
  130. package/dist/drivers/pframe/spec/selectors.cjs +3 -4
  131. package/dist/drivers/pframe/spec/selectors.cjs.map +1 -1
  132. package/dist/drivers/pframe/spec/selectors.d.ts +0 -2
  133. package/dist/drivers/pframe/spec/selectors.d.ts.map +1 -0
  134. package/dist/drivers/pframe/spec/selectors.js +1 -2
  135. package/dist/drivers/pframe/spec/selectors.js.map +1 -1
  136. package/dist/drivers/pframe/spec/spec.cjs +12 -8
  137. package/dist/drivers/pframe/spec/spec.cjs.map +1 -1
  138. package/dist/drivers/pframe/spec/spec.d.ts +15 -3
  139. package/dist/drivers/pframe/spec/spec.d.ts.map +1 -0
  140. package/dist/drivers/pframe/spec/spec.js +9 -5
  141. package/dist/drivers/pframe/spec/spec.js.map +1 -1
  142. package/dist/drivers/pframe/spec_driver.d.ts +37 -4
  143. package/dist/drivers/pframe/spec_driver.d.ts.map +1 -0
  144. package/dist/drivers/pframe/table.d.ts.map +1 -0
  145. package/dist/drivers/pframe/table_calculate.cjs +6 -7
  146. package/dist/drivers/pframe/table_calculate.cjs.map +1 -1
  147. package/dist/drivers/pframe/table_calculate.d.ts +0 -2
  148. package/dist/drivers/pframe/table_calculate.d.ts.map +1 -0
  149. package/dist/drivers/pframe/table_calculate.js +1 -2
  150. package/dist/drivers/pframe/table_calculate.js.map +1 -1
  151. package/dist/drivers/pframe/table_common.cjs +1 -2
  152. package/dist/drivers/pframe/table_common.cjs.map +1 -1
  153. package/dist/drivers/pframe/table_common.d.ts +0 -2
  154. package/dist/drivers/pframe/table_common.d.ts.map +1 -0
  155. package/dist/drivers/pframe/table_common.js +1 -1
  156. package/dist/drivers/pframe/unique_values.d.ts +0 -2
  157. package/dist/drivers/pframe/unique_values.d.ts.map +1 -0
  158. package/dist/drivers/upload.d.ts.map +1 -0
  159. package/dist/drivers/urls.cjs +1 -2
  160. package/dist/drivers/urls.cjs.map +1 -1
  161. package/dist/drivers/urls.d.ts.map +1 -0
  162. package/dist/drivers/urls.js +1 -1
  163. package/dist/errors.cjs +1 -2
  164. package/dist/errors.cjs.map +1 -1
  165. package/dist/errors.d.ts.map +1 -0
  166. package/dist/errors.js +1 -1
  167. package/dist/errors.js.map +1 -1
  168. package/dist/flags/block_flags.cjs +1 -2
  169. package/dist/flags/block_flags.cjs.map +1 -1
  170. package/dist/flags/block_flags.d.ts +0 -2
  171. package/dist/flags/block_flags.d.ts.map +1 -0
  172. package/dist/flags/block_flags.js +1 -1
  173. package/dist/flags/flag_utils.cjs +1 -2
  174. package/dist/flags/flag_utils.cjs.map +1 -1
  175. package/dist/flags/flag_utils.d.ts.map +1 -0
  176. package/dist/flags/flag_utils.js +1 -1
  177. package/dist/flags/flag_utils.js.map +1 -1
  178. package/dist/flags/type_utils.d.ts.map +1 -0
  179. package/dist/httpAuth.cjs +1 -2
  180. package/dist/httpAuth.cjs.map +1 -1
  181. package/dist/httpAuth.d.ts.map +1 -0
  182. package/dist/httpAuth.js +1 -1
  183. package/dist/index.cjs +47 -47
  184. package/dist/index.d.ts +6 -11
  185. package/dist/index.js +2 -3
  186. package/dist/json.cjs +2 -3
  187. package/dist/json.cjs.map +1 -1
  188. package/dist/json.d.ts.map +1 -0
  189. package/dist/json.js +1 -2
  190. package/dist/json.js.map +1 -1
  191. package/dist/navigation.cjs +1 -2
  192. package/dist/navigation.cjs.map +1 -1
  193. package/dist/navigation.d.ts.map +1 -0
  194. package/dist/navigation.js +1 -1
  195. package/dist/plid.cjs +6 -7
  196. package/dist/plid.cjs.map +1 -1
  197. package/dist/plid.d.ts.map +1 -0
  198. package/dist/plid.js +4 -5
  199. package/dist/plid.js.map +1 -1
  200. package/dist/pool/entry.d.ts.map +1 -0
  201. package/dist/pool/query.cjs +2 -3
  202. package/dist/pool/query.cjs.map +1 -1
  203. package/dist/pool/query.d.ts +0 -1
  204. package/dist/pool/query.d.ts.map +1 -0
  205. package/dist/pool/query.js +1 -2
  206. package/dist/pool/query.js.map +1 -1
  207. package/dist/pool/spec.cjs +2 -3
  208. package/dist/pool/spec.cjs.map +1 -1
  209. package/dist/pool/spec.d.ts +0 -2
  210. package/dist/pool/spec.d.ts.map +1 -0
  211. package/dist/pool/spec.js +1 -2
  212. package/dist/pool/spec.js.map +1 -1
  213. package/dist/pool_entry.cjs +1 -2
  214. package/dist/pool_entry.cjs.map +1 -1
  215. package/dist/pool_entry.d.ts.map +1 -0
  216. package/dist/pool_entry.js +1 -1
  217. package/dist/pool_entry.js.map +1 -1
  218. package/dist/ref.cjs +2 -3
  219. package/dist/ref.cjs.map +1 -1
  220. package/dist/ref.d.ts.map +1 -0
  221. package/dist/ref.js +1 -2
  222. package/dist/ref.js.map +1 -1
  223. package/dist/resource_types.cjs +1 -2
  224. package/dist/resource_types.cjs.map +1 -1
  225. package/dist/resource_types.d.ts.map +1 -0
  226. package/dist/resource_types.js +1 -1
  227. package/dist/services/index.cjs +6 -6
  228. package/dist/services/index.js +6 -6
  229. package/dist/services/service_capabilities.cjs +2 -3
  230. package/dist/services/service_capabilities.cjs.map +1 -1
  231. package/dist/services/service_capabilities.d.ts.map +1 -0
  232. package/dist/services/service_capabilities.js +1 -2
  233. package/dist/services/service_capabilities.js.map +1 -1
  234. package/dist/services/service_declarations.cjs +2 -3
  235. package/dist/services/service_declarations.cjs.map +1 -1
  236. package/dist/services/service_declarations.d.ts +0 -2
  237. package/dist/services/service_declarations.d.ts.map +1 -0
  238. package/dist/services/service_declarations.js +1 -2
  239. package/dist/services/service_declarations.js.map +1 -1
  240. package/dist/services/service_injector_factory.cjs +1 -2
  241. package/dist/services/service_injector_factory.cjs.map +1 -1
  242. package/dist/services/service_injector_factory.d.ts.map +1 -0
  243. package/dist/services/service_injector_factory.js +1 -1
  244. package/dist/services/service_injectors.cjs +4 -5
  245. package/dist/services/service_injectors.cjs.map +1 -1
  246. package/dist/services/service_injectors.d.ts.map +1 -0
  247. package/dist/services/service_injectors.js +1 -2
  248. package/dist/services/service_injectors.js.map +1 -1
  249. package/dist/services/service_registry.cjs +2 -3
  250. package/dist/services/service_registry.cjs.map +1 -1
  251. package/dist/services/service_registry.d.ts.map +1 -0
  252. package/dist/services/service_registry.js +1 -2
  253. package/dist/services/service_registry.js.map +1 -1
  254. package/dist/services/service_types.cjs +2 -3
  255. package/dist/services/service_types.cjs.map +1 -1
  256. package/dist/services/service_types.d.ts +7 -7
  257. package/dist/services/service_types.d.ts.map +1 -0
  258. package/dist/services/service_types.js +1 -2
  259. package/dist/services/service_types.js.map +1 -1
  260. package/dist/utag.d.ts.map +1 -0
  261. package/dist/util.cjs +1 -2
  262. package/dist/util.cjs.map +1 -1
  263. package/dist/util.d.ts.map +1 -0
  264. package/dist/util.js +1 -1
  265. package/dist/value_or_error.cjs +1 -2
  266. package/dist/value_or_error.cjs.map +1 -1
  267. package/dist/value_or_error.d.ts.map +1 -0
  268. package/dist/value_or_error.js +1 -1
  269. package/package.json +9 -9
  270. package/src/drivers/log.ts +21 -7
  271. package/src/drivers/pframe/query/query_common.ts +39 -0
  272. package/src/drivers/pframe/query/query_data.ts +20 -0
  273. package/src/drivers/pframe/query/query_spec.ts +17 -0
  274. package/src/drivers/pframe/query/utils.test.ts +37 -0
  275. package/src/drivers/pframe/query/utils.ts +25 -0
  276. package/src/drivers/pframe/spec/anchored.ts +8 -3
  277. package/src/drivers/pframe/spec/spec.ts +19 -6
  278. package/src/drivers/pframe/spec_driver.ts +42 -1
  279. package/src/services/service_types.ts +1 -6
@@ -1,4 +1,3 @@
1
-
2
1
  //#region src/drivers/urls.ts
3
2
  function isFolderURL(url) {
4
3
  return new URL(url).protocol == "plblob+folder:";
@@ -6,8 +5,8 @@ function isFolderURL(url) {
6
5
  function isBlockUIURL(url) {
7
6
  return new URL(url).protocol == "block-ui:";
8
7
  }
9
-
10
8
  //#endregion
11
9
  exports.isBlockUIURL = isBlockUIURL;
12
10
  exports.isFolderURL = isFolderURL;
11
+
13
12
  //# sourceMappingURL=urls.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"urls.cjs","names":[],"sources":["../../src/drivers/urls.ts"],"sourcesContent":["/**\n * plblob+folder://signature@sufolder_with_unzipped_blob/\n */\nexport type FolderURL = `plblob+folder://${string}`;\n\nexport type ArchiveFormat = \"zip\" | \"tar\" | \"tgz\";\n\nexport interface BlobToURLDriver {\n getPathForCustomProtocol(url: FolderURL): string;\n}\n\nexport function isFolderURL(url: string): url is FolderURL {\n const parsed = new URL(url);\n return parsed.protocol == \"plblob+folder:\";\n}\n\n/**\n * URLs and a custom protocol for the block UI.\n * block-ui://signature@folder_with_ui/\n */\nexport type BlockUIURL = `block-ui://${string}`;\n\nexport interface FrontendDriver {\n getPathForBlockUI(url: BlockUIURL): string;\n}\n\nexport function isBlockUIURL(url: string): url is BlockUIURL {\n const parsed = new URL(url);\n return parsed.protocol == \"block-ui:\";\n}\n"],"mappings":";;AAWA,SAAgB,YAAY,KAA+B;AAEzD,QADe,IAAI,IAAI,IAAI,CACb,YAAY;;AAa5B,SAAgB,aAAa,KAAgC;AAE3D,QADe,IAAI,IAAI,IAAI,CACb,YAAY"}
1
+ {"version":3,"file":"urls.cjs","names":[],"sources":["../../src/drivers/urls.ts"],"sourcesContent":["/**\n * plblob+folder://signature@sufolder_with_unzipped_blob/\n */\nexport type FolderURL = `plblob+folder://${string}`;\n\nexport type ArchiveFormat = \"zip\" | \"tar\" | \"tgz\";\n\nexport interface BlobToURLDriver {\n getPathForCustomProtocol(url: FolderURL): string;\n}\n\nexport function isFolderURL(url: string): url is FolderURL {\n const parsed = new URL(url);\n return parsed.protocol == \"plblob+folder:\";\n}\n\n/**\n * URLs and a custom protocol for the block UI.\n * block-ui://signature@folder_with_ui/\n */\nexport type BlockUIURL = `block-ui://${string}`;\n\nexport interface FrontendDriver {\n getPathForBlockUI(url: BlockUIURL): string;\n}\n\nexport function isBlockUIURL(url: string): url is BlockUIURL {\n const parsed = new URL(url);\n return parsed.protocol == \"block-ui:\";\n}\n"],"mappings":";AAWA,SAAgB,YAAY,KAA+B;AAEzD,QADe,IAAI,IAAI,IAAI,CACb,YAAY;;AAa5B,SAAgB,aAAa,KAAgC;AAE3D,QADe,IAAI,IAAI,IAAI,CACb,YAAY"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"urls.d.ts","names":[],"sources":["../../src/drivers/urls.ts"],"mappings":";;AAGA;;KAAY,SAAA;AAAA,KAEA,aAAA;AAAA,UAEK,eAAA;EACf,wBAAA,CAAyB,GAAA,EAAK,SAAA;AAAA;AAAA,iBAGhB,WAAA,CAAY,GAAA,WAAc,GAAA,IAAO,SAAA;;;AAJjD;;KAaY,UAAA;AAAA,UAEK,cAAA;EACf,iBAAA,CAAkB,GAAA,EAAK,UAAA;AAAA;AAAA,iBAGT,YAAA,CAAa,GAAA,WAAc,GAAA,IAAO,UAAA"}
@@ -5,7 +5,7 @@ function isFolderURL(url) {
5
5
  function isBlockUIURL(url) {
6
6
  return new URL(url).protocol == "block-ui:";
7
7
  }
8
-
9
8
  //#endregion
10
9
  export { isBlockUIURL, isFolderURL };
10
+
11
11
  //# sourceMappingURL=urls.js.map
package/dist/errors.cjs CHANGED
@@ -1,4 +1,3 @@
1
-
2
1
  //#region src/errors.ts
3
2
  /**
4
3
  * Just for convenience, usually it is an Error with name 'AbortError'
@@ -138,7 +137,6 @@ function wrapAndSerialize(callback) {
138
137
  async function wrapAndSerializeAsync(callback) {
139
138
  return serializeResult(await wrapAsyncCallback(callback));
140
139
  }
141
-
142
140
  //#endregion
143
141
  exports.AbortError = AbortError;
144
142
  exports.PFrameDriverError = PFrameDriverError;
@@ -173,4 +171,5 @@ exports.wrapAndSerialize = wrapAndSerialize;
173
171
  exports.wrapAndSerializeAsync = wrapAndSerializeAsync;
174
172
  exports.wrapAsyncCallback = wrapAsyncCallback;
175
173
  exports.wrapCallback = wrapCallback;
174
+
176
175
  //# sourceMappingURL=errors.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.cjs","names":[],"sources":["../src/errors.ts"],"sourcesContent":["/**\n * Just for convenience, usually it is an Error with name 'AbortError'\n */\nexport class AbortError extends Error {\n name = \"AbortError\";\n}\n\n/**\n * Throw this to show a message without stack trace in UI\n */\nexport class UiError extends Error {\n name = \"UiError\";\n}\n\nexport function isAbortError(error: unknown): error is Error & { name: \"AbortError\" } {\n return error instanceof Error && error.name === \"AbortError\";\n}\n\nexport function hasAbortError(error: unknown): boolean {\n if (!(error instanceof Error)) {\n return false;\n }\n\n return error.name === \"AbortError\" || hasAbortError(error.cause);\n}\n\nexport function isAggregateError(error: unknown): error is AggregateError {\n return error instanceof Error && error.name === \"AggregateError\";\n}\n\nexport class ServiceError extends Error {\n name = \"ServiceError\";\n}\n\nexport function isServiceError(error: unknown): error is ServiceError {\n return (\n error instanceof Error &&\n (error.name === \"ServiceError\" || error.name.startsWith(\"ServiceError.\"))\n );\n}\n\nexport class ServiceInvalidIdError extends ServiceError {\n name = \"ServiceError.InvalidId\";\n}\n\nexport function isServiceInvalidIdError(error: unknown): error is ServiceInvalidIdError {\n return error instanceof Error && error.name === \"ServiceError.InvalidId\";\n}\n\nexport class ServiceAlreadyRegisteredError extends ServiceError {\n name = \"ServiceError.AlreadyRegistered\";\n}\n\nexport function isServiceAlreadyRegisteredError(\n error: unknown,\n): error is ServiceAlreadyRegisteredError {\n return error instanceof Error && error.name === \"ServiceError.AlreadyRegistered\";\n}\n\nexport class ServiceInjectionError extends ServiceError {\n name = \"ServiceError.Injection\";\n}\n\nexport function isServiceInjectionError(error: unknown): error is ServiceInjectionError {\n return error instanceof Error && error.name === \"ServiceError.Injection\";\n}\n\nexport class ServiceNotRegisteredError extends ServiceError {\n name = \"ServiceError.NotRegistered\";\n}\n\nexport function isServiceNotRegisteredError(error: unknown): error is ServiceNotRegisteredError {\n return error instanceof Error && error.name === \"ServiceError.NotRegistered\";\n}\n\nexport class ServiceMethodNotFoundError extends ServiceError {\n name = \"ServiceError.MethodNotFound\";\n}\n\nexport function isServiceMethodNotFoundError(error: unknown): error is ServiceMethodNotFoundError {\n return error instanceof Error && error.name === \"ServiceError.MethodNotFound\";\n}\n\nexport class PFrameError extends Error {\n name = \"PFrameError\";\n}\n\nexport function isPFrameError(error: unknown): error is PFrameError {\n return error instanceof Error && error.name === \"PFrameError\";\n}\n\nexport class PFrameDriverError extends PFrameError {\n name = \"PFrameError.Driver\";\n}\n\nexport function isPFrameDriverError(error: unknown): error is PFrameDriverError {\n return error instanceof Error && error.name === \"PFrameError.Driver\";\n}\n\nexport class PFrameSpecDriverError extends PFrameError {\n name = \"PFrameError.SpecDriver\";\n}\n\nexport function isPFrameSpecDriverError(error: unknown): error is PFrameSpecDriverError {\n return error instanceof Error && error.name === \"PFrameError.SpecDriver\";\n}\n\nfunction stringifyValue(value: unknown): string {\n if (typeof value === \"string\") {\n return `String value was thrown: ${value}`;\n }\n\n if (value && typeof value === \"object\") {\n try {\n return `Plain object was thrown: ${JSON.stringify(value)}`;\n } catch (jsonError) {\n const errorMessage = jsonError instanceof Error ? jsonError.message : String(jsonError);\n return `Non-serializable object was thrown (JSON.stringify failed: ${errorMessage}): ${String(value)}`;\n }\n }\n\n return String(`Non-Error value (${typeof value}) was thrown: ${value}`);\n}\n\nexport function ensureError(value: unknown): Error {\n if (value instanceof Error) {\n return value;\n }\n\n return new Error(stringifyValue(value));\n}\n\n// Error serialization for IPC/network transmission (Error objects can't be JSON serialized)\n\nexport type SerializedError = {\n name: string;\n message: string;\n stack: string | undefined;\n cause?: SerializedError;\n};\n\nexport function deserializeError(obj: SerializedError): Error {\n const cause = obj.cause ? deserializeError(obj.cause) : undefined;\n\n const error = new Error(obj.message, cause !== undefined ? { cause } : undefined);\n error.name = obj.name || \"Error\";\n error.stack = obj.stack;\n\n return error;\n}\n\nexport function serializeError(e: unknown): SerializedError {\n const error = ensureError(e);\n const cause = error.cause ? serializeError(error.cause) : undefined;\n\n return {\n name: error.name,\n message: error.message,\n stack: error.stack,\n ...(error.cause !== undefined && { cause }),\n };\n}\n\nexport type ResultOrError<S, F = Error> =\n | {\n value: S;\n error?: undefined;\n }\n | {\n error: F;\n };\n\nexport function unwrapResult<T>(result: ResultOrError<T, Error | SerializedError>): T {\n if (result.error) {\n throw result.error instanceof Error ? result.error : deserializeError(result.error);\n }\n return result.value;\n}\n\nexport function serializeResult<T>(result: ResultOrError<T>): ResultOrError<T, SerializedError> {\n if (result.error) {\n return { error: serializeError(result.error) };\n }\n return { value: result.value };\n}\n\nexport function deserializeResult<T>(result: ResultOrError<T, SerializedError>): ResultOrError<T> {\n if (result.error) {\n return { error: deserializeError(result.error) };\n }\n return { value: result.value };\n}\n\nexport function wrapCallback<T>(callback: () => T): ResultOrError<T> {\n try {\n const value = callback();\n return { value };\n } catch (error) {\n return { error: ensureError(error) };\n }\n}\n\nexport async function wrapAsyncCallback<T>(callback: () => Promise<T>): Promise<ResultOrError<T>> {\n try {\n const value = await callback();\n return { value };\n } catch (error) {\n return { error: ensureError(error) };\n }\n}\n\nexport function wrapAndSerialize<T>(callback: () => T): ResultOrError<T, SerializedError> {\n const result = wrapCallback(callback);\n return serializeResult(result);\n}\n\nexport async function wrapAndSerializeAsync<T>(\n callback: () => Promise<T>,\n): Promise<ResultOrError<T, SerializedError>> {\n const result = await wrapAsyncCallback(callback);\n return serializeResult(result);\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"errors.cjs","names":[],"sources":["../src/errors.ts"],"sourcesContent":["/**\n * Just for convenience, usually it is an Error with name 'AbortError'\n */\nexport class AbortError extends Error {\n name = \"AbortError\";\n}\n\n/**\n * Throw this to show a message without stack trace in UI\n */\nexport class UiError extends Error {\n name = \"UiError\";\n}\n\nexport function isAbortError(error: unknown): error is Error & { name: \"AbortError\" } {\n return error instanceof Error && error.name === \"AbortError\";\n}\n\nexport function hasAbortError(error: unknown): boolean {\n if (!(error instanceof Error)) {\n return false;\n }\n\n return error.name === \"AbortError\" || hasAbortError(error.cause);\n}\n\nexport function isAggregateError(error: unknown): error is AggregateError {\n return error instanceof Error && error.name === \"AggregateError\";\n}\n\nexport class ServiceError extends Error {\n name = \"ServiceError\";\n}\n\nexport function isServiceError(error: unknown): error is ServiceError {\n return (\n error instanceof Error &&\n (error.name === \"ServiceError\" || error.name.startsWith(\"ServiceError.\"))\n );\n}\n\nexport class ServiceInvalidIdError extends ServiceError {\n name = \"ServiceError.InvalidId\";\n}\n\nexport function isServiceInvalidIdError(error: unknown): error is ServiceInvalidIdError {\n return error instanceof Error && error.name === \"ServiceError.InvalidId\";\n}\n\nexport class ServiceAlreadyRegisteredError extends ServiceError {\n name = \"ServiceError.AlreadyRegistered\";\n}\n\nexport function isServiceAlreadyRegisteredError(\n error: unknown,\n): error is ServiceAlreadyRegisteredError {\n return error instanceof Error && error.name === \"ServiceError.AlreadyRegistered\";\n}\n\nexport class ServiceInjectionError extends ServiceError {\n name = \"ServiceError.Injection\";\n}\n\nexport function isServiceInjectionError(error: unknown): error is ServiceInjectionError {\n return error instanceof Error && error.name === \"ServiceError.Injection\";\n}\n\nexport class ServiceNotRegisteredError extends ServiceError {\n name = \"ServiceError.NotRegistered\";\n}\n\nexport function isServiceNotRegisteredError(error: unknown): error is ServiceNotRegisteredError {\n return error instanceof Error && error.name === \"ServiceError.NotRegistered\";\n}\n\nexport class ServiceMethodNotFoundError extends ServiceError {\n name = \"ServiceError.MethodNotFound\";\n}\n\nexport function isServiceMethodNotFoundError(error: unknown): error is ServiceMethodNotFoundError {\n return error instanceof Error && error.name === \"ServiceError.MethodNotFound\";\n}\n\nexport class PFrameError extends Error {\n name = \"PFrameError\";\n}\n\nexport function isPFrameError(error: unknown): error is PFrameError {\n return error instanceof Error && error.name === \"PFrameError\";\n}\n\nexport class PFrameDriverError extends PFrameError {\n name = \"PFrameError.Driver\";\n}\n\nexport function isPFrameDriverError(error: unknown): error is PFrameDriverError {\n return error instanceof Error && error.name === \"PFrameError.Driver\";\n}\n\nexport class PFrameSpecDriverError extends PFrameError {\n name = \"PFrameError.SpecDriver\";\n}\n\nexport function isPFrameSpecDriverError(error: unknown): error is PFrameSpecDriverError {\n return error instanceof Error && error.name === \"PFrameError.SpecDriver\";\n}\n\nfunction stringifyValue(value: unknown): string {\n if (typeof value === \"string\") {\n return `String value was thrown: ${value}`;\n }\n\n if (value && typeof value === \"object\") {\n try {\n return `Plain object was thrown: ${JSON.stringify(value)}`;\n } catch (jsonError) {\n const errorMessage = jsonError instanceof Error ? jsonError.message : String(jsonError);\n return `Non-serializable object was thrown (JSON.stringify failed: ${errorMessage}): ${String(value)}`;\n }\n }\n\n return String(`Non-Error value (${typeof value}) was thrown: ${value}`);\n}\n\nexport function ensureError(value: unknown): Error {\n if (value instanceof Error) {\n return value;\n }\n\n return new Error(stringifyValue(value));\n}\n\n// Error serialization for IPC/network transmission (Error objects can't be JSON serialized)\n\nexport type SerializedError = {\n name: string;\n message: string;\n stack: string | undefined;\n cause?: SerializedError;\n};\n\nexport function deserializeError(obj: SerializedError): Error {\n const cause = obj.cause ? deserializeError(obj.cause) : undefined;\n\n const error = new Error(obj.message, cause !== undefined ? { cause } : undefined);\n error.name = obj.name || \"Error\";\n error.stack = obj.stack;\n\n return error;\n}\n\nexport function serializeError(e: unknown): SerializedError {\n const error = ensureError(e);\n const cause = error.cause ? serializeError(error.cause) : undefined;\n\n return {\n name: error.name,\n message: error.message,\n stack: error.stack,\n ...(error.cause !== undefined && { cause }),\n };\n}\n\nexport type ResultOrError<S, F = Error> =\n | {\n value: S;\n error?: undefined;\n }\n | {\n error: F;\n };\n\nexport function unwrapResult<T>(result: ResultOrError<T, Error | SerializedError>): T {\n if (result.error) {\n throw result.error instanceof Error ? result.error : deserializeError(result.error);\n }\n return result.value;\n}\n\nexport function serializeResult<T>(result: ResultOrError<T>): ResultOrError<T, SerializedError> {\n if (result.error) {\n return { error: serializeError(result.error) };\n }\n return { value: result.value };\n}\n\nexport function deserializeResult<T>(result: ResultOrError<T, SerializedError>): ResultOrError<T> {\n if (result.error) {\n return { error: deserializeError(result.error) };\n }\n return { value: result.value };\n}\n\nexport function wrapCallback<T>(callback: () => T): ResultOrError<T> {\n try {\n const value = callback();\n return { value };\n } catch (error) {\n return { error: ensureError(error) };\n }\n}\n\nexport async function wrapAsyncCallback<T>(callback: () => Promise<T>): Promise<ResultOrError<T>> {\n try {\n const value = await callback();\n return { value };\n } catch (error) {\n return { error: ensureError(error) };\n }\n}\n\nexport function wrapAndSerialize<T>(callback: () => T): ResultOrError<T, SerializedError> {\n const result = wrapCallback(callback);\n return serializeResult(result);\n}\n\nexport async function wrapAndSerializeAsync<T>(\n callback: () => Promise<T>,\n): Promise<ResultOrError<T, SerializedError>> {\n const result = await wrapAsyncCallback(callback);\n return serializeResult(result);\n}\n"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","names":[],"sources":["../src/errors.ts"],"mappings":";;AAGA;;cAAa,UAAA,SAAmB,KAAA;EAC9B,IAAA;AAAA;AAMF;;;AAAA,cAAa,OAAA,SAAgB,KAAA;EAC3B,IAAA;AAAA;AAAA,iBAGc,YAAA,CAAa,KAAA,YAAiB,KAAA,IAAS,KAAA;EAAU,IAAA;AAAA;AAAA,iBAIjD,aAAA,CAAc,KAAA;AAAA,iBAQd,gBAAA,CAAiB,KAAA,YAAiB,KAAA,IAAS,cAAA;AAAA,cAI9C,YAAA,SAAqB,KAAA;EAChC,IAAA;AAAA;AAAA,iBAGc,cAAA,CAAe,KAAA,YAAiB,KAAA,IAAS,YAAA;AAAA,cAO5C,qBAAA,SAA8B,YAAA;EACzC,IAAA;AAAA;AAAA,iBAGc,uBAAA,CAAwB,KAAA,YAAiB,KAAA,IAAS,qBAAA;AAAA,cAIrD,6BAAA,SAAsC,YAAA;EACjD,IAAA;AAAA;AAAA,iBAGc,+BAAA,CACd,KAAA,YACC,KAAA,IAAS,6BAAA;AAAA,cAIC,qBAAA,SAA8B,YAAA;EACzC,IAAA;AAAA;AAAA,iBAGc,uBAAA,CAAwB,KAAA,YAAiB,KAAA,IAAS,qBAAA;AAAA,cAIrD,yBAAA,SAAkC,YAAA;EAC7C,IAAA;AAAA;AAAA,iBAGc,2BAAA,CAA4B,KAAA,YAAiB,KAAA,IAAS,yBAAA;AAAA,cAIzD,0BAAA,SAAmC,YAAA;EAC9C,IAAA;AAAA;AAAA,iBAGc,4BAAA,CAA6B,KAAA,YAAiB,KAAA,IAAS,0BAAA;AAAA,cAI1D,WAAA,SAAoB,KAAA;EAC/B,IAAA;AAAA;AAAA,iBAGc,aAAA,CAAc,KAAA,YAAiB,KAAA,IAAS,WAAA;AAAA,cAI3C,iBAAA,SAA0B,WAAA;EACrC,IAAA;AAAA;AAAA,iBAGc,mBAAA,CAAoB,KAAA,YAAiB,KAAA,IAAS,iBAAA;AAAA,cAIjD,qBAAA,SAA8B,WAAA;EACzC,IAAA;AAAA;AAAA,iBAGc,uBAAA,CAAwB,KAAA,YAAiB,KAAA,IAAS,qBAAA;AAAA,iBAqBlD,WAAA,CAAY,KAAA,YAAiB,KAAA;AAAA,KAUjC,eAAA;EACV,IAAA;EACA,OAAA;EACA,KAAA;EACA,KAAA,GAAQ,eAAA;AAAA;AAAA,iBAGM,gBAAA,CAAiB,GAAA,EAAK,eAAA,GAAkB,KAAA;AAAA,iBAUxC,cAAA,CAAe,CAAA,YAAa,eAAA;AAAA,KAYhC,aAAA,QAAqB,KAAA;EAE3B,KAAA,EAAO,CAAA;EACP,KAAA;AAAA;EAGA,KAAA,EAAO,CAAA;AAAA;AAAA,iBAGG,YAAA,GAAA,CAAgB,MAAA,EAAQ,aAAA,CAAc,CAAA,EAAG,KAAA,GAAQ,eAAA,IAAmB,CAAA;AAAA,iBAOpE,eAAA,GAAA,CAAmB,MAAA,EAAQ,aAAA,CAAc,CAAA,IAAK,aAAA,CAAc,CAAA,EAAG,eAAA;AAAA,iBAO/D,iBAAA,GAAA,CAAqB,MAAA,EAAQ,aAAA,CAAc,CAAA,EAAG,eAAA,IAAmB,aAAA,CAAc,CAAA;AAAA,iBAO/E,YAAA,GAAA,CAAgB,QAAA,QAAgB,CAAA,GAAI,aAAA,CAAc,CAAA;AAAA,iBAS5C,iBAAA,GAAA,CAAqB,QAAA,QAAgB,OAAA,CAAQ,CAAA,IAAK,OAAA,CAAQ,aAAA,CAAc,CAAA;AAAA,iBAS9E,gBAAA,GAAA,CAAoB,QAAA,QAAgB,CAAA,GAAI,aAAA,CAAc,CAAA,EAAG,eAAA;AAAA,iBAKnD,qBAAA,GAAA,CACpB,QAAA,QAAgB,OAAA,CAAQ,CAAA,IACvB,OAAA,CAAQ,aAAA,CAAc,CAAA,EAAG,eAAA"}
package/dist/errors.js CHANGED
@@ -137,7 +137,7 @@ function wrapAndSerialize(callback) {
137
137
  async function wrapAndSerializeAsync(callback) {
138
138
  return serializeResult(await wrapAsyncCallback(callback));
139
139
  }
140
-
141
140
  //#endregion
142
141
  export { AbortError, PFrameDriverError, PFrameError, PFrameSpecDriverError, ServiceAlreadyRegisteredError, ServiceError, ServiceInjectionError, ServiceInvalidIdError, ServiceMethodNotFoundError, ServiceNotRegisteredError, UiError, deserializeError, deserializeResult, ensureError, hasAbortError, isAbortError, isAggregateError, isPFrameDriverError, isPFrameError, isPFrameSpecDriverError, isServiceAlreadyRegisteredError, isServiceError, isServiceInjectionError, isServiceInvalidIdError, isServiceMethodNotFoundError, isServiceNotRegisteredError, serializeError, serializeResult, unwrapResult, wrapAndSerialize, wrapAndSerializeAsync, wrapAsyncCallback, wrapCallback };
142
+
143
143
  //# sourceMappingURL=errors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","names":[],"sources":["../src/errors.ts"],"sourcesContent":["/**\n * Just for convenience, usually it is an Error with name 'AbortError'\n */\nexport class AbortError extends Error {\n name = \"AbortError\";\n}\n\n/**\n * Throw this to show a message without stack trace in UI\n */\nexport class UiError extends Error {\n name = \"UiError\";\n}\n\nexport function isAbortError(error: unknown): error is Error & { name: \"AbortError\" } {\n return error instanceof Error && error.name === \"AbortError\";\n}\n\nexport function hasAbortError(error: unknown): boolean {\n if (!(error instanceof Error)) {\n return false;\n }\n\n return error.name === \"AbortError\" || hasAbortError(error.cause);\n}\n\nexport function isAggregateError(error: unknown): error is AggregateError {\n return error instanceof Error && error.name === \"AggregateError\";\n}\n\nexport class ServiceError extends Error {\n name = \"ServiceError\";\n}\n\nexport function isServiceError(error: unknown): error is ServiceError {\n return (\n error instanceof Error &&\n (error.name === \"ServiceError\" || error.name.startsWith(\"ServiceError.\"))\n );\n}\n\nexport class ServiceInvalidIdError extends ServiceError {\n name = \"ServiceError.InvalidId\";\n}\n\nexport function isServiceInvalidIdError(error: unknown): error is ServiceInvalidIdError {\n return error instanceof Error && error.name === \"ServiceError.InvalidId\";\n}\n\nexport class ServiceAlreadyRegisteredError extends ServiceError {\n name = \"ServiceError.AlreadyRegistered\";\n}\n\nexport function isServiceAlreadyRegisteredError(\n error: unknown,\n): error is ServiceAlreadyRegisteredError {\n return error instanceof Error && error.name === \"ServiceError.AlreadyRegistered\";\n}\n\nexport class ServiceInjectionError extends ServiceError {\n name = \"ServiceError.Injection\";\n}\n\nexport function isServiceInjectionError(error: unknown): error is ServiceInjectionError {\n return error instanceof Error && error.name === \"ServiceError.Injection\";\n}\n\nexport class ServiceNotRegisteredError extends ServiceError {\n name = \"ServiceError.NotRegistered\";\n}\n\nexport function isServiceNotRegisteredError(error: unknown): error is ServiceNotRegisteredError {\n return error instanceof Error && error.name === \"ServiceError.NotRegistered\";\n}\n\nexport class ServiceMethodNotFoundError extends ServiceError {\n name = \"ServiceError.MethodNotFound\";\n}\n\nexport function isServiceMethodNotFoundError(error: unknown): error is ServiceMethodNotFoundError {\n return error instanceof Error && error.name === \"ServiceError.MethodNotFound\";\n}\n\nexport class PFrameError extends Error {\n name = \"PFrameError\";\n}\n\nexport function isPFrameError(error: unknown): error is PFrameError {\n return error instanceof Error && error.name === \"PFrameError\";\n}\n\nexport class PFrameDriverError extends PFrameError {\n name = \"PFrameError.Driver\";\n}\n\nexport function isPFrameDriverError(error: unknown): error is PFrameDriverError {\n return error instanceof Error && error.name === \"PFrameError.Driver\";\n}\n\nexport class PFrameSpecDriverError extends PFrameError {\n name = \"PFrameError.SpecDriver\";\n}\n\nexport function isPFrameSpecDriverError(error: unknown): error is PFrameSpecDriverError {\n return error instanceof Error && error.name === \"PFrameError.SpecDriver\";\n}\n\nfunction stringifyValue(value: unknown): string {\n if (typeof value === \"string\") {\n return `String value was thrown: ${value}`;\n }\n\n if (value && typeof value === \"object\") {\n try {\n return `Plain object was thrown: ${JSON.stringify(value)}`;\n } catch (jsonError) {\n const errorMessage = jsonError instanceof Error ? jsonError.message : String(jsonError);\n return `Non-serializable object was thrown (JSON.stringify failed: ${errorMessage}): ${String(value)}`;\n }\n }\n\n return String(`Non-Error value (${typeof value}) was thrown: ${value}`);\n}\n\nexport function ensureError(value: unknown): Error {\n if (value instanceof Error) {\n return value;\n }\n\n return new Error(stringifyValue(value));\n}\n\n// Error serialization for IPC/network transmission (Error objects can't be JSON serialized)\n\nexport type SerializedError = {\n name: string;\n message: string;\n stack: string | undefined;\n cause?: SerializedError;\n};\n\nexport function deserializeError(obj: SerializedError): Error {\n const cause = obj.cause ? deserializeError(obj.cause) : undefined;\n\n const error = new Error(obj.message, cause !== undefined ? { cause } : undefined);\n error.name = obj.name || \"Error\";\n error.stack = obj.stack;\n\n return error;\n}\n\nexport function serializeError(e: unknown): SerializedError {\n const error = ensureError(e);\n const cause = error.cause ? serializeError(error.cause) : undefined;\n\n return {\n name: error.name,\n message: error.message,\n stack: error.stack,\n ...(error.cause !== undefined && { cause }),\n };\n}\n\nexport type ResultOrError<S, F = Error> =\n | {\n value: S;\n error?: undefined;\n }\n | {\n error: F;\n };\n\nexport function unwrapResult<T>(result: ResultOrError<T, Error | SerializedError>): T {\n if (result.error) {\n throw result.error instanceof Error ? result.error : deserializeError(result.error);\n }\n return result.value;\n}\n\nexport function serializeResult<T>(result: ResultOrError<T>): ResultOrError<T, SerializedError> {\n if (result.error) {\n return { error: serializeError(result.error) };\n }\n return { value: result.value };\n}\n\nexport function deserializeResult<T>(result: ResultOrError<T, SerializedError>): ResultOrError<T> {\n if (result.error) {\n return { error: deserializeError(result.error) };\n }\n return { value: result.value };\n}\n\nexport function wrapCallback<T>(callback: () => T): ResultOrError<T> {\n try {\n const value = callback();\n return { value };\n } catch (error) {\n return { error: ensureError(error) };\n }\n}\n\nexport async function wrapAsyncCallback<T>(callback: () => Promise<T>): Promise<ResultOrError<T>> {\n try {\n const value = await callback();\n return { value };\n } catch (error) {\n return { error: ensureError(error) };\n }\n}\n\nexport function wrapAndSerialize<T>(callback: () => T): ResultOrError<T, SerializedError> {\n const result = wrapCallback(callback);\n return serializeResult(result);\n}\n\nexport async function wrapAndSerializeAsync<T>(\n callback: () => Promise<T>,\n): Promise<ResultOrError<T, SerializedError>> {\n const result = await wrapAsyncCallback(callback);\n return serializeResult(result);\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"errors.js","names":[],"sources":["../src/errors.ts"],"sourcesContent":["/**\n * Just for convenience, usually it is an Error with name 'AbortError'\n */\nexport class AbortError extends Error {\n name = \"AbortError\";\n}\n\n/**\n * Throw this to show a message without stack trace in UI\n */\nexport class UiError extends Error {\n name = \"UiError\";\n}\n\nexport function isAbortError(error: unknown): error is Error & { name: \"AbortError\" } {\n return error instanceof Error && error.name === \"AbortError\";\n}\n\nexport function hasAbortError(error: unknown): boolean {\n if (!(error instanceof Error)) {\n return false;\n }\n\n return error.name === \"AbortError\" || hasAbortError(error.cause);\n}\n\nexport function isAggregateError(error: unknown): error is AggregateError {\n return error instanceof Error && error.name === \"AggregateError\";\n}\n\nexport class ServiceError extends Error {\n name = \"ServiceError\";\n}\n\nexport function isServiceError(error: unknown): error is ServiceError {\n return (\n error instanceof Error &&\n (error.name === \"ServiceError\" || error.name.startsWith(\"ServiceError.\"))\n );\n}\n\nexport class ServiceInvalidIdError extends ServiceError {\n name = \"ServiceError.InvalidId\";\n}\n\nexport function isServiceInvalidIdError(error: unknown): error is ServiceInvalidIdError {\n return error instanceof Error && error.name === \"ServiceError.InvalidId\";\n}\n\nexport class ServiceAlreadyRegisteredError extends ServiceError {\n name = \"ServiceError.AlreadyRegistered\";\n}\n\nexport function isServiceAlreadyRegisteredError(\n error: unknown,\n): error is ServiceAlreadyRegisteredError {\n return error instanceof Error && error.name === \"ServiceError.AlreadyRegistered\";\n}\n\nexport class ServiceInjectionError extends ServiceError {\n name = \"ServiceError.Injection\";\n}\n\nexport function isServiceInjectionError(error: unknown): error is ServiceInjectionError {\n return error instanceof Error && error.name === \"ServiceError.Injection\";\n}\n\nexport class ServiceNotRegisteredError extends ServiceError {\n name = \"ServiceError.NotRegistered\";\n}\n\nexport function isServiceNotRegisteredError(error: unknown): error is ServiceNotRegisteredError {\n return error instanceof Error && error.name === \"ServiceError.NotRegistered\";\n}\n\nexport class ServiceMethodNotFoundError extends ServiceError {\n name = \"ServiceError.MethodNotFound\";\n}\n\nexport function isServiceMethodNotFoundError(error: unknown): error is ServiceMethodNotFoundError {\n return error instanceof Error && error.name === \"ServiceError.MethodNotFound\";\n}\n\nexport class PFrameError extends Error {\n name = \"PFrameError\";\n}\n\nexport function isPFrameError(error: unknown): error is PFrameError {\n return error instanceof Error && error.name === \"PFrameError\";\n}\n\nexport class PFrameDriverError extends PFrameError {\n name = \"PFrameError.Driver\";\n}\n\nexport function isPFrameDriverError(error: unknown): error is PFrameDriverError {\n return error instanceof Error && error.name === \"PFrameError.Driver\";\n}\n\nexport class PFrameSpecDriverError extends PFrameError {\n name = \"PFrameError.SpecDriver\";\n}\n\nexport function isPFrameSpecDriverError(error: unknown): error is PFrameSpecDriverError {\n return error instanceof Error && error.name === \"PFrameError.SpecDriver\";\n}\n\nfunction stringifyValue(value: unknown): string {\n if (typeof value === \"string\") {\n return `String value was thrown: ${value}`;\n }\n\n if (value && typeof value === \"object\") {\n try {\n return `Plain object was thrown: ${JSON.stringify(value)}`;\n } catch (jsonError) {\n const errorMessage = jsonError instanceof Error ? jsonError.message : String(jsonError);\n return `Non-serializable object was thrown (JSON.stringify failed: ${errorMessage}): ${String(value)}`;\n }\n }\n\n return String(`Non-Error value (${typeof value}) was thrown: ${value}`);\n}\n\nexport function ensureError(value: unknown): Error {\n if (value instanceof Error) {\n return value;\n }\n\n return new Error(stringifyValue(value));\n}\n\n// Error serialization for IPC/network transmission (Error objects can't be JSON serialized)\n\nexport type SerializedError = {\n name: string;\n message: string;\n stack: string | undefined;\n cause?: SerializedError;\n};\n\nexport function deserializeError(obj: SerializedError): Error {\n const cause = obj.cause ? deserializeError(obj.cause) : undefined;\n\n const error = new Error(obj.message, cause !== undefined ? { cause } : undefined);\n error.name = obj.name || \"Error\";\n error.stack = obj.stack;\n\n return error;\n}\n\nexport function serializeError(e: unknown): SerializedError {\n const error = ensureError(e);\n const cause = error.cause ? serializeError(error.cause) : undefined;\n\n return {\n name: error.name,\n message: error.message,\n stack: error.stack,\n ...(error.cause !== undefined && { cause }),\n };\n}\n\nexport type ResultOrError<S, F = Error> =\n | {\n value: S;\n error?: undefined;\n }\n | {\n error: F;\n };\n\nexport function unwrapResult<T>(result: ResultOrError<T, Error | SerializedError>): T {\n if (result.error) {\n throw result.error instanceof Error ? result.error : deserializeError(result.error);\n }\n return result.value;\n}\n\nexport function serializeResult<T>(result: ResultOrError<T>): ResultOrError<T, SerializedError> {\n if (result.error) {\n return { error: serializeError(result.error) };\n }\n return { value: result.value };\n}\n\nexport function deserializeResult<T>(result: ResultOrError<T, SerializedError>): ResultOrError<T> {\n if (result.error) {\n return { error: deserializeError(result.error) };\n }\n return { value: result.value };\n}\n\nexport function wrapCallback<T>(callback: () => T): ResultOrError<T> {\n try {\n const value = callback();\n return { value };\n } catch (error) {\n return { error: ensureError(error) };\n }\n}\n\nexport async function wrapAsyncCallback<T>(callback: () => Promise<T>): Promise<ResultOrError<T>> {\n try {\n const value = await callback();\n return { value };\n } catch (error) {\n return { error: ensureError(error) };\n }\n}\n\nexport function wrapAndSerialize<T>(callback: () => T): ResultOrError<T, SerializedError> {\n const result = wrapCallback(callback);\n return serializeResult(result);\n}\n\nexport async function wrapAndSerializeAsync<T>(\n callback: () => Promise<T>,\n): Promise<ResultOrError<T, SerializedError>> {\n const result = await wrapAsyncCallback(callback);\n return serializeResult(result);\n}\n"],"mappings":";;;;AAGA,IAAa,aAAb,cAAgC,MAAM;CACpC,OAAO;;;;;AAMT,IAAa,UAAb,cAA6B,MAAM;CACjC,OAAO;;AAGT,SAAgB,aAAa,OAAyD;AACpF,QAAO,iBAAiB,SAAS,MAAM,SAAS;;AAGlD,SAAgB,cAAc,OAAyB;AACrD,KAAI,EAAE,iBAAiB,OACrB,QAAO;AAGT,QAAO,MAAM,SAAS,gBAAgB,cAAc,MAAM,MAAM;;AAGlE,SAAgB,iBAAiB,OAAyC;AACxE,QAAO,iBAAiB,SAAS,MAAM,SAAS;;AAGlD,IAAa,eAAb,cAAkC,MAAM;CACtC,OAAO;;AAGT,SAAgB,eAAe,OAAuC;AACpE,QACE,iBAAiB,UAChB,MAAM,SAAS,kBAAkB,MAAM,KAAK,WAAW,gBAAgB;;AAI5E,IAAa,wBAAb,cAA2C,aAAa;CACtD,OAAO;;AAGT,SAAgB,wBAAwB,OAAgD;AACtF,QAAO,iBAAiB,SAAS,MAAM,SAAS;;AAGlD,IAAa,gCAAb,cAAmD,aAAa;CAC9D,OAAO;;AAGT,SAAgB,gCACd,OACwC;AACxC,QAAO,iBAAiB,SAAS,MAAM,SAAS;;AAGlD,IAAa,wBAAb,cAA2C,aAAa;CACtD,OAAO;;AAGT,SAAgB,wBAAwB,OAAgD;AACtF,QAAO,iBAAiB,SAAS,MAAM,SAAS;;AAGlD,IAAa,4BAAb,cAA+C,aAAa;CAC1D,OAAO;;AAGT,SAAgB,4BAA4B,OAAoD;AAC9F,QAAO,iBAAiB,SAAS,MAAM,SAAS;;AAGlD,IAAa,6BAAb,cAAgD,aAAa;CAC3D,OAAO;;AAGT,SAAgB,6BAA6B,OAAqD;AAChG,QAAO,iBAAiB,SAAS,MAAM,SAAS;;AAGlD,IAAa,cAAb,cAAiC,MAAM;CACrC,OAAO;;AAGT,SAAgB,cAAc,OAAsC;AAClE,QAAO,iBAAiB,SAAS,MAAM,SAAS;;AAGlD,IAAa,oBAAb,cAAuC,YAAY;CACjD,OAAO;;AAGT,SAAgB,oBAAoB,OAA4C;AAC9E,QAAO,iBAAiB,SAAS,MAAM,SAAS;;AAGlD,IAAa,wBAAb,cAA2C,YAAY;CACrD,OAAO;;AAGT,SAAgB,wBAAwB,OAAgD;AACtF,QAAO,iBAAiB,SAAS,MAAM,SAAS;;AAGlD,SAAS,eAAe,OAAwB;AAC9C,KAAI,OAAO,UAAU,SACnB,QAAO,4BAA4B;AAGrC,KAAI,SAAS,OAAO,UAAU,SAC5B,KAAI;AACF,SAAO,4BAA4B,KAAK,UAAU,MAAM;UACjD,WAAW;AAElB,SAAO,8DADc,qBAAqB,QAAQ,UAAU,UAAU,OAAO,UAAU,CACL,KAAK,OAAO,MAAM;;AAIxG,QAAO,OAAO,oBAAoB,OAAO,MAAM,gBAAgB,QAAQ;;AAGzE,SAAgB,YAAY,OAAuB;AACjD,KAAI,iBAAiB,MACnB,QAAO;AAGT,QAAO,IAAI,MAAM,eAAe,MAAM,CAAC;;AAYzC,SAAgB,iBAAiB,KAA6B;CAC5D,MAAM,QAAQ,IAAI,QAAQ,iBAAiB,IAAI,MAAM,GAAG,KAAA;CAExD,MAAM,QAAQ,IAAI,MAAM,IAAI,SAAS,UAAU,KAAA,IAAY,EAAE,OAAO,GAAG,KAAA,EAAU;AACjF,OAAM,OAAO,IAAI,QAAQ;AACzB,OAAM,QAAQ,IAAI;AAElB,QAAO;;AAGT,SAAgB,eAAe,GAA6B;CAC1D,MAAM,QAAQ,YAAY,EAAE;CAC5B,MAAM,QAAQ,MAAM,QAAQ,eAAe,MAAM,MAAM,GAAG,KAAA;AAE1D,QAAO;EACL,MAAM,MAAM;EACZ,SAAS,MAAM;EACf,OAAO,MAAM;EACb,GAAI,MAAM,UAAU,KAAA,KAAa,EAAE,OAAO;EAC3C;;AAYH,SAAgB,aAAgB,QAAsD;AACpF,KAAI,OAAO,MACT,OAAM,OAAO,iBAAiB,QAAQ,OAAO,QAAQ,iBAAiB,OAAO,MAAM;AAErF,QAAO,OAAO;;AAGhB,SAAgB,gBAAmB,QAA6D;AAC9F,KAAI,OAAO,MACT,QAAO,EAAE,OAAO,eAAe,OAAO,MAAM,EAAE;AAEhD,QAAO,EAAE,OAAO,OAAO,OAAO;;AAGhC,SAAgB,kBAAqB,QAA6D;AAChG,KAAI,OAAO,MACT,QAAO,EAAE,OAAO,iBAAiB,OAAO,MAAM,EAAE;AAElD,QAAO,EAAE,OAAO,OAAO,OAAO;;AAGhC,SAAgB,aAAgB,UAAqC;AACnE,KAAI;AAEF,SAAO,EAAE,OADK,UAAU,EACR;UACT,OAAO;AACd,SAAO,EAAE,OAAO,YAAY,MAAM,EAAE;;;AAIxC,eAAsB,kBAAqB,UAAuD;AAChG,KAAI;AAEF,SAAO,EAAE,OADK,MAAM,UAAU,EACd;UACT,OAAO;AACd,SAAO,EAAE,OAAO,YAAY,MAAM,EAAE;;;AAIxC,SAAgB,iBAAoB,UAAsD;AAExF,QAAO,gBADQ,aAAa,SAAS,CACP;;AAGhC,eAAsB,sBACpB,UAC4C;AAE5C,QAAO,gBADQ,MAAM,kBAAkB,SAAS,CAClB"}
@@ -1,4 +1,3 @@
1
-
2
1
  //#region src/flags/block_flags.ts
3
2
  const AllSupportsFeatureFlags = ["supportsLazyState", "supportsPframeQueryRanking"];
4
3
  const AllRequiresFeatureFlags = [
@@ -6,8 +5,8 @@ const AllRequiresFeatureFlags = [
6
5
  "requiresCreatePTable",
7
6
  "requiresModelAPIVersion"
8
7
  ];
9
-
10
8
  //#endregion
11
9
  exports.AllRequiresFeatureFlags = AllRequiresFeatureFlags;
12
10
  exports.AllSupportsFeatureFlags = AllSupportsFeatureFlags;
11
+
13
12
  //# sourceMappingURL=block_flags.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"block_flags.cjs","names":[],"sources":["../../src/flags/block_flags.ts"],"sourcesContent":["import type { ServiceRequireFlags } from \"../services\";\nimport type { ArrayTypeUnion, Assert, Is, IsSubtypeOf } from \"./type_utils\";\n\n/**\n * Block-specific feature flags. Define flags that are interpreted by the desktop app to select\n * appropriate API to expose into Model and UI runtimes.\n *\n * Flags are split into two categories:\n * - supports... - those flags tells the desktop app that the block supports certain APIs, but can without them as well\n * - requires... - those flags tells the desktop app that the block requires certain APIs, and if desktop app doesn't support it, it can't be used in the block\n */\nexport type BlockCodeFeatureFlags = Record<`supports${string}`, boolean | number | undefined> &\n Record<`requires${string}`, boolean | number | undefined>;\n\n/**\n * Known block flags. Flags are set during model compilation, see `BlockModel.create` for more details and for initial values.\n */\nexport type BlockCodeKnownFeatureFlags = {\n readonly supportsLazyState?: boolean;\n readonly supportsPframeQueryRanking?: boolean;\n readonly requiresModelAPIVersion?: number;\n readonly requiresUIAPIVersion?: number;\n readonly requiresCreatePTable?: number;\n} & ServiceRequireFlags;\n\nexport const AllSupportsFeatureFlags = [\"supportsLazyState\", \"supportsPframeQueryRanking\"] as const;\n\nexport const AllRequiresFeatureFlags = [\n \"requiresUIAPIVersion\",\n \"requiresCreatePTable\",\n \"requiresModelAPIVersion\",\n] as const;\n\n//\n// Assertions\n//\n\n// This assertion ensures that BlockConfigV3KnownFeatureFlags is a subtype of BlockConfigV3FeatureFlags.\n// It will produce a compile-time error if there's a mismatch.\ntype _KnownFlagsAreValidFlags = Assert<\n IsSubtypeOf<BlockCodeKnownFeatureFlags, BlockCodeFeatureFlags>\n>;\n\n// This check ensures that all keys in BlockConfigV3FeatureFlags are covered in the arrays above.\n// It will produce a compile-time error if there's a mismatch.\n// Adding a service to Services automatically satisfies this assertion via ServiceRequireFlags.\ntype _AllFlagsAreCovered = Assert<\n Is<\n keyof BlockCodeKnownFeatureFlags,\n | ArrayTypeUnion<typeof AllRequiresFeatureFlags, typeof AllSupportsFeatureFlags>\n | keyof ServiceRequireFlags\n >\n>;\n"],"mappings":";;AAyBA,MAAa,0BAA0B,CAAC,qBAAqB,6BAA6B;AAE1F,MAAa,0BAA0B;CACrC;CACA;CACA;CACD"}
1
+ {"version":3,"file":"block_flags.cjs","names":[],"sources":["../../src/flags/block_flags.ts"],"sourcesContent":["import type { ServiceRequireFlags } from \"../services\";\nimport type { ArrayTypeUnion, Assert, Is, IsSubtypeOf } from \"./type_utils\";\n\n/**\n * Block-specific feature flags. Define flags that are interpreted by the desktop app to select\n * appropriate API to expose into Model and UI runtimes.\n *\n * Flags are split into two categories:\n * - supports... - those flags tells the desktop app that the block supports certain APIs, but can without them as well\n * - requires... - those flags tells the desktop app that the block requires certain APIs, and if desktop app doesn't support it, it can't be used in the block\n */\nexport type BlockCodeFeatureFlags = Record<`supports${string}`, boolean | number | undefined> &\n Record<`requires${string}`, boolean | number | undefined>;\n\n/**\n * Known block flags. Flags are set during model compilation, see `BlockModel.create` for more details and for initial values.\n */\nexport type BlockCodeKnownFeatureFlags = {\n readonly supportsLazyState?: boolean;\n readonly supportsPframeQueryRanking?: boolean;\n readonly requiresModelAPIVersion?: number;\n readonly requiresUIAPIVersion?: number;\n readonly requiresCreatePTable?: number;\n} & ServiceRequireFlags;\n\nexport const AllSupportsFeatureFlags = [\"supportsLazyState\", \"supportsPframeQueryRanking\"] as const;\n\nexport const AllRequiresFeatureFlags = [\n \"requiresUIAPIVersion\",\n \"requiresCreatePTable\",\n \"requiresModelAPIVersion\",\n] as const;\n\n//\n// Assertions\n//\n\n// This assertion ensures that BlockConfigV3KnownFeatureFlags is a subtype of BlockConfigV3FeatureFlags.\n// It will produce a compile-time error if there's a mismatch.\ntype _KnownFlagsAreValidFlags = Assert<\n IsSubtypeOf<BlockCodeKnownFeatureFlags, BlockCodeFeatureFlags>\n>;\n\n// This check ensures that all keys in BlockConfigV3FeatureFlags are covered in the arrays above.\n// It will produce a compile-time error if there's a mismatch.\n// Adding a service to Services automatically satisfies this assertion via ServiceRequireFlags.\ntype _AllFlagsAreCovered = Assert<\n Is<\n keyof BlockCodeKnownFeatureFlags,\n | ArrayTypeUnion<typeof AllRequiresFeatureFlags, typeof AllSupportsFeatureFlags>\n | keyof ServiceRequireFlags\n >\n>;\n"],"mappings":";AAyBA,MAAa,0BAA0B,CAAC,qBAAqB,6BAA6B;AAE1F,MAAa,0BAA0B;CACrC;CACA;CACA;CACD"}
@@ -1,6 +1,4 @@
1
1
  import { ServiceRequireFlags } from "../services/service_types.js";
2
- import "../services/index.js";
3
-
4
2
  //#region src/flags/block_flags.d.ts
5
3
  /**
6
4
  * Block-specific feature flags. Define flags that are interpreted by the desktop app to select
@@ -0,0 +1 @@
1
+ {"version":3,"file":"block_flags.d.ts","names":[],"sources":["../../src/flags/block_flags.ts"],"mappings":";;;;;AAWA;;;;;KAAY,qBAAA,GAAwB,MAAA,sDAClC,MAAA;;;;KAKU,0BAAA;EAAA,SACD,iBAAA;EAAA,SACA,0BAAA;EAAA,SACA,uBAAA;EAAA,SACA,oBAAA;EAAA,SACA,oBAAA;AAAA,IACP,mBAAA;AAAA,cAES,uBAAA;AAAA,cAEA,uBAAA"}
@@ -5,7 +5,7 @@ const AllRequiresFeatureFlags = [
5
5
  "requiresCreatePTable",
6
6
  "requiresModelAPIVersion"
7
7
  ];
8
-
9
8
  //#endregion
10
9
  export { AllRequiresFeatureFlags, AllSupportsFeatureFlags };
10
+
11
11
  //# sourceMappingURL=block_flags.js.map
@@ -1,4 +1,3 @@
1
-
2
1
  //#region src/flags/flag_utils.ts
3
2
  function checkBlockFlag(flags, flag, flagValue = true) {
4
3
  if (flags === void 0) return false;
@@ -74,11 +73,11 @@ var RuntimeCapabilities = class {
74
73
  if (incompatibleFlags !== void 0) throw new IncompatibleFlagsError(incompatibleFlags);
75
74
  }
76
75
  };
77
-
78
76
  //#endregion
79
77
  exports.IncompatibleFlagsError = IncompatibleFlagsError;
80
78
  exports.RuntimeCapabilities = RuntimeCapabilities;
81
79
  exports.checkBlockFlag = checkBlockFlag;
82
80
  exports.extractAllRequirements = extractAllRequirements;
83
81
  exports.extractAllSupports = extractAllSupports;
82
+
84
83
  //# sourceMappingURL=flag_utils.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"flag_utils.cjs","names":[],"sources":["../../src/flags/flag_utils.ts"],"sourcesContent":["import type { BlockCodeFeatureFlags, BlockCodeKnownFeatureFlags } from \"./block_flags\";\nimport type { FilterKeysByPrefix } from \"./type_utils\";\n\nexport function checkBlockFlag(\n flags: BlockCodeFeatureFlags | undefined,\n flag: keyof BlockCodeKnownFeatureFlags,\n flagValue: boolean | number = true,\n): boolean {\n if (flags === undefined) return false;\n return flags[flag] === flagValue;\n}\n\n/**\n * Extracts all requirements from the feature flags.\n * @param flags - The feature flags.\n * @returns A set of requirements.\n */\nexport function extractAllRequirements(\n flags: BlockCodeFeatureFlags | undefined,\n): Set<`requires${string}`> {\n if (flags === undefined) return new Set();\n return new Set(\n Object.entries(flags)\n .filter(([key, value]) => key.startsWith(\"requires\") && value === true)\n .map(([key]) => key as `requires${string}`),\n );\n}\n\n/**\n * Extracts all supports from the feature flags.\n * @param flags - The feature flags.\n * @returns A set of supports.\n */\nexport function extractAllSupports(\n flags: BlockCodeFeatureFlags | undefined,\n): Set<`supports${string}`> {\n if (flags === undefined) return new Set();\n return new Set(\n Object.entries(flags)\n .filter(([key, value]) => key.startsWith(\"supports\") && value === true)\n .map(([key]) => key as `supports${string}`),\n );\n}\n\nexport class IncompatibleFlagsError extends Error {\n name = \"IncompatibleFlagsError\";\n constructor(public readonly incompatibleFlags: Map<`requires${string}`, number | boolean>) {\n super(\n `Some of the block requirements are not supported by the runtime: ${Array.from(\n incompatibleFlags.entries(),\n )\n .map(([key, value]) => `${key}: ${value}`)\n .join(\", \")}`,\n );\n }\n}\n\n/**\n * A type that represents a supported requirement.\n * @remarks\n * This type is used to represent a supported requirement.\n * It is a subtype of `BlockCodeKnownFeatureFlags` and is used to represent a supported requirement.\n * It is used to represent a supported requirement.\n */\nexport type SupportedRequirement = FilterKeysByPrefix<BlockCodeKnownFeatureFlags, \"requires\">;\n\nexport class RuntimeCapabilities {\n private readonly supportedRequirements: Map<`requires${string}`, Set<number | boolean>> =\n new Map();\n\n /**\n * Adds a supported requirement to the runtime capabilities.\n * @param requirement - The requirement.\n * @param value - The value of the requirement. If not provided, defaults to true.\n */\n public addSupportedRequirement(\n requirement: SupportedRequirement,\n value: number | boolean = true,\n ): this {\n if (!this.supportedRequirements.has(requirement)) {\n this.supportedRequirements.set(requirement, new Set());\n }\n this.supportedRequirements.get(requirement)!.add(value);\n return this;\n }\n\n /**\n * Returns a map of incompatible flags. If the block flags are compatible, returns undefined.\n * @param blockFlags - The block flags.\n * @returns A map of incompatible flags, or undefined if the block flags are compatible.\n */\n public getIncompatibleFlags(\n blockFlags: BlockCodeFeatureFlags | undefined,\n ): Map<`requires${string}`, number | boolean> | undefined {\n if (blockFlags === undefined) return undefined;\n const incompatibleFlags = new Map<`requires${string}`, number | boolean>();\n for (const [key, value] of Object.entries(blockFlags)) {\n if (key.startsWith(\"requires\")) {\n if (value === undefined) continue;\n const supportedValues = this.supportedRequirements.get(key as `requires${string}`);\n if (supportedValues === undefined || !supportedValues.has(value as number | boolean)) {\n incompatibleFlags.set(key as `requires${string}`, value as number | boolean);\n }\n }\n }\n return incompatibleFlags.size === 0 ? undefined : incompatibleFlags;\n }\n\n /**\n * Checks if the block flags are compatible with the runtime capabilities.\n * @param blockFlags - The block flags.\n * @returns True if the block flags are compatible, false otherwise.\n */\n public checkCompatibility(blockFlags: BlockCodeFeatureFlags | undefined): boolean {\n return this.getIncompatibleFlags(blockFlags) === undefined;\n }\n\n /**\n * Throws an error if the block flags are incompatible with the runtime capabilities.\n * @param blockFlags - The block flags.\n * @throws IncompatibleFlagsError if the block flags are incompatible with the runtime capabilities.\n */\n public throwIfIncompatible(blockFlags: BlockCodeFeatureFlags | undefined) {\n const incompatibleFlags = this.getIncompatibleFlags(blockFlags);\n if (incompatibleFlags !== undefined) throw new IncompatibleFlagsError(incompatibleFlags);\n }\n}\n"],"mappings":";;AAGA,SAAgB,eACd,OACA,MACA,YAA8B,MACrB;AACT,KAAI,UAAU,OAAW,QAAO;AAChC,QAAO,MAAM,UAAU;;;;;;;AAQzB,SAAgB,uBACd,OAC0B;AAC1B,KAAI,UAAU,OAAW,wBAAO,IAAI,KAAK;AACzC,QAAO,IAAI,IACT,OAAO,QAAQ,MAAM,CAClB,QAAQ,CAAC,KAAK,WAAW,IAAI,WAAW,WAAW,IAAI,UAAU,KAAK,CACtE,KAAK,CAAC,SAAS,IAA2B,CAC9C;;;;;;;AAQH,SAAgB,mBACd,OAC0B;AAC1B,KAAI,UAAU,OAAW,wBAAO,IAAI,KAAK;AACzC,QAAO,IAAI,IACT,OAAO,QAAQ,MAAM,CAClB,QAAQ,CAAC,KAAK,WAAW,IAAI,WAAW,WAAW,IAAI,UAAU,KAAK,CACtE,KAAK,CAAC,SAAS,IAA2B,CAC9C;;AAGH,IAAa,yBAAb,cAA4C,MAAM;CAChD,OAAO;CACP,YAAY,AAAgB,mBAA+D;AACzF,QACE,oEAAoE,MAAM,KACxE,kBAAkB,SAAS,CAC5B,CACE,KAAK,CAAC,KAAK,WAAW,GAAG,IAAI,IAAI,QAAQ,CACzC,KAAK,KAAK,GACd;EAPyB;;;AAoB9B,IAAa,sBAAb,MAAiC;CAC/B,AAAiB,wCACf,IAAI,KAAK;;;;;;CAOX,AAAO,wBACL,aACA,QAA0B,MACpB;AACN,MAAI,CAAC,KAAK,sBAAsB,IAAI,YAAY,CAC9C,MAAK,sBAAsB,IAAI,6BAAa,IAAI,KAAK,CAAC;AAExD,OAAK,sBAAsB,IAAI,YAAY,CAAE,IAAI,MAAM;AACvD,SAAO;;;;;;;CAQT,AAAO,qBACL,YACwD;AACxD,MAAI,eAAe,OAAW,QAAO;EACrC,MAAM,oCAAoB,IAAI,KAA4C;AAC1E,OAAK,MAAM,CAAC,KAAK,UAAU,OAAO,QAAQ,WAAW,CACnD,KAAI,IAAI,WAAW,WAAW,EAAE;AAC9B,OAAI,UAAU,OAAW;GACzB,MAAM,kBAAkB,KAAK,sBAAsB,IAAI,IAA2B;AAClF,OAAI,oBAAoB,UAAa,CAAC,gBAAgB,IAAI,MAA0B,CAClF,mBAAkB,IAAI,KAA4B,MAA0B;;AAIlF,SAAO,kBAAkB,SAAS,IAAI,SAAY;;;;;;;CAQpD,AAAO,mBAAmB,YAAwD;AAChF,SAAO,KAAK,qBAAqB,WAAW,KAAK;;;;;;;CAQnD,AAAO,oBAAoB,YAA+C;EACxE,MAAM,oBAAoB,KAAK,qBAAqB,WAAW;AAC/D,MAAI,sBAAsB,OAAW,OAAM,IAAI,uBAAuB,kBAAkB"}
1
+ {"version":3,"file":"flag_utils.cjs","names":[],"sources":["../../src/flags/flag_utils.ts"],"sourcesContent":["import type { BlockCodeFeatureFlags, BlockCodeKnownFeatureFlags } from \"./block_flags\";\nimport type { FilterKeysByPrefix } from \"./type_utils\";\n\nexport function checkBlockFlag(\n flags: BlockCodeFeatureFlags | undefined,\n flag: keyof BlockCodeKnownFeatureFlags,\n flagValue: boolean | number = true,\n): boolean {\n if (flags === undefined) return false;\n return flags[flag] === flagValue;\n}\n\n/**\n * Extracts all requirements from the feature flags.\n * @param flags - The feature flags.\n * @returns A set of requirements.\n */\nexport function extractAllRequirements(\n flags: BlockCodeFeatureFlags | undefined,\n): Set<`requires${string}`> {\n if (flags === undefined) return new Set();\n return new Set(\n Object.entries(flags)\n .filter(([key, value]) => key.startsWith(\"requires\") && value === true)\n .map(([key]) => key as `requires${string}`),\n );\n}\n\n/**\n * Extracts all supports from the feature flags.\n * @param flags - The feature flags.\n * @returns A set of supports.\n */\nexport function extractAllSupports(\n flags: BlockCodeFeatureFlags | undefined,\n): Set<`supports${string}`> {\n if (flags === undefined) return new Set();\n return new Set(\n Object.entries(flags)\n .filter(([key, value]) => key.startsWith(\"supports\") && value === true)\n .map(([key]) => key as `supports${string}`),\n );\n}\n\nexport class IncompatibleFlagsError extends Error {\n name = \"IncompatibleFlagsError\";\n constructor(public readonly incompatibleFlags: Map<`requires${string}`, number | boolean>) {\n super(\n `Some of the block requirements are not supported by the runtime: ${Array.from(\n incompatibleFlags.entries(),\n )\n .map(([key, value]) => `${key}: ${value}`)\n .join(\", \")}`,\n );\n }\n}\n\n/**\n * A type that represents a supported requirement.\n * @remarks\n * This type is used to represent a supported requirement.\n * It is a subtype of `BlockCodeKnownFeatureFlags` and is used to represent a supported requirement.\n * It is used to represent a supported requirement.\n */\nexport type SupportedRequirement = FilterKeysByPrefix<BlockCodeKnownFeatureFlags, \"requires\">;\n\nexport class RuntimeCapabilities {\n private readonly supportedRequirements: Map<`requires${string}`, Set<number | boolean>> =\n new Map();\n\n /**\n * Adds a supported requirement to the runtime capabilities.\n * @param requirement - The requirement.\n * @param value - The value of the requirement. If not provided, defaults to true.\n */\n public addSupportedRequirement(\n requirement: SupportedRequirement,\n value: number | boolean = true,\n ): this {\n if (!this.supportedRequirements.has(requirement)) {\n this.supportedRequirements.set(requirement, new Set());\n }\n this.supportedRequirements.get(requirement)!.add(value);\n return this;\n }\n\n /**\n * Returns a map of incompatible flags. If the block flags are compatible, returns undefined.\n * @param blockFlags - The block flags.\n * @returns A map of incompatible flags, or undefined if the block flags are compatible.\n */\n public getIncompatibleFlags(\n blockFlags: BlockCodeFeatureFlags | undefined,\n ): Map<`requires${string}`, number | boolean> | undefined {\n if (blockFlags === undefined) return undefined;\n const incompatibleFlags = new Map<`requires${string}`, number | boolean>();\n for (const [key, value] of Object.entries(blockFlags)) {\n if (key.startsWith(\"requires\")) {\n if (value === undefined) continue;\n const supportedValues = this.supportedRequirements.get(key as `requires${string}`);\n if (supportedValues === undefined || !supportedValues.has(value as number | boolean)) {\n incompatibleFlags.set(key as `requires${string}`, value as number | boolean);\n }\n }\n }\n return incompatibleFlags.size === 0 ? undefined : incompatibleFlags;\n }\n\n /**\n * Checks if the block flags are compatible with the runtime capabilities.\n * @param blockFlags - The block flags.\n * @returns True if the block flags are compatible, false otherwise.\n */\n public checkCompatibility(blockFlags: BlockCodeFeatureFlags | undefined): boolean {\n return this.getIncompatibleFlags(blockFlags) === undefined;\n }\n\n /**\n * Throws an error if the block flags are incompatible with the runtime capabilities.\n * @param blockFlags - The block flags.\n * @throws IncompatibleFlagsError if the block flags are incompatible with the runtime capabilities.\n */\n public throwIfIncompatible(blockFlags: BlockCodeFeatureFlags | undefined) {\n const incompatibleFlags = this.getIncompatibleFlags(blockFlags);\n if (incompatibleFlags !== undefined) throw new IncompatibleFlagsError(incompatibleFlags);\n }\n}\n"],"mappings":";AAGA,SAAgB,eACd,OACA,MACA,YAA8B,MACrB;AACT,KAAI,UAAU,KAAA,EAAW,QAAO;AAChC,QAAO,MAAM,UAAU;;;;;;;AAQzB,SAAgB,uBACd,OAC0B;AAC1B,KAAI,UAAU,KAAA,EAAW,wBAAO,IAAI,KAAK;AACzC,QAAO,IAAI,IACT,OAAO,QAAQ,MAAM,CAClB,QAAQ,CAAC,KAAK,WAAW,IAAI,WAAW,WAAW,IAAI,UAAU,KAAK,CACtE,KAAK,CAAC,SAAS,IAA2B,CAC9C;;;;;;;AAQH,SAAgB,mBACd,OAC0B;AAC1B,KAAI,UAAU,KAAA,EAAW,wBAAO,IAAI,KAAK;AACzC,QAAO,IAAI,IACT,OAAO,QAAQ,MAAM,CAClB,QAAQ,CAAC,KAAK,WAAW,IAAI,WAAW,WAAW,IAAI,UAAU,KAAK,CACtE,KAAK,CAAC,SAAS,IAA2B,CAC9C;;AAGH,IAAa,yBAAb,cAA4C,MAAM;CAChD,OAAO;CACP,YAAY,mBAA+E;AACzF,QACE,oEAAoE,MAAM,KACxE,kBAAkB,SAAS,CAC5B,CACE,KAAK,CAAC,KAAK,WAAW,GAAG,IAAI,IAAI,QAAQ,CACzC,KAAK,KAAK,GACd;AAPyB,OAAA,oBAAA;;;AAoB9B,IAAa,sBAAb,MAAiC;CAC/B,wCACE,IAAI,KAAK;;;;;;CAOX,wBACE,aACA,QAA0B,MACpB;AACN,MAAI,CAAC,KAAK,sBAAsB,IAAI,YAAY,CAC9C,MAAK,sBAAsB,IAAI,6BAAa,IAAI,KAAK,CAAC;AAExD,OAAK,sBAAsB,IAAI,YAAY,CAAE,IAAI,MAAM;AACvD,SAAO;;;;;;;CAQT,qBACE,YACwD;AACxD,MAAI,eAAe,KAAA,EAAW,QAAO,KAAA;EACrC,MAAM,oCAAoB,IAAI,KAA4C;AAC1E,OAAK,MAAM,CAAC,KAAK,UAAU,OAAO,QAAQ,WAAW,CACnD,KAAI,IAAI,WAAW,WAAW,EAAE;AAC9B,OAAI,UAAU,KAAA,EAAW;GACzB,MAAM,kBAAkB,KAAK,sBAAsB,IAAI,IAA2B;AAClF,OAAI,oBAAoB,KAAA,KAAa,CAAC,gBAAgB,IAAI,MAA0B,CAClF,mBAAkB,IAAI,KAA4B,MAA0B;;AAIlF,SAAO,kBAAkB,SAAS,IAAI,KAAA,IAAY;;;;;;;CAQpD,mBAA0B,YAAwD;AAChF,SAAO,KAAK,qBAAqB,WAAW,KAAK,KAAA;;;;;;;CAQnD,oBAA2B,YAA+C;EACxE,MAAM,oBAAoB,KAAK,qBAAqB,WAAW;AAC/D,MAAI,sBAAsB,KAAA,EAAW,OAAM,IAAI,uBAAuB,kBAAkB"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flag_utils.d.ts","names":[],"sources":["../../src/flags/flag_utils.ts"],"mappings":";;;;iBAGgB,cAAA,CACd,KAAA,EAAO,qBAAA,cACP,IAAA,QAAY,0BAAA,EACZ,SAAA;;AAHF;;;;iBAcgB,sBAAA,CACd,KAAA,EAAO,qBAAA,eACN,GAAA;;;;;;iBAca,kBAAA,CACd,KAAA,EAAO,qBAAA,eACN,GAAA;AAAA,cASU,sBAAA,SAA+B,KAAA;EAAA,SAEd,iBAAA,EAAmB,GAAA;EAD/C,IAAA;cAC4B,iBAAA,EAAmB,GAAA;AAAA;;;;;AAbjD;;;KA+BY,oBAAA,GAAuB,kBAAA,CAAmB,0BAAA;AAAA,cAEzC,mBAAA;EAAA,iBACM,qBAAA;EAhChB;;;AASH;;EA+BS,uBAAA,CACL,WAAA,EAAa,oBAAA,EACb,KAAA;EA/B6C;;;;;EA6CxC,oBAAA,CACL,UAAA,EAAY,qBAAA,eACX,GAAA;EA/CyB;;;;;EAmErB,kBAAA,CAAmB,UAAA,EAAY,qBAAA;EAnEmD;;AAkB3F;;;EA0DS,mBAAA,CAAoB,UAAA,EAAY,qBAAA;AAAA"}
@@ -73,7 +73,7 @@ var RuntimeCapabilities = class {
73
73
  if (incompatibleFlags !== void 0) throw new IncompatibleFlagsError(incompatibleFlags);
74
74
  }
75
75
  };
76
-
77
76
  //#endregion
78
77
  export { IncompatibleFlagsError, RuntimeCapabilities, checkBlockFlag, extractAllRequirements, extractAllSupports };
78
+
79
79
  //# sourceMappingURL=flag_utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"flag_utils.js","names":[],"sources":["../../src/flags/flag_utils.ts"],"sourcesContent":["import type { BlockCodeFeatureFlags, BlockCodeKnownFeatureFlags } from \"./block_flags\";\nimport type { FilterKeysByPrefix } from \"./type_utils\";\n\nexport function checkBlockFlag(\n flags: BlockCodeFeatureFlags | undefined,\n flag: keyof BlockCodeKnownFeatureFlags,\n flagValue: boolean | number = true,\n): boolean {\n if (flags === undefined) return false;\n return flags[flag] === flagValue;\n}\n\n/**\n * Extracts all requirements from the feature flags.\n * @param flags - The feature flags.\n * @returns A set of requirements.\n */\nexport function extractAllRequirements(\n flags: BlockCodeFeatureFlags | undefined,\n): Set<`requires${string}`> {\n if (flags === undefined) return new Set();\n return new Set(\n Object.entries(flags)\n .filter(([key, value]) => key.startsWith(\"requires\") && value === true)\n .map(([key]) => key as `requires${string}`),\n );\n}\n\n/**\n * Extracts all supports from the feature flags.\n * @param flags - The feature flags.\n * @returns A set of supports.\n */\nexport function extractAllSupports(\n flags: BlockCodeFeatureFlags | undefined,\n): Set<`supports${string}`> {\n if (flags === undefined) return new Set();\n return new Set(\n Object.entries(flags)\n .filter(([key, value]) => key.startsWith(\"supports\") && value === true)\n .map(([key]) => key as `supports${string}`),\n );\n}\n\nexport class IncompatibleFlagsError extends Error {\n name = \"IncompatibleFlagsError\";\n constructor(public readonly incompatibleFlags: Map<`requires${string}`, number | boolean>) {\n super(\n `Some of the block requirements are not supported by the runtime: ${Array.from(\n incompatibleFlags.entries(),\n )\n .map(([key, value]) => `${key}: ${value}`)\n .join(\", \")}`,\n );\n }\n}\n\n/**\n * A type that represents a supported requirement.\n * @remarks\n * This type is used to represent a supported requirement.\n * It is a subtype of `BlockCodeKnownFeatureFlags` and is used to represent a supported requirement.\n * It is used to represent a supported requirement.\n */\nexport type SupportedRequirement = FilterKeysByPrefix<BlockCodeKnownFeatureFlags, \"requires\">;\n\nexport class RuntimeCapabilities {\n private readonly supportedRequirements: Map<`requires${string}`, Set<number | boolean>> =\n new Map();\n\n /**\n * Adds a supported requirement to the runtime capabilities.\n * @param requirement - The requirement.\n * @param value - The value of the requirement. If not provided, defaults to true.\n */\n public addSupportedRequirement(\n requirement: SupportedRequirement,\n value: number | boolean = true,\n ): this {\n if (!this.supportedRequirements.has(requirement)) {\n this.supportedRequirements.set(requirement, new Set());\n }\n this.supportedRequirements.get(requirement)!.add(value);\n return this;\n }\n\n /**\n * Returns a map of incompatible flags. If the block flags are compatible, returns undefined.\n * @param blockFlags - The block flags.\n * @returns A map of incompatible flags, or undefined if the block flags are compatible.\n */\n public getIncompatibleFlags(\n blockFlags: BlockCodeFeatureFlags | undefined,\n ): Map<`requires${string}`, number | boolean> | undefined {\n if (blockFlags === undefined) return undefined;\n const incompatibleFlags = new Map<`requires${string}`, number | boolean>();\n for (const [key, value] of Object.entries(blockFlags)) {\n if (key.startsWith(\"requires\")) {\n if (value === undefined) continue;\n const supportedValues = this.supportedRequirements.get(key as `requires${string}`);\n if (supportedValues === undefined || !supportedValues.has(value as number | boolean)) {\n incompatibleFlags.set(key as `requires${string}`, value as number | boolean);\n }\n }\n }\n return incompatibleFlags.size === 0 ? undefined : incompatibleFlags;\n }\n\n /**\n * Checks if the block flags are compatible with the runtime capabilities.\n * @param blockFlags - The block flags.\n * @returns True if the block flags are compatible, false otherwise.\n */\n public checkCompatibility(blockFlags: BlockCodeFeatureFlags | undefined): boolean {\n return this.getIncompatibleFlags(blockFlags) === undefined;\n }\n\n /**\n * Throws an error if the block flags are incompatible with the runtime capabilities.\n * @param blockFlags - The block flags.\n * @throws IncompatibleFlagsError if the block flags are incompatible with the runtime capabilities.\n */\n public throwIfIncompatible(blockFlags: BlockCodeFeatureFlags | undefined) {\n const incompatibleFlags = this.getIncompatibleFlags(blockFlags);\n if (incompatibleFlags !== undefined) throw new IncompatibleFlagsError(incompatibleFlags);\n }\n}\n"],"mappings":";AAGA,SAAgB,eACd,OACA,MACA,YAA8B,MACrB;AACT,KAAI,UAAU,OAAW,QAAO;AAChC,QAAO,MAAM,UAAU;;;;;;;AAQzB,SAAgB,uBACd,OAC0B;AAC1B,KAAI,UAAU,OAAW,wBAAO,IAAI,KAAK;AACzC,QAAO,IAAI,IACT,OAAO,QAAQ,MAAM,CAClB,QAAQ,CAAC,KAAK,WAAW,IAAI,WAAW,WAAW,IAAI,UAAU,KAAK,CACtE,KAAK,CAAC,SAAS,IAA2B,CAC9C;;;;;;;AAQH,SAAgB,mBACd,OAC0B;AAC1B,KAAI,UAAU,OAAW,wBAAO,IAAI,KAAK;AACzC,QAAO,IAAI,IACT,OAAO,QAAQ,MAAM,CAClB,QAAQ,CAAC,KAAK,WAAW,IAAI,WAAW,WAAW,IAAI,UAAU,KAAK,CACtE,KAAK,CAAC,SAAS,IAA2B,CAC9C;;AAGH,IAAa,yBAAb,cAA4C,MAAM;CAChD,OAAO;CACP,YAAY,AAAgB,mBAA+D;AACzF,QACE,oEAAoE,MAAM,KACxE,kBAAkB,SAAS,CAC5B,CACE,KAAK,CAAC,KAAK,WAAW,GAAG,IAAI,IAAI,QAAQ,CACzC,KAAK,KAAK,GACd;EAPyB;;;AAoB9B,IAAa,sBAAb,MAAiC;CAC/B,AAAiB,wCACf,IAAI,KAAK;;;;;;CAOX,AAAO,wBACL,aACA,QAA0B,MACpB;AACN,MAAI,CAAC,KAAK,sBAAsB,IAAI,YAAY,CAC9C,MAAK,sBAAsB,IAAI,6BAAa,IAAI,KAAK,CAAC;AAExD,OAAK,sBAAsB,IAAI,YAAY,CAAE,IAAI,MAAM;AACvD,SAAO;;;;;;;CAQT,AAAO,qBACL,YACwD;AACxD,MAAI,eAAe,OAAW,QAAO;EACrC,MAAM,oCAAoB,IAAI,KAA4C;AAC1E,OAAK,MAAM,CAAC,KAAK,UAAU,OAAO,QAAQ,WAAW,CACnD,KAAI,IAAI,WAAW,WAAW,EAAE;AAC9B,OAAI,UAAU,OAAW;GACzB,MAAM,kBAAkB,KAAK,sBAAsB,IAAI,IAA2B;AAClF,OAAI,oBAAoB,UAAa,CAAC,gBAAgB,IAAI,MAA0B,CAClF,mBAAkB,IAAI,KAA4B,MAA0B;;AAIlF,SAAO,kBAAkB,SAAS,IAAI,SAAY;;;;;;;CAQpD,AAAO,mBAAmB,YAAwD;AAChF,SAAO,KAAK,qBAAqB,WAAW,KAAK;;;;;;;CAQnD,AAAO,oBAAoB,YAA+C;EACxE,MAAM,oBAAoB,KAAK,qBAAqB,WAAW;AAC/D,MAAI,sBAAsB,OAAW,OAAM,IAAI,uBAAuB,kBAAkB"}
1
+ {"version":3,"file":"flag_utils.js","names":[],"sources":["../../src/flags/flag_utils.ts"],"sourcesContent":["import type { BlockCodeFeatureFlags, BlockCodeKnownFeatureFlags } from \"./block_flags\";\nimport type { FilterKeysByPrefix } from \"./type_utils\";\n\nexport function checkBlockFlag(\n flags: BlockCodeFeatureFlags | undefined,\n flag: keyof BlockCodeKnownFeatureFlags,\n flagValue: boolean | number = true,\n): boolean {\n if (flags === undefined) return false;\n return flags[flag] === flagValue;\n}\n\n/**\n * Extracts all requirements from the feature flags.\n * @param flags - The feature flags.\n * @returns A set of requirements.\n */\nexport function extractAllRequirements(\n flags: BlockCodeFeatureFlags | undefined,\n): Set<`requires${string}`> {\n if (flags === undefined) return new Set();\n return new Set(\n Object.entries(flags)\n .filter(([key, value]) => key.startsWith(\"requires\") && value === true)\n .map(([key]) => key as `requires${string}`),\n );\n}\n\n/**\n * Extracts all supports from the feature flags.\n * @param flags - The feature flags.\n * @returns A set of supports.\n */\nexport function extractAllSupports(\n flags: BlockCodeFeatureFlags | undefined,\n): Set<`supports${string}`> {\n if (flags === undefined) return new Set();\n return new Set(\n Object.entries(flags)\n .filter(([key, value]) => key.startsWith(\"supports\") && value === true)\n .map(([key]) => key as `supports${string}`),\n );\n}\n\nexport class IncompatibleFlagsError extends Error {\n name = \"IncompatibleFlagsError\";\n constructor(public readonly incompatibleFlags: Map<`requires${string}`, number | boolean>) {\n super(\n `Some of the block requirements are not supported by the runtime: ${Array.from(\n incompatibleFlags.entries(),\n )\n .map(([key, value]) => `${key}: ${value}`)\n .join(\", \")}`,\n );\n }\n}\n\n/**\n * A type that represents a supported requirement.\n * @remarks\n * This type is used to represent a supported requirement.\n * It is a subtype of `BlockCodeKnownFeatureFlags` and is used to represent a supported requirement.\n * It is used to represent a supported requirement.\n */\nexport type SupportedRequirement = FilterKeysByPrefix<BlockCodeKnownFeatureFlags, \"requires\">;\n\nexport class RuntimeCapabilities {\n private readonly supportedRequirements: Map<`requires${string}`, Set<number | boolean>> =\n new Map();\n\n /**\n * Adds a supported requirement to the runtime capabilities.\n * @param requirement - The requirement.\n * @param value - The value of the requirement. If not provided, defaults to true.\n */\n public addSupportedRequirement(\n requirement: SupportedRequirement,\n value: number | boolean = true,\n ): this {\n if (!this.supportedRequirements.has(requirement)) {\n this.supportedRequirements.set(requirement, new Set());\n }\n this.supportedRequirements.get(requirement)!.add(value);\n return this;\n }\n\n /**\n * Returns a map of incompatible flags. If the block flags are compatible, returns undefined.\n * @param blockFlags - The block flags.\n * @returns A map of incompatible flags, or undefined if the block flags are compatible.\n */\n public getIncompatibleFlags(\n blockFlags: BlockCodeFeatureFlags | undefined,\n ): Map<`requires${string}`, number | boolean> | undefined {\n if (blockFlags === undefined) return undefined;\n const incompatibleFlags = new Map<`requires${string}`, number | boolean>();\n for (const [key, value] of Object.entries(blockFlags)) {\n if (key.startsWith(\"requires\")) {\n if (value === undefined) continue;\n const supportedValues = this.supportedRequirements.get(key as `requires${string}`);\n if (supportedValues === undefined || !supportedValues.has(value as number | boolean)) {\n incompatibleFlags.set(key as `requires${string}`, value as number | boolean);\n }\n }\n }\n return incompatibleFlags.size === 0 ? undefined : incompatibleFlags;\n }\n\n /**\n * Checks if the block flags are compatible with the runtime capabilities.\n * @param blockFlags - The block flags.\n * @returns True if the block flags are compatible, false otherwise.\n */\n public checkCompatibility(blockFlags: BlockCodeFeatureFlags | undefined): boolean {\n return this.getIncompatibleFlags(blockFlags) === undefined;\n }\n\n /**\n * Throws an error if the block flags are incompatible with the runtime capabilities.\n * @param blockFlags - The block flags.\n * @throws IncompatibleFlagsError if the block flags are incompatible with the runtime capabilities.\n */\n public throwIfIncompatible(blockFlags: BlockCodeFeatureFlags | undefined) {\n const incompatibleFlags = this.getIncompatibleFlags(blockFlags);\n if (incompatibleFlags !== undefined) throw new IncompatibleFlagsError(incompatibleFlags);\n }\n}\n"],"mappings":";AAGA,SAAgB,eACd,OACA,MACA,YAA8B,MACrB;AACT,KAAI,UAAU,KAAA,EAAW,QAAO;AAChC,QAAO,MAAM,UAAU;;;;;;;AAQzB,SAAgB,uBACd,OAC0B;AAC1B,KAAI,UAAU,KAAA,EAAW,wBAAO,IAAI,KAAK;AACzC,QAAO,IAAI,IACT,OAAO,QAAQ,MAAM,CAClB,QAAQ,CAAC,KAAK,WAAW,IAAI,WAAW,WAAW,IAAI,UAAU,KAAK,CACtE,KAAK,CAAC,SAAS,IAA2B,CAC9C;;;;;;;AAQH,SAAgB,mBACd,OAC0B;AAC1B,KAAI,UAAU,KAAA,EAAW,wBAAO,IAAI,KAAK;AACzC,QAAO,IAAI,IACT,OAAO,QAAQ,MAAM,CAClB,QAAQ,CAAC,KAAK,WAAW,IAAI,WAAW,WAAW,IAAI,UAAU,KAAK,CACtE,KAAK,CAAC,SAAS,IAA2B,CAC9C;;AAGH,IAAa,yBAAb,cAA4C,MAAM;CAChD,OAAO;CACP,YAAY,mBAA+E;AACzF,QACE,oEAAoE,MAAM,KACxE,kBAAkB,SAAS,CAC5B,CACE,KAAK,CAAC,KAAK,WAAW,GAAG,IAAI,IAAI,QAAQ,CACzC,KAAK,KAAK,GACd;AAPyB,OAAA,oBAAA;;;AAoB9B,IAAa,sBAAb,MAAiC;CAC/B,wCACE,IAAI,KAAK;;;;;;CAOX,wBACE,aACA,QAA0B,MACpB;AACN,MAAI,CAAC,KAAK,sBAAsB,IAAI,YAAY,CAC9C,MAAK,sBAAsB,IAAI,6BAAa,IAAI,KAAK,CAAC;AAExD,OAAK,sBAAsB,IAAI,YAAY,CAAE,IAAI,MAAM;AACvD,SAAO;;;;;;;CAQT,qBACE,YACwD;AACxD,MAAI,eAAe,KAAA,EAAW,QAAO,KAAA;EACrC,MAAM,oCAAoB,IAAI,KAA4C;AAC1E,OAAK,MAAM,CAAC,KAAK,UAAU,OAAO,QAAQ,WAAW,CACnD,KAAI,IAAI,WAAW,WAAW,EAAE;AAC9B,OAAI,UAAU,KAAA,EAAW;GACzB,MAAM,kBAAkB,KAAK,sBAAsB,IAAI,IAA2B;AAClF,OAAI,oBAAoB,KAAA,KAAa,CAAC,gBAAgB,IAAI,MAA0B,CAClF,mBAAkB,IAAI,KAA4B,MAA0B;;AAIlF,SAAO,kBAAkB,SAAS,IAAI,KAAA,IAAY;;;;;;;CAQpD,mBAA0B,YAAwD;AAChF,SAAO,KAAK,qBAAqB,WAAW,KAAK,KAAA;;;;;;;CAQnD,oBAA2B,YAA+C;EACxE,MAAM,oBAAoB,KAAK,qBAAqB,WAAW;AAC/D,MAAI,sBAAsB,KAAA,EAAW,OAAM,IAAI,uBAAuB,kBAAkB"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"type_utils.d.ts","names":[],"sources":["../../src/flags/type_utils.ts"],"mappings":";;AAIA;;KAAY,kBAAA,4CACE,CAAA,IAAK,CAAA,YAAa,CAAA,cAAe,CAAA,WAAY,CAAA,CAAE,CAAA;;;;;KAOjD,eAAA,mBACA,CAAA,SAAU,CAAA,4BAA4B,CAAA,SAAU,CAAA;EAEpD,KAAA;EAAmD,QAAA,EAAU,CAAA;EAAG,MAAA,EAAQ,CAAA;AAAA;;;;;KAMpE,EAAA,mBACA,CAAA,SAAU,CAAA,4BAA4B,CAAA,SAAU,CAAA;;;;AAV5D;KAgBY,WAAA,SAAoB,CAAA,SAAU,CAAA;;;;;KAM9B,MAAA,mBAAyB,CAAA;;;;KAKzB,cAAA,uDAGR,CAAA,yBACA,CAAA,WACA,CAAA,yBACE,CAAA,WACA,CAAA,WAAY,CAAA"}
package/dist/httpAuth.cjs CHANGED
@@ -1,4 +1,3 @@
1
-
2
1
  //#region src/httpAuth.ts
3
2
  function parseHttpAuth(input) {
4
3
  const match = /(?<scheme>.*?) (?<parameters>.*)/.exec(input);
@@ -17,8 +16,8 @@ function serializeHttpAuth(input) {
17
16
  if (input.scheme === "Basic") return `Basic ${btoa(`${input.username}:${input.password}`)}`;
18
17
  throw new Error(`Unsupported auth scheme: ${input.scheme}.`);
19
18
  }
20
-
21
19
  //#endregion
22
20
  exports.parseHttpAuth = parseHttpAuth;
23
21
  exports.serializeHttpAuth = serializeHttpAuth;
22
+
24
23
  //# sourceMappingURL=httpAuth.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"httpAuth.cjs","names":[],"sources":["../src/httpAuth.ts"],"sourcesContent":["/* TODO: replace atob/btoa with Uint8Array.toBase64/fromBase64 in the future */\n\nexport function parseHttpAuth(input: string): HttpAuth {\n const match = /(?<scheme>.*?) (?<parameters>.*)/.exec(input);\n if (match?.groups?.scheme === \"Basic\") {\n const credentialsMatch = /(?<username>.*?):(?<password>.*)/.exec(atob(match.groups.parameters));\n if (!credentialsMatch?.groups) {\n throw new Error(`Malformed credentials.`);\n }\n return {\n scheme: \"Basic\",\n username: credentialsMatch.groups.username,\n password: credentialsMatch.groups.password,\n };\n }\n throw new Error(`Unsupported auth scheme: ${match?.groups?.scheme}.`);\n}\n\nexport function serializeHttpAuth(input: HttpAuth): string {\n if (input.scheme === \"Basic\") {\n return `Basic ${btoa(`${input.username}:${input.password}`)}`;\n }\n throw new Error(`Unsupported auth scheme: ${input.scheme as string}.`);\n}\n\nexport type HttpAuth = BasicHttpAuth;\n\nexport interface BasicHttpAuth {\n scheme: \"Basic\";\n username: string;\n password: string;\n}\n"],"mappings":";;AAEA,SAAgB,cAAc,OAAyB;CACrD,MAAM,QAAQ,mCAAmC,KAAK,MAAM;AAC5D,KAAI,OAAO,QAAQ,WAAW,SAAS;EACrC,MAAM,mBAAmB,mCAAmC,KAAK,KAAK,MAAM,OAAO,WAAW,CAAC;AAC/F,MAAI,CAAC,kBAAkB,OACrB,OAAM,IAAI,MAAM,yBAAyB;AAE3C,SAAO;GACL,QAAQ;GACR,UAAU,iBAAiB,OAAO;GAClC,UAAU,iBAAiB,OAAO;GACnC;;AAEH,OAAM,IAAI,MAAM,4BAA4B,OAAO,QAAQ,OAAO,GAAG;;AAGvE,SAAgB,kBAAkB,OAAyB;AACzD,KAAI,MAAM,WAAW,QACnB,QAAO,SAAS,KAAK,GAAG,MAAM,SAAS,GAAG,MAAM,WAAW;AAE7D,OAAM,IAAI,MAAM,4BAA4B,MAAM,OAAiB,GAAG"}
1
+ {"version":3,"file":"httpAuth.cjs","names":[],"sources":["../src/httpAuth.ts"],"sourcesContent":["/* TODO: replace atob/btoa with Uint8Array.toBase64/fromBase64 in the future */\n\nexport function parseHttpAuth(input: string): HttpAuth {\n const match = /(?<scheme>.*?) (?<parameters>.*)/.exec(input);\n if (match?.groups?.scheme === \"Basic\") {\n const credentialsMatch = /(?<username>.*?):(?<password>.*)/.exec(atob(match.groups.parameters));\n if (!credentialsMatch?.groups) {\n throw new Error(`Malformed credentials.`);\n }\n return {\n scheme: \"Basic\",\n username: credentialsMatch.groups.username,\n password: credentialsMatch.groups.password,\n };\n }\n throw new Error(`Unsupported auth scheme: ${match?.groups?.scheme}.`);\n}\n\nexport function serializeHttpAuth(input: HttpAuth): string {\n if (input.scheme === \"Basic\") {\n return `Basic ${btoa(`${input.username}:${input.password}`)}`;\n }\n throw new Error(`Unsupported auth scheme: ${input.scheme as string}.`);\n}\n\nexport type HttpAuth = BasicHttpAuth;\n\nexport interface BasicHttpAuth {\n scheme: \"Basic\";\n username: string;\n password: string;\n}\n"],"mappings":";AAEA,SAAgB,cAAc,OAAyB;CACrD,MAAM,QAAQ,mCAAmC,KAAK,MAAM;AAC5D,KAAI,OAAO,QAAQ,WAAW,SAAS;EACrC,MAAM,mBAAmB,mCAAmC,KAAK,KAAK,MAAM,OAAO,WAAW,CAAC;AAC/F,MAAI,CAAC,kBAAkB,OACrB,OAAM,IAAI,MAAM,yBAAyB;AAE3C,SAAO;GACL,QAAQ;GACR,UAAU,iBAAiB,OAAO;GAClC,UAAU,iBAAiB,OAAO;GACnC;;AAEH,OAAM,IAAI,MAAM,4BAA4B,OAAO,QAAQ,OAAO,GAAG;;AAGvE,SAAgB,kBAAkB,OAAyB;AACzD,KAAI,MAAM,WAAW,QACnB,QAAO,SAAS,KAAK,GAAG,MAAM,SAAS,GAAG,MAAM,WAAW;AAE7D,OAAM,IAAI,MAAM,4BAA4B,MAAM,OAAiB,GAAG"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"httpAuth.d.ts","names":[],"sources":["../src/httpAuth.ts"],"mappings":";iBAEgB,aAAA,CAAc,KAAA,WAAgB,QAAA;AAAA,iBAgB9B,iBAAA,CAAkB,KAAA,EAAO,QAAA;AAAA,KAO7B,QAAA,GAAW,aAAA;AAAA,UAEN,aAAA;EACf,MAAA;EACA,QAAA;EACA,QAAA;AAAA"}
package/dist/httpAuth.js CHANGED
@@ -16,7 +16,7 @@ function serializeHttpAuth(input) {
16
16
  if (input.scheme === "Basic") return `Basic ${btoa(`${input.username}:${input.password}`)}`;
17
17
  throw new Error(`Unsupported auth scheme: ${input.scheme}.`);
18
18
  }
19
-
20
19
  //#endregion
21
20
  export { parseHttpAuth, serializeHttpAuth };
21
+
22
22
  //# sourceMappingURL=httpAuth.js.map
package/dist/index.cjs CHANGED
@@ -1,49 +1,48 @@
1
- Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
- const require_block_config = require('./bmodel/block_config.cjs');
3
- const require_code = require('./bmodel/code.cjs');
4
- const require_normalization = require('./bmodel/normalization.cjs');
5
- require('./bmodel/index.cjs');
6
- const require_urls = require('./drivers/urls.cjs');
7
- const require_blob = require('./drivers/blob.cjs');
8
- const require_log = require('./drivers/log.cjs');
9
- const require_util = require('./util.cjs');
10
- const require_ls = require('./drivers/ls.cjs');
11
- const require_data_info = require('./drivers/pframe/data_info.cjs');
12
- const require_errors = require('./errors.cjs');
13
- const require_json = require('./json.cjs');
14
- const require_spec = require('./drivers/pframe/spec/spec.cjs');
15
- const require_data_types = require('./drivers/pframe/data_types.cjs');
16
- const require_utils = require('./drivers/pframe/query/utils.cjs');
17
- const require_table_calculate = require('./drivers/pframe/table_calculate.cjs');
18
- const require_table_common = require('./drivers/pframe/table_common.cjs');
19
- const require_ids = require('./drivers/pframe/spec/ids.cjs');
20
- const require_anchored = require('./drivers/pframe/spec/anchored.cjs');
21
- const require_filtered_column = require('./drivers/pframe/spec/filtered_column.cjs');
22
- const require_spec$1 = require('./pool/spec.cjs');
23
- const require_query = require('./pool/query.cjs');
24
- const require_selectors = require('./drivers/pframe/spec/selectors.cjs');
25
- const require_native_id = require('./drivers/pframe/spec/native_id.cjs');
26
- const require_linker_columns = require('./drivers/pframe/linker_columns.cjs');
27
- const require_ChunkedStreamReader = require('./drivers/ChunkedStreamReader.cjs');
28
- require('./drivers/index.cjs');
29
- const require_block_flags = require('./flags/block_flags.cjs');
30
- const require_flag_utils = require('./flags/flag_utils.cjs');
31
- const require_navigation = require('./navigation.cjs');
32
- const require_plid = require('./plid.cjs');
33
- const require_ref = require('./ref.cjs');
34
- const require_value_or_error = require('./value_or_error.cjs');
35
- const require_base64 = require('./base64.cjs');
36
- const require_httpAuth = require('./httpAuth.cjs');
37
- const require_resource_types = require('./resource_types.cjs');
38
- const require_service_types = require('./services/service_types.cjs');
39
- const require_service_registry = require('./services/service_registry.cjs');
40
- const require_service_declarations = require('./services/service_declarations.cjs');
41
- const require_service_capabilities = require('./services/service_capabilities.cjs');
42
- const require_service_injector_factory = require('./services/service_injector_factory.cjs');
43
- const require_service_injectors = require('./services/service_injectors.cjs');
44
- require('./services/index.cjs');
45
- const require_pool_entry = require('./pool_entry.cjs');
46
-
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_block_config = require("./bmodel/block_config.cjs");
3
+ const require_code = require("./bmodel/code.cjs");
4
+ const require_normalization = require("./bmodel/normalization.cjs");
5
+ require("./bmodel/index.cjs");
6
+ const require_urls = require("./drivers/urls.cjs");
7
+ const require_blob = require("./drivers/blob.cjs");
8
+ const require_log = require("./drivers/log.cjs");
9
+ const require_util = require("./util.cjs");
10
+ const require_ls = require("./drivers/ls.cjs");
11
+ const require_data_info = require("./drivers/pframe/data_info.cjs");
12
+ const require_errors = require("./errors.cjs");
13
+ const require_json = require("./json.cjs");
14
+ const require_spec = require("./drivers/pframe/spec/spec.cjs");
15
+ const require_data_types = require("./drivers/pframe/data_types.cjs");
16
+ const require_utils = require("./drivers/pframe/query/utils.cjs");
17
+ const require_table_calculate = require("./drivers/pframe/table_calculate.cjs");
18
+ const require_table_common = require("./drivers/pframe/table_common.cjs");
19
+ const require_ids = require("./drivers/pframe/spec/ids.cjs");
20
+ const require_anchored = require("./drivers/pframe/spec/anchored.cjs");
21
+ const require_filtered_column = require("./drivers/pframe/spec/filtered_column.cjs");
22
+ const require_spec$1 = require("./pool/spec.cjs");
23
+ const require_query = require("./pool/query.cjs");
24
+ const require_selectors = require("./drivers/pframe/spec/selectors.cjs");
25
+ const require_native_id = require("./drivers/pframe/spec/native_id.cjs");
26
+ const require_linker_columns = require("./drivers/pframe/linker_columns.cjs");
27
+ const require_ChunkedStreamReader = require("./drivers/ChunkedStreamReader.cjs");
28
+ require("./drivers/index.cjs");
29
+ const require_block_flags = require("./flags/block_flags.cjs");
30
+ const require_flag_utils = require("./flags/flag_utils.cjs");
31
+ const require_navigation = require("./navigation.cjs");
32
+ const require_plid = require("./plid.cjs");
33
+ const require_ref = require("./ref.cjs");
34
+ const require_value_or_error = require("./value_or_error.cjs");
35
+ const require_base64 = require("./base64.cjs");
36
+ const require_httpAuth = require("./httpAuth.cjs");
37
+ const require_resource_types = require("./resource_types.cjs");
38
+ const require_service_types = require("./services/service_types.cjs");
39
+ const require_service_registry = require("./services/service_registry.cjs");
40
+ const require_service_declarations = require("./services/service_declarations.cjs");
41
+ const require_service_capabilities = require("./services/service_capabilities.cjs");
42
+ const require_service_injector_factory = require("./services/service_injector_factory.cjs");
43
+ const require_service_injectors = require("./services/service_injectors.cjs");
44
+ require("./services/index.cjs");
45
+ const require_pool_entry = require("./pool_entry.cjs");
47
46
  exports.AbortError = require_errors.AbortError;
48
47
  exports.AllRequiresFeatureFlags = require_block_flags.AllRequiresFeatureFlags;
49
48
  exports.AllSupportsFeatureFlags = require_block_flags.AllSupportsFeatureFlags;
@@ -130,6 +129,7 @@ exports.hasAbortError = require_errors.hasAbortError;
130
129
  exports.isAbortError = require_errors.isAbortError;
131
130
  exports.isAggregateError = require_errors.isAggregateError;
132
131
  exports.isAnchoredPColumnId = require_selectors.isAnchoredPColumnId;
132
+ exports.isAnyLogHandle = require_log.isAnyLogHandle;
133
133
  exports.isAxisId = require_spec.isAxisId;
134
134
  exports.isBlockUIURL = require_urls.isBlockUIURL;
135
135
  exports.isBooleanExpression = require_utils.isBooleanExpression;
@@ -214,4 +214,4 @@ exports.withEnrichments = require_ref.withEnrichments;
214
214
  exports.wrapAndSerialize = require_errors.wrapAndSerialize;
215
215
  exports.wrapAndSerializeAsync = require_errors.wrapAndSerializeAsync;
216
216
  exports.wrapAsyncCallback = require_errors.wrapAsyncCallback;
217
- exports.wrapCallback = require_errors.wrapCallback;
217
+ exports.wrapCallback = require_errors.wrapCallback;