ballerina-core 1.0.255 → 1.0.256

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