ballerina-core 1.0.186 → 1.0.187

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 (496) 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 +9 -2
  4. package/bin/src/api-response-handler/coroutines/runner.js +20 -13
  5. package/bin/src/api-response-handler/state.d.ts +12 -12
  6. package/bin/src/api-response-handler/state.js +13 -11
  7. package/bin/src/apiResultStatus/state.d.ts +10 -3
  8. package/bin/src/apiResultStatus/state.js +2 -5
  9. package/bin/src/async/domains/mirroring/domains/collection/coroutines/synchronizers.d.ts +400 -75
  10. package/bin/src/async/domains/mirroring/domains/collection/coroutines/synchronizers.js +314 -196
  11. package/bin/src/async/domains/mirroring/domains/collection/state.d.ts +38 -25
  12. package/bin/src/async/domains/mirroring/domains/collection/state.js +126 -36
  13. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-collection/state.d.ts +12 -8
  14. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-collection/state.js +18 -11
  15. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-collection-entity/state.d.ts +12 -9
  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 +17 -8
  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 +16 -13
  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 +12 -9
  22. package/bin/src/async/domains/mirroring/domains/entity/state.js +18 -9
  23. package/bin/src/async/domains/mirroring/domains/singleton/coroutines/synchronizers.d.ts +233 -41
  24. package/bin/src/async/domains/mirroring/domains/singleton/coroutines/synchronizers.js +134 -83
  25. package/bin/src/async/domains/mirroring/domains/singleton/state.d.ts +24 -15
  26. package/bin/src/async/domains/mirroring/domains/singleton/state.js +52 -8
  27. package/bin/src/async/domains/mirroring/domains/synchronization-result/state.d.ts +5 -2
  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 +16 -10
  30. package/bin/src/async/domains/mirroring/domains/synchronized-entities/state.js +7 -4
  31. package/bin/src/async/domains/promise/state.d.ts +9 -4
  32. package/bin/src/async/domains/promise/state.js +20 -9
  33. package/bin/src/async/domains/synchronized/coroutines/synchronize.d.ts +29 -4
  34. package/bin/src/async/domains/synchronized/coroutines/synchronize.js +80 -28
  35. package/bin/src/async/domains/synchronized/state.d.ts +14 -7
  36. package/bin/src/async/domains/synchronized/state.js +16 -6
  37. package/bin/src/async/state.d.ts +56 -45
  38. package/bin/src/async/state.js +115 -97
  39. package/bin/src/baseEntity/domains/identifiable/state.d.ts +15 -11
  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 +19 -15
  46. package/bin/src/collections/domains/immutable/domains/list/state.js +46 -44
  47. package/bin/src/collections/domains/immutable/domains/map/state.d.ts +30 -16
  48. package/bin/src/collections/domains/immutable/domains/map/state.js +41 -23
  49. package/bin/src/collections/domains/immutable/domains/orderedMap/state.d.ts +53 -25
  50. package/bin/src/collections/domains/immutable/domains/orderedMap/state.js +84 -65
  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 +12 -9
  55. package/bin/src/collections/domains/product/state.d.ts +25 -19
  56. package/bin/src/collections/domains/product/state.js +13 -10
  57. package/bin/src/collections/domains/sum/state.d.ts +101 -77
  58. package/bin/src/collections/domains/sum/state.js +49 -32
  59. package/bin/src/collections/domains/valueOrErrors/state.d.ts +53 -27
  60. package/bin/src/collections/domains/valueOrErrors/state.js +81 -56
  61. package/bin/src/coroutines/builder.d.ts +135 -49
  62. package/bin/src/coroutines/builder.js +40 -19
  63. package/bin/src/coroutines/state.d.ts +186 -71
  64. package/bin/src/coroutines/state.js +381 -306
  65. package/bin/src/coroutines/template.d.ts +17 -8
  66. package/bin/src/coroutines/template.js +97 -59
  67. package/bin/src/debounced/coroutines/debounce.d.ts +15 -6
  68. package/bin/src/debounced/coroutines/debounce.js +115 -89
  69. package/bin/src/debounced/state.d.ts +26 -19
  70. package/bin/src/debounced/state.js +62 -25
  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 +30 -8
  77. package/bin/src/forms/domains/collection/domains/reference/state.d.ts +29 -22
  78. package/bin/src/forms/domains/collection/domains/reference/state.js +26 -20
  79. package/bin/src/forms/domains/collection/domains/selection/state.d.ts +37 -15
  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 +512 -105
  82. package/bin/src/forms/domains/dispatched-forms/built-ins/state.js +1405 -530
  83. package/bin/src/forms/domains/dispatched-forms/deserializer/coroutines/runner.d.ts +22 -2
  84. package/bin/src/forms/domains/dispatched-forms/deserializer/coroutines/runner.js +128 -44
  85. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/apis/state.d.ts +82 -63
  86. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/apis/state.js +172 -86
  87. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/enum/state.d.ts +35 -19
  88. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/enum/state.js +40 -27
  89. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/list/state.d.ts +60 -28
  90. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/list/state.js +76 -40
  91. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/lookup/state.d.ts +121 -56
  92. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/lookup/state.js +102 -59
  93. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/map/state.d.ts +42 -15
  94. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/map/state.js +64 -29
  95. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/nestedRenderer/state.d.ts +70 -29
  96. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/nestedRenderer/state.js +52 -20
  97. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/one/state.d.ts +61 -18
  98. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/one/state.js +88 -33
  99. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/primitive/state.d.ts +20 -10
  100. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/primitive/state.js +21 -13
  101. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/record/domains/recordFieldRenderer/state.d.ts +42 -11
  102. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/record/domains/recordFieldRenderer/state.js +59 -18
  103. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/record/state.d.ts +46 -18
  104. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/record/state.js +110 -48
  105. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/stream/state.d.ts +29 -14
  106. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/stream/state.js +43 -27
  107. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/sum/state.d.ts +49 -19
  108. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/sum/state.js +63 -23
  109. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/sumUnitDate/state.d.ts +21 -13
  110. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/sumUnitDate/state.js +39 -22
  111. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/table/domains/tableCellRenderer/state.d.ts +39 -10
  112. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/table/domains/tableCellRenderer/state.js +46 -11
  113. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/table/state.d.ts +79 -34
  114. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/table/state.js +146 -46
  115. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/tuple/state.d.ts +37 -13
  116. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/tuple/state.js +64 -29
  117. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/union/state.d.ts +40 -15
  118. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/union/state.js +78 -33
  119. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/state.d.ts +101 -18
  120. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/state.js +149 -59
  121. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/types/state.d.ts +277 -155
  122. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/types/state.js +715 -375
  123. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/state.d.ts +103 -51
  124. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/state.js +252 -94
  125. package/bin/src/forms/domains/dispatched-forms/deserializer/state.d.ts +302 -80
  126. package/bin/src/forms/domains/dispatched-forms/deserializer/state.js +174 -55
  127. package/bin/src/forms/domains/dispatched-forms/deserializer/template.d.ts +27 -2
  128. package/bin/src/forms/domains/dispatched-forms/deserializer/template.js +3 -2
  129. package/bin/src/forms/domains/dispatched-forms/runner/coroutines/runner.d.ts +27 -4
  130. package/bin/src/forms/domains/dispatched-forms/runner/coroutines/runner.js +136 -82
  131. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/base-64-file/state.d.ts +35 -7
  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 +28 -4
  134. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/base-64-file/template.js +49 -23
  135. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/boolean/state.d.ts +32 -7
  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 +25 -4
  138. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/boolean/template.js +49 -23
  139. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/date/state.d.ts +56 -19
  140. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/date/state.js +18 -6
  141. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/date/template.d.ts +29 -7
  142. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/date/template.js +64 -30
  143. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum/state.d.ts +42 -15
  144. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum/state.js +9 -6
  145. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum/template.d.ts +40 -8
  146. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum/template.js +150 -59
  147. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum-multiselect/state.d.ts +45 -11
  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 +42 -8
  150. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum-multiselect/template.js +127 -50
  151. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/injectables/state.d.ts +55 -19
  152. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/injectables/state.js +40 -22
  153. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/list/state.d.ts +75 -27
  154. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/list/state.js +19 -10
  155. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/list/template.d.ts +50 -6
  156. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/list/template.js +289 -95
  157. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/lookup-type/state.d.ts +39 -7
  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 +44 -4
  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 +26 -8
  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 +103 -26
  165. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/map/state.js +61 -18
  166. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/map/template.d.ts +64 -9
  167. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/map/template.js +308 -89
  168. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/number/state.d.ts +37 -7
  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 +29 -4
  171. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/number/template.js +54 -23
  172. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/runner.d.ts +181 -44
  173. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/runner.js +184 -77
  174. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/state.d.ts +418 -175
  175. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/state.js +76 -20
  176. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/template.d.ts +66 -12
  177. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/template.js +581 -212
  178. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/record/state.d.ts +80 -21
  179. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/record/state.js +32 -11
  180. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/record/template.d.ts +57 -10
  181. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/record/template.js +190 -61
  182. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream/state.d.ts +123 -49
  183. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream/state.js +35 -13
  184. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream/template.d.ts +45 -8
  185. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream/template.js +195 -68
  186. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream-multiselect/state.d.ts +121 -51
  187. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream-multiselect/state.js +36 -13
  188. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream-multiselect/template.d.ts +45 -8
  189. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream-multiselect/template.js +246 -106
  190. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/secret/state.d.ts +38 -8
  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 +29 -4
  193. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/secret/template.js +54 -23
  194. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/state.d.ts +58 -34
  195. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/state.js +24 -13
  196. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/string/state.d.ts +38 -8
  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 +29 -4
  199. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/string/template.js +58 -26
  200. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/sum/state.d.ts +92 -29
  201. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/sum/state.js +22 -7
  202. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/sum/template.d.ts +55 -7
  203. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/sum/template.js +162 -48
  204. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/runner.d.ts +81 -22
  205. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/runner.js +89 -40
  206. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/state.d.ts +324 -154
  207. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/state.js +117 -56
  208. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/template.d.ts +69 -9
  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 +496 -185
  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 +75 -18
  213. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/tuple/state.js +20 -8
  214. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/tuple/template.d.ts +51 -6
  215. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/tuple/template.js +121 -32
  216. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/union/state.d.ts +76 -18
  217. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/union/state.js +21 -8
  218. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/union/template.d.ts +51 -6
  219. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/union/template.js +90 -31
  220. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/unit/state.d.ts +45 -13
  221. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/unit/state.js +12 -9
  222. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/unit/template.d.ts +29 -6
  223. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/unit/template.js +54 -20
  224. package/bin/src/forms/domains/dispatched-forms/runner/domains/deltas/state.d.ts +600 -437
  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 +668 -516
  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 +24 -5
  229. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/list/state.js +51 -16
  230. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/lookup/state.d.ts +26 -6
  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 +39 -13
  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 +23 -5
  235. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/map/state.js +68 -16
  236. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/multiSelection/state.d.ts +22 -5
  237. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/multiSelection/state.js +76 -22
  238. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/nestedDispatcher/state.d.ts +41 -6
  239. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/nestedDispatcher/state.js +37 -8
  240. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/one/state.d.ts +57 -7
  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 +113 -31
  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 +22 -5
  245. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/primitive/state.js +139 -61
  246. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/recordField/state.d.ts +26 -5
  247. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/recordField/state.js +14 -4
  248. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/state.d.ts +49 -6
  249. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/state.js +79 -25
  250. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/singleSelectionDispatcher/state.d.ts +22 -5
  251. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/singleSelectionDispatcher/state.js +76 -22
  252. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/sum/state.d.ts +25 -5
  253. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/sum/state.js +55 -18
  254. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/table/state.d.ts +54 -7
  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 +160 -48
  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 +25 -5
  259. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/tupleDispatcher/state.js +54 -11
  260. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/unionDispatcher/state.d.ts +25 -5
  261. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/unionDispatcher/state.js +63 -15
  262. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/state.d.ts +44 -6
  263. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/state.js +135 -43
  264. package/bin/src/forms/domains/dispatched-forms/runner/domains/traversal/state.d.ts +38 -18
  265. package/bin/src/forms/domains/dispatched-forms/runner/domains/traversal/state.js +697 -381
  266. package/bin/src/forms/domains/dispatched-forms/runner/state.d.ts +90 -37
  267. package/bin/src/forms/domains/dispatched-forms/runner/state.js +12 -9
  268. package/bin/src/forms/domains/dispatched-forms/runner/template.d.ts +28 -4
  269. package/bin/src/forms/domains/dispatched-forms/runner/template.js +47 -19
  270. package/bin/src/forms/domains/launcher/coroutines/runner.d.ts +12 -4
  271. package/bin/src/forms/domains/launcher/coroutines/runner.js +120 -45
  272. package/bin/src/forms/domains/launcher/domains/create/coroutines/runner.d.ts +16 -3
  273. package/bin/src/forms/domains/launcher/domains/create/coroutines/runner.js +240 -101
  274. package/bin/src/forms/domains/launcher/domains/create/state.d.ts +236 -121
  275. package/bin/src/forms/domains/launcher/domains/create/state.js +62 -17
  276. package/bin/src/forms/domains/launcher/domains/create/template.d.ts +20 -6
  277. package/bin/src/forms/domains/launcher/domains/create/template.js +84 -42
  278. package/bin/src/forms/domains/launcher/domains/edit/coroutines/runner.d.ts +16 -3
  279. package/bin/src/forms/domains/launcher/domains/edit/coroutines/runner.js +242 -103
  280. package/bin/src/forms/domains/launcher/domains/edit/state.d.ts +230 -121
  281. package/bin/src/forms/domains/launcher/domains/edit/state.js +62 -17
  282. package/bin/src/forms/domains/launcher/domains/edit/template.d.ts +20 -6
  283. package/bin/src/forms/domains/launcher/domains/edit/template.js +86 -43
  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 +35 -26
  286. package/bin/src/forms/domains/launcher/domains/passthrough/coroutines/runner.d.ts +20 -5
  287. package/bin/src/forms/domains/launcher/domains/passthrough/coroutines/runner.js +88 -42
  288. package/bin/src/forms/domains/launcher/domains/passthrough/state.d.ts +123 -58
  289. package/bin/src/forms/domains/launcher/domains/passthrough/state.js +44 -19
  290. package/bin/src/forms/domains/launcher/domains/passthrough/template.d.ts +23 -6
  291. package/bin/src/forms/domains/launcher/domains/passthrough/template.js +56 -34
  292. package/bin/src/forms/domains/launcher/state.d.ts +62 -43
  293. package/bin/src/forms/domains/launcher/state.js +6 -6
  294. package/bin/src/forms/domains/launcher/template.d.ts +35 -15
  295. package/bin/src/forms/domains/launcher/template.js +169 -85
  296. package/bin/src/forms/domains/parser/coroutines/runner.d.ts +13 -5
  297. package/bin/src/forms/domains/parser/coroutines/runner.js +87 -25
  298. package/bin/src/forms/domains/parser/domains/built-ins/state.d.ts +135 -71
  299. package/bin/src/forms/domains/parser/domains/built-ins/state.js +944 -533
  300. package/bin/src/forms/domains/parser/domains/deltas/state.d.ts +417 -296
  301. package/bin/src/forms/domains/parser/domains/deltas/state.js +444 -318
  302. package/bin/src/forms/domains/parser/domains/injectables/state.d.ts +29 -20
  303. package/bin/src/forms/domains/parser/domains/injectables/state.js +29 -26
  304. package/bin/src/forms/domains/parser/domains/layout/state.d.ts +63 -41
  305. package/bin/src/forms/domains/parser/domains/layout/state.js +214 -136
  306. package/bin/src/forms/domains/parser/domains/predicates/domains/extractor/state.d.ts +19 -6
  307. package/bin/src/forms/domains/parser/domains/predicates/domains/extractor/state.js +306 -152
  308. package/bin/src/forms/domains/parser/domains/predicates/state.d.ts +377 -242
  309. package/bin/src/forms/domains/parser/domains/predicates/state.js +1225 -752
  310. package/bin/src/forms/domains/parser/domains/renderer/state.d.ts +245 -92
  311. package/bin/src/forms/domains/parser/domains/renderer/state.js +1137 -480
  312. package/bin/src/forms/domains/parser/domains/types/state.d.ts +170 -130
  313. package/bin/src/forms/domains/parser/domains/types/state.js +355 -170
  314. package/bin/src/forms/domains/parser/domains/validator/state.d.ts +143 -117
  315. package/bin/src/forms/domains/parser/domains/validator/state.js +417 -280
  316. package/bin/src/forms/domains/parser/state.d.ts +217 -82
  317. package/bin/src/forms/domains/parser/state.js +612 -373
  318. package/bin/src/forms/domains/parser/template.d.ts +13 -5
  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 +19 -11
  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 +18 -7
  323. package/bin/src/forms/domains/primitives/domains/base-64-file/template.js +38 -19
  324. package/bin/src/forms/domains/primitives/domains/boolean/state.d.ts +19 -11
  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 +24 -8
  327. package/bin/src/forms/domains/primitives/domains/boolean/template.js +38 -19
  328. package/bin/src/forms/domains/primitives/domains/date/state.d.ts +39 -20
  329. package/bin/src/forms/domains/primitives/domains/date/state.js +18 -9
  330. package/bin/src/forms/domains/primitives/domains/date/template.d.ts +18 -7
  331. package/bin/src/forms/domains/primitives/domains/date/template.js +51 -25
  332. package/bin/src/forms/domains/primitives/domains/enum/state.d.ts +31 -15
  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 +18 -7
  335. package/bin/src/forms/domains/primitives/domains/enum/template.js +117 -48
  336. package/bin/src/forms/domains/primitives/domains/enum-multiselect/state.d.ts +17 -8
  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 +18 -7
  339. package/bin/src/forms/domains/primitives/domains/enum-multiselect/template.js +99 -40
  340. package/bin/src/forms/domains/primitives/domains/list/state.d.ts +45 -24
  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 +38 -13
  343. package/bin/src/forms/domains/primitives/domains/list/template.js +200 -71
  344. package/bin/src/forms/domains/primitives/domains/map/state.d.ts +68 -29
  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 +65 -25
  347. package/bin/src/forms/domains/primitives/domains/map/template.js +294 -103
  348. package/bin/src/forms/domains/primitives/domains/number/state.d.ts +19 -11
  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 +24 -8
  351. package/bin/src/forms/domains/primitives/domains/number/template.js +38 -19
  352. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream/state.d.ts +89 -42
  353. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream/state.js +33 -16
  354. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream/template.d.ts +22 -8
  355. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream/template.js +171 -62
  356. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream-multiselect/state.d.ts +18 -9
  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 +18 -7
  359. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream-multiselect/template.js +182 -69
  360. package/bin/src/forms/domains/primitives/domains/secret/state.d.ts +19 -11
  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 +18 -7
  363. package/bin/src/forms/domains/primitives/domains/secret/template.js +38 -19
  364. package/bin/src/forms/domains/primitives/domains/string/state.d.ts +21 -13
  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 +18 -7
  367. package/bin/src/forms/domains/primitives/domains/string/template.js +42 -22
  368. package/bin/src/forms/domains/primitives/domains/sum/state.d.ts +62 -22
  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 +48 -16
  371. package/bin/src/forms/domains/primitives/domains/sum/template.js +141 -50
  372. package/bin/src/forms/domains/primitives/domains/tuple/state.d.ts +48 -23
  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 +46 -18
  375. package/bin/src/forms/domains/primitives/domains/tuple/template.js +100 -33
  376. package/bin/src/forms/domains/primitives/domains/unit/state.d.ts +17 -10
  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 +9 -4
  379. package/bin/src/forms/domains/primitives/domains/unit/template.js +22 -9
  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/state.d.ts +144 -43
  383. package/bin/src/forms/domains/singleton/state.js +12 -10
  384. package/bin/src/forms/domains/singleton/template.d.ts +177 -88
  385. package/bin/src/forms/domains/singleton/template.js +288 -113
  386. package/bin/src/fun/domains/curry/state.d.ts +4 -2
  387. package/bin/src/fun/domains/curry/state.js +1 -1
  388. package/bin/src/fun/domains/id/state.d.ts +1 -1
  389. package/bin/src/fun/domains/id/state.js +1 -1
  390. package/bin/src/fun/domains/predicate/domains/bool-expr.d.ts +57 -41
  391. package/bin/src/fun/domains/predicate/domains/bool-expr.js +76 -67
  392. package/bin/src/fun/domains/predicate/state.d.ts +9 -7
  393. package/bin/src/fun/domains/predicate/state.js +14 -10
  394. package/bin/src/fun/domains/simpleCallback/state.d.ts +1 -1
  395. package/bin/src/fun/domains/simpleCallback/state.js +1 -1
  396. package/bin/src/fun/domains/uncurry/state.d.ts +4 -2
  397. package/bin/src/fun/domains/uncurry/state.js +1 -1
  398. package/bin/src/fun/domains/unit/state.d.ts +1 -1
  399. package/bin/src/fun/domains/unit/state.js +1 -1
  400. package/bin/src/fun/domains/updater/domains/caseUpdater/state.d.ts +22 -7
  401. package/bin/src/fun/domains/updater/domains/caseUpdater/state.js +18 -10
  402. package/bin/src/fun/domains/updater/domains/mapUpdater/state.d.ts +24 -13
  403. package/bin/src/fun/domains/updater/domains/mapUpdater/state.js +40 -10
  404. package/bin/src/fun/domains/updater/domains/maybeUpdater/state.d.ts +19 -13
  405. package/bin/src/fun/domains/updater/domains/maybeUpdater/state.js +20 -9
  406. package/bin/src/fun/domains/updater/domains/orderedMapUpdater/state.d.ts +24 -13
  407. package/bin/src/fun/domains/updater/domains/orderedMapUpdater/state.js +47 -11
  408. package/bin/src/fun/domains/updater/domains/orderedSetUpdater/state.d.ts +20 -8
  409. package/bin/src/fun/domains/updater/domains/orderedSetUpdater/state.js +17 -5
  410. package/bin/src/fun/domains/updater/domains/replaceWith/state.d.ts +1 -1
  411. package/bin/src/fun/domains/updater/domains/replaceWith/state.js +1 -1
  412. package/bin/src/fun/domains/updater/domains/simpleUpdater/domains/baseSimpleUpdater/state.d.ts +13 -4
  413. package/bin/src/fun/domains/updater/domains/simpleUpdater/domains/baseSimpleUpdater/state.js +6 -4
  414. package/bin/src/fun/domains/updater/domains/simpleUpdater/state.d.ts +60 -22
  415. package/bin/src/fun/domains/updater/domains/simpleUpdater/state.js +42 -31
  416. package/bin/src/fun/domains/updater/state.d.ts +4 -4
  417. package/bin/src/fun/domains/updater/state.js +12 -10
  418. package/bin/src/fun/state.d.ts +3 -3
  419. package/bin/src/fun/state.js +9 -7
  420. package/bin/src/infinite-data-stream/coroutines/builder.d.ts +209 -27
  421. package/bin/src/infinite-data-stream/coroutines/builder.js +1 -1
  422. package/bin/src/infinite-data-stream/coroutines/infiniteLoader.d.ts +21 -5
  423. package/bin/src/infinite-data-stream/coroutines/infiniteLoader.js +47 -20
  424. package/bin/src/infinite-data-stream/coroutines/runner.d.ts +11 -3
  425. package/bin/src/infinite-data-stream/coroutines/runner.js +7 -7
  426. package/bin/src/infinite-data-stream/state.d.ts +84 -51
  427. package/bin/src/infinite-data-stream/state.js +125 -61
  428. package/bin/src/infinite-data-stream/template.d.ts +10 -3
  429. package/bin/src/infinite-data-stream/template.js +3 -2
  430. package/bin/src/math/domains/DOMRect/state.d.ts +4 -4
  431. package/bin/src/math/domains/DOMRect/state.js +10 -8
  432. package/bin/src/math/domains/number/state.d.ts +5 -5
  433. package/bin/src/math/domains/number/state.js +5 -5
  434. package/bin/src/math/domains/rect/state.d.ts +8 -8
  435. package/bin/src/math/domains/rect/state.js +16 -15
  436. package/bin/src/math/domains/rgba/state.d.ts +17 -17
  437. package/bin/src/math/domains/rgba/state.js +77 -81
  438. package/bin/src/math/domains/size2/state.d.ts +8 -8
  439. package/bin/src/math/domains/size2/state.js +6 -6
  440. package/bin/src/math/domains/vector2/state.d.ts +10 -10
  441. package/bin/src/math/domains/vector2/state.js +8 -8
  442. package/bin/src/queue/state.d.ts +23 -7
  443. package/bin/src/queue/state.js +23 -16
  444. package/bin/src/state/domains/repository/state.d.ts +15 -9
  445. package/bin/src/state/domains/repository/state.js +1 -1
  446. package/bin/src/template/state.d.ts +153 -45
  447. package/bin/src/template/state.js +163 -115
  448. package/bin/src/validation/state.d.ts +23 -9
  449. package/bin/src/validation/state.js +38 -45
  450. package/bin/src/value/domains/mutable-value/state.d.ts +3 -3
  451. package/bin/src/value/domains/mutable-value/state.js +3 -2
  452. package/bin/src/value/state.d.ts +9 -9
  453. package/bin/src/value/state.js +11 -8
  454. package/bin/src/value-infinite-data-stream/coroutines/builder.d.ts +207 -25
  455. package/bin/src/value-infinite-data-stream/coroutines/builder.js +1 -1
  456. package/bin/src/value-infinite-data-stream/coroutines/infiniteLoader.d.ts +4 -2
  457. package/bin/src/value-infinite-data-stream/coroutines/infiniteLoader.js +55 -20
  458. package/bin/src/value-infinite-data-stream/coroutines/runner.d.ts +8 -2
  459. package/bin/src/value-infinite-data-stream/coroutines/runner.js +6 -4
  460. package/bin/src/value-infinite-data-stream/state.d.ts +132 -66
  461. package/bin/src/value-infinite-data-stream/state.js +187 -75
  462. package/bin/src/value-infinite-data-stream/template.d.ts +7 -2
  463. package/bin/src/value-infinite-data-stream/template.js +4 -2
  464. package/bin/src/visibility/state.d.ts +5 -2
  465. package/bin/src/visibility/state.js +1 -1
  466. package/main.ts +2 -0
  467. package/package.json +1 -1
  468. package/src/forms/domains/dispatched-forms/built-ins/state.ts +88 -0
  469. package/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/readOnly/state.ts +106 -0
  470. package/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/state.ts +36 -23
  471. package/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/types/state.ts +41 -1
  472. package/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/readOnly/state.ts +76 -0
  473. package/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/readOnly/template.tsx +117 -0
  474. package/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/readOnly/state.ts +61 -0
  475. package/src/forms/domains/dispatched-forms/runner/domains/dispatcher/state.ts +23 -15
  476. package/src/forms/domains/parser/domains/predicates/state.ts +18 -1
  477. package/bin/src/forms/domains/singleton/domains/mapping/state.d.ts +0 -71
  478. package/bin/src/forms/domains/singleton/domains/mapping/state.d.ts.map +0 -1
  479. package/bin/src/forms/domains/singleton/domains/mapping/state.js +0 -91
  480. package/bin/src/forms/domains/singleton/domains/mapping/state.js.map +0 -1
  481. package/bin/src/forms/domains/singleton/domains/mapping/template.d.ts +0 -79
  482. package/bin/src/forms/domains/singleton/domains/mapping/template.d.ts.map +0 -1
  483. package/bin/src/forms/domains/singleton/domains/mapping/template.js +0 -20
  484. package/bin/src/forms/domains/singleton/domains/mapping/template.js.map +0 -1
  485. package/bin/src/forms/domains/singleton-table/coroutines/runner.d.ts +0 -8
  486. package/bin/src/forms/domains/singleton-table/coroutines/runner.d.ts.map +0 -1
  487. package/bin/src/forms/domains/singleton-table/coroutines/runner.js +0 -62
  488. package/bin/src/forms/domains/singleton-table/coroutines/runner.js.map +0 -1
  489. package/bin/src/forms/domains/singleton-table/state.d.ts +0 -130
  490. package/bin/src/forms/domains/singleton-table/state.d.ts.map +0 -1
  491. package/bin/src/forms/domains/singleton-table/state.js +0 -72
  492. package/bin/src/forms/domains/singleton-table/state.js.map +0 -1
  493. package/bin/src/forms/domains/singleton-table/template.d.ts +0 -25
  494. package/bin/src/forms/domains/singleton-table/template.d.ts.map +0 -1
  495. package/bin/src/forms/domains/singleton-table/template.js +0 -283
  496. package/bin/src/forms/domains/singleton-table/template.js.map +0 -1
@@ -1,421 +1,761 @@
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 = (_) => _ && DispatchGenericTypes.includes(_);
7
- export const DispatchHasFun = (_) => DispatchIsObject(_) && "fun" in _ && DispatchisString(_.fun);
8
- export const DispatchHasArgs = (_) => DispatchIsObject(_) && "args" in _ && Array.isArray(_.args);
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);
9
12
  export const DispatchPrimitiveTypeNames = [
10
- "unit",
11
- "guid", //resolves to string
12
- "string",
13
- "number",
14
- "boolean",
15
- "Date",
16
- "base64File",
17
- "secret",
13
+ "unit",
14
+ "guid", //resolves to string
15
+ "string",
16
+ "number",
17
+ "boolean",
18
+ "Date",
19
+ "base64File",
20
+ "secret",
18
21
  ];
19
22
  export const SerializedType = {
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,
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,
69
93
  };
70
94
  export const UnionType = {
71
- SerializeToString: (serializedArgs) => {
72
- return `[union; cases: {${serializedArgs.map((v, k) => `${k}: ${v}`).join(", ")}}]`;
73
- },
95
+ SerializeToString: (serializedArgs) => {
96
+ return `[union; cases: {${serializedArgs.map((v, k) => `${k}: ${v}`).join(", ")}}]`;
97
+ },
74
98
  };
75
99
  export const RecordType = {
76
- SerializeToString: (serializedFields) => {
77
- return `[record; fields: {${serializedFields.map((v, k) => `${k}: ${v}`).join(", ")}}]`;
78
- },
100
+ SerializeToString: (serializedFields) => {
101
+ return `[record; fields: {${serializedFields.map((v, k) => `${k}: ${v}`).join(", ")}}]`;
102
+ },
79
103
  };
80
104
  export const LookupType = {
81
- SerializeToString: (name) => {
82
- return `${name}`;
83
- },
105
+ SerializeToString: (name) => {
106
+ return `${name}`;
107
+ },
84
108
  };
85
109
  export const DispatchPrimitiveType = {
86
- SerializeToString: (name) => {
87
- return `[primitive; name: ${String(name)}]`;
88
- },
110
+ SerializeToString: (name) => {
111
+ return `[primitive; name: ${String(name)}]`;
112
+ },
89
113
  };
90
114
  export const SingleSelectionType = {
91
- SerializeToString: (serializedArgs) => {
92
- return `[singleSelection; args: [${serializedArgs.join(", ")}]]`;
93
- },
115
+ SerializeToString: (serializedArgs) => {
116
+ return `[singleSelection; args: [${serializedArgs.join(", ")}]]`;
117
+ },
94
118
  };
95
119
  export const MultiSelectionType = {
96
- SerializeToString: (serializedArgs) => {
97
- return `[multiSelection; args: [${serializedArgs.join(", ")}]]`;
98
- },
120
+ SerializeToString: (serializedArgs) => {
121
+ return `[multiSelection; args: [${serializedArgs.join(", ")}]]`;
122
+ },
99
123
  };
100
124
  export const ListType = {
101
- SerializeToString: (serializedArgs) => {
102
- return `[list; args: [${serializedArgs.join(", ")}]]`;
103
- },
125
+ SerializeToString: (serializedArgs) => {
126
+ return `[list; args: [${serializedArgs.join(", ")}]]`;
127
+ },
104
128
  };
105
129
  export const TupleType = {
106
- SerializeToString: (serializedArgs) => {
107
- return `[tuple; args: [${serializedArgs.join(", ")}]]`;
108
- },
130
+ SerializeToString: (serializedArgs) => {
131
+ return `[tuple; args: [${serializedArgs.join(", ")}]]`;
132
+ },
109
133
  };
110
134
  export const SumType = {
111
- SerializeToString: (serializedArgs) => {
112
- return `[sum; args: [${serializedArgs.join(", ")}]]`;
113
- },
135
+ SerializeToString: (serializedArgs) => {
136
+ return `[sum; args: [${serializedArgs.join(", ")}]]`;
137
+ },
114
138
  };
115
139
  export const MapType = {
116
- SerializeToString: (serializedArgs) => {
117
- return `[map; args: [${serializedArgs.join(", ")}]]`;
118
- },
140
+ SerializeToString: (serializedArgs) => {
141
+ return `[map; args: [${serializedArgs.join(", ")}]]`;
142
+ },
119
143
  };
120
144
  export const TableType = {
121
- SerializeToString: (serializedArg) => {
122
- return `[table; arg: ${serializedArg}]`;
123
- },
145
+ SerializeToString: (serializedArg) => {
146
+ return `[table; arg: ${serializedArg}]`;
147
+ },
124
148
  };
125
149
  export const OneType = {
126
- SerializeToString: (serializedArg) => {
127
- return `[one; arg: ${serializedArg}]`;
128
- },
150
+ SerializeToString: (serializedArg) => {
151
+ return `[one; arg: ${serializedArg}]`;
152
+ },
129
153
  };
130
154
  export const DispatchParsedType = {
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`)
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
+ )
243
285
  : ValueOrErrors.Default.return([
244
- DispatchParsedType.Default.union(Map(parsingResult[0].fields
245
- .keySeq()
246
- .toArray()
247
- .map((key) => [
248
- key,
249
- DispatchParsedType.Default.record(Map()),
250
- ]))),
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
+ ),
251
297
  parsingResult[1],
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`)
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
+ )
291
386
  : ValueOrErrors.Default.return([
292
387
  parsedType,
293
388
  alreadyParsedTypes,
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)
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)
299
400
  ? alreadyParsedTypes
300
401
  .get(extendedTypeName)
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]))
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
+ )
304
412
  : serializedTypes[extendedTypeName] == undefined
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]]),
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)),
330
493
  alreadyParsedTypes,
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]]),
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,
335
685
  alreadyParsedTypes,
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],
686
+ injectedPrimitives,
687
+ ).Then((parsedType) =>
688
+ ValueOrErrors.Default.return([
689
+ unionCase.caseName,
690
+ parsedType[0],
352
691
  ]),
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),
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
+ );
419
748
  },
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
+ },
420
760
  };
421
- //# sourceMappingURL=state.js.map
761
+ //# sourceMappingURL=state.js.map