ballerina-core 1.0.187 → 1.0.189

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 (488) hide show
  1. package/bin/main.d.ts +1 -1
  2. package/bin/main.js +1 -1
  3. package/bin/src/api-response-handler/coroutines/runner.d.ts +2 -9
  4. package/bin/src/api-response-handler/coroutines/runner.js +13 -20
  5. package/bin/src/api-response-handler/state.d.ts +12 -12
  6. package/bin/src/api-response-handler/state.js +11 -13
  7. package/bin/src/apiResultStatus/state.d.ts +3 -10
  8. package/bin/src/apiResultStatus/state.js +5 -2
  9. package/bin/src/async/domains/mirroring/domains/collection/coroutines/synchronizers.d.ts +75 -400
  10. package/bin/src/async/domains/mirroring/domains/collection/coroutines/synchronizers.js +196 -314
  11. package/bin/src/async/domains/mirroring/domains/collection/state.d.ts +25 -38
  12. package/bin/src/async/domains/mirroring/domains/collection/state.js +36 -126
  13. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-collection/state.d.ts +8 -12
  14. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-collection/state.js +11 -18
  15. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-collection-entity/state.d.ts +9 -12
  16. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-collection-entity/state.js +19 -19
  17. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-entities/state.d.ts +8 -17
  18. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-entities/state.js +1 -1
  19. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-entity/state.d.ts +13 -16
  20. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-entity/state.js +18 -18
  21. package/bin/src/async/domains/mirroring/domains/entity/state.d.ts +9 -12
  22. package/bin/src/async/domains/mirroring/domains/entity/state.js +9 -18
  23. package/bin/src/async/domains/mirroring/domains/singleton/coroutines/synchronizers.d.ts +41 -233
  24. package/bin/src/async/domains/mirroring/domains/singleton/coroutines/synchronizers.js +83 -134
  25. package/bin/src/async/domains/mirroring/domains/singleton/state.d.ts +15 -24
  26. package/bin/src/async/domains/mirroring/domains/singleton/state.js +8 -52
  27. package/bin/src/async/domains/mirroring/domains/synchronization-result/state.d.ts +2 -5
  28. package/bin/src/async/domains/mirroring/domains/synchronization-result/state.js +1 -1
  29. package/bin/src/async/domains/mirroring/domains/synchronized-entities/state.d.ts +10 -16
  30. package/bin/src/async/domains/mirroring/domains/synchronized-entities/state.js +4 -7
  31. package/bin/src/async/domains/promise/state.d.ts +4 -9
  32. package/bin/src/async/domains/promise/state.js +9 -20
  33. package/bin/src/async/domains/synchronized/coroutines/synchronize.d.ts +4 -29
  34. package/bin/src/async/domains/synchronized/coroutines/synchronize.js +28 -80
  35. package/bin/src/async/domains/synchronized/state.d.ts +7 -14
  36. package/bin/src/async/domains/synchronized/state.js +6 -16
  37. package/bin/src/async/state.d.ts +45 -56
  38. package/bin/src/async/state.js +97 -115
  39. package/bin/src/baseEntity/domains/identifiable/state.d.ts +11 -15
  40. package/bin/src/baseEntity/domains/identifiable/state.js +9 -9
  41. package/bin/src/collections/domains/array/state.d.ts +7 -7
  42. package/bin/src/collections/domains/array/state.js +5 -5
  43. package/bin/src/collections/domains/errors/state.d.ts +10 -10
  44. package/bin/src/collections/domains/errors/state.js +10 -10
  45. package/bin/src/collections/domains/immutable/domains/list/state.d.ts +15 -19
  46. package/bin/src/collections/domains/immutable/domains/list/state.js +44 -46
  47. package/bin/src/collections/domains/immutable/domains/map/state.d.ts +16 -30
  48. package/bin/src/collections/domains/immutable/domains/map/state.js +23 -41
  49. package/bin/src/collections/domains/immutable/domains/orderedMap/state.d.ts +25 -53
  50. package/bin/src/collections/domains/immutable/domains/orderedMap/state.js +65 -84
  51. package/bin/src/collections/domains/immutable/domains/ordereredSet/state.d.ts +6 -6
  52. package/bin/src/collections/domains/immutable/domains/ordereredSet/state.js +6 -6
  53. package/bin/src/collections/domains/maybe/state.d.ts +9 -9
  54. package/bin/src/collections/domains/maybe/state.js +9 -12
  55. package/bin/src/collections/domains/product/state.d.ts +19 -25
  56. package/bin/src/collections/domains/product/state.js +10 -13
  57. package/bin/src/collections/domains/sum/state.d.ts +77 -101
  58. package/bin/src/collections/domains/sum/state.js +32 -49
  59. package/bin/src/collections/domains/valueOrErrors/state.d.ts +27 -53
  60. package/bin/src/collections/domains/valueOrErrors/state.js +56 -81
  61. package/bin/src/coroutines/builder.d.ts +49 -135
  62. package/bin/src/coroutines/builder.js +19 -40
  63. package/bin/src/coroutines/state.d.ts +71 -186
  64. package/bin/src/coroutines/state.js +306 -381
  65. package/bin/src/coroutines/template.d.ts +8 -17
  66. package/bin/src/coroutines/template.js +59 -97
  67. package/bin/src/debounced/coroutines/debounce.d.ts +6 -15
  68. package/bin/src/debounced/coroutines/debounce.js +89 -115
  69. package/bin/src/debounced/state.d.ts +19 -26
  70. package/bin/src/debounced/state.js +25 -62
  71. package/bin/src/diagnostics/domains/message-box/state.d.ts +1 -1
  72. package/bin/src/diagnostics/domains/message-box/state.js +3 -3
  73. package/bin/src/foreignMutations/state.d.ts +3 -3
  74. package/bin/src/foreignMutations/state.js +1 -1
  75. package/bin/src/forms/domains/attachments/views/attachments-view.d.ts +4 -4
  76. package/bin/src/forms/domains/attachments/views/attachments-view.js +8 -30
  77. package/bin/src/forms/domains/collection/domains/reference/state.d.ts +22 -29
  78. package/bin/src/forms/domains/collection/domains/reference/state.js +20 -26
  79. package/bin/src/forms/domains/collection/domains/selection/state.d.ts +15 -37
  80. package/bin/src/forms/domains/collection/domains/selection/state.js +1 -1
  81. package/bin/src/forms/domains/dispatched-forms/built-ins/state.d.ts +105 -512
  82. package/bin/src/forms/domains/dispatched-forms/built-ins/state.js +530 -1405
  83. package/bin/src/forms/domains/dispatched-forms/deserializer/coroutines/runner.d.ts +2 -22
  84. package/bin/src/forms/domains/dispatched-forms/deserializer/coroutines/runner.js +44 -128
  85. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/apis/state.d.ts +63 -82
  86. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/apis/state.js +86 -172
  87. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/enum/state.d.ts +19 -35
  88. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/enum/state.js +27 -40
  89. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/list/state.d.ts +28 -60
  90. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/list/state.js +40 -76
  91. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/lookup/state.d.ts +56 -121
  92. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/lookup/state.js +59 -102
  93. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/map/state.d.ts +15 -42
  94. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/map/state.js +29 -64
  95. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/nestedRenderer/state.d.ts +29 -70
  96. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/nestedRenderer/state.js +20 -52
  97. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/one/state.d.ts +18 -61
  98. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/one/state.js +33 -88
  99. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/primitive/state.d.ts +10 -20
  100. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/primitive/state.js +13 -21
  101. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/record/domains/recordFieldRenderer/state.d.ts +11 -42
  102. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/record/domains/recordFieldRenderer/state.js +18 -59
  103. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/record/state.d.ts +18 -46
  104. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/record/state.js +48 -110
  105. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/stream/state.d.ts +14 -29
  106. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/stream/state.js +27 -43
  107. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/sum/state.d.ts +19 -49
  108. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/sum/state.js +23 -63
  109. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/sumUnitDate/state.d.ts +13 -21
  110. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/sumUnitDate/state.js +22 -39
  111. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/table/domains/tableCellRenderer/state.d.ts +10 -39
  112. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/table/domains/tableCellRenderer/state.js +11 -46
  113. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/table/state.d.ts +34 -79
  114. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/table/state.js +46 -146
  115. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/tuple/state.d.ts +13 -37
  116. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/tuple/state.js +29 -64
  117. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/union/state.d.ts +15 -40
  118. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/union/state.js +33 -78
  119. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/state.d.ts +18 -101
  120. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/state.js +59 -149
  121. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/types/state.d.ts +155 -277
  122. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/types/state.js +375 -715
  123. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/state.d.ts +51 -103
  124. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/state.js +94 -252
  125. package/bin/src/forms/domains/dispatched-forms/deserializer/state.d.ts +80 -302
  126. package/bin/src/forms/domains/dispatched-forms/deserializer/state.js +55 -174
  127. package/bin/src/forms/domains/dispatched-forms/deserializer/template.d.ts +2 -27
  128. package/bin/src/forms/domains/dispatched-forms/deserializer/template.js +2 -3
  129. package/bin/src/forms/domains/dispatched-forms/runner/coroutines/runner.d.ts +4 -27
  130. package/bin/src/forms/domains/dispatched-forms/runner/coroutines/runner.js +82 -136
  131. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/base-64-file/state.d.ts +7 -35
  132. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/base-64-file/state.js +3 -3
  133. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/base-64-file/template.d.ts +4 -28
  134. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/base-64-file/template.js +23 -49
  135. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/boolean/state.d.ts +7 -32
  136. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/boolean/state.js +3 -3
  137. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/boolean/template.d.ts +4 -25
  138. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/boolean/template.js +23 -49
  139. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/date/state.d.ts +19 -56
  140. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/date/state.js +6 -18
  141. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/date/template.d.ts +7 -29
  142. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/date/template.js +30 -64
  143. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum/state.d.ts +15 -42
  144. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum/state.js +6 -9
  145. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum/template.d.ts +8 -40
  146. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum/template.js +59 -150
  147. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum-multiselect/state.d.ts +11 -45
  148. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum-multiselect/state.js +1 -1
  149. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum-multiselect/template.d.ts +8 -42
  150. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum-multiselect/template.js +50 -127
  151. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/injectables/state.d.ts +19 -55
  152. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/injectables/state.js +22 -40
  153. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/list/state.d.ts +27 -75
  154. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/list/state.js +10 -19
  155. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/list/template.d.ts +6 -50
  156. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/list/template.js +95 -289
  157. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/lookup-type/state.d.ts +7 -39
  158. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/lookup-type/state.d.ts.map +1 -1
  159. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/lookup-type/state.js +1 -1
  160. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/lookup-type/template.d.ts +4 -44
  161. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/lookup-type/template.d.ts.map +1 -1
  162. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/lookup-type/template.js +8 -26
  163. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/lookup-type/template.js.map +1 -1
  164. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/map/state.d.ts +26 -103
  165. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/map/state.js +18 -61
  166. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/map/template.d.ts +9 -64
  167. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/map/template.js +89 -308
  168. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/number/state.d.ts +7 -37
  169. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/number/state.js +3 -3
  170. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/number/template.d.ts +4 -29
  171. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/number/template.js +23 -54
  172. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/runner.d.ts +44 -181
  173. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/runner.js +77 -184
  174. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/state.d.ts +175 -418
  175. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/state.js +20 -76
  176. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/template.d.ts +12 -66
  177. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/template.js +212 -581
  178. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/record/state.d.ts +21 -80
  179. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/record/state.js +11 -32
  180. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/record/template.d.ts +10 -57
  181. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/record/template.js +61 -190
  182. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream/state.d.ts +49 -123
  183. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream/state.js +13 -35
  184. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream/template.d.ts +8 -45
  185. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream/template.js +68 -195
  186. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream-multiselect/state.d.ts +51 -121
  187. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream-multiselect/state.js +13 -36
  188. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream-multiselect/template.d.ts +8 -45
  189. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream-multiselect/template.js +106 -246
  190. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/secret/state.d.ts +8 -38
  191. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/secret/state.js +3 -3
  192. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/secret/template.d.ts +4 -29
  193. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/secret/template.js +23 -54
  194. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/state.d.ts +34 -58
  195. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/state.js +13 -24
  196. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/string/state.d.ts +8 -38
  197. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/string/state.js +3 -3
  198. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/string/template.d.ts +4 -29
  199. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/string/template.js +26 -58
  200. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/sum/state.d.ts +29 -92
  201. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/sum/state.js +7 -22
  202. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/sum/template.d.ts +7 -55
  203. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/sum/template.js +48 -162
  204. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/runner.d.ts +22 -81
  205. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/runner.js +40 -89
  206. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/state.d.ts +154 -324
  207. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/state.js +56 -117
  208. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/template.d.ts +9 -69
  209. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/template.d.ts.map +1 -1
  210. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/template.js +185 -496
  211. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/template.js.map +1 -1
  212. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/tuple/state.d.ts +18 -75
  213. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/tuple/state.js +8 -20
  214. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/tuple/template.d.ts +6 -51
  215. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/tuple/template.js +32 -121
  216. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/union/state.d.ts +18 -76
  217. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/union/state.js +8 -21
  218. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/union/template.d.ts +6 -51
  219. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/union/template.js +31 -90
  220. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/unit/state.d.ts +13 -45
  221. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/unit/state.js +9 -12
  222. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/unit/template.d.ts +6 -29
  223. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/unit/template.js +20 -54
  224. package/bin/src/forms/domains/dispatched-forms/runner/domains/deltas/state.d.ts +437 -600
  225. package/bin/src/forms/domains/dispatched-forms/runner/domains/deltas/state.d.ts.map +1 -1
  226. package/bin/src/forms/domains/dispatched-forms/runner/domains/deltas/state.js +516 -668
  227. package/bin/src/forms/domains/dispatched-forms/runner/domains/deltas/state.js.map +1 -1
  228. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/list/state.d.ts +5 -24
  229. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/list/state.js +16 -51
  230. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/lookup/state.d.ts +6 -26
  231. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/lookup/state.d.ts.map +1 -1
  232. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/lookup/state.js +13 -39
  233. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/lookup/state.js.map +1 -1
  234. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/map/state.d.ts +5 -23
  235. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/map/state.js +16 -68
  236. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/multiSelection/state.d.ts +5 -22
  237. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/multiSelection/state.js +22 -76
  238. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/nestedDispatcher/state.d.ts +6 -41
  239. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/nestedDispatcher/state.js +8 -37
  240. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/one/state.d.ts +7 -57
  241. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/one/state.d.ts.map +1 -1
  242. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/one/state.js +31 -113
  243. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/one/state.js.map +1 -1
  244. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/primitive/state.d.ts +5 -22
  245. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/primitive/state.js +61 -139
  246. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/recordField/state.d.ts +5 -26
  247. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/recordField/state.js +4 -14
  248. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/state.d.ts +6 -49
  249. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/state.js +25 -79
  250. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/singleSelectionDispatcher/state.d.ts +5 -22
  251. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/singleSelectionDispatcher/state.js +22 -76
  252. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/sum/state.d.ts +5 -25
  253. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/sum/state.js +18 -55
  254. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/table/state.d.ts +7 -54
  255. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/table/state.d.ts.map +1 -1
  256. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/table/state.js +48 -160
  257. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/table/state.js.map +1 -1
  258. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/tupleDispatcher/state.d.ts +5 -25
  259. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/tupleDispatcher/state.js +11 -54
  260. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/unionDispatcher/state.d.ts +5 -25
  261. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/unionDispatcher/state.js +15 -63
  262. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/state.d.ts +6 -44
  263. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/state.js +43 -135
  264. package/bin/src/forms/domains/dispatched-forms/runner/domains/traversal/state.d.ts +18 -38
  265. package/bin/src/forms/domains/dispatched-forms/runner/domains/traversal/state.js +381 -697
  266. package/bin/src/forms/domains/dispatched-forms/runner/state.d.ts +37 -90
  267. package/bin/src/forms/domains/dispatched-forms/runner/state.js +9 -12
  268. package/bin/src/forms/domains/dispatched-forms/runner/template.d.ts +4 -28
  269. package/bin/src/forms/domains/dispatched-forms/runner/template.js +19 -47
  270. package/bin/src/forms/domains/launcher/coroutines/runner.d.ts +4 -12
  271. package/bin/src/forms/domains/launcher/coroutines/runner.js +45 -120
  272. package/bin/src/forms/domains/launcher/domains/create/coroutines/runner.d.ts +3 -16
  273. package/bin/src/forms/domains/launcher/domains/create/coroutines/runner.js +101 -240
  274. package/bin/src/forms/domains/launcher/domains/create/state.d.ts +121 -236
  275. package/bin/src/forms/domains/launcher/domains/create/state.js +17 -62
  276. package/bin/src/forms/domains/launcher/domains/create/template.d.ts +6 -20
  277. package/bin/src/forms/domains/launcher/domains/create/template.js +42 -84
  278. package/bin/src/forms/domains/launcher/domains/edit/coroutines/runner.d.ts +3 -16
  279. package/bin/src/forms/domains/launcher/domains/edit/coroutines/runner.js +103 -242
  280. package/bin/src/forms/domains/launcher/domains/edit/state.d.ts +121 -230
  281. package/bin/src/forms/domains/launcher/domains/edit/state.js +17 -62
  282. package/bin/src/forms/domains/launcher/domains/edit/template.d.ts +6 -20
  283. package/bin/src/forms/domains/launcher/domains/edit/template.js +43 -86
  284. package/bin/src/forms/domains/launcher/domains/merger/state.d.ts +4 -4
  285. package/bin/src/forms/domains/launcher/domains/merger/state.js +26 -35
  286. package/bin/src/forms/domains/launcher/domains/passthrough/coroutines/runner.d.ts +5 -20
  287. package/bin/src/forms/domains/launcher/domains/passthrough/coroutines/runner.js +42 -88
  288. package/bin/src/forms/domains/launcher/domains/passthrough/state.d.ts +58 -123
  289. package/bin/src/forms/domains/launcher/domains/passthrough/state.js +19 -44
  290. package/bin/src/forms/domains/launcher/domains/passthrough/template.d.ts +6 -23
  291. package/bin/src/forms/domains/launcher/domains/passthrough/template.js +34 -56
  292. package/bin/src/forms/domains/launcher/state.d.ts +43 -62
  293. package/bin/src/forms/domains/launcher/state.js +6 -6
  294. package/bin/src/forms/domains/launcher/template.d.ts +15 -35
  295. package/bin/src/forms/domains/launcher/template.js +85 -169
  296. package/bin/src/forms/domains/parser/coroutines/runner.d.ts +5 -13
  297. package/bin/src/forms/domains/parser/coroutines/runner.js +25 -87
  298. package/bin/src/forms/domains/parser/domains/built-ins/state.d.ts +71 -135
  299. package/bin/src/forms/domains/parser/domains/built-ins/state.js +533 -944
  300. package/bin/src/forms/domains/parser/domains/deltas/state.d.ts +296 -417
  301. package/bin/src/forms/domains/parser/domains/deltas/state.js +318 -444
  302. package/bin/src/forms/domains/parser/domains/injectables/state.d.ts +20 -29
  303. package/bin/src/forms/domains/parser/domains/injectables/state.js +26 -29
  304. package/bin/src/forms/domains/parser/domains/layout/state.d.ts +41 -63
  305. package/bin/src/forms/domains/parser/domains/layout/state.js +136 -214
  306. package/bin/src/forms/domains/parser/domains/predicates/domains/extractor/state.d.ts +6 -19
  307. package/bin/src/forms/domains/parser/domains/predicates/domains/extractor/state.js +152 -306
  308. package/bin/src/forms/domains/parser/domains/predicates/state.d.ts +242 -377
  309. package/bin/src/forms/domains/parser/domains/predicates/state.js +752 -1225
  310. package/bin/src/forms/domains/parser/domains/renderer/state.d.ts +92 -245
  311. package/bin/src/forms/domains/parser/domains/renderer/state.js +480 -1137
  312. package/bin/src/forms/domains/parser/domains/types/state.d.ts +130 -170
  313. package/bin/src/forms/domains/parser/domains/types/state.js +170 -355
  314. package/bin/src/forms/domains/parser/domains/validator/state.d.ts +117 -143
  315. package/bin/src/forms/domains/parser/domains/validator/state.js +280 -417
  316. package/bin/src/forms/domains/parser/state.d.ts +82 -217
  317. package/bin/src/forms/domains/parser/state.js +373 -612
  318. package/bin/src/forms/domains/parser/template.d.ts +5 -13
  319. package/bin/src/forms/domains/parser/template.js +1 -1
  320. package/bin/src/forms/domains/primitives/domains/base-64-file/state.d.ts +11 -19
  321. package/bin/src/forms/domains/primitives/domains/base-64-file/state.js +5 -5
  322. package/bin/src/forms/domains/primitives/domains/base-64-file/template.d.ts +7 -18
  323. package/bin/src/forms/domains/primitives/domains/base-64-file/template.js +19 -38
  324. package/bin/src/forms/domains/primitives/domains/boolean/state.d.ts +11 -19
  325. package/bin/src/forms/domains/primitives/domains/boolean/state.js +5 -5
  326. package/bin/src/forms/domains/primitives/domains/boolean/template.d.ts +8 -24
  327. package/bin/src/forms/domains/primitives/domains/boolean/template.js +19 -38
  328. package/bin/src/forms/domains/primitives/domains/date/state.d.ts +20 -39
  329. package/bin/src/forms/domains/primitives/domains/date/state.js +9 -18
  330. package/bin/src/forms/domains/primitives/domains/date/template.d.ts +7 -18
  331. package/bin/src/forms/domains/primitives/domains/date/template.js +25 -51
  332. package/bin/src/forms/domains/primitives/domains/enum/state.d.ts +15 -31
  333. package/bin/src/forms/domains/primitives/domains/enum/state.js +6 -6
  334. package/bin/src/forms/domains/primitives/domains/enum/template.d.ts +7 -18
  335. package/bin/src/forms/domains/primitives/domains/enum/template.js +48 -117
  336. package/bin/src/forms/domains/primitives/domains/enum-multiselect/state.d.ts +8 -17
  337. package/bin/src/forms/domains/primitives/domains/enum-multiselect/state.js +1 -1
  338. package/bin/src/forms/domains/primitives/domains/enum-multiselect/template.d.ts +7 -18
  339. package/bin/src/forms/domains/primitives/domains/enum-multiselect/template.js +40 -99
  340. package/bin/src/forms/domains/primitives/domains/list/state.d.ts +24 -45
  341. package/bin/src/forms/domains/primitives/domains/list/state.js +14 -14
  342. package/bin/src/forms/domains/primitives/domains/list/template.d.ts +13 -38
  343. package/bin/src/forms/domains/primitives/domains/list/template.js +71 -200
  344. package/bin/src/forms/domains/primitives/domains/map/state.d.ts +29 -68
  345. package/bin/src/forms/domains/primitives/domains/map/state.js +14 -14
  346. package/bin/src/forms/domains/primitives/domains/map/template.d.ts +25 -65
  347. package/bin/src/forms/domains/primitives/domains/map/template.js +103 -294
  348. package/bin/src/forms/domains/primitives/domains/number/state.d.ts +11 -19
  349. package/bin/src/forms/domains/primitives/domains/number/state.js +5 -5
  350. package/bin/src/forms/domains/primitives/domains/number/template.d.ts +8 -24
  351. package/bin/src/forms/domains/primitives/domains/number/template.js +19 -38
  352. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream/state.d.ts +42 -89
  353. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream/state.js +16 -33
  354. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream/template.d.ts +8 -22
  355. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream/template.js +62 -171
  356. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream-multiselect/state.d.ts +9 -18
  357. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream-multiselect/state.js +1 -1
  358. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream-multiselect/template.d.ts +7 -18
  359. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream-multiselect/template.js +69 -182
  360. package/bin/src/forms/domains/primitives/domains/secret/state.d.ts +11 -19
  361. package/bin/src/forms/domains/primitives/domains/secret/state.js +5 -5
  362. package/bin/src/forms/domains/primitives/domains/secret/template.d.ts +7 -18
  363. package/bin/src/forms/domains/primitives/domains/secret/template.js +19 -38
  364. package/bin/src/forms/domains/primitives/domains/string/state.d.ts +13 -21
  365. package/bin/src/forms/domains/primitives/domains/string/state.js +5 -5
  366. package/bin/src/forms/domains/primitives/domains/string/template.d.ts +7 -18
  367. package/bin/src/forms/domains/primitives/domains/string/template.js +22 -42
  368. package/bin/src/forms/domains/primitives/domains/sum/state.d.ts +22 -62
  369. package/bin/src/forms/domains/primitives/domains/sum/state.js +10 -10
  370. package/bin/src/forms/domains/primitives/domains/sum/template.d.ts +16 -48
  371. package/bin/src/forms/domains/primitives/domains/sum/template.js +50 -141
  372. package/bin/src/forms/domains/primitives/domains/tuple/state.d.ts +23 -48
  373. package/bin/src/forms/domains/primitives/domains/tuple/state.js +9 -9
  374. package/bin/src/forms/domains/primitives/domains/tuple/template.d.ts +18 -46
  375. package/bin/src/forms/domains/primitives/domains/tuple/template.js +33 -100
  376. package/bin/src/forms/domains/primitives/domains/unit/state.d.ts +10 -17
  377. package/bin/src/forms/domains/primitives/domains/unit/state.js +8 -8
  378. package/bin/src/forms/domains/primitives/domains/unit/template.d.ts +4 -9
  379. package/bin/src/forms/domains/primitives/domains/unit/template.js +9 -22
  380. package/bin/src/forms/domains/singleton/domains/form-label/state.d.ts +4 -4
  381. package/bin/src/forms/domains/singleton/domains/form-label/state.js +1 -1
  382. package/bin/src/forms/domains/singleton/domains/mapping/state.d.ts +71 -0
  383. package/bin/src/forms/domains/singleton/domains/mapping/state.d.ts.map +1 -0
  384. package/bin/src/forms/domains/singleton/domains/mapping/state.js +91 -0
  385. package/bin/src/forms/domains/singleton/domains/mapping/state.js.map +1 -0
  386. package/bin/src/forms/domains/singleton/domains/mapping/template.d.ts +79 -0
  387. package/bin/src/forms/domains/singleton/domains/mapping/template.d.ts.map +1 -0
  388. package/bin/src/forms/domains/singleton/domains/mapping/template.js +20 -0
  389. package/bin/src/forms/domains/singleton/domains/mapping/template.js.map +1 -0
  390. package/bin/src/forms/domains/singleton/state.d.ts +43 -144
  391. package/bin/src/forms/domains/singleton/state.js +10 -12
  392. package/bin/src/forms/domains/singleton/template.d.ts +88 -177
  393. package/bin/src/forms/domains/singleton/template.js +113 -288
  394. package/bin/src/forms/domains/singleton-table/coroutines/runner.d.ts +8 -0
  395. package/bin/src/forms/domains/singleton-table/coroutines/runner.d.ts.map +1 -0
  396. package/bin/src/forms/domains/singleton-table/coroutines/runner.js +62 -0
  397. package/bin/src/forms/domains/singleton-table/coroutines/runner.js.map +1 -0
  398. package/bin/src/forms/domains/singleton-table/state.d.ts +130 -0
  399. package/bin/src/forms/domains/singleton-table/state.d.ts.map +1 -0
  400. package/bin/src/forms/domains/singleton-table/state.js +72 -0
  401. package/bin/src/forms/domains/singleton-table/state.js.map +1 -0
  402. package/bin/src/forms/domains/singleton-table/template.d.ts +25 -0
  403. package/bin/src/forms/domains/singleton-table/template.d.ts.map +1 -0
  404. package/bin/src/forms/domains/singleton-table/template.js +283 -0
  405. package/bin/src/forms/domains/singleton-table/template.js.map +1 -0
  406. package/bin/src/fun/domains/curry/state.d.ts +2 -4
  407. package/bin/src/fun/domains/curry/state.js +1 -1
  408. package/bin/src/fun/domains/id/state.d.ts +1 -1
  409. package/bin/src/fun/domains/id/state.js +1 -1
  410. package/bin/src/fun/domains/predicate/domains/bool-expr.d.ts +41 -57
  411. package/bin/src/fun/domains/predicate/domains/bool-expr.js +67 -76
  412. package/bin/src/fun/domains/predicate/state.d.ts +7 -9
  413. package/bin/src/fun/domains/predicate/state.js +10 -14
  414. package/bin/src/fun/domains/simpleCallback/state.d.ts +1 -1
  415. package/bin/src/fun/domains/simpleCallback/state.js +1 -1
  416. package/bin/src/fun/domains/uncurry/state.d.ts +2 -4
  417. package/bin/src/fun/domains/uncurry/state.js +1 -1
  418. package/bin/src/fun/domains/unit/state.d.ts +1 -1
  419. package/bin/src/fun/domains/unit/state.js +1 -1
  420. package/bin/src/fun/domains/updater/domains/caseUpdater/state.d.ts +7 -22
  421. package/bin/src/fun/domains/updater/domains/caseUpdater/state.js +10 -18
  422. package/bin/src/fun/domains/updater/domains/mapUpdater/state.d.ts +13 -24
  423. package/bin/src/fun/domains/updater/domains/mapUpdater/state.js +10 -40
  424. package/bin/src/fun/domains/updater/domains/maybeUpdater/state.d.ts +13 -19
  425. package/bin/src/fun/domains/updater/domains/maybeUpdater/state.js +9 -20
  426. package/bin/src/fun/domains/updater/domains/orderedMapUpdater/state.d.ts +13 -24
  427. package/bin/src/fun/domains/updater/domains/orderedMapUpdater/state.js +11 -47
  428. package/bin/src/fun/domains/updater/domains/orderedSetUpdater/state.d.ts +8 -20
  429. package/bin/src/fun/domains/updater/domains/orderedSetUpdater/state.js +5 -17
  430. package/bin/src/fun/domains/updater/domains/replaceWith/state.d.ts +1 -1
  431. package/bin/src/fun/domains/updater/domains/replaceWith/state.js +1 -1
  432. package/bin/src/fun/domains/updater/domains/simpleUpdater/domains/baseSimpleUpdater/state.d.ts +4 -13
  433. package/bin/src/fun/domains/updater/domains/simpleUpdater/domains/baseSimpleUpdater/state.js +4 -6
  434. package/bin/src/fun/domains/updater/domains/simpleUpdater/state.d.ts +22 -60
  435. package/bin/src/fun/domains/updater/domains/simpleUpdater/state.js +31 -42
  436. package/bin/src/fun/domains/updater/state.d.ts +4 -4
  437. package/bin/src/fun/domains/updater/state.js +10 -12
  438. package/bin/src/fun/state.d.ts +3 -3
  439. package/bin/src/fun/state.js +7 -9
  440. package/bin/src/infinite-data-stream/coroutines/builder.d.ts +27 -209
  441. package/bin/src/infinite-data-stream/coroutines/builder.js +1 -1
  442. package/bin/src/infinite-data-stream/coroutines/infiniteLoader.d.ts +5 -21
  443. package/bin/src/infinite-data-stream/coroutines/infiniteLoader.js +20 -47
  444. package/bin/src/infinite-data-stream/coroutines/runner.d.ts +3 -11
  445. package/bin/src/infinite-data-stream/coroutines/runner.js +7 -7
  446. package/bin/src/infinite-data-stream/state.d.ts +51 -84
  447. package/bin/src/infinite-data-stream/state.js +61 -125
  448. package/bin/src/infinite-data-stream/template.d.ts +3 -10
  449. package/bin/src/infinite-data-stream/template.js +2 -3
  450. package/bin/src/math/domains/DOMRect/state.d.ts +4 -4
  451. package/bin/src/math/domains/DOMRect/state.js +8 -10
  452. package/bin/src/math/domains/number/state.d.ts +5 -5
  453. package/bin/src/math/domains/number/state.js +5 -5
  454. package/bin/src/math/domains/rect/state.d.ts +8 -8
  455. package/bin/src/math/domains/rect/state.js +15 -16
  456. package/bin/src/math/domains/rgba/state.d.ts +17 -17
  457. package/bin/src/math/domains/rgba/state.js +81 -77
  458. package/bin/src/math/domains/size2/state.d.ts +8 -8
  459. package/bin/src/math/domains/size2/state.js +6 -6
  460. package/bin/src/math/domains/vector2/state.d.ts +10 -10
  461. package/bin/src/math/domains/vector2/state.js +8 -8
  462. package/bin/src/queue/state.d.ts +7 -23
  463. package/bin/src/queue/state.js +16 -23
  464. package/bin/src/state/domains/repository/state.d.ts +9 -15
  465. package/bin/src/state/domains/repository/state.js +1 -1
  466. package/bin/src/template/state.d.ts +45 -153
  467. package/bin/src/template/state.js +115 -163
  468. package/bin/src/validation/state.d.ts +9 -23
  469. package/bin/src/validation/state.js +45 -38
  470. package/bin/src/value/domains/mutable-value/state.d.ts +3 -3
  471. package/bin/src/value/domains/mutable-value/state.js +2 -3
  472. package/bin/src/value/state.d.ts +9 -9
  473. package/bin/src/value/state.js +8 -11
  474. package/bin/src/value-infinite-data-stream/coroutines/builder.d.ts +25 -207
  475. package/bin/src/value-infinite-data-stream/coroutines/builder.js +1 -1
  476. package/bin/src/value-infinite-data-stream/coroutines/infiniteLoader.d.ts +2 -4
  477. package/bin/src/value-infinite-data-stream/coroutines/infiniteLoader.js +20 -55
  478. package/bin/src/value-infinite-data-stream/coroutines/runner.d.ts +2 -8
  479. package/bin/src/value-infinite-data-stream/coroutines/runner.js +4 -6
  480. package/bin/src/value-infinite-data-stream/state.d.ts +66 -132
  481. package/bin/src/value-infinite-data-stream/state.js +75 -187
  482. package/bin/src/value-infinite-data-stream/template.d.ts +2 -7
  483. package/bin/src/value-infinite-data-stream/template.js +2 -4
  484. package/bin/src/visibility/state.d.ts +2 -5
  485. package/bin/src/visibility/state.js +1 -1
  486. package/package.json +1 -1
  487. package/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/readOnly/template.tsx +18 -3
  488. package/src/forms/domains/parser/domains/predicates/domains/extractor/state.ts +1 -0
@@ -1,761 +1,421 @@
1
1
  import { List, Map } from "immutable";
2
2
  import { ValueOrErrors } from "../../../../../../../../collections/domains/valueOrErrors/state";
3
- import { DispatchGenericTypes, MapRepo } from "../../../../../../../../../main";
3
+ import { DispatchGenericTypes, MapRepo, } from "../../../../../../../../../main";
4
4
  export const DispatchisString = (_) => typeof _ == "string";
5
5
  export const DispatchIsObject = (_) => typeof _ == "object";
6
- export const DispatchIsGenericType = (_) =>
7
- _ && DispatchGenericTypes.includes(_);
8
- export const DispatchHasFun = (_) =>
9
- DispatchIsObject(_) && "fun" in _ && DispatchisString(_.fun);
10
- export const DispatchHasArgs = (_) =>
11
- DispatchIsObject(_) && "args" in _ && Array.isArray(_.args);
6
+ export const DispatchIsGenericType = (_) => _ && DispatchGenericTypes.includes(_);
7
+ export const DispatchHasFun = (_) => DispatchIsObject(_) && "fun" in _ && DispatchisString(_.fun);
8
+ export const DispatchHasArgs = (_) => DispatchIsObject(_) && "args" in _ && Array.isArray(_.args);
12
9
  export const DispatchPrimitiveTypeNames = [
13
- "unit",
14
- "guid", //resolves to string
15
- "string",
16
- "number",
17
- "boolean",
18
- "Date",
19
- "base64File",
20
- "secret",
10
+ "unit",
11
+ "guid", //resolves to string
12
+ "string",
13
+ "number",
14
+ "boolean",
15
+ "Date",
16
+ "base64File",
17
+ "secret",
21
18
  ];
22
19
  export const SerializedType = {
23
- isExtendedType: (type) =>
24
- typeof type == "object" &&
25
- "extends" in type &&
26
- Array.isArray(type.extends) &&
27
- type.extends.length > 0 &&
28
- type.extends.every(DispatchisString),
29
- hasFields: (type) => typeof type == "object" && "fields" in type,
30
- isPrimitive: (_, injectedPrimitives) =>
31
- Boolean(
32
- DispatchPrimitiveTypeNames.some((__) => _ == __) ||
33
- (injectedPrimitives === null || injectedPrimitives === void 0
34
- ? void 0
35
- : injectedPrimitives.has(_)),
36
- ),
37
- isApplication: (_) =>
38
- DispatchHasFun(_) && DispatchIsGenericType(_.fun) && DispatchHasArgs(_),
39
- isLookup: (_, forms) => DispatchisString(_) && forms.has(_),
40
- isList: (_) =>
41
- SerializedType.isApplication(_) && _.fun == "List" && _.args.length == 1,
42
- isMap: (_) =>
43
- SerializedType.isApplication(_) && _.fun == "Map" && _.args.length == 2,
44
- isSum: (_) =>
45
- SerializedType.isApplication(_) && _.fun == "Sum" && _.args.length == 2,
46
- isSumUnitDate: (_) => typeof _ == "string" && _ == "SumUnitDate",
47
- isSingleSelection: (_) =>
48
- SerializedType.isApplication(_) &&
49
- _.fun == "SingleSelection" &&
50
- _.args.length == 1,
51
- isMultiSelection: (_) =>
52
- SerializedType.isApplication(_) &&
53
- _.fun == "MultiSelection" &&
54
- _.args.length == 1,
55
- isUnion: (_) =>
56
- DispatchHasFun(_) &&
57
- DispatchIsGenericType(_.fun) &&
58
- DispatchHasArgs(_) &&
59
- _.fun == "Union" &&
60
- _.args.length > 0 &&
61
- _.args.every(
62
- (arg) =>
63
- (DispatchIsObject(arg) && "caseName" in arg && !("fields" in arg)) ||
64
- ("fields" in arg &&
65
- (DispatchisString(arg.fields) || DispatchIsObject(arg.fields))),
66
- ),
67
- isTuple: (_) => SerializedType.isApplication(_) && _.fun == "Tuple",
68
- isRecord: (_) =>
69
- _ != null &&
70
- typeof _ == "object" &&
71
- "fields" in _ &&
72
- (DispatchIsObject(_.fields) || DispatchisString(_.fields)),
73
- isTable: (_) =>
74
- SerializedType.isApplication(_) && _.fun == "Table" && _.args.length == 1,
75
- isOption: (_) =>
76
- typeof _ == "object" &&
77
- "fun" in _ &&
78
- _.fun == "Option" &&
79
- "args" in _ &&
80
- Array.isArray(_.args) &&
81
- _.args.length == 1,
82
- isUnit: (_) => _ == "unit",
83
- isKeyOf: (_) =>
84
- typeof _ == "object" &&
85
- "fun" in _ &&
86
- _.fun == "KeyOf" &&
87
- "args" in _ &&
88
- Array.isArray(_.args) &&
89
- _.args.length == 1 &&
90
- DispatchisString(_.args[0]),
91
- isOne: (_) =>
92
- SerializedType.isApplication(_) && _.fun == "One" && _.args.length == 1,
20
+ isExtendedType: (type) => typeof type == "object" &&
21
+ "extends" in type &&
22
+ Array.isArray(type.extends) &&
23
+ type.extends.length > 0 &&
24
+ type.extends.every(DispatchisString),
25
+ hasFields: (type) => typeof type == "object" && "fields" in type,
26
+ isPrimitive: (_, injectedPrimitives) => Boolean(DispatchPrimitiveTypeNames.some((__) => _ == __) ||
27
+ (injectedPrimitives === null || injectedPrimitives === void 0 ? void 0 : injectedPrimitives.has(_))),
28
+ isApplication: (_) => DispatchHasFun(_) && DispatchIsGenericType(_.fun) && DispatchHasArgs(_),
29
+ isLookup: (_, forms) => DispatchisString(_) && forms.has(_),
30
+ isList: (_) => SerializedType.isApplication(_) && _.fun == "List" && _.args.length == 1,
31
+ isMap: (_) => SerializedType.isApplication(_) && _.fun == "Map" && _.args.length == 2,
32
+ isSum: (_) => SerializedType.isApplication(_) && _.fun == "Sum" && _.args.length == 2,
33
+ isSumUnitDate: (_) => typeof _ == "string" && _ == "SumUnitDate",
34
+ isSingleSelection: (_) => SerializedType.isApplication(_) &&
35
+ _.fun == "SingleSelection" &&
36
+ _.args.length == 1,
37
+ isMultiSelection: (_) => SerializedType.isApplication(_) &&
38
+ _.fun == "MultiSelection" &&
39
+ _.args.length == 1,
40
+ isUnion: (_) => DispatchHasFun(_) &&
41
+ DispatchIsGenericType(_.fun) &&
42
+ DispatchHasArgs(_) &&
43
+ _.fun == "Union" &&
44
+ _.args.length > 0 &&
45
+ _.args.every((arg) => (DispatchIsObject(arg) && "caseName" in arg && !("fields" in arg)) ||
46
+ ("fields" in arg &&
47
+ (DispatchisString(arg.fields) || DispatchIsObject(arg.fields)))),
48
+ isTuple: (_) => SerializedType.isApplication(_) && _.fun == "Tuple",
49
+ isRecord: (_) => _ != null &&
50
+ typeof _ == "object" &&
51
+ "fields" in _ &&
52
+ (DispatchIsObject(_.fields) || DispatchisString(_.fields)),
53
+ isTable: (_) => SerializedType.isApplication(_) && _.fun == "Table" && _.args.length == 1,
54
+ isOption: (_) => typeof _ == "object" &&
55
+ "fun" in _ &&
56
+ _.fun == "Option" &&
57
+ "args" in _ &&
58
+ Array.isArray(_.args) &&
59
+ _.args.length == 1,
60
+ isUnit: (_) => _ == "unit",
61
+ isKeyOf: (_) => typeof _ == "object" &&
62
+ "fun" in _ &&
63
+ _.fun == "KeyOf" &&
64
+ "args" in _ &&
65
+ Array.isArray(_.args) &&
66
+ _.args.length == 1 &&
67
+ DispatchisString(_.args[0]),
68
+ isOne: (_) => SerializedType.isApplication(_) && _.fun == "One" && _.args.length == 1,
93
69
  };
94
70
  export const UnionType = {
95
- SerializeToString: (serializedArgs) => {
96
- return `[union; cases: {${serializedArgs.map((v, k) => `${k}: ${v}`).join(", ")}}]`;
97
- },
71
+ SerializeToString: (serializedArgs) => {
72
+ return `[union; cases: {${serializedArgs.map((v, k) => `${k}: ${v}`).join(", ")}}]`;
73
+ },
98
74
  };
99
75
  export const RecordType = {
100
- SerializeToString: (serializedFields) => {
101
- return `[record; fields: {${serializedFields.map((v, k) => `${k}: ${v}`).join(", ")}}]`;
102
- },
76
+ SerializeToString: (serializedFields) => {
77
+ return `[record; fields: {${serializedFields.map((v, k) => `${k}: ${v}`).join(", ")}}]`;
78
+ },
103
79
  };
104
80
  export const LookupType = {
105
- SerializeToString: (name) => {
106
- return `${name}`;
107
- },
81
+ SerializeToString: (name) => {
82
+ return `${name}`;
83
+ },
108
84
  };
109
85
  export const DispatchPrimitiveType = {
110
- SerializeToString: (name) => {
111
- return `[primitive; name: ${String(name)}]`;
112
- },
86
+ SerializeToString: (name) => {
87
+ return `[primitive; name: ${String(name)}]`;
88
+ },
113
89
  };
114
90
  export const SingleSelectionType = {
115
- SerializeToString: (serializedArgs) => {
116
- return `[singleSelection; args: [${serializedArgs.join(", ")}]]`;
117
- },
91
+ SerializeToString: (serializedArgs) => {
92
+ return `[singleSelection; args: [${serializedArgs.join(", ")}]]`;
93
+ },
118
94
  };
119
95
  export const MultiSelectionType = {
120
- SerializeToString: (serializedArgs) => {
121
- return `[multiSelection; args: [${serializedArgs.join(", ")}]]`;
122
- },
96
+ SerializeToString: (serializedArgs) => {
97
+ return `[multiSelection; args: [${serializedArgs.join(", ")}]]`;
98
+ },
123
99
  };
124
100
  export const ListType = {
125
- SerializeToString: (serializedArgs) => {
126
- return `[list; args: [${serializedArgs.join(", ")}]]`;
127
- },
101
+ SerializeToString: (serializedArgs) => {
102
+ return `[list; args: [${serializedArgs.join(", ")}]]`;
103
+ },
128
104
  };
129
105
  export const TupleType = {
130
- SerializeToString: (serializedArgs) => {
131
- return `[tuple; args: [${serializedArgs.join(", ")}]]`;
132
- },
106
+ SerializeToString: (serializedArgs) => {
107
+ return `[tuple; args: [${serializedArgs.join(", ")}]]`;
108
+ },
133
109
  };
134
110
  export const SumType = {
135
- SerializeToString: (serializedArgs) => {
136
- return `[sum; args: [${serializedArgs.join(", ")}]]`;
137
- },
111
+ SerializeToString: (serializedArgs) => {
112
+ return `[sum; args: [${serializedArgs.join(", ")}]]`;
113
+ },
138
114
  };
139
115
  export const MapType = {
140
- SerializeToString: (serializedArgs) => {
141
- return `[map; args: [${serializedArgs.join(", ")}]]`;
142
- },
116
+ SerializeToString: (serializedArgs) => {
117
+ return `[map; args: [${serializedArgs.join(", ")}]]`;
118
+ },
143
119
  };
144
120
  export const TableType = {
145
- SerializeToString: (serializedArg) => {
146
- return `[table; arg: ${serializedArg}]`;
147
- },
121
+ SerializeToString: (serializedArg) => {
122
+ return `[table; arg: ${serializedArg}]`;
123
+ },
148
124
  };
149
125
  export const OneType = {
150
- SerializeToString: (serializedArg) => {
151
- return `[one; arg: ${serializedArg}]`;
152
- },
126
+ SerializeToString: (serializedArg) => {
127
+ return `[one; arg: ${serializedArg}]`;
128
+ },
153
129
  };
154
130
  export const DispatchParsedType = {
155
- Default: {
156
- table: (arg) => ({
157
- kind: "table",
158
- arg,
159
- asString: () => TableType.SerializeToString(arg.asString()),
160
- }),
161
- record: (fields) => ({
162
- kind: "record",
163
- fields,
164
- asString: () =>
165
- RecordType.SerializeToString(fields.map((v) => v.asString())),
166
- }),
167
- primitive: (name) => ({
168
- kind: "primitive",
169
- name,
170
- asString: () => DispatchPrimitiveType.SerializeToString(name),
171
- }),
172
- singleSelection: (args) => ({
173
- kind: "singleSelection",
174
- args,
175
- asString: () =>
176
- SingleSelectionType.SerializeToString(args.map((v) => v.asString())),
177
- }),
178
- multiSelection: (args) => ({
179
- kind: "multiSelection",
180
- args,
181
- asString: () =>
182
- MultiSelectionType.SerializeToString(args.map((v) => v.asString())),
183
- }),
184
- list: (args) => ({
185
- kind: "list",
186
- args,
187
- asString: () => ListType.SerializeToString(args.map((v) => v.asString())),
188
- }),
189
- tuple: (args) => ({
190
- kind: "tuple",
191
- args,
192
- asString: () =>
193
- TupleType.SerializeToString(args.map((v) => v.asString())),
194
- }),
195
- sum: (args) => ({
196
- kind: "sum",
197
- args,
198
- asString: () => SumType.SerializeToString(args.map((v) => v.asString())),
199
- }),
200
- map: (args) => ({
201
- kind: "map",
202
- args,
203
- asString: () => MapType.SerializeToString(args.map((v) => v.asString())),
204
- }),
205
- union: (args) => ({
206
- kind: "union",
207
- args,
208
- asString: () =>
209
- UnionType.SerializeToString(args.map((v) => v.asString())),
210
- }),
211
- lookup: (name) => ({
212
- kind: "lookup",
213
- name,
214
- asString: () => LookupType.SerializeToString(name),
215
- }),
216
- one: (arg) => ({
217
- kind: "one",
218
- arg,
219
- asString: () => OneType.SerializeToString(arg.asString()),
220
- }),
221
- },
222
- Operations: {
223
- // We don't use this at the moment, if we need it, then we can fix
224
- // Equals: <T>(
225
- // fst: DispatchParsedType<T>,
226
- // snd: DispatchParsedType<T>,
227
- // ): boolean =>
228
- // fst.kind == "record" && snd.kind == "record"
229
- // ? fst.name == snd.name
230
- // : fst.kind == "table" && snd.kind == "table"
231
- // ? fst.name == snd.name
232
- // : fst.kind == "one" && snd.kind == "one"
233
- // ? fst.name == snd.name
234
- // : fst.kind == "lookup" && snd.kind == "lookup"
235
- // ? fst.name == snd.name
236
- // : fst.kind == "primitive" && snd.kind == "primitive"
237
- // ? fst.name == snd.name
238
- // : fst.kind == "list" && snd.kind == "list"
239
- // ? fst.name == snd.name
240
- // : fst.kind == "singleSelection" &&
241
- // snd.kind == "singleSelection"
242
- // ? fst.name == snd.name
243
- // : fst.kind == "multiSelection" &&
244
- // snd.kind == "multiSelection"
245
- // ? fst.name == snd.name
246
- // : fst.kind == "map" && snd.kind == "map"
247
- // ? fst.name == snd.name
248
- // : fst.kind == "sum" && snd.kind == "sum"
249
- // ? fst.name == snd.name
250
- // : fst.kind == "tuple" && snd.kind == "tuple"
251
- // ? fst.name == snd.name &&
252
- // fst.args.length == snd.args.length &&
253
- // fst.args.every((v, i) =>
254
- // DispatchParsedType.Operations.Equals(
255
- // v,
256
- // snd.args[i],
257
- // ),
258
- // )
259
- // : fst.kind == "union" && snd.kind == "union"
260
- // ? fst.args.size == snd.args.size &&
261
- // fst.args.every(
262
- // (v, i) => v.name == snd.args.get(i)!.name,
263
- // )
264
- // : false,
265
- ParseRawKeyOf: (rawType, typeNames, serializedTypes, alreadyParsedTypes) =>
266
- (alreadyParsedTypes.has(rawType.args[0])
267
- ? alreadyParsedTypes
268
- .get(rawType.args[0])
269
- .Then((parsedType) =>
270
- ValueOrErrors.Default.return([parsedType, alreadyParsedTypes]),
271
- )
272
- : DispatchParsedType.Operations.ParseRawType(
273
- rawType.args[0],
274
- serializedTypes[rawType.args[0]],
275
- typeNames,
276
- serializedTypes,
277
- alreadyParsedTypes,
278
- )
279
- )
280
- .Then((parsingResult) =>
281
- parsingResult[0].kind != "record"
282
- ? ValueOrErrors.Default.throwOne(
283
- `Error: ${JSON.stringify(parsingResult[0])} is not a record type`,
284
- )
131
+ Default: {
132
+ table: (arg) => ({
133
+ kind: "table",
134
+ arg,
135
+ asString: () => TableType.SerializeToString(arg.asString()),
136
+ }),
137
+ record: (fields) => ({
138
+ kind: "record",
139
+ fields,
140
+ asString: () => RecordType.SerializeToString(fields.map((v) => v.asString())),
141
+ }),
142
+ primitive: (name) => ({
143
+ kind: "primitive",
144
+ name,
145
+ asString: () => DispatchPrimitiveType.SerializeToString(name),
146
+ }),
147
+ singleSelection: (args) => ({
148
+ kind: "singleSelection",
149
+ args,
150
+ asString: () => SingleSelectionType.SerializeToString(args.map((v) => v.asString())),
151
+ }),
152
+ multiSelection: (args) => ({
153
+ kind: "multiSelection",
154
+ args,
155
+ asString: () => MultiSelectionType.SerializeToString(args.map((v) => v.asString())),
156
+ }),
157
+ list: (args) => ({
158
+ kind: "list",
159
+ args,
160
+ asString: () => ListType.SerializeToString(args.map((v) => v.asString())),
161
+ }),
162
+ tuple: (args) => ({
163
+ kind: "tuple",
164
+ args,
165
+ asString: () => TupleType.SerializeToString(args.map((v) => v.asString())),
166
+ }),
167
+ sum: (args) => ({
168
+ kind: "sum",
169
+ args,
170
+ asString: () => SumType.SerializeToString(args.map((v) => v.asString())),
171
+ }),
172
+ map: (args) => ({
173
+ kind: "map",
174
+ args,
175
+ asString: () => MapType.SerializeToString(args.map((v) => v.asString())),
176
+ }),
177
+ union: (args) => ({
178
+ kind: "union",
179
+ args,
180
+ asString: () => UnionType.SerializeToString(args.map((v) => v.asString())),
181
+ }),
182
+ lookup: (name) => ({
183
+ kind: "lookup",
184
+ name,
185
+ asString: () => LookupType.SerializeToString(name),
186
+ }),
187
+ one: (arg) => ({
188
+ kind: "one",
189
+ arg,
190
+ asString: () => OneType.SerializeToString(arg.asString()),
191
+ }),
192
+ },
193
+ Operations: {
194
+ // We don't use this at the moment, if we need it, then we can fix
195
+ // Equals: <T>(
196
+ // fst: DispatchParsedType<T>,
197
+ // snd: DispatchParsedType<T>,
198
+ // ): boolean =>
199
+ // fst.kind == "record" && snd.kind == "record"
200
+ // ? fst.name == snd.name
201
+ // : fst.kind == "table" && snd.kind == "table"
202
+ // ? fst.name == snd.name
203
+ // : fst.kind == "one" && snd.kind == "one"
204
+ // ? fst.name == snd.name
205
+ // : fst.kind == "lookup" && snd.kind == "lookup"
206
+ // ? fst.name == snd.name
207
+ // : fst.kind == "primitive" && snd.kind == "primitive"
208
+ // ? fst.name == snd.name
209
+ // : fst.kind == "list" && snd.kind == "list"
210
+ // ? fst.name == snd.name
211
+ // : fst.kind == "singleSelection" &&
212
+ // snd.kind == "singleSelection"
213
+ // ? fst.name == snd.name
214
+ // : fst.kind == "multiSelection" &&
215
+ // snd.kind == "multiSelection"
216
+ // ? fst.name == snd.name
217
+ // : fst.kind == "map" && snd.kind == "map"
218
+ // ? fst.name == snd.name
219
+ // : fst.kind == "sum" && snd.kind == "sum"
220
+ // ? fst.name == snd.name
221
+ // : fst.kind == "tuple" && snd.kind == "tuple"
222
+ // ? fst.name == snd.name &&
223
+ // fst.args.length == snd.args.length &&
224
+ // fst.args.every((v, i) =>
225
+ // DispatchParsedType.Operations.Equals(
226
+ // v,
227
+ // snd.args[i],
228
+ // ),
229
+ // )
230
+ // : fst.kind == "union" && snd.kind == "union"
231
+ // ? fst.args.size == snd.args.size &&
232
+ // fst.args.every(
233
+ // (v, i) => v.name == snd.args.get(i)!.name,
234
+ // )
235
+ // : false,
236
+ ParseRawKeyOf: (rawType, typeNames, serializedTypes, alreadyParsedTypes) => (alreadyParsedTypes.has(rawType.args[0])
237
+ ? alreadyParsedTypes
238
+ .get(rawType.args[0])
239
+ .Then((parsedType) => ValueOrErrors.Default.return([parsedType, alreadyParsedTypes]))
240
+ : DispatchParsedType.Operations.ParseRawType(rawType.args[0], serializedTypes[rawType.args[0]], typeNames, serializedTypes, alreadyParsedTypes))
241
+ .Then((parsingResult) => parsingResult[0].kind != "record"
242
+ ? ValueOrErrors.Default.throwOne(`Error: ${JSON.stringify(parsingResult[0])} is not a record type`)
285
243
  : ValueOrErrors.Default.return([
286
- DispatchParsedType.Default.union(
287
- Map(
288
- parsingResult[0].fields
289
- .keySeq()
290
- .toArray()
291
- .map((key) => [
292
- key,
293
- DispatchParsedType.Default.record(Map()),
294
- ]),
295
- ),
296
- ),
244
+ DispatchParsedType.Default.union(Map(parsingResult[0].fields
245
+ .keySeq()
246
+ .toArray()
247
+ .map((key) => [
248
+ key,
249
+ DispatchParsedType.Default.record(Map()),
250
+ ]))),
297
251
  parsingResult[1],
298
- ]),
299
- )
300
- .MapErrors((errors) =>
301
- errors.map((error) => `${error}\n...When parsing keyOf type`),
302
- ),
303
- SerializeToString: (type) => {
304
- switch (type.kind) {
305
- case "primitive":
306
- return DispatchPrimitiveType.SerializeToString(type.name);
307
- case "record":
308
- return RecordType.SerializeToString(
309
- type.fields.map((v) =>
310
- DispatchParsedType.Operations.SerializeToString(v),
311
- ),
312
- );
313
- case "table":
314
- return TableType.SerializeToString(
315
- DispatchParsedType.Operations.SerializeToString(type.arg),
316
- );
317
- case "one":
318
- return OneType.SerializeToString(
319
- DispatchParsedType.Operations.SerializeToString(type.arg),
320
- );
321
- case "singleSelection":
322
- return SingleSelectionType.SerializeToString(
323
- type.args.map((v) =>
324
- DispatchParsedType.Operations.SerializeToString(v),
325
- ),
326
- );
327
- case "multiSelection":
328
- return MultiSelectionType.SerializeToString(
329
- type.args.map((v) =>
330
- DispatchParsedType.Operations.SerializeToString(v),
331
- ),
332
- );
333
- case "list":
334
- return ListType.SerializeToString(
335
- type.args.map((v) =>
336
- DispatchParsedType.Operations.SerializeToString(v),
337
- ),
338
- );
339
- case "tuple":
340
- return TupleType.SerializeToString(
341
- type.args.map((v) =>
342
- DispatchParsedType.Operations.SerializeToString(v),
343
- ),
344
- );
345
- case "sum":
346
- return SumType.SerializeToString(
347
- type.args.map((v) =>
348
- DispatchParsedType.Operations.SerializeToString(v),
349
- ),
350
- );
351
- case "map":
352
- return MapType.SerializeToString(
353
- type.args.map((v) =>
354
- DispatchParsedType.Operations.SerializeToString(v),
355
- ),
356
- );
357
- case "union":
358
- return UnionType.SerializeToString(
359
- type.args.map((v) =>
360
- DispatchParsedType.Operations.SerializeToString(v),
361
- ),
362
- );
363
- case "lookup":
364
- return LookupType.SerializeToString(type.name);
365
- default:
366
- throw new Error(`Unknown type: ${JSON.stringify(type)}`);
367
- }
368
- },
369
- ParseRecord: (
370
- typeName,
371
- rawType,
372
- typeNames,
373
- serializedTypes,
374
- alreadyParsedTypes,
375
- injectedPrimitives,
376
- ) =>
377
- // will already been parsed if it was extended by another type which was already parsed
378
- alreadyParsedTypes.has(typeName)
379
- ? alreadyParsedTypes
380
- .get(typeName)
381
- .Then((parsedType) =>
382
- parsedType.kind != "record"
383
- ? ValueOrErrors.Default.throwOne(
384
- `Error: ${JSON.stringify(parsedType)} is not a record type`,
385
- )
252
+ ]))
253
+ .MapErrors((errors) => errors.map((error) => `${error}\n...When parsing keyOf type`)),
254
+ SerializeToString: (type) => {
255
+ switch (type.kind) {
256
+ case "primitive":
257
+ return DispatchPrimitiveType.SerializeToString(type.name);
258
+ case "record":
259
+ return RecordType.SerializeToString(type.fields.map((v) => DispatchParsedType.Operations.SerializeToString(v)));
260
+ case "table":
261
+ return TableType.SerializeToString(DispatchParsedType.Operations.SerializeToString(type.arg));
262
+ case "one":
263
+ return OneType.SerializeToString(DispatchParsedType.Operations.SerializeToString(type.arg));
264
+ case "singleSelection":
265
+ return SingleSelectionType.SerializeToString(type.args.map((v) => DispatchParsedType.Operations.SerializeToString(v)));
266
+ case "multiSelection":
267
+ return MultiSelectionType.SerializeToString(type.args.map((v) => DispatchParsedType.Operations.SerializeToString(v)));
268
+ case "list":
269
+ return ListType.SerializeToString(type.args.map((v) => DispatchParsedType.Operations.SerializeToString(v)));
270
+ case "tuple":
271
+ return TupleType.SerializeToString(type.args.map((v) => DispatchParsedType.Operations.SerializeToString(v)));
272
+ case "sum":
273
+ return SumType.SerializeToString(type.args.map((v) => DispatchParsedType.Operations.SerializeToString(v)));
274
+ case "map":
275
+ return MapType.SerializeToString(type.args.map((v) => DispatchParsedType.Operations.SerializeToString(v)));
276
+ case "union":
277
+ return UnionType.SerializeToString(type.args.map((v) => DispatchParsedType.Operations.SerializeToString(v)));
278
+ case "lookup":
279
+ return LookupType.SerializeToString(type.name);
280
+ default:
281
+ throw new Error(`Unknown type: ${JSON.stringify(type)}`);
282
+ }
283
+ },
284
+ ParseRecord: (typeName, rawType, typeNames, serializedTypes, alreadyParsedTypes, injectedPrimitives) =>
285
+ // will already been parsed if it was extended by another type which was already parsed
286
+ alreadyParsedTypes.has(typeName)
287
+ ? alreadyParsedTypes
288
+ .get(typeName)
289
+ .Then((parsedType) => parsedType.kind != "record"
290
+ ? ValueOrErrors.Default.throwOne(`Error: ${JSON.stringify(parsedType)} is not a record type`)
386
291
  : ValueOrErrors.Default.return([
387
292
  parsedType,
388
293
  alreadyParsedTypes,
389
- ]),
390
- )
391
- : !SerializedType.isRecord(rawType)
392
- ? ValueOrErrors.Default.throwOne(
393
- `Error: ${JSON.stringify(rawType)} is not a valid record`,
394
- )
395
- : (SerializedType.isExtendedType(rawType)
396
- ? ValueOrErrors.Operations.All(
397
- List(
398
- rawType.extends.map((extendedTypeName) =>
399
- alreadyParsedTypes.has(extendedTypeName)
294
+ ]))
295
+ : !SerializedType.isRecord(rawType)
296
+ ? ValueOrErrors.Default.throwOne(`Error: ${JSON.stringify(rawType)} is not a valid record`)
297
+ : (SerializedType.isExtendedType(rawType)
298
+ ? ValueOrErrors.Operations.All(List(rawType.extends.map((extendedTypeName) => alreadyParsedTypes.has(extendedTypeName)
400
299
  ? alreadyParsedTypes
401
300
  .get(extendedTypeName)
402
- .Then((extendedType) =>
403
- extendedType.kind != "record"
404
- ? ValueOrErrors.Default.throwOne(
405
- `Error: ${JSON.stringify(extendedType)} is not a record type`,
406
- )
407
- : ValueOrErrors.Default.return([
408
- extendedTypeName,
409
- extendedType,
410
- ]),
411
- )
301
+ .Then((extendedType) => extendedType.kind != "record"
302
+ ? ValueOrErrors.Default.throwOne(`Error: ${JSON.stringify(extendedType)} is not a record type`)
303
+ : ValueOrErrors.Default.return([extendedTypeName, extendedType]))
412
304
  : serializedTypes[extendedTypeName] == undefined
413
- ? ValueOrErrors.Default.throwOne(
414
- `Error: cannot find extended type ${extendedTypeName} in types`,
415
- )
416
- : DispatchParsedType.Operations.ParseRawType(
417
- extendedTypeName,
418
- serializedTypes[extendedTypeName],
419
- typeNames,
420
- serializedTypes,
421
- alreadyParsedTypes,
422
- injectedPrimitives,
423
- ).Then((parsedType) =>
424
- parsedType[0].kind == "record"
425
- ? ValueOrErrors.Default.return([
426
- extendedTypeName,
427
- parsedType[0],
428
- ])
429
- : ValueOrErrors.Default.throwOne(
430
- `Error: ${JSON.stringify(parsedType[0])} is not a record type`,
431
- ),
432
- ),
433
- ),
434
- ),
435
- )
436
- .MapErrors((errors) =>
437
- errors.map(
438
- (error) => `${error}\n...When parsing extended types`,
439
- ),
440
- )
441
- .Then((parsedExtendedRecordTypes) =>
442
- ValueOrErrors.Default.return(
443
- parsedExtendedRecordTypes.reduce(
444
- (acc, type) => acc.set(type[0], type[1]),
445
- Map(),
446
- ),
447
- ),
448
- )
449
- : ValueOrErrors.Default.return(Map())
450
- ).Then((parsedExtendedRecordTypesMap) =>
451
- ValueOrErrors.Operations.All(
452
- List(
453
- Object.entries(rawType.fields).map(([fieldName, fieldType]) =>
454
- DispatchParsedType.Operations.ParseRawType(
455
- fieldName,
456
- fieldType,
457
- typeNames,
458
- serializedTypes,
459
- alreadyParsedTypes,
460
- injectedPrimitives,
461
- ).Then((parsedField) =>
462
- ValueOrErrors.Default.return([fieldName, parsedField]),
463
- ),
464
- ),
465
- ),
466
- )
467
- .Then((parsedFields) =>
468
- ValueOrErrors.Default.return(
469
- Map(
470
- parsedFields.map(([fieldName, parsedField]) => [
471
- fieldName,
472
- parsedField[0],
473
- ]),
474
- ),
475
- ),
476
- )
477
- .Then((parsedFieldsMap) =>
478
- ValueOrErrors.Default.return(
479
- DispatchParsedType.Default.record(
480
- parsedFieldsMap.merge(
481
- parsedExtendedRecordTypesMap.reduce(
482
- (acc, type) => acc.merge(type.fields),
483
- Map(),
484
- ),
485
- ),
486
- ),
487
- ).Then((parsedRecord) =>
488
- ValueOrErrors.Default.return([
489
- parsedRecord,
490
- parsedExtendedRecordTypesMap.reduce(
491
- (acc, type, name) =>
492
- acc.set(name, ValueOrErrors.Default.return(type)),
305
+ ? ValueOrErrors.Default.throwOne(`Error: cannot find extended type ${extendedTypeName} in types`)
306
+ : DispatchParsedType.Operations.ParseRawType(extendedTypeName, serializedTypes[extendedTypeName], typeNames, serializedTypes, alreadyParsedTypes, injectedPrimitives).Then((parsedType) => parsedType[0].kind == "record"
307
+ ? ValueOrErrors.Default.return([extendedTypeName, parsedType[0]])
308
+ : ValueOrErrors.Default.throwOne(`Error: ${JSON.stringify(parsedType[0])} is not a record type`)))))
309
+ .MapErrors((errors) => errors.map((error) => `${error}\n...When parsing extended types`))
310
+ .Then((parsedExtendedRecordTypes) => ValueOrErrors.Default.return(parsedExtendedRecordTypes.reduce((acc, type) => acc.set(type[0], type[1]), Map())))
311
+ : ValueOrErrors.Default.return(Map())).Then((parsedExtendedRecordTypesMap) => ValueOrErrors.Operations.All(List(Object.entries(rawType.fields).map(([fieldName, fieldType]) => DispatchParsedType.Operations.ParseRawType(fieldName, fieldType, typeNames, serializedTypes, alreadyParsedTypes, injectedPrimitives).Then((parsedField) => ValueOrErrors.Default.return([fieldName, parsedField])))))
312
+ .Then((parsedFields) => ValueOrErrors.Default.return(Map(parsedFields.map(([fieldName, parsedField]) => [
313
+ fieldName,
314
+ parsedField[0],
315
+ ]))))
316
+ .Then((parsedFieldsMap) => ValueOrErrors.Default.return(DispatchParsedType.Default.record(parsedFieldsMap.merge(parsedExtendedRecordTypesMap.reduce((acc, type) => acc.merge(type.fields), Map())))).Then((parsedRecord) => ValueOrErrors.Default.return([
317
+ parsedRecord,
318
+ parsedExtendedRecordTypesMap.reduce((acc, type, name) => acc.set(name, ValueOrErrors.Default.return(type)), alreadyParsedTypes),
319
+ ])))),
320
+ ParseRawType: (typeName, rawType, typeNames, serializedTypes, alreadyParsedTypes, injectedPrimitives) => {
321
+ const result = (() => {
322
+ if (SerializedType.isPrimitive(rawType, injectedPrimitives))
323
+ return ValueOrErrors.Default.return([
324
+ DispatchParsedType.Default.primitive(rawType == "guid" ? "string" : rawType),
325
+ alreadyParsedTypes,
326
+ ]);
327
+ if (SerializedType.isSingleSelection(rawType))
328
+ return DispatchParsedType.Operations.ParseRawType(`SingleSelection:Element`, rawType.args[0], typeNames, serializedTypes, alreadyParsedTypes, injectedPrimitives).Then((parsedArgs) => ValueOrErrors.Default.return([
329
+ DispatchParsedType.Default.singleSelection([parsedArgs[0]]),
493
330
  alreadyParsedTypes,
494
- ),
495
- ]),
496
- ),
497
- ),
498
- ),
499
- ParseRawType: (
500
- typeName,
501
- rawType,
502
- typeNames,
503
- serializedTypes,
504
- alreadyParsedTypes,
505
- injectedPrimitives,
506
- ) => {
507
- const result = (() => {
508
- if (SerializedType.isPrimitive(rawType, injectedPrimitives))
509
- return ValueOrErrors.Default.return([
510
- DispatchParsedType.Default.primitive(
511
- rawType == "guid" ? "string" : rawType,
512
- ),
513
- alreadyParsedTypes,
514
- ]);
515
- if (SerializedType.isSingleSelection(rawType))
516
- return DispatchParsedType.Operations.ParseRawType(
517
- `SingleSelection:Element`,
518
- rawType.args[0],
519
- typeNames,
520
- serializedTypes,
521
- alreadyParsedTypes,
522
- injectedPrimitives,
523
- ).Then((parsedArgs) =>
524
- ValueOrErrors.Default.return([
525
- DispatchParsedType.Default.singleSelection([parsedArgs[0]]),
526
- alreadyParsedTypes,
527
- ]),
528
- );
529
- if (SerializedType.isMultiSelection(rawType))
530
- return DispatchParsedType.Operations.ParseRawType(
531
- `MultiSelection:Element`,
532
- rawType.args[0],
533
- typeNames,
534
- serializedTypes,
535
- alreadyParsedTypes,
536
- injectedPrimitives,
537
- ).Then((parsedArgs) =>
538
- ValueOrErrors.Default.return([
539
- DispatchParsedType.Default.multiSelection([parsedArgs[0]]),
540
- alreadyParsedTypes,
541
- ]),
542
- );
543
- if (SerializedType.isList(rawType))
544
- return DispatchParsedType.Operations.ParseRawType(
545
- `List:Element`,
546
- rawType.args[0],
547
- typeNames,
548
- serializedTypes,
549
- alreadyParsedTypes,
550
- injectedPrimitives,
551
- ).Then((parsedArgs) =>
552
- ValueOrErrors.Default.return([
553
- DispatchParsedType.Default.list([parsedArgs[0]]),
554
- alreadyParsedTypes,
555
- ]),
556
- );
557
- if (SerializedType.isTuple(rawType))
558
- return ValueOrErrors.Operations.All(
559
- List(
560
- rawType.args.map((arg, index) =>
561
- DispatchParsedType.Operations.ParseRawType(
562
- `Tuple:Item ${index + 1}`,
563
- arg,
564
- typeNames,
565
- serializedTypes,
566
- alreadyParsedTypes,
567
- injectedPrimitives,
568
- ),
569
- ),
570
- ),
571
- ).Then((parsedArgs) =>
572
- ValueOrErrors.Default.return([
573
- DispatchParsedType.Default.tuple(
574
- parsedArgs.map(([parsedArg]) => parsedArg).toArray(),
575
- ),
576
- alreadyParsedTypes,
577
- ]),
578
- );
579
- if (SerializedType.isMap(rawType))
580
- return DispatchParsedType.Operations.ParseRawType(
581
- "Map:Key",
582
- rawType.args[0],
583
- typeNames,
584
- serializedTypes,
585
- alreadyParsedTypes,
586
- injectedPrimitives,
587
- ).Then((parsedArgs0) =>
588
- DispatchParsedType.Operations.ParseRawType(
589
- "Map:Value",
590
- rawType.args[1],
591
- typeNames,
592
- serializedTypes,
593
- alreadyParsedTypes,
594
- injectedPrimitives,
595
- ).Then((parsedArgs1) =>
596
- ValueOrErrors.Default.return([
597
- DispatchParsedType.Default.map([
598
- parsedArgs0[0],
599
- parsedArgs1[0],
600
- ]),
601
- alreadyParsedTypes,
602
- ]),
603
- ),
604
- );
605
- if (SerializedType.isSum(rawType))
606
- return DispatchParsedType.Operations.ParseRawType(
607
- "Sum:Left",
608
- rawType.args[0],
609
- typeNames,
610
- serializedTypes,
611
- alreadyParsedTypes,
612
- injectedPrimitives,
613
- ).Then((parsedArgs0) =>
614
- DispatchParsedType.Operations.ParseRawType(
615
- "Sum:Right",
616
- rawType.args[1],
617
- typeNames,
618
- serializedTypes,
619
- alreadyParsedTypes,
620
- injectedPrimitives,
621
- ).Then((parsedArgs1) =>
622
- ValueOrErrors.Default.return([
623
- DispatchParsedType.Default.sum([
624
- parsedArgs0[0],
625
- parsedArgs1[0],
626
- ]),
627
- alreadyParsedTypes,
628
- ]),
629
- ),
630
- );
631
- if (SerializedType.isRecord(rawType))
632
- return DispatchParsedType.Operations.ParseRecord(
633
- typeName,
634
- rawType,
635
- typeNames,
636
- serializedTypes,
637
- alreadyParsedTypes,
638
- injectedPrimitives,
639
- );
640
- if (SerializedType.isTable(rawType)) {
641
- return DispatchParsedType.Operations.ParseRawType(
642
- "TableArg",
643
- rawType.args[0],
644
- typeNames,
645
- serializedTypes,
646
- alreadyParsedTypes,
647
- injectedPrimitives,
648
- ).Then((parsedArg) =>
649
- parsedArg[0].kind != "lookup"
650
- ? ValueOrErrors.Default.throwOne(
651
- `Error: ${JSON.stringify(parsedArg[0])} is not a lookup type`,
652
- )
653
- : ValueOrErrors.Default.return([
654
- DispatchParsedType.Default.table(parsedArg[0]),
655
- alreadyParsedTypes,
656
- ]),
657
- );
658
- }
659
- if (SerializedType.isLookup(rawType, typeNames))
660
- return ValueOrErrors.Default.return([
661
- DispatchParsedType.Default.lookup(rawType),
662
- alreadyParsedTypes,
663
- ]);
664
- if (SerializedType.isUnit(rawType)) {
665
- return ValueOrErrors.Default.return([
666
- DispatchParsedType.Default.primitive("unit"),
667
- alreadyParsedTypes,
668
- ]);
669
- }
670
- if (SerializedType.isUnion(rawType))
671
- // for now we assume all union cases are lookup types
672
- return ValueOrErrors.Operations.All(
673
- List(
674
- rawType.args.map((unionCase) =>
675
- typeof unionCase.fields == "string" // lookup case
676
- ? serializedTypes[unionCase.fields] == undefined // probably dont need this
677
- ? ValueOrErrors.Default.throwOne(
678
- `Cannot find union case type: ${JSON.stringify(unionCase.fields)} in types`,
679
- )
680
- : DispatchParsedType.Operations.ParseRawType(
681
- `Union:Case ${unionCase.caseName}`,
682
- unionCase.fields,
683
- typeNames,
684
- serializedTypes,
331
+ ]));
332
+ if (SerializedType.isMultiSelection(rawType))
333
+ return DispatchParsedType.Operations.ParseRawType(`MultiSelection:Element`, rawType.args[0], typeNames, serializedTypes, alreadyParsedTypes, injectedPrimitives).Then((parsedArgs) => ValueOrErrors.Default.return([
334
+ DispatchParsedType.Default.multiSelection([parsedArgs[0]]),
685
335
  alreadyParsedTypes,
686
- injectedPrimitives,
687
- ).Then((parsedType) =>
688
- ValueOrErrors.Default.return([
689
- unionCase.caseName,
690
- parsedType[0],
336
+ ]));
337
+ if (SerializedType.isList(rawType))
338
+ return DispatchParsedType.Operations.ParseRawType(`List:Element`, rawType.args[0], typeNames, serializedTypes, alreadyParsedTypes, injectedPrimitives).Then((parsedArgs) => ValueOrErrors.Default.return([
339
+ DispatchParsedType.Default.list([parsedArgs[0]]),
340
+ alreadyParsedTypes,
341
+ ]));
342
+ if (SerializedType.isTuple(rawType))
343
+ return ValueOrErrors.Operations.All(List(rawType.args.map((arg, index) => DispatchParsedType.Operations.ParseRawType(`Tuple:Item ${index + 1}`, arg, typeNames, serializedTypes, alreadyParsedTypes, injectedPrimitives)))).Then((parsedArgs) => ValueOrErrors.Default.return([
344
+ DispatchParsedType.Default.tuple(parsedArgs.map(([parsedArg]) => parsedArg).toArray()),
345
+ alreadyParsedTypes,
346
+ ]));
347
+ if (SerializedType.isMap(rawType))
348
+ return DispatchParsedType.Operations.ParseRawType("Map:Key", rawType.args[0], typeNames, serializedTypes, alreadyParsedTypes, injectedPrimitives).Then((parsedArgs0) => DispatchParsedType.Operations.ParseRawType("Map:Value", rawType.args[1], typeNames, serializedTypes, alreadyParsedTypes, injectedPrimitives).Then((parsedArgs1) => ValueOrErrors.Default.return([
349
+ DispatchParsedType.Default.map([
350
+ parsedArgs0[0],
351
+ parsedArgs1[0],
691
352
  ]),
692
- )
693
- : DispatchParsedType.Operations.ParseRawType(
694
- `Union:Case ${unionCase.caseName}`,
695
- unionCase.fields == undefined
696
- ? { fields: {} }
697
- : unionCase,
698
- typeNames,
699
- serializedTypes,
700
- alreadyParsedTypes,
701
- injectedPrimitives,
702
- ).Then((parsedType) =>
703
- ValueOrErrors.Default.return([
704
- unionCase.caseName,
705
- parsedType[0],
706
- ]),
707
- ),
708
- ),
709
- ),
710
- ).Then((parsedUnionCases) =>
711
- ValueOrErrors.Default.return([
712
- DispatchParsedType.Default.union(Map(parsedUnionCases)),
713
- alreadyParsedTypes,
714
- ]),
715
- );
716
- if (SerializedType.isOne(rawType))
717
- return DispatchParsedType.Operations.ParseRawType(
718
- "One:Element",
719
- rawType.args[0],
720
- typeNames,
721
- serializedTypes,
722
- alreadyParsedTypes,
723
- injectedPrimitives,
724
- ).Then((parsedArg) =>
725
- parsedArg[0].kind != "lookup"
726
- ? ValueOrErrors.Default.throwOne(
727
- `one content type ${JSON.stringify(parsedArg[0])} is not a lookup type`,
728
- )
729
- : ValueOrErrors.Default.return([
730
- DispatchParsedType.Default.one(parsedArg[0]),
731
- alreadyParsedTypes,
732
- ]),
733
- );
734
- if (SerializedType.isKeyOf(rawType))
735
- return DispatchParsedType.Operations.ParseRawKeyOf(
736
- rawType,
737
- typeNames,
738
- serializedTypes,
739
- alreadyParsedTypes,
740
- );
741
- return ValueOrErrors.Default.throwOne(
742
- `Unrecognised type "${typeName}" : ${JSON.stringify(rawType)}`,
743
- );
744
- })();
745
- return result.MapErrors((errors) =>
746
- errors.map((error) => `${error}\n...When parsing type "${typeName}"`),
747
- );
353
+ alreadyParsedTypes,
354
+ ])));
355
+ if (SerializedType.isSum(rawType))
356
+ return DispatchParsedType.Operations.ParseRawType("Sum:Left", rawType.args[0], typeNames, serializedTypes, alreadyParsedTypes, injectedPrimitives).Then((parsedArgs0) => DispatchParsedType.Operations.ParseRawType("Sum:Right", rawType.args[1], typeNames, serializedTypes, alreadyParsedTypes, injectedPrimitives).Then((parsedArgs1) => ValueOrErrors.Default.return([
357
+ DispatchParsedType.Default.sum([
358
+ parsedArgs0[0],
359
+ parsedArgs1[0],
360
+ ]),
361
+ alreadyParsedTypes,
362
+ ])));
363
+ if (SerializedType.isRecord(rawType))
364
+ return DispatchParsedType.Operations.ParseRecord(typeName, rawType, typeNames, serializedTypes, alreadyParsedTypes, injectedPrimitives);
365
+ if (SerializedType.isTable(rawType)) {
366
+ return DispatchParsedType.Operations.ParseRawType("TableArg", rawType.args[0], typeNames, serializedTypes, alreadyParsedTypes, injectedPrimitives).Then((parsedArg) => parsedArg[0].kind != "lookup"
367
+ ? ValueOrErrors.Default.throwOne(`Error: ${JSON.stringify(parsedArg[0])} is not a lookup type`)
368
+ : ValueOrErrors.Default.return([
369
+ DispatchParsedType.Default.table(parsedArg[0]),
370
+ alreadyParsedTypes,
371
+ ]));
372
+ }
373
+ if (SerializedType.isLookup(rawType, typeNames))
374
+ return ValueOrErrors.Default.return([
375
+ DispatchParsedType.Default.lookup(rawType),
376
+ alreadyParsedTypes,
377
+ ]);
378
+ if (SerializedType.isUnit(rawType)) {
379
+ return ValueOrErrors.Default.return([
380
+ DispatchParsedType.Default.primitive("unit"),
381
+ alreadyParsedTypes,
382
+ ]);
383
+ }
384
+ if (SerializedType.isUnion(rawType))
385
+ // for now we assume all union cases are lookup types
386
+ return ValueOrErrors.Operations.All(List(rawType.args.map((unionCase) => typeof unionCase.fields == "string" // lookup case
387
+ ? serializedTypes[unionCase.fields] == undefined // probably dont need this
388
+ ? ValueOrErrors.Default.throwOne(`Cannot find union case type: ${JSON.stringify(unionCase.fields)} in types`)
389
+ : DispatchParsedType.Operations.ParseRawType(`Union:Case ${unionCase.caseName}`, unionCase.fields, typeNames, serializedTypes, alreadyParsedTypes, injectedPrimitives).Then((parsedType) => ValueOrErrors.Default.return([
390
+ unionCase.caseName,
391
+ parsedType[0],
392
+ ]))
393
+ : DispatchParsedType.Operations.ParseRawType(`Union:Case ${unionCase.caseName}`, unionCase.fields == undefined
394
+ ? { fields: {} }
395
+ : unionCase, typeNames, serializedTypes, alreadyParsedTypes, injectedPrimitives).Then((parsedType) => ValueOrErrors.Default.return([
396
+ unionCase.caseName,
397
+ parsedType[0],
398
+ ]))))).Then((parsedUnionCases) => ValueOrErrors.Default.return([
399
+ DispatchParsedType.Default.union(Map(parsedUnionCases)),
400
+ alreadyParsedTypes,
401
+ ]));
402
+ if (SerializedType.isOne(rawType))
403
+ return DispatchParsedType.Operations.ParseRawType("One:Element", rawType.args[0], typeNames, serializedTypes, alreadyParsedTypes, injectedPrimitives).Then((parsedArg) => parsedArg[0].kind != "lookup"
404
+ ? ValueOrErrors.Default.throwOne(`one content type ${JSON.stringify(parsedArg[0])} is not a lookup type`)
405
+ : ValueOrErrors.Default.return([
406
+ DispatchParsedType.Default.one(parsedArg[0]),
407
+ alreadyParsedTypes,
408
+ ]));
409
+ if (SerializedType.isKeyOf(rawType))
410
+ return DispatchParsedType.Operations.ParseRawKeyOf(rawType, typeNames, serializedTypes, alreadyParsedTypes);
411
+ return ValueOrErrors.Default.throwOne(`Unrecognised type "${typeName}" : ${JSON.stringify(rawType)}`);
412
+ })();
413
+ return result.MapErrors((errors) => errors.map((error) => `${error}\n...When parsing type "${typeName}"`));
414
+ },
415
+ ResolveLookupType: (typeName, types) => MapRepo.Operations.tryFindWithError(typeName, types, () => `cannot find lookup type ${typeName} in types`),
416
+ AsResolvedType: (type, types) => type.kind == "lookup"
417
+ ? DispatchParsedType.Operations.ResolveLookupType(type.name, types)
418
+ : ValueOrErrors.Default.return(type),
748
419
  },
749
- ResolveLookupType: (typeName, types) =>
750
- MapRepo.Operations.tryFindWithError(
751
- typeName,
752
- types,
753
- () => `cannot find lookup type ${typeName} in types`,
754
- ),
755
- AsResolvedType: (type, types) =>
756
- type.kind == "lookup"
757
- ? DispatchParsedType.Operations.ResolveLookupType(type.name, types)
758
- : ValueOrErrors.Default.return(type),
759
- },
760
420
  };
761
- //# sourceMappingURL=state.js.map
421
+ //# sourceMappingURL=state.js.map