ballerina-core 1.0.227 → 1.0.229

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 (604) 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 +120 -555
  82. package/bin/src/forms/domains/dispatched-forms/built-ins/state.d.ts.map +1 -1
  83. package/bin/src/forms/domains/dispatched-forms/built-ins/state.js +754 -1983
  84. package/bin/src/forms/domains/dispatched-forms/built-ins/state.js.map +1 -1
  85. package/bin/src/forms/domains/dispatched-forms/deserializer/coroutines/runner.d.ts +2 -22
  86. package/bin/src/forms/domains/dispatched-forms/deserializer/coroutines/runner.js +44 -123
  87. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/apis/state.d.ts +63 -119
  88. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/apis/state.js +145 -315
  89. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/enum/state.d.ts +19 -35
  90. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/enum/state.js +27 -40
  91. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/list/state.d.ts +28 -60
  92. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/list/state.js +40 -76
  93. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/lookup/state.d.ts +56 -121
  94. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/lookup/state.js +59 -102
  95. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/map/state.d.ts +15 -42
  96. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/map/state.js +29 -64
  97. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/nestedRenderer/state.d.ts +29 -70
  98. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/nestedRenderer/state.js +20 -52
  99. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/one/state.d.ts +18 -61
  100. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/one/state.js +33 -88
  101. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/primitive/state.d.ts +10 -20
  102. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/primitive/state.js +13 -21
  103. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/readOnly/state.d.ts +19 -50
  104. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/readOnly/state.js +23 -52
  105. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/record/domains/recordFieldRenderer/state.d.ts +11 -42
  106. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/record/domains/recordFieldRenderer/state.js +18 -59
  107. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/record/state.d.ts +19 -49
  108. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/record/state.js +55 -129
  109. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/stream/state.d.ts +14 -29
  110. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/stream/state.js +27 -43
  111. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/sum/state.d.ts +19 -49
  112. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/sum/state.js +23 -63
  113. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/sumUnitDate/state.d.ts +13 -21
  114. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/sumUnitDate/state.js +22 -39
  115. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/table/domains/tableCellRenderer/state.d.ts +10 -39
  116. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/table/domains/tableCellRenderer/state.js +11 -46
  117. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/table/state.d.ts +34 -79
  118. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/table/state.js +46 -146
  119. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/tuple/state.d.ts +13 -37
  120. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/tuple/state.js +29 -64
  121. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/union/state.d.ts +15 -40
  122. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/union/state.js +33 -78
  123. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/state.d.ts +19 -107
  124. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/state.js +62 -157
  125. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/types/state.d.ts +229 -410
  126. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/types/state.d.ts.map +1 -1
  127. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/types/state.js +569 -951
  128. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/types/state.js.map +1 -1
  129. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/state.d.ts +51 -103
  130. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/state.js +94 -255
  131. package/bin/src/forms/domains/dispatched-forms/deserializer/state.d.ts +102 -317
  132. package/bin/src/forms/domains/dispatched-forms/deserializer/state.d.ts.map +1 -1
  133. package/bin/src/forms/domains/dispatched-forms/deserializer/state.js +90 -177
  134. package/bin/src/forms/domains/dispatched-forms/deserializer/state.js.map +1 -1
  135. package/bin/src/forms/domains/dispatched-forms/deserializer/template.d.ts +2 -27
  136. package/bin/src/forms/domains/dispatched-forms/deserializer/template.js +2 -3
  137. package/bin/src/forms/domains/dispatched-forms/runner/coroutines/runner.d.ts +8 -49
  138. package/bin/src/forms/domains/dispatched-forms/runner/coroutines/runner.d.ts.map +1 -1
  139. package/bin/src/forms/domains/dispatched-forms/runner/coroutines/runner.js +7 -156
  140. package/bin/src/forms/domains/dispatched-forms/runner/coroutines/runner.js.map +1 -1
  141. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/base-64-file/state.d.ts +7 -35
  142. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/base-64-file/state.js +3 -3
  143. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/base-64-file/template.d.ts +4 -28
  144. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/base-64-file/template.js +23 -49
  145. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/boolean/state.d.ts +7 -33
  146. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/boolean/state.js +3 -3
  147. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/boolean/template.d.ts +4 -25
  148. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/boolean/template.js +24 -52
  149. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/date/state.d.ts +19 -56
  150. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/date/state.js +6 -18
  151. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/date/template.d.ts +7 -29
  152. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/date/template.js +30 -64
  153. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum/state.d.ts +15 -43
  154. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum/state.js +6 -9
  155. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum/template.d.ts +8 -41
  156. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum/template.js +60 -153
  157. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum-multiselect/state.d.ts +11 -45
  158. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum-multiselect/state.js +1 -1
  159. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum-multiselect/template.d.ts +8 -42
  160. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum-multiselect/template.js +50 -127
  161. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/injectables/state.d.ts +19 -55
  162. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/injectables/state.js +22 -40
  163. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/list/state.d.ts +28 -92
  164. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/list/state.js +10 -19
  165. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/list/template.d.ts +6 -50
  166. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/list/template.js +131 -388
  167. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/lookup-type/state.d.ts +7 -41
  168. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/lookup-type/state.js +1 -1
  169. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/lookup-type/template.d.ts +4 -45
  170. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/lookup-type/template.js +8 -28
  171. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/map/state.d.ts +26 -103
  172. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/map/state.js +18 -61
  173. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/map/template.d.ts +9 -64
  174. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/map/template.js +89 -308
  175. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/number/state.d.ts +7 -37
  176. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/number/state.js +3 -3
  177. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/number/template.d.ts +4 -29
  178. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/number/template.js +23 -54
  179. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_debouncer.d.ts +13 -50
  180. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_debouncer.js +10 -22
  181. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_initializeOne.d.ts +12 -59
  182. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_initializeOne.js +31 -49
  183. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_initializeStream.d.ts +11 -47
  184. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_initializeStream.js +10 -29
  185. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/builder.d.ts +1065 -3868
  186. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/builder.js +2 -2
  187. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/runner.d.ts +36 -161
  188. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/runner.js +26 -47
  189. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/state.d.ts +80 -245
  190. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/state.js +40 -88
  191. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/template.d.ts +10 -61
  192. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/template.js +148 -358
  193. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/readOnly/state.d.ts +20 -65
  194. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/readOnly/state.js +10 -19
  195. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/readOnly/template.d.ts +6 -47
  196. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/readOnly/template.js +18 -61
  197. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/record/state.d.ts +21 -81
  198. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/record/state.js +11 -32
  199. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/record/template.d.ts +10 -59
  200. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/record/template.js +69 -206
  201. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream/state.d.ts +49 -123
  202. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream/state.js +13 -35
  203. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream/template.d.ts +8 -45
  204. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream/template.js +68 -195
  205. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream-multiselect/state.d.ts +51 -121
  206. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream-multiselect/state.js +13 -36
  207. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream-multiselect/template.d.ts +8 -45
  208. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream-multiselect/template.js +106 -246
  209. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/secret/state.d.ts +8 -38
  210. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/secret/state.js +3 -3
  211. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/secret/template.d.ts +4 -29
  212. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/secret/template.js +23 -54
  213. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/state.d.ts +34 -58
  214. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/state.js +13 -24
  215. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/string/state.d.ts +8 -38
  216. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/string/state.js +3 -3
  217. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/string/template.d.ts +4 -29
  218. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/string/template.js +26 -58
  219. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/sum/state.d.ts +29 -93
  220. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/sum/state.js +7 -22
  221. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/sum/template.d.ts +7 -55
  222. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/sum/template.js +51 -167
  223. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/builder.d.ts +931 -2737
  224. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/builder.js +2 -2
  225. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/infiniteLoader.d.ts +10 -48
  226. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/infiniteLoader.js +24 -57
  227. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/initialiseFiltersAndSorting.d.ts +10 -54
  228. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/initialiseFiltersAndSorting.js +20 -70
  229. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/initialiseTable.d.ts +12 -56
  230. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/initialiseTable.js +27 -61
  231. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/loadWithRetries.d.ts +3 -33
  232. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/loadWithRetries.js +19 -38
  233. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/runner.d.ts +26 -130
  234. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/runner.js +15 -43
  235. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/state.d.ts +186 -406
  236. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/state.js +132 -296
  237. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/template.d.ts +15 -102
  238. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/template.js +204 -585
  239. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/tuple/state.d.ts +18 -75
  240. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/tuple/state.js +8 -20
  241. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/tuple/template.d.ts +6 -51
  242. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/tuple/template.js +32 -121
  243. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/union/state.d.ts +18 -76
  244. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/union/state.js +8 -21
  245. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/union/template.d.ts +6 -51
  246. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/union/template.js +31 -90
  247. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/unit/state.d.ts +13 -45
  248. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/unit/state.js +9 -12
  249. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/unit/template.d.ts +6 -29
  250. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/unit/template.js +20 -54
  251. package/bin/src/forms/domains/dispatched-forms/runner/domains/deltas/state.d.ts +436 -599
  252. package/bin/src/forms/domains/dispatched-forms/runner/domains/deltas/state.js +513 -659
  253. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/list/state.d.ts +6 -25
  254. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/list/state.d.ts.map +1 -1
  255. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/list/state.js +18 -51
  256. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/list/state.js.map +1 -1
  257. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/lookup/state.d.ts +6 -23
  258. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/lookup/state.d.ts.map +1 -1
  259. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/lookup/state.js +14 -39
  260. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/lookup/state.js.map +1 -1
  261. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/map/state.d.ts +6 -24
  262. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/map/state.d.ts.map +1 -1
  263. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/map/state.js +18 -68
  264. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/map/state.js.map +1 -1
  265. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/multiSelection/state.d.ts +6 -22
  266. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/multiSelection/state.d.ts.map +1 -1
  267. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/multiSelection/state.js +24 -76
  268. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/multiSelection/state.js.map +1 -1
  269. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/nestedDispatcher/state.d.ts +7 -42
  270. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/nestedDispatcher/state.d.ts.map +1 -1
  271. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/nestedDispatcher/state.js +8 -37
  272. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/one/state.d.ts +8 -57
  273. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/one/state.d.ts.map +1 -1
  274. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/one/state.js +38 -130
  275. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/one/state.js.map +1 -1
  276. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/primitive/state.d.ts +6 -22
  277. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/primitive/state.d.ts.map +1 -1
  278. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/primitive/state.js +63 -139
  279. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/primitive/state.js.map +1 -1
  280. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/readOnly/state.d.ts +6 -25
  281. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/readOnly/state.d.ts.map +1 -1
  282. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/readOnly/state.js +12 -37
  283. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/readOnly/state.js.map +1 -1
  284. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/recordField/state.d.ts +6 -26
  285. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/recordField/state.d.ts.map +1 -1
  286. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/recordField/state.js +4 -14
  287. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/state.d.ts +7 -49
  288. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/state.d.ts.map +1 -1
  289. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/state.js +25 -80
  290. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/singleSelectionDispatcher/state.d.ts +6 -22
  291. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/singleSelectionDispatcher/state.d.ts.map +1 -1
  292. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/singleSelectionDispatcher/state.js +24 -76
  293. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/singleSelectionDispatcher/state.js.map +1 -1
  294. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/sum/state.d.ts +6 -25
  295. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/sum/state.d.ts.map +1 -1
  296. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/sum/state.js +20 -55
  297. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/sum/state.js.map +1 -1
  298. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/table/state.d.ts +8 -55
  299. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/table/state.d.ts.map +1 -1
  300. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/table/state.js +74 -245
  301. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/tupleDispatcher/state.d.ts +6 -25
  302. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/tupleDispatcher/state.d.ts.map +1 -1
  303. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/tupleDispatcher/state.js +13 -54
  304. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/tupleDispatcher/state.js.map +1 -1
  305. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/unionDispatcher/state.d.ts +6 -25
  306. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/unionDispatcher/state.d.ts.map +1 -1
  307. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/unionDispatcher/state.js +15 -63
  308. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/state.d.ts +7 -44
  309. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/state.d.ts.map +1 -1
  310. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/state.js +45 -144
  311. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/_init.d.ts +10 -34
  312. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/_init.d.ts.map +1 -1
  313. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/_init.js +94 -200
  314. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/_init.js.map +1 -1
  315. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/_sync.d.ts +11 -43
  316. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/_sync.d.ts.map +1 -1
  317. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/_sync.js +37 -81
  318. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/_sync.js.map +1 -1
  319. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/builder.d.ts +254 -981
  320. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/builder.js +2 -2
  321. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/runner.d.ts +11 -41
  322. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/runner.d.ts.map +1 -1
  323. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/runner.js +17 -17
  324. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/runner.js.map +1 -1
  325. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/state.d.ts +38 -91
  326. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/state.d.ts.map +1 -1
  327. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/state.js +11 -54
  328. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/template.d.ts +12 -42
  329. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/template.js +24 -61
  330. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/template.js.map +1 -1
  331. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/_init.d.ts +16 -0
  332. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/_init.d.ts.map +1 -0
  333. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/_init.js +107 -0
  334. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/_init.js.map +1 -0
  335. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/_sync.d.ts +16 -0
  336. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/_sync.d.ts.map +1 -0
  337. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/_sync.js +40 -0
  338. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/_sync.js.map +1 -0
  339. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/builder.d.ts +327 -0
  340. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/builder.d.ts.map +1 -0
  341. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/builder.js +3 -0
  342. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/builder.js.map +1 -0
  343. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/runner.d.ts +14 -26
  344. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/runner.d.ts.map +1 -1
  345. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/runner.js +20 -9
  346. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/runner.js.map +1 -1
  347. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/state.d.ts +40 -31
  348. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/state.d.ts.map +1 -1
  349. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/state.js +13 -3
  350. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/state.js.map +1 -1
  351. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/template.d.ts +14 -31
  352. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/template.d.ts.map +1 -1
  353. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/template.js +37 -6
  354. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/template.js.map +1 -1
  355. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/passthrough/coroutines/runner.d.ts +4 -24
  356. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/passthrough/coroutines/runner.d.ts.map +1 -1
  357. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/passthrough/coroutines/runner.js +84 -158
  358. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/passthrough/coroutines/runner.js.map +1 -1
  359. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/passthrough/state.d.ts +11 -37
  360. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/passthrough/state.js +4 -10
  361. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/passthrough/template.d.ts +5 -32
  362. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/passthrough/template.js +26 -61
  363. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/passthrough/template.js.map +1 -1
  364. package/bin/src/forms/domains/dispatched-forms/runner/domains/traversal/state.d.ts +18 -38
  365. package/bin/src/forms/domains/dispatched-forms/runner/domains/traversal/state.js +423 -773
  366. package/bin/src/forms/domains/dispatched-forms/runner/state.d.ts +102 -102
  367. package/bin/src/forms/domains/dispatched-forms/runner/state.d.ts.map +1 -1
  368. package/bin/src/forms/domains/dispatched-forms/runner/state.js +43 -13
  369. package/bin/src/forms/domains/dispatched-forms/runner/state.js.map +1 -1
  370. package/bin/src/forms/domains/dispatched-forms/runner/template.d.ts +6 -30
  371. package/bin/src/forms/domains/dispatched-forms/runner/template.d.ts.map +1 -1
  372. package/bin/src/forms/domains/dispatched-forms/runner/template.js +33 -64
  373. package/bin/src/forms/domains/dispatched-forms/runner/template.js.map +1 -1
  374. package/bin/src/forms/domains/launcher/coroutines/runner.d.ts +4 -12
  375. package/bin/src/forms/domains/launcher/coroutines/runner.js +45 -120
  376. package/bin/src/forms/domains/launcher/domains/create/coroutines/runner.d.ts +3 -16
  377. package/bin/src/forms/domains/launcher/domains/create/coroutines/runner.js +101 -240
  378. package/bin/src/forms/domains/launcher/domains/create/state.d.ts +121 -236
  379. package/bin/src/forms/domains/launcher/domains/create/state.js +17 -62
  380. package/bin/src/forms/domains/launcher/domains/create/template.d.ts +6 -20
  381. package/bin/src/forms/domains/launcher/domains/create/template.js +42 -84
  382. package/bin/src/forms/domains/launcher/domains/edit/coroutines/runner.d.ts +3 -16
  383. package/bin/src/forms/domains/launcher/domains/edit/coroutines/runner.js +103 -242
  384. package/bin/src/forms/domains/launcher/domains/edit/state.d.ts +121 -230
  385. package/bin/src/forms/domains/launcher/domains/edit/state.js +17 -62
  386. package/bin/src/forms/domains/launcher/domains/edit/template.d.ts +6 -20
  387. package/bin/src/forms/domains/launcher/domains/edit/template.js +43 -86
  388. package/bin/src/forms/domains/launcher/domains/merger/state.d.ts +4 -4
  389. package/bin/src/forms/domains/launcher/domains/merger/state.js +26 -35
  390. package/bin/src/forms/domains/launcher/domains/passthrough/coroutines/runner.d.ts +5 -20
  391. package/bin/src/forms/domains/launcher/domains/passthrough/coroutines/runner.js +42 -88
  392. package/bin/src/forms/domains/launcher/domains/passthrough/state.d.ts +58 -123
  393. package/bin/src/forms/domains/launcher/domains/passthrough/state.js +19 -44
  394. package/bin/src/forms/domains/launcher/domains/passthrough/template.d.ts +6 -23
  395. package/bin/src/forms/domains/launcher/domains/passthrough/template.js +34 -56
  396. package/bin/src/forms/domains/launcher/state.d.ts +43 -62
  397. package/bin/src/forms/domains/launcher/state.js +6 -6
  398. package/bin/src/forms/domains/launcher/template.d.ts +15 -35
  399. package/bin/src/forms/domains/launcher/template.js +85 -169
  400. package/bin/src/forms/domains/parser/coroutines/runner.d.ts +5 -13
  401. package/bin/src/forms/domains/parser/coroutines/runner.js +25 -87
  402. package/bin/src/forms/domains/parser/domains/built-ins/state.d.ts +71 -135
  403. package/bin/src/forms/domains/parser/domains/built-ins/state.js +533 -944
  404. package/bin/src/forms/domains/parser/domains/deltas/state.d.ts +296 -417
  405. package/bin/src/forms/domains/parser/domains/deltas/state.js +318 -444
  406. package/bin/src/forms/domains/parser/domains/injectables/state.d.ts +20 -29
  407. package/bin/src/forms/domains/parser/domains/injectables/state.js +26 -29
  408. package/bin/src/forms/domains/parser/domains/layout/state.d.ts +49 -78
  409. package/bin/src/forms/domains/parser/domains/layout/state.js +177 -265
  410. package/bin/src/forms/domains/parser/domains/predicates/domains/extractor/state.d.ts +6 -19
  411. package/bin/src/forms/domains/parser/domains/predicates/domains/extractor/state.js +162 -324
  412. package/bin/src/forms/domains/parser/domains/predicates/state.d.ts +314 -502
  413. package/bin/src/forms/domains/parser/domains/predicates/state.js +976 -1506
  414. package/bin/src/forms/domains/parser/domains/renderer/state.d.ts +92 -245
  415. package/bin/src/forms/domains/parser/domains/renderer/state.js +480 -1137
  416. package/bin/src/forms/domains/parser/domains/types/state.d.ts +130 -170
  417. package/bin/src/forms/domains/parser/domains/types/state.js +170 -355
  418. package/bin/src/forms/domains/parser/domains/validator/state.d.ts +117 -143
  419. package/bin/src/forms/domains/parser/domains/validator/state.js +280 -417
  420. package/bin/src/forms/domains/parser/state.d.ts +82 -217
  421. package/bin/src/forms/domains/parser/state.js +373 -612
  422. package/bin/src/forms/domains/parser/template.d.ts +5 -13
  423. package/bin/src/forms/domains/parser/template.js +1 -1
  424. package/bin/src/forms/domains/primitives/domains/base-64-file/state.d.ts +11 -19
  425. package/bin/src/forms/domains/primitives/domains/base-64-file/state.js +5 -5
  426. package/bin/src/forms/domains/primitives/domains/base-64-file/template.d.ts +7 -18
  427. package/bin/src/forms/domains/primitives/domains/base-64-file/template.js +19 -38
  428. package/bin/src/forms/domains/primitives/domains/boolean/state.d.ts +11 -19
  429. package/bin/src/forms/domains/primitives/domains/boolean/state.js +5 -5
  430. package/bin/src/forms/domains/primitives/domains/boolean/template.d.ts +8 -24
  431. package/bin/src/forms/domains/primitives/domains/boolean/template.js +19 -38
  432. package/bin/src/forms/domains/primitives/domains/date/state.d.ts +20 -39
  433. package/bin/src/forms/domains/primitives/domains/date/state.js +9 -18
  434. package/bin/src/forms/domains/primitives/domains/date/template.d.ts +7 -18
  435. package/bin/src/forms/domains/primitives/domains/date/template.js +25 -51
  436. package/bin/src/forms/domains/primitives/domains/enum/state.d.ts +15 -31
  437. package/bin/src/forms/domains/primitives/domains/enum/state.js +6 -6
  438. package/bin/src/forms/domains/primitives/domains/enum/template.d.ts +7 -18
  439. package/bin/src/forms/domains/primitives/domains/enum/template.js +48 -117
  440. package/bin/src/forms/domains/primitives/domains/enum-multiselect/state.d.ts +8 -17
  441. package/bin/src/forms/domains/primitives/domains/enum-multiselect/state.js +1 -1
  442. package/bin/src/forms/domains/primitives/domains/enum-multiselect/template.d.ts +7 -18
  443. package/bin/src/forms/domains/primitives/domains/enum-multiselect/template.js +40 -99
  444. package/bin/src/forms/domains/primitives/domains/list/state.d.ts +24 -45
  445. package/bin/src/forms/domains/primitives/domains/list/state.js +14 -14
  446. package/bin/src/forms/domains/primitives/domains/list/template.d.ts +13 -38
  447. package/bin/src/forms/domains/primitives/domains/list/template.js +71 -200
  448. package/bin/src/forms/domains/primitives/domains/map/state.d.ts +29 -68
  449. package/bin/src/forms/domains/primitives/domains/map/state.js +14 -14
  450. package/bin/src/forms/domains/primitives/domains/map/template.d.ts +25 -65
  451. package/bin/src/forms/domains/primitives/domains/map/template.js +103 -294
  452. package/bin/src/forms/domains/primitives/domains/number/state.d.ts +11 -19
  453. package/bin/src/forms/domains/primitives/domains/number/state.js +5 -5
  454. package/bin/src/forms/domains/primitives/domains/number/template.d.ts +8 -24
  455. package/bin/src/forms/domains/primitives/domains/number/template.js +19 -38
  456. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream/state.d.ts +42 -89
  457. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream/state.js +16 -33
  458. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream/template.d.ts +8 -22
  459. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream/template.js +62 -171
  460. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream-multiselect/state.d.ts +9 -18
  461. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream-multiselect/state.js +1 -1
  462. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream-multiselect/template.d.ts +7 -18
  463. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream-multiselect/template.js +69 -182
  464. package/bin/src/forms/domains/primitives/domains/secret/state.d.ts +11 -19
  465. package/bin/src/forms/domains/primitives/domains/secret/state.js +5 -5
  466. package/bin/src/forms/domains/primitives/domains/secret/template.d.ts +7 -18
  467. package/bin/src/forms/domains/primitives/domains/secret/template.js +19 -38
  468. package/bin/src/forms/domains/primitives/domains/string/state.d.ts +13 -21
  469. package/bin/src/forms/domains/primitives/domains/string/state.js +5 -5
  470. package/bin/src/forms/domains/primitives/domains/string/template.d.ts +7 -18
  471. package/bin/src/forms/domains/primitives/domains/string/template.js +22 -42
  472. package/bin/src/forms/domains/primitives/domains/sum/state.d.ts +22 -62
  473. package/bin/src/forms/domains/primitives/domains/sum/state.js +10 -10
  474. package/bin/src/forms/domains/primitives/domains/sum/template.d.ts +16 -48
  475. package/bin/src/forms/domains/primitives/domains/sum/template.js +50 -141
  476. package/bin/src/forms/domains/primitives/domains/tuple/state.d.ts +23 -48
  477. package/bin/src/forms/domains/primitives/domains/tuple/state.js +9 -9
  478. package/bin/src/forms/domains/primitives/domains/tuple/template.d.ts +18 -46
  479. package/bin/src/forms/domains/primitives/domains/tuple/template.js +33 -100
  480. package/bin/src/forms/domains/primitives/domains/unit/state.d.ts +10 -17
  481. package/bin/src/forms/domains/primitives/domains/unit/state.js +8 -8
  482. package/bin/src/forms/domains/primitives/domains/unit/template.d.ts +4 -9
  483. package/bin/src/forms/domains/primitives/domains/unit/template.js +9 -22
  484. package/bin/src/forms/domains/singleton/domains/form-label/state.d.ts +4 -4
  485. package/bin/src/forms/domains/singleton/domains/form-label/state.js +1 -1
  486. package/bin/src/forms/domains/singleton/state.d.ts +43 -144
  487. package/bin/src/forms/domains/singleton/state.js +10 -12
  488. package/bin/src/forms/domains/singleton/template.d.ts +88 -177
  489. package/bin/src/forms/domains/singleton/template.js +113 -288
  490. package/bin/src/fun/domains/curry/state.d.ts +2 -4
  491. package/bin/src/fun/domains/curry/state.js +1 -1
  492. package/bin/src/fun/domains/id/state.d.ts +1 -1
  493. package/bin/src/fun/domains/id/state.js +1 -1
  494. package/bin/src/fun/domains/predicate/domains/bool-expr.d.ts +41 -57
  495. package/bin/src/fun/domains/predicate/domains/bool-expr.js +67 -76
  496. package/bin/src/fun/domains/predicate/state.d.ts +7 -9
  497. package/bin/src/fun/domains/predicate/state.js +10 -14
  498. package/bin/src/fun/domains/simpleCallback/state.d.ts +1 -1
  499. package/bin/src/fun/domains/simpleCallback/state.js +1 -1
  500. package/bin/src/fun/domains/uncurry/state.d.ts +2 -4
  501. package/bin/src/fun/domains/uncurry/state.js +1 -1
  502. package/bin/src/fun/domains/unit/state.d.ts +1 -1
  503. package/bin/src/fun/domains/unit/state.js +1 -1
  504. package/bin/src/fun/domains/updater/domains/caseUpdater/state.d.ts +7 -22
  505. package/bin/src/fun/domains/updater/domains/caseUpdater/state.js +10 -18
  506. package/bin/src/fun/domains/updater/domains/mapUpdater/state.d.ts +13 -24
  507. package/bin/src/fun/domains/updater/domains/mapUpdater/state.js +10 -40
  508. package/bin/src/fun/domains/updater/domains/maybeUpdater/state.d.ts +13 -19
  509. package/bin/src/fun/domains/updater/domains/maybeUpdater/state.js +9 -20
  510. package/bin/src/fun/domains/updater/domains/orderedMapUpdater/state.d.ts +13 -24
  511. package/bin/src/fun/domains/updater/domains/orderedMapUpdater/state.js +11 -47
  512. package/bin/src/fun/domains/updater/domains/orderedSetUpdater/state.d.ts +8 -20
  513. package/bin/src/fun/domains/updater/domains/orderedSetUpdater/state.js +5 -17
  514. package/bin/src/fun/domains/updater/domains/replaceWith/state.d.ts +1 -1
  515. package/bin/src/fun/domains/updater/domains/replaceWith/state.js +1 -1
  516. package/bin/src/fun/domains/updater/domains/simpleUpdater/domains/baseSimpleUpdater/state.d.ts +4 -13
  517. package/bin/src/fun/domains/updater/domains/simpleUpdater/domains/baseSimpleUpdater/state.js +4 -6
  518. package/bin/src/fun/domains/updater/domains/simpleUpdater/state.d.ts +22 -60
  519. package/bin/src/fun/domains/updater/domains/simpleUpdater/state.js +31 -42
  520. package/bin/src/fun/domains/updater/state.d.ts +4 -4
  521. package/bin/src/fun/domains/updater/state.js +10 -12
  522. package/bin/src/fun/state.d.ts +3 -3
  523. package/bin/src/fun/state.js +7 -9
  524. package/bin/src/infinite-data-stream/coroutines/builder.d.ts +27 -209
  525. package/bin/src/infinite-data-stream/coroutines/builder.js +1 -1
  526. package/bin/src/infinite-data-stream/coroutines/infiniteLoader.d.ts +5 -21
  527. package/bin/src/infinite-data-stream/coroutines/infiniteLoader.js +20 -47
  528. package/bin/src/infinite-data-stream/coroutines/runner.d.ts +3 -11
  529. package/bin/src/infinite-data-stream/coroutines/runner.js +7 -7
  530. package/bin/src/infinite-data-stream/state.d.ts +51 -84
  531. package/bin/src/infinite-data-stream/state.js +61 -125
  532. package/bin/src/infinite-data-stream/template.d.ts +3 -10
  533. package/bin/src/infinite-data-stream/template.js +2 -3
  534. package/bin/src/math/domains/DOMRect/state.d.ts +4 -4
  535. package/bin/src/math/domains/DOMRect/state.js +8 -10
  536. package/bin/src/math/domains/number/state.d.ts +5 -5
  537. package/bin/src/math/domains/number/state.js +5 -5
  538. package/bin/src/math/domains/rect/state.d.ts +8 -8
  539. package/bin/src/math/domains/rect/state.js +15 -16
  540. package/bin/src/math/domains/rgba/state.d.ts +17 -17
  541. package/bin/src/math/domains/rgba/state.js +81 -77
  542. package/bin/src/math/domains/size2/state.d.ts +8 -8
  543. package/bin/src/math/domains/size2/state.js +6 -6
  544. package/bin/src/math/domains/vector2/state.d.ts +10 -10
  545. package/bin/src/math/domains/vector2/state.js +8 -8
  546. package/bin/src/queue/state.d.ts +7 -23
  547. package/bin/src/queue/state.js +16 -23
  548. package/bin/src/state/domains/repository/state.d.ts +9 -15
  549. package/bin/src/state/domains/repository/state.js +1 -1
  550. package/bin/src/template/state.d.ts +45 -153
  551. package/bin/src/template/state.js +115 -163
  552. package/bin/src/validation/state.d.ts +9 -23
  553. package/bin/src/validation/state.js +45 -38
  554. package/bin/src/value/domains/mutable-value/state.d.ts +3 -3
  555. package/bin/src/value/domains/mutable-value/state.js +2 -3
  556. package/bin/src/value/state.d.ts +9 -9
  557. package/bin/src/value/state.js +8 -11
  558. package/bin/src/value-infinite-data-stream/coroutines/builder.d.ts +25 -207
  559. package/bin/src/value-infinite-data-stream/coroutines/builder.js +1 -1
  560. package/bin/src/value-infinite-data-stream/coroutines/infiniteLoader.d.ts +2 -4
  561. package/bin/src/value-infinite-data-stream/coroutines/infiniteLoader.js +20 -55
  562. package/bin/src/value-infinite-data-stream/coroutines/runner.d.ts +2 -8
  563. package/bin/src/value-infinite-data-stream/coroutines/runner.js +4 -6
  564. package/bin/src/value-infinite-data-stream/state.d.ts +68 -134
  565. package/bin/src/value-infinite-data-stream/state.js +77 -199
  566. package/bin/src/value-infinite-data-stream/template.d.ts +2 -7
  567. package/bin/src/value-infinite-data-stream/template.js +2 -4
  568. package/bin/src/visibility/state.d.ts +2 -5
  569. package/bin/src/visibility/state.js +1 -1
  570. package/package.json +1 -1
  571. package/src/forms/domains/dispatched-forms/deserializer/state.ts +292 -94
  572. package/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/list/state.ts +7 -2
  573. package/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/lookup/state.ts +7 -2
  574. package/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/map/state.ts +7 -2
  575. package/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/multiSelection/state.ts +7 -2
  576. package/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/nestedDispatcher/state.ts +1 -1
  577. package/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/one/state.ts +2 -1
  578. package/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/primitive/state.ts +7 -2
  579. package/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/readOnly/state.ts +7 -2
  580. package/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/recordField/state.ts +1 -1
  581. package/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/state.ts +1 -1
  582. package/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/singleSelectionDispatcher/state.ts +7 -2
  583. package/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/sum/state.ts +7 -2
  584. package/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/table/state.ts +1 -1
  585. package/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/tupleDispatcher/state.ts +7 -2
  586. package/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/unionDispatcher/state.ts +1 -1
  587. package/src/forms/domains/dispatched-forms/runner/domains/dispatcher/state.ts +1 -1
  588. package/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/_init.ts +279 -0
  589. package/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/_sync.ts +103 -0
  590. package/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/builder.ts +24 -0
  591. package/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/runner.ts +44 -0
  592. package/src/forms/domains/dispatched-forms/runner/domains/kind/create/state.ts +100 -0
  593. package/src/forms/domains/dispatched-forms/runner/domains/kind/create/template.tsx +116 -0
  594. package/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/_init.ts +272 -0
  595. package/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/_sync.ts +101 -0
  596. package/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/builder.ts +24 -0
  597. package/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/runner.ts +43 -0
  598. package/src/forms/domains/dispatched-forms/runner/domains/kind/edit/state.ts +96 -0
  599. package/src/forms/domains/dispatched-forms/runner/domains/kind/edit/template.tsx +115 -0
  600. package/src/forms/domains/dispatched-forms/runner/{coroutines → domains/kind/passthrough/coroutines}/runner.ts +49 -45
  601. package/src/forms/domains/dispatched-forms/runner/domains/kind/passthrough/state.ts +45 -0
  602. package/src/forms/domains/dispatched-forms/runner/domains/kind/passthrough/template.tsx +118 -0
  603. package/src/forms/domains/dispatched-forms/runner/state.ts +141 -11
  604. package/src/forms/domains/dispatched-forms/runner/template.tsx +102 -59
@@ -1,1021 +1,639 @@
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
- "entityIdString", //resolves to string
16
- "entityIdUUID", //resolves to string
17
- "calculatedDisplayValue", //resolves to string
18
- "string",
19
- "number",
20
- "boolean",
21
- "Date",
22
- "base64File",
23
- "secret",
10
+ "unit",
11
+ "guid", //resolves to string
12
+ "entityIdString", //resolves to string
13
+ "entityIdUUID", //resolves to string
14
+ "calculatedDisplayValue", //resolves to string
15
+ "string",
16
+ "number",
17
+ "boolean",
18
+ "Date",
19
+ "base64File",
20
+ "secret",
24
21
  ];
25
22
  export const SerializedType = {
26
- isExtendedType: (type) =>
27
- typeof type == "object" &&
28
- "extends" in type &&
29
- Array.isArray(type.extends) &&
30
- type.extends.length > 0 &&
31
- type.extends.every(DispatchisString),
32
- hasFields: (type) => typeof type == "object" && "fields" in type,
33
- isPrimitive: (_, injectedPrimitives) =>
34
- Boolean(
35
- DispatchPrimitiveTypeNames.some((__) => _ == __) ||
36
- (injectedPrimitives === null || injectedPrimitives === void 0
37
- ? void 0
38
- : injectedPrimitives.has(_)),
39
- ),
40
- isApplication: (_) =>
41
- DispatchHasFun(_) && DispatchIsGenericType(_.fun) && DispatchHasArgs(_),
42
- isLookup: (_, forms) => DispatchisString(_) && forms.has(_),
43
- isList: (_) =>
44
- SerializedType.isApplication(_) && _.fun == "List" && _.args.length == 1,
45
- isMap: (_) =>
46
- SerializedType.isApplication(_) && _.fun == "Map" && _.args.length == 2,
47
- isSum: (_) =>
48
- SerializedType.isApplication(_) && _.fun == "Sum" && _.args.length == 2,
49
- isSumUnitDate: (_) => typeof _ == "string" && _ == "SumUnitDate",
50
- isSingleSelection: (_) =>
51
- SerializedType.isApplication(_) &&
52
- _.fun == "SingleSelection" &&
53
- _.args.length == 1,
54
- isMultiSelection: (_) =>
55
- SerializedType.isApplication(_) &&
56
- _.fun == "MultiSelection" &&
57
- _.args.length == 1,
58
- isUnion: (_) =>
59
- DispatchHasFun(_) &&
60
- DispatchIsGenericType(_.fun) &&
61
- DispatchHasArgs(_) &&
62
- _.fun == "Union" &&
63
- _.args.length > 0 &&
64
- _.args.every(
65
- (arg) =>
66
- (DispatchIsObject(arg) && "caseName" in arg && !("fields" in arg)) ||
67
- ("fields" in arg &&
68
- (DispatchisString(arg.fields) || DispatchIsObject(arg.fields))),
69
- ),
70
- isTuple: (_) => SerializedType.isApplication(_) && _.fun == "Tuple",
71
- isRecord: (_) =>
72
- _ != null &&
73
- typeof _ == "object" &&
74
- "fields" in _ &&
75
- (DispatchIsObject(_.fields) || DispatchisString(_.fields)),
76
- isTable: (_) =>
77
- SerializedType.isApplication(_) && _.fun == "Table" && _.args.length == 1,
78
- isOption: (_) =>
79
- typeof _ == "object" &&
80
- "fun" in _ &&
81
- _.fun == "Option" &&
82
- "args" in _ &&
83
- Array.isArray(_.args) &&
84
- _.args.length == 1,
85
- isUnit: (_) => _ == "unit",
86
- isKeyOf: (_) =>
87
- typeof _ == "object" &&
88
- "fun" in _ &&
89
- _.fun == "KeyOf" &&
90
- "args" in _ &&
91
- Array.isArray(_.args) &&
92
- (_.args.length == 1 || (_.args.length == 2 && Array.isArray(_.args[1]))) &&
93
- DispatchisString(_.args[0]),
94
- isOne: (_) =>
95
- SerializedType.isApplication(_) && _.fun == "One" && _.args.length == 1,
96
- isReadOnly: (_) =>
97
- SerializedType.isApplication(_) &&
98
- _.fun == "ReadOnly" &&
99
- _.args.length == 1,
100
- isRecordFields: (_) =>
101
- typeof _ == "object" && _ != null && !("fun" in _) && !("args" in _),
23
+ isExtendedType: (type) => typeof type == "object" &&
24
+ "extends" in type &&
25
+ Array.isArray(type.extends) &&
26
+ type.extends.length > 0 &&
27
+ type.extends.every(DispatchisString),
28
+ hasFields: (type) => typeof type == "object" && "fields" in type,
29
+ isPrimitive: (_, injectedPrimitives) => Boolean(DispatchPrimitiveTypeNames.some((__) => _ == __) ||
30
+ (injectedPrimitives === null || injectedPrimitives === void 0 ? void 0 : injectedPrimitives.has(_))),
31
+ isApplication: (_) => DispatchHasFun(_) && DispatchIsGenericType(_.fun) && DispatchHasArgs(_),
32
+ isLookup: (_, forms) => DispatchisString(_) && forms.has(_),
33
+ isList: (_) => SerializedType.isApplication(_) && _.fun == "List" && _.args.length == 1,
34
+ isMap: (_) => SerializedType.isApplication(_) && _.fun == "Map" && _.args.length == 2,
35
+ isSum: (_) => SerializedType.isApplication(_) && _.fun == "Sum" && _.args.length == 2,
36
+ isSumUnitDate: (_) => typeof _ == "string" && _ == "SumUnitDate",
37
+ isSingleSelection: (_) => SerializedType.isApplication(_) &&
38
+ _.fun == "SingleSelection" &&
39
+ _.args.length == 1,
40
+ isMultiSelection: (_) => SerializedType.isApplication(_) &&
41
+ _.fun == "MultiSelection" &&
42
+ _.args.length == 1,
43
+ isUnion: (_) => DispatchHasFun(_) &&
44
+ DispatchIsGenericType(_.fun) &&
45
+ DispatchHasArgs(_) &&
46
+ _.fun == "Union" &&
47
+ _.args.length > 0 &&
48
+ _.args.every((arg) => (DispatchIsObject(arg) && "caseName" in arg && !("fields" in arg)) ||
49
+ ("fields" in arg &&
50
+ (DispatchisString(arg.fields) || DispatchIsObject(arg.fields)))),
51
+ isTuple: (_) => SerializedType.isApplication(_) && _.fun == "Tuple",
52
+ isRecord: (_) => _ != null &&
53
+ typeof _ == "object" &&
54
+ "fields" in _ &&
55
+ (DispatchIsObject(_.fields) || DispatchisString(_.fields)),
56
+ isTable: (_) => SerializedType.isApplication(_) && _.fun == "Table" && _.args.length == 1,
57
+ isOption: (_) => typeof _ == "object" &&
58
+ "fun" in _ &&
59
+ _.fun == "Option" &&
60
+ "args" in _ &&
61
+ Array.isArray(_.args) &&
62
+ _.args.length == 1,
63
+ isUnit: (_) => _ == "unit",
64
+ isKeyOf: (_) => typeof _ == "object" &&
65
+ "fun" in _ &&
66
+ _.fun == "KeyOf" &&
67
+ "args" in _ &&
68
+ Array.isArray(_.args) &&
69
+ (_.args.length == 1 || (_.args.length == 2 && Array.isArray(_.args[1]))) &&
70
+ DispatchisString(_.args[0]),
71
+ isOne: (_) => SerializedType.isApplication(_) && _.fun == "One" && _.args.length == 1,
72
+ isReadOnly: (_) => SerializedType.isApplication(_) &&
73
+ _.fun == "ReadOnly" &&
74
+ _.args.length == 1,
75
+ isRecordFields: (_) => typeof _ == "object" && _ != null && !("fun" in _) && !("args" in _),
76
+ isTranslationOverride: (_) => typeof _ == "object" &&
77
+ _ != null &&
78
+ "fun" in _ &&
79
+ _.fun == "TranslationOverride" &&
80
+ "args" in _ &&
81
+ Array.isArray(_.args) &&
82
+ _.args.length == 2 &&
83
+ DispatchisString(_.args[0]),
102
84
  };
103
85
  export const UnionType = {
104
- SerializeToString: (serializedArgs) => {
105
- return `[union; cases: {${serializedArgs.map((v, k) => `${k}: ${v}`).join(", ")}}]`;
106
- },
86
+ SerializeToString: (serializedArgs) => {
87
+ return `[union; cases: {${serializedArgs.map((v, k) => `${k}: ${v}`).join(", ")}}]`;
88
+ },
107
89
  };
108
90
  export const RecordType = {
109
- SerializeToString: (serializedFields) => {
110
- return `[record; fields: {${serializedFields.map((v, k) => `${k}: ${v}`).join(", ")}}]`;
111
- },
91
+ SerializeToString: (serializedFields) => {
92
+ return `[record; fields: {${serializedFields.map((v, k) => `${k}: ${v}`).join(", ")}}]`;
93
+ },
112
94
  };
113
95
  export const LookupType = {
114
- SerializeToString: (name) => {
115
- return `${name}`;
116
- },
96
+ SerializeToString: (name) => {
97
+ return `${name}`;
98
+ },
117
99
  };
118
100
  export const DispatchPrimitiveType = {
119
- SerializeToString: (name) => {
120
- return `[primitive; name: ${String(name)}]`;
121
- },
101
+ SerializeToString: (name) => {
102
+ return `[primitive; name: ${String(name)}]`;
103
+ },
122
104
  };
123
105
  export const SingleSelectionType = {
124
- SerializeToString: (serializedArgs) => {
125
- return `[singleSelection; args: [${serializedArgs.join(", ")}]]`;
126
- },
106
+ SerializeToString: (serializedArgs) => {
107
+ return `[singleSelection; args: [${serializedArgs.join(", ")}]]`;
108
+ },
127
109
  };
128
110
  export const MultiSelectionType = {
129
- SerializeToString: (serializedArgs) => {
130
- return `[multiSelection; args: [${serializedArgs.join(", ")}]]`;
131
- },
111
+ SerializeToString: (serializedArgs) => {
112
+ return `[multiSelection; args: [${serializedArgs.join(", ")}]]`;
113
+ },
132
114
  };
133
115
  export const ListType = {
134
- SerializeToString: (serializedArgs) => {
135
- return `[list; args: [${serializedArgs.join(", ")}]]`;
136
- },
116
+ SerializeToString: (serializedArgs) => {
117
+ return `[list; args: [${serializedArgs.join(", ")}]]`;
118
+ },
137
119
  };
138
120
  export const TupleType = {
139
- SerializeToString: (serializedArgs) => {
140
- return `[tuple; args: [${serializedArgs.join(", ")}]]`;
141
- },
121
+ SerializeToString: (serializedArgs) => {
122
+ return `[tuple; args: [${serializedArgs.join(", ")}]]`;
123
+ },
142
124
  };
143
125
  export const SumType = {
144
- SerializeToString: (serializedArgs) => {
145
- return `[sum; args: [${serializedArgs.join(", ")}]]`;
146
- },
126
+ SerializeToString: (serializedArgs) => {
127
+ return `[sum; args: [${serializedArgs.join(", ")}]]`;
128
+ },
147
129
  };
148
130
  export const SumNType = {
149
- SerializeToString: (serializedArgs, arity) => {
150
- return `[sumN; arity: ${arity}; args: [${serializedArgs.join(", ")}]]`;
151
- },
131
+ SerializeToString: (serializedArgs, arity) => {
132
+ return `[sumN; arity: ${arity}; args: [${serializedArgs.join(", ")}]]`;
133
+ },
152
134
  };
153
135
  export const MapType = {
154
- SerializeToString: (serializedArgs) => {
155
- return `[map; args: [${serializedArgs.join(", ")}]]`;
156
- },
136
+ SerializeToString: (serializedArgs) => {
137
+ return `[map; args: [${serializedArgs.join(", ")}]]`;
138
+ },
157
139
  };
158
140
  export const TableType = {
159
- SerializeToString: (serializedArg) => {
160
- return `[table; arg: ${serializedArg}]`;
161
- },
141
+ SerializeToString: (serializedArg) => {
142
+ return `[table; arg: ${serializedArg}]`;
143
+ },
162
144
  };
163
145
  export const ReadOnlyType = {
164
- SerializeToString: (serializedArg) => {
165
- return `[readOnly; arg: ${serializedArg}]`;
166
- },
146
+ SerializeToString: (serializedArg) => {
147
+ return `[readOnly; arg: ${serializedArg}]`;
148
+ },
167
149
  };
168
150
  export const OneType = {
169
- SerializeToString: (serializedArg) => {
170
- return `[one; arg: ${serializedArg}]`;
171
- },
151
+ SerializeToString: (serializedArg) => {
152
+ return `[one; arg: ${serializedArg}]`;
153
+ },
172
154
  };
173
155
  export const FilterContainsType = {
174
- SerializeToString: (serializedContains) => {
175
- return `[filter; contains: ${serializedContains}]`;
176
- },
156
+ SerializeToString: (serializedContains) => {
157
+ return `[filter; contains: ${serializedContains}]`;
158
+ },
177
159
  };
178
160
  export const FilterEqualsToType = {
179
- SerializeToString: (serializedEqualsTo) => {
180
- return `[filter; equalsTo: ${serializedEqualsTo}]`;
181
- },
161
+ SerializeToString: (serializedEqualsTo) => {
162
+ return `[filter; equalsTo: ${serializedEqualsTo}]`;
163
+ },
182
164
  };
183
165
  export const FilterNotEqualsToType = {
184
- SerializeToString: (serializedNotEqualsTo) => {
185
- return `[filter; != ${serializedNotEqualsTo}]`;
186
- },
166
+ SerializeToString: (serializedNotEqualsTo) => {
167
+ return `[filter; != ${serializedNotEqualsTo}]`;
168
+ },
187
169
  };
188
170
  export const FilterGreaterThanOrEqualsToType = {
189
- SerializeToString: (serializedGreaterThanOrEqualsTo) => {
190
- return `[filter; >= ${serializedGreaterThanOrEqualsTo}]`;
191
- },
171
+ SerializeToString: (serializedGreaterThanOrEqualsTo) => {
172
+ return `[filter; >= ${serializedGreaterThanOrEqualsTo}]`;
173
+ },
192
174
  };
193
175
  export const FilterGreaterThanType = {
194
- SerializeToString: (serializedGreaterThan) => {
195
- return `[filter; > ${serializedGreaterThan}]`;
196
- },
176
+ SerializeToString: (serializedGreaterThan) => {
177
+ return `[filter; > ${serializedGreaterThan}]`;
178
+ },
197
179
  };
198
180
  export const FilterIsNotNullType = {
199
- SerializeToString: () => {
200
- return `[filter; !=null]`;
201
- },
181
+ SerializeToString: () => {
182
+ return `[filter; !=null]`;
183
+ },
202
184
  };
203
185
  export const FilterIsNullType = {
204
- SerializeToString: () => {
205
- return `[filter; =null]`;
206
- },
186
+ SerializeToString: () => {
187
+ return `[filter; =null]`;
188
+ },
207
189
  };
208
190
  export const FilterSmallerThanOrEqualsToType = {
209
- SerializeToString: (serializedSmallerThanOrEqualsTo) => {
210
- return `[filter; <= ${serializedSmallerThanOrEqualsTo}]`;
211
- },
191
+ SerializeToString: (serializedSmallerThanOrEqualsTo) => {
192
+ return `[filter; <= ${serializedSmallerThanOrEqualsTo}]`;
193
+ },
212
194
  };
213
195
  export const FilterSmallerThanType = {
214
- SerializeToString: (serializedSmallerThan) => {
215
- return `[filter; < ${serializedSmallerThan}]`;
216
- },
196
+ SerializeToString: (serializedSmallerThan) => {
197
+ return `[filter; < ${serializedSmallerThan}]`;
198
+ },
217
199
  };
218
200
  export const FilterStartsWithType = {
219
- SerializeToString: (serializedStartsWith) => {
220
- return `[filter; startsWith ${serializedStartsWith}]`;
221
- },
201
+ SerializeToString: (serializedStartsWith) => {
202
+ return `[filter; startsWith ${serializedStartsWith}]`;
203
+ },
222
204
  };
223
205
  export const FilterTypeKinds = [
224
- "contains",
225
- "=",
226
- "!=",
227
- ">=",
228
- ">",
229
- "!=null",
230
- "=null",
231
- "<=",
232
- "<",
233
- "startsWith",
206
+ "contains",
207
+ "=",
208
+ "!=",
209
+ ">=",
210
+ ">",
211
+ "!=null",
212
+ "=null",
213
+ "<=",
214
+ "<",
215
+ "startsWith",
234
216
  ];
235
217
  export const DispatchParsedType = {
236
- Default: {
237
- table: (arg) => ({
238
- kind: "table",
239
- arg,
240
- asString: () => TableType.SerializeToString(arg.asString()),
241
- }),
242
- record: (fields) => ({
243
- kind: "record",
244
- fields,
245
- asString: () =>
246
- RecordType.SerializeToString(fields.map((v) => v.asString())),
247
- }),
248
- primitive: (name) => ({
249
- kind: "primitive",
250
- name,
251
- asString: () => DispatchPrimitiveType.SerializeToString(name),
252
- }),
253
- singleSelection: (args) => ({
254
- kind: "singleSelection",
255
- args,
256
- asString: () =>
257
- SingleSelectionType.SerializeToString(args.map((v) => v.asString())),
258
- }),
259
- multiSelection: (args) => ({
260
- kind: "multiSelection",
261
- args,
262
- asString: () =>
263
- MultiSelectionType.SerializeToString(args.map((v) => v.asString())),
264
- }),
265
- list: (args) => ({
266
- kind: "list",
267
- args,
268
- asString: () => ListType.SerializeToString(args.map((v) => v.asString())),
269
- }),
270
- tuple: (args) => ({
271
- kind: "tuple",
272
- args,
273
- asString: () =>
274
- TupleType.SerializeToString(args.map((v) => v.asString())),
275
- }),
276
- sum: (args) => ({
277
- kind: "sum",
278
- args,
279
- asString: () => SumType.SerializeToString(args.map((v) => v.asString())),
280
- }),
281
- sumN: (args) => ({
282
- kind: "sumN",
283
- args,
284
- asString: () =>
285
- SumNType.SerializeToString(
286
- args.map((v) => v.asString()),
287
- args.length,
288
- ),
289
- }),
290
- map: (args) => ({
291
- kind: "map",
292
- args,
293
- asString: () => MapType.SerializeToString(args.map((v) => v.asString())),
294
- }),
295
- union: (args) => ({
296
- kind: "union",
297
- args,
298
- asString: () =>
299
- UnionType.SerializeToString(args.map((v) => v.asString())),
300
- }),
301
- readOnly: (arg) => ({
302
- kind: "readOnly",
303
- arg,
304
- asString: () => ReadOnlyType.SerializeToString(arg.asString()),
305
- }),
306
- lookup: (name) => ({
307
- kind: "lookup",
308
- name,
309
- asString: () => LookupType.SerializeToString(name),
310
- }),
311
- one: (arg) => ({
312
- kind: "one",
313
- arg,
314
- asString: () => OneType.SerializeToString(arg.asString()),
315
- }),
316
- filterContains: (contains) => ({
317
- kind: "contains",
318
- contains,
319
- asString: () => FilterContainsType.SerializeToString(contains.asString()),
320
- }),
321
- filterEqualsTo: (equalsTo) => ({
322
- kind: "=",
323
- equalsTo,
324
- asString: () => FilterEqualsToType.SerializeToString(equalsTo.asString()),
325
- }),
326
- filterNotEqualsTo: (notEqualsTo) => ({
327
- kind: "!=",
328
- notEqualsTo,
329
- asString: () =>
330
- FilterNotEqualsToType.SerializeToString(notEqualsTo.asString()),
331
- }),
332
- filterGreaterThanOrEqualsTo: (greaterThanOrEqualsTo) => ({
333
- kind: ">=",
334
- greaterThanOrEqualsTo,
335
- asString: () =>
336
- FilterGreaterThanOrEqualsToType.SerializeToString(
337
- greaterThanOrEqualsTo.asString(),
338
- ),
339
- }),
340
- filterGreaterThan: (greaterThan) => ({
341
- kind: ">",
342
- greaterThan,
343
- asString: () =>
344
- FilterGreaterThanType.SerializeToString(greaterThan.asString()),
345
- }),
346
- filterIsNotNull: () => ({
347
- kind: "!=null",
348
- asString: () => FilterIsNotNullType.SerializeToString(),
349
- }),
350
- filterIsNull: () => ({
351
- kind: "=null",
352
- asString: () => FilterIsNullType.SerializeToString(),
353
- }),
354
- filterSmallerThanOrEqualsTo: (smallerThanOrEqualsTo) => ({
355
- kind: "<=",
356
- smallerThanOrEqualsTo,
357
- asString: () =>
358
- FilterSmallerThanOrEqualsToType.SerializeToString(
359
- smallerThanOrEqualsTo.asString(),
360
- ),
361
- }),
362
- filterSmallerThan: (smallerThan) => ({
363
- kind: "<",
364
- smallerThan,
365
- asString: () =>
366
- FilterSmallerThanType.SerializeToString(smallerThan.asString()),
367
- }),
368
- filterStartsWith: (startsWith) => ({
369
- kind: "startsWith",
370
- startsWith,
371
- asString: () =>
372
- FilterStartsWithType.SerializeToString(startsWith.asString()),
373
- }),
374
- },
375
- Operations: {
376
- // We don't use this at the moment, if we need it, then we can fix
377
- // Equals: <T>(
378
- // fst: DispatchParsedType<T>,
379
- // snd: DispatchParsedType<T>,
380
- // ): boolean =>
381
- // fst.kind == "record" && snd.kind == "record"
382
- // ? fst.name == snd.name
383
- // : fst.kind == "table" && snd.kind == "table"
384
- // ? fst.name == snd.name
385
- // : fst.kind == "one" && snd.kind == "one"
386
- // ? fst.name == snd.name
387
- // : fst.kind == "lookup" && snd.kind == "lookup"
388
- // ? fst.name == snd.name
389
- // : fst.kind == "primitive" && snd.kind == "primitive"
390
- // ? fst.name == snd.name
391
- // : fst.kind == "list" && snd.kind == "list"
392
- // ? fst.name == snd.name
393
- // : fst.kind == "singleSelection" &&
394
- // snd.kind == "singleSelection"
395
- // ? fst.name == snd.name
396
- // : fst.kind == "multiSelection" &&
397
- // snd.kind == "multiSelection"
398
- // ? fst.name == snd.name
399
- // : fst.kind == "map" && snd.kind == "map"
400
- // ? fst.name == snd.name
401
- // : fst.kind == "sum" && snd.kind == "sum"
402
- // ? fst.name == snd.name
403
- // : fst.kind == "tuple" && snd.kind == "tuple"
404
- // ? fst.name == snd.name &&
405
- // fst.args.length == snd.args.length &&
406
- // fst.args.every((v, i) =>
407
- // DispatchParsedType.Operations.Equals(
408
- // v,
409
- // snd.args[i],
410
- // ),
411
- // )
412
- // : fst.kind == "union" && snd.kind == "union"
413
- // ? fst.args.size == snd.args.size &&
414
- // fst.args.every(
415
- // (v, i) => v.name == snd.args.get(i)!.name,
416
- // )
417
- // : false,
418
- ParseRawKeyOf: (rawType, typeNames, serializedTypes, alreadyParsedTypes) =>
419
- (alreadyParsedTypes.has(rawType.args[0])
420
- ? alreadyParsedTypes
421
- .get(rawType.args[0])
422
- .Then((parsedType) =>
423
- ValueOrErrors.Default.return([parsedType, alreadyParsedTypes]),
424
- )
425
- : DispatchParsedType.Operations.ParseRawType(
426
- rawType.args[0],
427
- serializedTypes[rawType.args[0]],
428
- typeNames,
429
- serializedTypes,
430
- alreadyParsedTypes,
431
- )
432
- )
433
- .Then((parsingResult) =>
434
- parsingResult[0].kind != "record"
435
- ? ValueOrErrors.Default.throwOne(
436
- `Error: ${JSON.stringify(parsingResult[0])} is not a record type`,
437
- )
218
+ Default: {
219
+ table: (arg) => ({
220
+ kind: "table",
221
+ arg,
222
+ asString: () => TableType.SerializeToString(arg.asString()),
223
+ }),
224
+ record: (fields) => ({
225
+ kind: "record",
226
+ fields,
227
+ asString: () => RecordType.SerializeToString(fields.map((v) => v.asString())),
228
+ }),
229
+ primitive: (name) => ({
230
+ kind: "primitive",
231
+ name,
232
+ asString: () => DispatchPrimitiveType.SerializeToString(name),
233
+ }),
234
+ singleSelection: (args) => ({
235
+ kind: "singleSelection",
236
+ args,
237
+ asString: () => SingleSelectionType.SerializeToString(args.map((v) => v.asString())),
238
+ }),
239
+ multiSelection: (args) => ({
240
+ kind: "multiSelection",
241
+ args,
242
+ asString: () => MultiSelectionType.SerializeToString(args.map((v) => v.asString())),
243
+ }),
244
+ list: (args) => ({
245
+ kind: "list",
246
+ args,
247
+ asString: () => ListType.SerializeToString(args.map((v) => v.asString())),
248
+ }),
249
+ tuple: (args) => ({
250
+ kind: "tuple",
251
+ args,
252
+ asString: () => TupleType.SerializeToString(args.map((v) => v.asString())),
253
+ }),
254
+ sum: (args) => ({
255
+ kind: "sum",
256
+ args,
257
+ asString: () => SumType.SerializeToString(args.map((v) => v.asString())),
258
+ }),
259
+ sumN: (args) => ({
260
+ kind: "sumN",
261
+ args,
262
+ asString: () => SumNType.SerializeToString(args.map((v) => v.asString()), args.length),
263
+ }),
264
+ map: (args) => ({
265
+ kind: "map",
266
+ args,
267
+ asString: () => MapType.SerializeToString(args.map((v) => v.asString())),
268
+ }),
269
+ union: (args) => ({
270
+ kind: "union",
271
+ args,
272
+ asString: () => UnionType.SerializeToString(args.map((v) => v.asString())),
273
+ }),
274
+ readOnly: (arg) => ({
275
+ kind: "readOnly",
276
+ arg,
277
+ asString: () => ReadOnlyType.SerializeToString(arg.asString()),
278
+ }),
279
+ lookup: (name) => ({
280
+ kind: "lookup",
281
+ name,
282
+ asString: () => LookupType.SerializeToString(name),
283
+ }),
284
+ one: (arg) => ({
285
+ kind: "one",
286
+ arg,
287
+ asString: () => OneType.SerializeToString(arg.asString()),
288
+ }),
289
+ filterContains: (contains) => ({
290
+ kind: "contains",
291
+ contains,
292
+ asString: () => FilterContainsType.SerializeToString(contains.asString()),
293
+ }),
294
+ filterEqualsTo: (equalsTo) => ({
295
+ kind: "=",
296
+ equalsTo,
297
+ asString: () => FilterEqualsToType.SerializeToString(equalsTo.asString()),
298
+ }),
299
+ filterNotEqualsTo: (notEqualsTo) => ({
300
+ kind: "!=",
301
+ notEqualsTo,
302
+ asString: () => FilterNotEqualsToType.SerializeToString(notEqualsTo.asString()),
303
+ }),
304
+ filterGreaterThanOrEqualsTo: (greaterThanOrEqualsTo) => ({
305
+ kind: ">=",
306
+ greaterThanOrEqualsTo,
307
+ asString: () => FilterGreaterThanOrEqualsToType.SerializeToString(greaterThanOrEqualsTo.asString()),
308
+ }),
309
+ filterGreaterThan: (greaterThan) => ({
310
+ kind: ">",
311
+ greaterThan,
312
+ asString: () => FilterGreaterThanType.SerializeToString(greaterThan.asString()),
313
+ }),
314
+ filterIsNotNull: () => ({
315
+ kind: "!=null",
316
+ asString: () => FilterIsNotNullType.SerializeToString(),
317
+ }),
318
+ filterIsNull: () => ({
319
+ kind: "=null",
320
+ asString: () => FilterIsNullType.SerializeToString(),
321
+ }),
322
+ filterSmallerThanOrEqualsTo: (smallerThanOrEqualsTo) => ({
323
+ kind: "<=",
324
+ smallerThanOrEqualsTo,
325
+ asString: () => FilterSmallerThanOrEqualsToType.SerializeToString(smallerThanOrEqualsTo.asString()),
326
+ }),
327
+ filterSmallerThan: (smallerThan) => ({
328
+ kind: "<",
329
+ smallerThan,
330
+ asString: () => FilterSmallerThanType.SerializeToString(smallerThan.asString()),
331
+ }),
332
+ filterStartsWith: (startsWith) => ({
333
+ kind: "startsWith",
334
+ startsWith,
335
+ asString: () => FilterStartsWithType.SerializeToString(startsWith.asString()),
336
+ }),
337
+ },
338
+ Operations: {
339
+ // We don't use this at the moment, if we need it, then we can fix
340
+ // Equals: <T>(
341
+ // fst: DispatchParsedType<T>,
342
+ // snd: DispatchParsedType<T>,
343
+ // ): boolean =>
344
+ // fst.kind == "record" && snd.kind == "record"
345
+ // ? fst.name == snd.name
346
+ // : fst.kind == "table" && snd.kind == "table"
347
+ // ? fst.name == snd.name
348
+ // : fst.kind == "one" && snd.kind == "one"
349
+ // ? fst.name == snd.name
350
+ // : fst.kind == "lookup" && snd.kind == "lookup"
351
+ // ? fst.name == snd.name
352
+ // : fst.kind == "primitive" && snd.kind == "primitive"
353
+ // ? fst.name == snd.name
354
+ // : fst.kind == "list" && snd.kind == "list"
355
+ // ? fst.name == snd.name
356
+ // : fst.kind == "singleSelection" &&
357
+ // snd.kind == "singleSelection"
358
+ // ? fst.name == snd.name
359
+ // : fst.kind == "multiSelection" &&
360
+ // snd.kind == "multiSelection"
361
+ // ? fst.name == snd.name
362
+ // : fst.kind == "map" && snd.kind == "map"
363
+ // ? fst.name == snd.name
364
+ // : fst.kind == "sum" && snd.kind == "sum"
365
+ // ? fst.name == snd.name
366
+ // : fst.kind == "tuple" && snd.kind == "tuple"
367
+ // ? fst.name == snd.name &&
368
+ // fst.args.length == snd.args.length &&
369
+ // fst.args.every((v, i) =>
370
+ // DispatchParsedType.Operations.Equals(
371
+ // v,
372
+ // snd.args[i],
373
+ // ),
374
+ // )
375
+ // : fst.kind == "union" && snd.kind == "union"
376
+ // ? fst.args.size == snd.args.size &&
377
+ // fst.args.every(
378
+ // (v, i) => v.name == snd.args.get(i)!.name,
379
+ // )
380
+ // : false,
381
+ ParseRawKeyOf: (rawType, typeNames, serializedTypes, alreadyParsedTypes) => (alreadyParsedTypes.has(rawType.args[0])
382
+ ? alreadyParsedTypes
383
+ .get(rawType.args[0])
384
+ .Then((parsedType) => ValueOrErrors.Default.return([parsedType, alreadyParsedTypes]))
385
+ : DispatchParsedType.Operations.ParseRawType(rawType.args[0], serializedTypes[rawType.args[0]], typeNames, serializedTypes, alreadyParsedTypes))
386
+ .Then((parsingResult) => parsingResult[0].kind != "record"
387
+ ? ValueOrErrors.Default.throwOne(`Error: ${JSON.stringify(parsingResult[0])} is not a record type`)
438
388
  : ValueOrErrors.Default.return([
439
- DispatchParsedType.Default.union(
440
- Map(
441
- parsingResult[0].fields
442
- .keySeq()
443
- .filter(
444
- (key) =>
445
- rawType.args[1] == undefined ||
446
- !rawType.args[1].includes(key),
447
- )
448
- .toArray()
449
- .map((key) => [
450
- key,
451
- DispatchParsedType.Default.record(Map()),
452
- ]),
453
- ),
454
- ),
389
+ DispatchParsedType.Default.union(Map(parsingResult[0].fields
390
+ .keySeq()
391
+ .filter((key) => rawType.args[1] == undefined ||
392
+ !rawType.args[1].includes(key))
393
+ .toArray()
394
+ .map((key) => [
395
+ key,
396
+ DispatchParsedType.Default.record(Map()),
397
+ ]))),
455
398
  parsingResult[1],
456
- ]),
457
- )
458
- .MapErrors((errors) =>
459
- errors.map((error) => `${error}\n...When parsing keyOf type`),
460
- ),
461
- SerializeToString: (type) => {
462
- switch (type.kind) {
463
- case "primitive":
464
- return DispatchPrimitiveType.SerializeToString(type.name);
465
- case "record":
466
- return RecordType.SerializeToString(
467
- type.fields.map((v) =>
468
- DispatchParsedType.Operations.SerializeToString(v),
469
- ),
470
- );
471
- case "table":
472
- return TableType.SerializeToString(
473
- DispatchParsedType.Operations.SerializeToString(type.arg),
474
- );
475
- case "one":
476
- return OneType.SerializeToString(
477
- DispatchParsedType.Operations.SerializeToString(type.arg),
478
- );
479
- case "singleSelection":
480
- return SingleSelectionType.SerializeToString(
481
- type.args.map((v) =>
482
- DispatchParsedType.Operations.SerializeToString(v),
483
- ),
484
- );
485
- case "multiSelection":
486
- return MultiSelectionType.SerializeToString(
487
- type.args.map((v) =>
488
- DispatchParsedType.Operations.SerializeToString(v),
489
- ),
490
- );
491
- case "list":
492
- return ListType.SerializeToString(
493
- type.args.map((v) =>
494
- DispatchParsedType.Operations.SerializeToString(v),
495
- ),
496
- );
497
- case "tuple":
498
- return TupleType.SerializeToString(
499
- type.args.map((v) =>
500
- DispatchParsedType.Operations.SerializeToString(v),
501
- ),
502
- );
503
- case "sum":
504
- return SumType.SerializeToString(
505
- type.args.map((v) =>
506
- DispatchParsedType.Operations.SerializeToString(v),
507
- ),
508
- );
509
- case "sumN":
510
- return SumNType.SerializeToString(
511
- type.args.map((v) =>
512
- DispatchParsedType.Operations.SerializeToString(v),
513
- ),
514
- type.args.length,
515
- );
516
- case "map":
517
- return MapType.SerializeToString(
518
- type.args.map((v) =>
519
- DispatchParsedType.Operations.SerializeToString(v),
520
- ),
521
- );
522
- case "union":
523
- return UnionType.SerializeToString(
524
- type.args.map((v) =>
525
- DispatchParsedType.Operations.SerializeToString(v),
526
- ),
527
- );
528
- case "lookup":
529
- return LookupType.SerializeToString(type.name);
530
- case "contains":
531
- return FilterContainsType.SerializeToString(type.contains.asString());
532
- case "=":
533
- return FilterEqualsToType.SerializeToString(type.equalsTo.asString());
534
- case "!=":
535
- return FilterNotEqualsToType.SerializeToString(
536
- type.notEqualsTo.asString(),
537
- );
538
- case ">=":
539
- return FilterGreaterThanOrEqualsToType.SerializeToString(
540
- type.greaterThanOrEqualsTo.asString(),
541
- );
542
- case ">":
543
- return FilterGreaterThanType.SerializeToString(
544
- type.greaterThan.asString(),
545
- );
546
- case "!=null":
547
- return FilterIsNotNullType.SerializeToString();
548
- case "=null":
549
- return FilterIsNullType.SerializeToString();
550
- case "<=":
551
- return FilterSmallerThanOrEqualsToType.SerializeToString(
552
- type.smallerThanOrEqualsTo.asString(),
553
- );
554
- case "<":
555
- return FilterSmallerThanType.SerializeToString(
556
- type.smallerThan.asString(),
557
- );
558
- case "startsWith":
559
- return FilterStartsWithType.SerializeToString(
560
- type.startsWith.asString(),
561
- );
562
- default:
563
- throw new Error(`Unknown type: ${JSON.stringify(type)}`);
564
- }
565
- },
566
- ParseRecord: (
567
- typeName,
568
- rawType,
569
- typeNames,
570
- serializedTypes,
571
- alreadyParsedTypes,
572
- injectedPrimitives,
573
- ) =>
574
- // will already been parsed if it was extended by another type which was already parsed
575
- alreadyParsedTypes.has(typeName)
576
- ? alreadyParsedTypes
577
- .get(typeName)
578
- .Then((parsedType) =>
579
- parsedType.kind != "record"
580
- ? ValueOrErrors.Default.throwOne(
581
- `Error: ${JSON.stringify(parsedType)} is not a record type`,
582
- )
399
+ ]))
400
+ .MapErrors((errors) => errors.map((error) => `${error}\n...When parsing keyOf type`)),
401
+ SerializeToString: (type) => {
402
+ switch (type.kind) {
403
+ case "primitive":
404
+ return DispatchPrimitiveType.SerializeToString(type.name);
405
+ case "record":
406
+ return RecordType.SerializeToString(type.fields.map((v) => DispatchParsedType.Operations.SerializeToString(v)));
407
+ case "table":
408
+ return TableType.SerializeToString(DispatchParsedType.Operations.SerializeToString(type.arg));
409
+ case "one":
410
+ return OneType.SerializeToString(DispatchParsedType.Operations.SerializeToString(type.arg));
411
+ case "singleSelection":
412
+ return SingleSelectionType.SerializeToString(type.args.map((v) => DispatchParsedType.Operations.SerializeToString(v)));
413
+ case "multiSelection":
414
+ return MultiSelectionType.SerializeToString(type.args.map((v) => DispatchParsedType.Operations.SerializeToString(v)));
415
+ case "list":
416
+ return ListType.SerializeToString(type.args.map((v) => DispatchParsedType.Operations.SerializeToString(v)));
417
+ case "tuple":
418
+ return TupleType.SerializeToString(type.args.map((v) => DispatchParsedType.Operations.SerializeToString(v)));
419
+ case "sum":
420
+ return SumType.SerializeToString(type.args.map((v) => DispatchParsedType.Operations.SerializeToString(v)));
421
+ case "sumN":
422
+ return SumNType.SerializeToString(type.args.map((v) => DispatchParsedType.Operations.SerializeToString(v)), type.args.length);
423
+ case "map":
424
+ return MapType.SerializeToString(type.args.map((v) => DispatchParsedType.Operations.SerializeToString(v)));
425
+ case "union":
426
+ return UnionType.SerializeToString(type.args.map((v) => DispatchParsedType.Operations.SerializeToString(v)));
427
+ case "lookup":
428
+ return LookupType.SerializeToString(type.name);
429
+ case "contains":
430
+ return FilterContainsType.SerializeToString(type.contains.asString());
431
+ case "=":
432
+ return FilterEqualsToType.SerializeToString(type.equalsTo.asString());
433
+ case "!=":
434
+ return FilterNotEqualsToType.SerializeToString(type.notEqualsTo.asString());
435
+ case ">=":
436
+ return FilterGreaterThanOrEqualsToType.SerializeToString(type.greaterThanOrEqualsTo.asString());
437
+ case ">":
438
+ return FilterGreaterThanType.SerializeToString(type.greaterThan.asString());
439
+ case "!=null":
440
+ return FilterIsNotNullType.SerializeToString();
441
+ case "=null":
442
+ return FilterIsNullType.SerializeToString();
443
+ case "<=":
444
+ return FilterSmallerThanOrEqualsToType.SerializeToString(type.smallerThanOrEqualsTo.asString());
445
+ case "<":
446
+ return FilterSmallerThanType.SerializeToString(type.smallerThan.asString());
447
+ case "startsWith":
448
+ return FilterStartsWithType.SerializeToString(type.startsWith.asString());
449
+ default:
450
+ throw new Error(`Unknown type: ${JSON.stringify(type)}`);
451
+ }
452
+ },
453
+ ParseRecord: (typeName, rawType, typeNames, serializedTypes, alreadyParsedTypes, injectedPrimitives) =>
454
+ // will already been parsed if it was extended by another type which was already parsed
455
+ alreadyParsedTypes.has(typeName)
456
+ ? alreadyParsedTypes
457
+ .get(typeName)
458
+ .Then((parsedType) => parsedType.kind != "record"
459
+ ? ValueOrErrors.Default.throwOne(`Error: ${JSON.stringify(parsedType)} is not a record type`)
583
460
  : ValueOrErrors.Default.return([
584
461
  parsedType,
585
462
  alreadyParsedTypes,
586
- ]),
587
- )
588
- : !SerializedType.isRecord(rawType)
589
- ? ValueOrErrors.Default.throwOne(
590
- `Error: ${JSON.stringify(rawType)} is not a valid record`,
591
- )
592
- : (SerializedType.isExtendedType(rawType)
593
- ? ValueOrErrors.Operations.All(
594
- List(
595
- rawType.extends.map((extendedTypeName) =>
596
- alreadyParsedTypes.has(extendedTypeName)
463
+ ]))
464
+ : !SerializedType.isRecord(rawType)
465
+ ? ValueOrErrors.Default.throwOne(`Error: ${JSON.stringify(rawType)} is not a valid record`)
466
+ : (SerializedType.isExtendedType(rawType)
467
+ ? ValueOrErrors.Operations.All(List(rawType.extends.map((extendedTypeName) => alreadyParsedTypes.has(extendedTypeName)
597
468
  ? alreadyParsedTypes
598
469
  .get(extendedTypeName)
599
- .Then((extendedType) =>
600
- extendedType.kind != "record"
601
- ? ValueOrErrors.Default.throwOne(
602
- `Error: ${JSON.stringify(extendedType)} is not a record type`,
603
- )
604
- : ValueOrErrors.Default.return([
605
- extendedTypeName,
606
- extendedType,
607
- ]),
608
- )
470
+ .Then((extendedType) => extendedType.kind != "record"
471
+ ? ValueOrErrors.Default.throwOne(`Error: ${JSON.stringify(extendedType)} is not a record type`)
472
+ : ValueOrErrors.Default.return([extendedTypeName, extendedType]))
609
473
  : serializedTypes[extendedTypeName] == undefined
610
- ? ValueOrErrors.Default.throwOne(
611
- `Error: cannot find extended type ${extendedTypeName} in types`,
612
- )
613
- : DispatchParsedType.Operations.ParseRawType(
614
- extendedTypeName,
615
- serializedTypes[extendedTypeName],
616
- typeNames,
617
- serializedTypes,
618
- alreadyParsedTypes,
619
- injectedPrimitives,
620
- ).Then((parsedType) =>
621
- parsedType[0].kind == "record"
622
- ? ValueOrErrors.Default.return([
623
- extendedTypeName,
624
- parsedType[0],
625
- ])
626
- : ValueOrErrors.Default.throwOne(
627
- `Error: ${JSON.stringify(parsedType[0])} is not a record type`,
628
- ),
629
- ),
630
- ),
631
- ),
632
- )
633
- .MapErrors((errors) =>
634
- errors.map(
635
- (error) => `${error}\n...When parsing extended types`,
636
- ),
637
- )
638
- .Then((parsedExtendedRecordTypes) =>
639
- ValueOrErrors.Default.return(
640
- parsedExtendedRecordTypes.reduce(
641
- (acc, type) => acc.set(type[0], type[1]),
642
- Map(),
643
- ),
644
- ),
645
- )
646
- : ValueOrErrors.Default.return(Map())
647
- ).Then((parsedExtendedRecordTypesMap) =>
648
- ValueOrErrors.Operations.All(
649
- List(
650
- Object.entries(rawType.fields).map(([fieldName, fieldType]) =>
651
- DispatchParsedType.Operations.ParseRawType(
652
- fieldName,
653
- fieldType,
654
- typeNames,
655
- serializedTypes,
656
- alreadyParsedTypes,
657
- injectedPrimitives,
658
- ).Then((parsedField) =>
659
- ValueOrErrors.Default.return([fieldName, parsedField]),
660
- ),
661
- ),
662
- ),
663
- )
664
- .Then((parsedFields) =>
665
- ValueOrErrors.Default.return(
666
- Map(
667
- parsedFields.map(([fieldName, parsedField]) => [
668
- fieldName,
669
- parsedField[0],
670
- ]),
671
- ),
672
- ),
673
- )
674
- .Then((parsedFieldsMap) =>
675
- ValueOrErrors.Default.return(
676
- DispatchParsedType.Default.record(
677
- parsedFieldsMap.merge(
678
- parsedExtendedRecordTypesMap.reduce(
679
- (acc, type) => acc.merge(type.fields),
680
- Map(),
681
- ),
682
- ),
683
- ),
684
- ).Then((parsedRecord) =>
685
- ValueOrErrors.Default.return([
686
- parsedRecord,
687
- parsedExtendedRecordTypesMap.reduce(
688
- (acc, type, name) =>
689
- acc.set(name, ValueOrErrors.Default.return(type)),
474
+ ? ValueOrErrors.Default.throwOne(`Error: cannot find extended type ${extendedTypeName} in types`)
475
+ : DispatchParsedType.Operations.ParseRawType(extendedTypeName, serializedTypes[extendedTypeName], typeNames, serializedTypes, alreadyParsedTypes, injectedPrimitives).Then((parsedType) => parsedType[0].kind == "record"
476
+ ? ValueOrErrors.Default.return([extendedTypeName, parsedType[0]])
477
+ : ValueOrErrors.Default.throwOne(`Error: ${JSON.stringify(parsedType[0])} is not a record type`)))))
478
+ .MapErrors((errors) => errors.map((error) => `${error}\n...When parsing extended types`))
479
+ .Then((parsedExtendedRecordTypes) => ValueOrErrors.Default.return(parsedExtendedRecordTypes.reduce((acc, type) => acc.set(type[0], type[1]), Map())))
480
+ : 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])))))
481
+ .Then((parsedFields) => ValueOrErrors.Default.return(Map(parsedFields.map(([fieldName, parsedField]) => [
482
+ fieldName,
483
+ parsedField[0],
484
+ ]))))
485
+ .Then((parsedFieldsMap) => ValueOrErrors.Default.return(DispatchParsedType.Default.record(parsedFieldsMap.merge(parsedExtendedRecordTypesMap.reduce((acc, type) => acc.merge(type.fields), Map())))).Then((parsedRecord) => ValueOrErrors.Default.return([
486
+ parsedRecord,
487
+ parsedExtendedRecordTypesMap.reduce((acc, type, name) => acc.set(name, ValueOrErrors.Default.return(type)), alreadyParsedTypes),
488
+ ])))),
489
+ ParseRawFilterType: (rawFilterType, arg) => {
490
+ if (typeof rawFilterType != "string") {
491
+ return ValueOrErrors.Default.throwOne(`rawType is not a string`);
492
+ }
493
+ switch (rawFilterType) {
494
+ case "contains":
495
+ return ValueOrErrors.Default.return(DispatchParsedType.Default.filterContains(arg));
496
+ case "equalsTo":
497
+ return ValueOrErrors.Default.return(DispatchParsedType.Default.filterEqualsTo(arg));
498
+ case "startswith":
499
+ return ValueOrErrors.Default.return(DispatchParsedType.Default.filterStartsWith(arg));
500
+ case "!=":
501
+ return ValueOrErrors.Default.return(DispatchParsedType.Default.filterNotEqualsTo(arg));
502
+ case "=":
503
+ return ValueOrErrors.Default.return(DispatchParsedType.Default.filterEqualsTo(arg));
504
+ case ">=":
505
+ return ValueOrErrors.Default.return(DispatchParsedType.Default.filterGreaterThanOrEqualsTo(arg));
506
+ case ">":
507
+ return ValueOrErrors.Default.return(DispatchParsedType.Default.filterGreaterThan(arg));
508
+ case "<=":
509
+ return ValueOrErrors.Default.return(DispatchParsedType.Default.filterSmallerThanOrEqualsTo(arg));
510
+ case "<":
511
+ return ValueOrErrors.Default.return(DispatchParsedType.Default.filterSmallerThan(arg));
512
+ case "=null":
513
+ return ValueOrErrors.Default.return(DispatchParsedType.Default.filterIsNull());
514
+ case "!=null":
515
+ return ValueOrErrors.Default.return(DispatchParsedType.Default.filterIsNotNull());
516
+ default:
517
+ return ValueOrErrors.Default.throwOne(`Unknown filter type: ${rawFilterType}`);
518
+ }
519
+ },
520
+ ParseRawType: (typeName, rawType, typeNames, serializedTypes, alreadyParsedTypes, injectedPrimitives) => {
521
+ const result = (() => {
522
+ const stringyTypes = [
523
+ "guid",
524
+ "entityIdUUID",
525
+ "entityIdString",
526
+ "calculatedDisplayValue",
527
+ ];
528
+ if (SerializedType.isPrimitive(rawType, injectedPrimitives))
529
+ return ValueOrErrors.Default.return([
530
+ DispatchParsedType.Default.primitive(typeof rawType === "string" && stringyTypes.includes(rawType)
531
+ ? "string"
532
+ : rawType),
690
533
  alreadyParsedTypes,
691
- ),
692
- ]),
693
- ),
694
- ),
695
- ),
696
- ParseRawFilterType: (rawFilterType, arg) => {
697
- if (typeof rawFilterType != "string") {
698
- return ValueOrErrors.Default.throwOne(`rawType is not a string`);
699
- }
700
- switch (rawFilterType) {
701
- case "contains":
702
- return ValueOrErrors.Default.return(
703
- DispatchParsedType.Default.filterContains(arg),
704
- );
705
- case "equalsTo":
706
- return ValueOrErrors.Default.return(
707
- DispatchParsedType.Default.filterEqualsTo(arg),
708
- );
709
- case "startswith":
710
- return ValueOrErrors.Default.return(
711
- DispatchParsedType.Default.filterStartsWith(arg),
712
- );
713
- case "!=":
714
- return ValueOrErrors.Default.return(
715
- DispatchParsedType.Default.filterNotEqualsTo(arg),
716
- );
717
- case "=":
718
- return ValueOrErrors.Default.return(
719
- DispatchParsedType.Default.filterEqualsTo(arg),
720
- );
721
- case ">=":
722
- return ValueOrErrors.Default.return(
723
- DispatchParsedType.Default.filterGreaterThanOrEqualsTo(arg),
724
- );
725
- case ">":
726
- return ValueOrErrors.Default.return(
727
- DispatchParsedType.Default.filterGreaterThan(arg),
728
- );
729
- case "<=":
730
- return ValueOrErrors.Default.return(
731
- DispatchParsedType.Default.filterSmallerThanOrEqualsTo(arg),
732
- );
733
- case "<":
734
- return ValueOrErrors.Default.return(
735
- DispatchParsedType.Default.filterSmallerThan(arg),
736
- );
737
- case "=null":
738
- return ValueOrErrors.Default.return(
739
- DispatchParsedType.Default.filterIsNull(),
740
- );
741
- case "!=null":
742
- return ValueOrErrors.Default.return(
743
- DispatchParsedType.Default.filterIsNotNull(),
744
- );
745
- default:
746
- return ValueOrErrors.Default.throwOne(
747
- `Unknown filter type: ${rawFilterType}`,
748
- );
749
- }
750
- },
751
- ParseRawType: (
752
- typeName,
753
- rawType,
754
- typeNames,
755
- serializedTypes,
756
- alreadyParsedTypes,
757
- injectedPrimitives,
758
- ) => {
759
- const result = (() => {
760
- const stringyTypes = [
761
- "guid",
762
- "entityIdUUID",
763
- "entityIdString",
764
- "calculatedDisplayValue",
765
- ];
766
- if (SerializedType.isPrimitive(rawType, injectedPrimitives))
767
- return ValueOrErrors.Default.return([
768
- DispatchParsedType.Default.primitive(
769
- typeof rawType === "string" && stringyTypes.includes(rawType)
770
- ? "string"
771
- : rawType,
772
- ),
773
- alreadyParsedTypes,
774
- ]);
775
- if (SerializedType.isSingleSelection(rawType))
776
- return DispatchParsedType.Operations.ParseRawType(
777
- `SingleSelection:Element`,
778
- rawType.args[0],
779
- typeNames,
780
- serializedTypes,
781
- alreadyParsedTypes,
782
- injectedPrimitives,
783
- ).Then((parsedArgs) =>
784
- ValueOrErrors.Default.return([
785
- DispatchParsedType.Default.singleSelection([parsedArgs[0]]),
786
- alreadyParsedTypes,
787
- ]),
788
- );
789
- if (SerializedType.isMultiSelection(rawType))
790
- return DispatchParsedType.Operations.ParseRawType(
791
- `MultiSelection:Element`,
792
- rawType.args[0],
793
- typeNames,
794
- serializedTypes,
795
- alreadyParsedTypes,
796
- injectedPrimitives,
797
- ).Then((parsedArgs) =>
798
- ValueOrErrors.Default.return([
799
- DispatchParsedType.Default.multiSelection([parsedArgs[0]]),
800
- alreadyParsedTypes,
801
- ]),
802
- );
803
- if (SerializedType.isList(rawType))
804
- return DispatchParsedType.Operations.ParseRawType(
805
- `List:Element`,
806
- rawType.args[0],
807
- typeNames,
808
- serializedTypes,
809
- alreadyParsedTypes,
810
- injectedPrimitives,
811
- ).Then((parsedArgs) =>
812
- ValueOrErrors.Default.return([
813
- DispatchParsedType.Default.list([parsedArgs[0]]),
814
- alreadyParsedTypes,
815
- ]),
816
- );
817
- if (SerializedType.isTuple(rawType))
818
- return ValueOrErrors.Operations.All(
819
- List(
820
- rawType.args.map((arg, index) =>
821
- DispatchParsedType.Operations.ParseRawType(
822
- `Tuple:Item ${index + 1}`,
823
- arg,
824
- typeNames,
825
- serializedTypes,
826
- alreadyParsedTypes,
827
- injectedPrimitives,
828
- ),
829
- ),
830
- ),
831
- ).Then((parsedArgs) =>
832
- ValueOrErrors.Default.return([
833
- DispatchParsedType.Default.tuple(
834
- parsedArgs.map(([parsedArg]) => parsedArg).toArray(),
835
- ),
836
- alreadyParsedTypes,
837
- ]),
838
- );
839
- if (SerializedType.isMap(rawType))
840
- return DispatchParsedType.Operations.ParseRawType(
841
- "Map:Key",
842
- rawType.args[0],
843
- typeNames,
844
- serializedTypes,
845
- alreadyParsedTypes,
846
- injectedPrimitives,
847
- ).Then((parsedArgs0) =>
848
- DispatchParsedType.Operations.ParseRawType(
849
- "Map:Value",
850
- rawType.args[1],
851
- typeNames,
852
- serializedTypes,
853
- alreadyParsedTypes,
854
- injectedPrimitives,
855
- ).Then((parsedArgs1) =>
856
- ValueOrErrors.Default.return([
857
- DispatchParsedType.Default.map([
858
- parsedArgs0[0],
859
- parsedArgs1[0],
860
- ]),
861
- alreadyParsedTypes,
862
- ]),
863
- ),
864
- );
865
- if (SerializedType.isSum(rawType))
866
- return DispatchParsedType.Operations.ParseRawType(
867
- "Sum:Left",
868
- rawType.args[0],
869
- typeNames,
870
- serializedTypes,
871
- alreadyParsedTypes,
872
- injectedPrimitives,
873
- ).Then((parsedArgs0) =>
874
- DispatchParsedType.Operations.ParseRawType(
875
- "Sum:Right",
876
- rawType.args[1],
877
- typeNames,
878
- serializedTypes,
879
- alreadyParsedTypes,
880
- injectedPrimitives,
881
- ).Then((parsedArgs1) =>
882
- ValueOrErrors.Default.return([
883
- DispatchParsedType.Default.sum([
884
- parsedArgs0[0],
885
- parsedArgs1[0],
886
- ]),
887
- alreadyParsedTypes,
888
- ]),
889
- ),
890
- );
891
- if (SerializedType.isRecord(rawType))
892
- return DispatchParsedType.Operations.ParseRecord(
893
- typeName,
894
- rawType,
895
- typeNames,
896
- serializedTypes,
897
- alreadyParsedTypes,
898
- injectedPrimitives,
899
- );
900
- if (SerializedType.isTable(rawType)) {
901
- return DispatchParsedType.Operations.ParseRawType(
902
- "TableArg",
903
- rawType.args[0],
904
- typeNames,
905
- serializedTypes,
906
- alreadyParsedTypes,
907
- injectedPrimitives,
908
- ).Then((parsedArg) =>
909
- parsedArg[0].kind != "lookup"
910
- ? ValueOrErrors.Default.throwOne(
911
- `Error: ${JSON.stringify(parsedArg[0])} is not a lookup type`,
912
- )
913
- : ValueOrErrors.Default.return([
914
- DispatchParsedType.Default.table(parsedArg[0]),
915
- alreadyParsedTypes,
916
- ]),
917
- );
918
- }
919
- if (SerializedType.isLookup(rawType, typeNames))
920
- return ValueOrErrors.Default.return([
921
- DispatchParsedType.Default.lookup(rawType),
922
- alreadyParsedTypes,
923
- ]);
924
- if (SerializedType.isUnit(rawType)) {
925
- return ValueOrErrors.Default.return([
926
- DispatchParsedType.Default.primitive("unit"),
927
- alreadyParsedTypes,
928
- ]);
929
- }
930
- if (SerializedType.isUnion(rawType))
931
- // for now we assume all union cases are lookup types
932
- return ValueOrErrors.Operations.All(
933
- List(
934
- rawType.args.map((unionCase) =>
935
- DispatchParsedType.Operations.ParseRawType(
936
- `Union:Case ${unionCase.caseName}`,
937
- unionCase.fields == undefined
938
- ? { fields: {} }
939
- : // we allow the record fields to be defined directly in the spec instead of
940
- // inside a fields key
941
- SerializedType.isRecordFields(unionCase.fields)
942
- ? { fields: unionCase.fields }
943
- : unionCase.fields,
944
- typeNames,
945
- serializedTypes,
946
- alreadyParsedTypes,
947
- injectedPrimitives,
948
- ).Then((parsedType) =>
949
- ValueOrErrors.Default.return([
950
- unionCase.caseName,
951
- parsedType[0],
952
- ]),
953
- ),
954
- ),
955
- ),
956
- ).Then((parsedUnionCases) =>
957
- ValueOrErrors.Default.return([
958
- DispatchParsedType.Default.union(Map(parsedUnionCases)),
959
- alreadyParsedTypes,
960
- ]),
961
- );
962
- if (SerializedType.isOne(rawType))
963
- return DispatchParsedType.Operations.ParseRawType(
964
- "One:Element",
965
- rawType.args[0],
966
- typeNames,
967
- serializedTypes,
968
- alreadyParsedTypes,
969
- injectedPrimitives,
970
- ).Then((parsedArg) =>
971
- parsedArg[0].kind != "lookup"
972
- ? ValueOrErrors.Default.throwOne(
973
- `one content type ${JSON.stringify(parsedArg[0])} is not a lookup type`,
974
- )
975
- : ValueOrErrors.Default.return([
976
- DispatchParsedType.Default.one(parsedArg[0]),
977
- alreadyParsedTypes,
978
- ]),
979
- );
980
- if (SerializedType.isReadOnly(rawType))
981
- return DispatchParsedType.Operations.ParseRawType(
982
- "ReadOnly:Element",
983
- rawType.args[0],
984
- typeNames,
985
- serializedTypes,
986
- alreadyParsedTypes,
987
- injectedPrimitives,
988
- ).Then(([parsedArg, _]) =>
989
- ValueOrErrors.Default.return([
990
- DispatchParsedType.Default.readOnly(parsedArg),
991
- alreadyParsedTypes,
992
- ]),
993
- );
994
- if (SerializedType.isKeyOf(rawType))
995
- return DispatchParsedType.Operations.ParseRawKeyOf(
996
- rawType,
997
- typeNames,
998
- serializedTypes,
999
- alreadyParsedTypes,
1000
- );
1001
- return ValueOrErrors.Default.throwOne(
1002
- `Unrecognised type "${typeName}" : ${JSON.stringify(rawType)}`,
1003
- );
1004
- })();
1005
- return result.MapErrors((errors) =>
1006
- errors.map((error) => `${error}\n...When parsing type "${typeName}"`),
1007
- );
534
+ ]);
535
+ if (SerializedType.isSingleSelection(rawType))
536
+ return DispatchParsedType.Operations.ParseRawType(`SingleSelection:Element`, rawType.args[0], typeNames, serializedTypes, alreadyParsedTypes, injectedPrimitives).Then((parsedArgs) => ValueOrErrors.Default.return([
537
+ DispatchParsedType.Default.singleSelection([parsedArgs[0]]),
538
+ alreadyParsedTypes,
539
+ ]));
540
+ if (SerializedType.isMultiSelection(rawType))
541
+ return DispatchParsedType.Operations.ParseRawType(`MultiSelection:Element`, rawType.args[0], typeNames, serializedTypes, alreadyParsedTypes, injectedPrimitives).Then((parsedArgs) => ValueOrErrors.Default.return([
542
+ DispatchParsedType.Default.multiSelection([parsedArgs[0]]),
543
+ alreadyParsedTypes,
544
+ ]));
545
+ if (SerializedType.isList(rawType))
546
+ return DispatchParsedType.Operations.ParseRawType(`List:Element`, rawType.args[0], typeNames, serializedTypes, alreadyParsedTypes, injectedPrimitives).Then((parsedArgs) => ValueOrErrors.Default.return([
547
+ DispatchParsedType.Default.list([parsedArgs[0]]),
548
+ alreadyParsedTypes,
549
+ ]));
550
+ if (SerializedType.isTuple(rawType))
551
+ 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([
552
+ DispatchParsedType.Default.tuple(parsedArgs.map(([parsedArg]) => parsedArg).toArray()),
553
+ alreadyParsedTypes,
554
+ ]));
555
+ if (SerializedType.isMap(rawType))
556
+ 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([
557
+ DispatchParsedType.Default.map([
558
+ parsedArgs0[0],
559
+ parsedArgs1[0],
560
+ ]),
561
+ alreadyParsedTypes,
562
+ ])));
563
+ if (SerializedType.isSum(rawType))
564
+ 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([
565
+ DispatchParsedType.Default.sum([
566
+ parsedArgs0[0],
567
+ parsedArgs1[0],
568
+ ]),
569
+ alreadyParsedTypes,
570
+ ])));
571
+ if (SerializedType.isRecord(rawType))
572
+ return DispatchParsedType.Operations.ParseRecord(typeName, rawType, typeNames, serializedTypes, alreadyParsedTypes, injectedPrimitives);
573
+ if (SerializedType.isTable(rawType)) {
574
+ return DispatchParsedType.Operations.ParseRawType("TableArg", rawType.args[0], typeNames, serializedTypes, alreadyParsedTypes, injectedPrimitives).Then((parsedArg) => parsedArg[0].kind != "lookup"
575
+ ? ValueOrErrors.Default.throwOne(`Error: ${JSON.stringify(parsedArg[0])} is not a lookup type`)
576
+ : ValueOrErrors.Default.return([
577
+ DispatchParsedType.Default.table(parsedArg[0]),
578
+ alreadyParsedTypes,
579
+ ]));
580
+ }
581
+ if (SerializedType.isLookup(rawType, typeNames))
582
+ return ValueOrErrors.Default.return([
583
+ DispatchParsedType.Default.lookup(rawType),
584
+ alreadyParsedTypes,
585
+ ]);
586
+ if (SerializedType.isUnit(rawType)) {
587
+ return ValueOrErrors.Default.return([
588
+ DispatchParsedType.Default.primitive("unit"),
589
+ alreadyParsedTypes,
590
+ ]);
591
+ }
592
+ if (SerializedType.isUnion(rawType))
593
+ // for now we assume all union cases are lookup types
594
+ return ValueOrErrors.Operations.All(List(rawType.args.map((unionCase) => DispatchParsedType.Operations.ParseRawType(`Union:Case ${unionCase.caseName}`, unionCase.fields == undefined
595
+ ? { fields: {} }
596
+ : // we allow the record fields to be defined directly in the spec instead of
597
+ // inside a fields key
598
+ SerializedType.isRecordFields(unionCase.fields)
599
+ ? { fields: unionCase.fields }
600
+ : unionCase.fields, typeNames, serializedTypes, alreadyParsedTypes, injectedPrimitives).Then((parsedType) => ValueOrErrors.Default.return([
601
+ unionCase.caseName,
602
+ parsedType[0],
603
+ ]))))).Then((parsedUnionCases) => ValueOrErrors.Default.return([
604
+ DispatchParsedType.Default.union(Map(parsedUnionCases)),
605
+ alreadyParsedTypes,
606
+ ]));
607
+ if (SerializedType.isOne(rawType))
608
+ return DispatchParsedType.Operations.ParseRawType("One:Element", rawType.args[0], typeNames, serializedTypes, alreadyParsedTypes, injectedPrimitives).Then((parsedArg) => parsedArg[0].kind != "lookup"
609
+ ? ValueOrErrors.Default.throwOne(`one content type ${JSON.stringify(parsedArg[0])} is not a lookup type`)
610
+ : ValueOrErrors.Default.return([
611
+ DispatchParsedType.Default.one(parsedArg[0]),
612
+ alreadyParsedTypes,
613
+ ]));
614
+ if (SerializedType.isReadOnly(rawType))
615
+ return DispatchParsedType.Operations.ParseRawType("ReadOnly:Element", rawType.args[0], typeNames, serializedTypes, alreadyParsedTypes, injectedPrimitives).Then(([parsedArg, _]) => ValueOrErrors.Default.return([
616
+ DispatchParsedType.Default.readOnly(parsedArg),
617
+ alreadyParsedTypes,
618
+ ]));
619
+ if (SerializedType.isKeyOf(rawType))
620
+ return DispatchParsedType.Operations.ParseRawKeyOf(rawType, typeNames, serializedTypes, alreadyParsedTypes);
621
+ if (SerializedType.isTranslationOverride(rawType))
622
+ return DispatchParsedType.Operations.ParseRawType("TranslationOverride:Language", rawType.args[0], typeNames, serializedTypes, alreadyParsedTypes, injectedPrimitives).Then(([parsedArg0, ..._]) => ValueOrErrors.Default.return([
623
+ DispatchParsedType.Default.map([
624
+ DispatchParsedType.Default.singleSelection([parsedArg0]),
625
+ DispatchParsedType.Default.primitive("string"),
626
+ ]),
627
+ alreadyParsedTypes,
628
+ ]));
629
+ return ValueOrErrors.Default.throwOne(`Unrecognised type "${typeName}" : ${JSON.stringify(rawType)}`);
630
+ })();
631
+ return result.MapErrors((errors) => errors.map((error) => `${error}\n...When parsing type "${typeName}"`));
632
+ },
633
+ ResolveLookupType: (typeName, types) => MapRepo.Operations.tryFindWithError(typeName, types, () => `cannot find lookup type ${typeName} in types`),
634
+ AsResolvedType: (type, types) => type.kind == "lookup"
635
+ ? DispatchParsedType.Operations.ResolveLookupType(type.name, types)
636
+ : ValueOrErrors.Default.return(type),
1008
637
  },
1009
- ResolveLookupType: (typeName, types) =>
1010
- MapRepo.Operations.tryFindWithError(
1011
- typeName,
1012
- types,
1013
- () => `cannot find lookup type ${typeName} in types`,
1014
- ),
1015
- AsResolvedType: (type, types) =>
1016
- type.kind == "lookup"
1017
- ? DispatchParsedType.Operations.ResolveLookupType(type.name, types)
1018
- : ValueOrErrors.Default.return(type),
1019
- },
1020
638
  };
1021
- //# sourceMappingURL=state.js.map
639
+ //# sourceMappingURL=state.js.map