ballerina-core 1.0.229 → 1.0.230

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