ballerina-core 1.0.252 → 1.0.253

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 (588) hide show
  1. package/bin/main.d.ts +1 -1
  2. package/bin/main.js +1 -1
  3. package/bin/src/api-response-handler/coroutines/runner.d.ts +2 -9
  4. package/bin/src/api-response-handler/coroutines/runner.js +13 -20
  5. package/bin/src/api-response-handler/state.d.ts +12 -12
  6. package/bin/src/api-response-handler/state.js +11 -13
  7. package/bin/src/apiResultStatus/state.d.ts +3 -10
  8. package/bin/src/apiResultStatus/state.js +5 -2
  9. package/bin/src/async/domains/mirroring/domains/collection/coroutines/synchronizers.d.ts +75 -400
  10. package/bin/src/async/domains/mirroring/domains/collection/coroutines/synchronizers.js +196 -314
  11. package/bin/src/async/domains/mirroring/domains/collection/state.d.ts +25 -38
  12. package/bin/src/async/domains/mirroring/domains/collection/state.js +36 -126
  13. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-collection/state.d.ts +8 -12
  14. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-collection/state.js +11 -18
  15. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-collection-entity/state.d.ts +9 -12
  16. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-collection-entity/state.js +19 -19
  17. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-entities/state.d.ts +8 -17
  18. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-entities/state.js +1 -1
  19. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-entity/state.d.ts +13 -16
  20. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-entity/state.js +18 -18
  21. package/bin/src/async/domains/mirroring/domains/entity/state.d.ts +9 -12
  22. package/bin/src/async/domains/mirroring/domains/entity/state.js +9 -18
  23. package/bin/src/async/domains/mirroring/domains/singleton/coroutines/synchronizers.d.ts +41 -233
  24. package/bin/src/async/domains/mirroring/domains/singleton/coroutines/synchronizers.js +83 -134
  25. package/bin/src/async/domains/mirroring/domains/singleton/state.d.ts +15 -24
  26. package/bin/src/async/domains/mirroring/domains/singleton/state.js +8 -52
  27. package/bin/src/async/domains/mirroring/domains/synchronization-result/state.d.ts +9 -5
  28. package/bin/src/async/domains/mirroring/domains/synchronization-result/state.d.ts.map +1 -1
  29. package/bin/src/async/domains/mirroring/domains/synchronization-result/state.js +1 -1
  30. package/bin/src/async/domains/mirroring/domains/synchronized-entities/state.d.ts +10 -16
  31. package/bin/src/async/domains/mirroring/domains/synchronized-entities/state.js +4 -7
  32. package/bin/src/async/domains/promise/state.d.ts +4 -9
  33. package/bin/src/async/domains/promise/state.js +9 -20
  34. package/bin/src/async/domains/synchronized/coroutines/synchronize.d.ts +4 -29
  35. package/bin/src/async/domains/synchronized/coroutines/synchronize.js +28 -80
  36. package/bin/src/async/domains/synchronized/state.d.ts +7 -14
  37. package/bin/src/async/domains/synchronized/state.js +6 -16
  38. package/bin/src/async/state.d.ts +45 -56
  39. package/bin/src/async/state.js +97 -115
  40. package/bin/src/baseEntity/domains/identifiable/state.d.ts +11 -15
  41. package/bin/src/baseEntity/domains/identifiable/state.js +9 -9
  42. package/bin/src/collections/domains/array/state.d.ts +7 -7
  43. package/bin/src/collections/domains/array/state.js +5 -5
  44. package/bin/src/collections/domains/errors/state.d.ts +10 -10
  45. package/bin/src/collections/domains/errors/state.js +10 -10
  46. package/bin/src/collections/domains/immutable/domains/list/state.d.ts +15 -19
  47. package/bin/src/collections/domains/immutable/domains/list/state.js +44 -46
  48. package/bin/src/collections/domains/immutable/domains/map/state.d.ts +16 -30
  49. package/bin/src/collections/domains/immutable/domains/map/state.js +23 -41
  50. package/bin/src/collections/domains/immutable/domains/orderedMap/state.d.ts +25 -53
  51. package/bin/src/collections/domains/immutable/domains/orderedMap/state.js +65 -84
  52. package/bin/src/collections/domains/immutable/domains/ordereredSet/state.d.ts +6 -6
  53. package/bin/src/collections/domains/immutable/domains/ordereredSet/state.js +6 -6
  54. package/bin/src/collections/domains/maybe/state.d.ts +9 -9
  55. package/bin/src/collections/domains/maybe/state.js +9 -12
  56. package/bin/src/collections/domains/product/state.d.ts +19 -25
  57. package/bin/src/collections/domains/product/state.js +10 -13
  58. package/bin/src/collections/domains/sum/state.d.ts +77 -101
  59. package/bin/src/collections/domains/sum/state.js +32 -49
  60. package/bin/src/collections/domains/valueOrErrors/state.d.ts +27 -53
  61. package/bin/src/collections/domains/valueOrErrors/state.js +56 -81
  62. package/bin/src/coroutines/builder.d.ts +49 -135
  63. package/bin/src/coroutines/builder.js +19 -40
  64. package/bin/src/coroutines/state.d.ts +71 -186
  65. package/bin/src/coroutines/state.js +306 -381
  66. package/bin/src/coroutines/template.d.ts +8 -17
  67. package/bin/src/coroutines/template.js +59 -97
  68. package/bin/src/debounced/coroutines/debounce.d.ts +6 -15
  69. package/bin/src/debounced/coroutines/debounce.js +89 -115
  70. package/bin/src/debounced/state.d.ts +19 -26
  71. package/bin/src/debounced/state.js +25 -62
  72. package/bin/src/diagnostics/domains/message-box/state.d.ts +1 -1
  73. package/bin/src/diagnostics/domains/message-box/state.js +3 -3
  74. package/bin/src/foreignMutations/state.d.ts +3 -3
  75. package/bin/src/foreignMutations/state.js +1 -1
  76. package/bin/src/forms/domains/attachments/views/attachments-view.d.ts +4 -4
  77. package/bin/src/forms/domains/attachments/views/attachments-view.js +8 -30
  78. package/bin/src/forms/domains/collection/domains/reference/state.d.ts +22 -29
  79. package/bin/src/forms/domains/collection/domains/reference/state.js +20 -26
  80. package/bin/src/forms/domains/collection/domains/selection/state.d.ts +15 -37
  81. package/bin/src/forms/domains/collection/domains/selection/state.js +1 -1
  82. package/bin/src/forms/domains/dispatched-forms/built-ins/state.d.ts +120 -531
  83. package/bin/src/forms/domains/dispatched-forms/built-ins/state.js +754 -2007
  84. package/bin/src/forms/domains/dispatched-forms/deserializer/coroutines/runner.d.ts +2 -17
  85. package/bin/src/forms/domains/dispatched-forms/deserializer/coroutines/runner.js +44 -123
  86. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/apis/state.d.ts +67 -119
  87. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/apis/state.d.ts.map +1 -1
  88. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/apis/state.js +167 -315
  89. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/apis/state.js.map +1 -1
  90. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/enum/state.d.ts +19 -35
  91. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/enum/state.js +27 -40
  92. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/list/state.d.ts +29 -60
  93. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/list/state.d.ts.map +1 -1
  94. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/list/state.js +41 -76
  95. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/list/state.js.map +1 -1
  96. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/lookup/state.d.ts +56 -121
  97. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/lookup/state.js +59 -102
  98. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/map/state.d.ts +15 -42
  99. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/map/state.js +29 -64
  100. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/nestedRenderer/state.d.ts +29 -70
  101. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/nestedRenderer/state.d.ts.map +1 -1
  102. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/nestedRenderer/state.js +33 -53
  103. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/nestedRenderer/state.js.map +1 -1
  104. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/one/state.d.ts +18 -61
  105. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/one/state.js +33 -88
  106. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/primitive/state.d.ts +10 -20
  107. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/primitive/state.js +13 -21
  108. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/readOnly/state.d.ts +19 -50
  109. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/readOnly/state.js +23 -52
  110. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/record/domains/recordFieldRenderer/state.d.ts +11 -42
  111. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/record/domains/recordFieldRenderer/state.js +18 -59
  112. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/record/state.d.ts +19 -49
  113. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/record/state.js +55 -129
  114. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/stream/state.d.ts +14 -29
  115. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/stream/state.js +27 -43
  116. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/sum/state.d.ts +19 -49
  117. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/sum/state.js +23 -63
  118. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/sumUnitDate/state.d.ts +13 -21
  119. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/sumUnitDate/state.js +22 -39
  120. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/table/domains/tableCellRenderer/state.d.ts +10 -39
  121. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/table/domains/tableCellRenderer/state.js +11 -46
  122. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/table/state.d.ts +39 -79
  123. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/table/state.d.ts.map +1 -1
  124. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/table/state.js +50 -146
  125. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/table/state.js.map +1 -1
  126. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/tuple/state.d.ts +13 -37
  127. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/tuple/state.js +29 -64
  128. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/union/state.d.ts +15 -40
  129. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/union/state.js +33 -78
  130. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/state.d.ts +19 -107
  131. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/state.js +62 -157
  132. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/types/state.d.ts +227 -417
  133. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/types/state.js +569 -977
  134. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/state.d.ts +51 -103
  135. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/state.js +94 -255
  136. package/bin/src/forms/domains/dispatched-forms/deserializer/state.d.ts +106 -360
  137. package/bin/src/forms/domains/dispatched-forms/deserializer/state.js +90 -322
  138. package/bin/src/forms/domains/dispatched-forms/deserializer/template.d.ts +2 -27
  139. package/bin/src/forms/domains/dispatched-forms/deserializer/template.js +2 -3
  140. package/bin/src/forms/domains/dispatched-forms/runner/coroutines/runner.d.ts +4 -27
  141. package/bin/src/forms/domains/dispatched-forms/runner/coroutines/runner.js +82 -136
  142. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/base-64-file/state.d.ts +7 -35
  143. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/base-64-file/state.js +3 -3
  144. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/base-64-file/template.d.ts +4 -28
  145. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/base-64-file/template.js +23 -49
  146. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/boolean/state.d.ts +7 -33
  147. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/boolean/state.js +3 -3
  148. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/boolean/template.d.ts +4 -25
  149. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/boolean/template.js +24 -52
  150. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/date/state.d.ts +19 -56
  151. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/date/state.js +6 -18
  152. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/date/template.d.ts +7 -29
  153. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/date/template.js +30 -64
  154. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum/state.d.ts +15 -43
  155. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum/state.js +6 -9
  156. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum/template.d.ts +8 -41
  157. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum/template.js +60 -153
  158. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum-multiselect/state.d.ts +11 -45
  159. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum-multiselect/state.js +1 -1
  160. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum-multiselect/template.d.ts +8 -42
  161. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum-multiselect/template.js +50 -127
  162. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/injectables/state.d.ts +19 -54
  163. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/injectables/state.js +22 -40
  164. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/list/state.d.ts +39 -92
  165. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/list/state.d.ts.map +1 -1
  166. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/list/state.js +13 -20
  167. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/list/state.js.map +1 -1
  168. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/list/template.d.ts +9 -50
  169. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/list/template.d.ts.map +1 -1
  170. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/list/template.js +152 -394
  171. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/list/template.js.map +1 -1
  172. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/lookup-type/state.d.ts +7 -41
  173. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/lookup-type/state.js +1 -1
  174. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/lookup-type/template.d.ts +4 -45
  175. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/lookup-type/template.js +8 -28
  176. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/map/state.d.ts +26 -103
  177. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/map/state.js +18 -61
  178. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/map/template.d.ts +9 -64
  179. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/map/template.d.ts.map +1 -1
  180. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/map/template.js +90 -314
  181. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/map/template.js.map +1 -1
  182. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/number/state.d.ts +7 -37
  183. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/number/state.js +3 -3
  184. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/number/template.d.ts +4 -29
  185. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/number/template.js +23 -54
  186. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_debouncer.d.ts +13 -50
  187. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_debouncer.js +10 -22
  188. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_initializeOne.d.ts +12 -59
  189. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_initializeOne.js +31 -49
  190. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_initializeStream.d.ts +11 -47
  191. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_initializeStream.js +10 -29
  192. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/builder.d.ts +1065 -3868
  193. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/builder.js +2 -2
  194. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/runner.d.ts +36 -161
  195. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/runner.js +26 -47
  196. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/state.d.ts +80 -245
  197. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/state.js +40 -88
  198. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/template.d.ts +10 -83
  199. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/template.d.ts.map +1 -1
  200. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/template.js +154 -372
  201. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/template.js.map +1 -1
  202. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/readOnly/state.d.ts +20 -65
  203. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/readOnly/state.js +10 -19
  204. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/readOnly/template.d.ts +6 -47
  205. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/readOnly/template.d.ts.map +1 -1
  206. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/readOnly/template.js +21 -68
  207. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/readOnly/template.js.map +1 -1
  208. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/record/state.d.ts +21 -81
  209. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/record/state.js +11 -32
  210. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/record/template.d.ts +11 -59
  211. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/record/template.d.ts.map +1 -1
  212. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/record/template.js +83 -209
  213. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/record/template.js.map +1 -1
  214. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream/state.d.ts +49 -123
  215. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream/state.js +13 -35
  216. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream/template.d.ts +8 -45
  217. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream/template.js +68 -195
  218. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream-multiselect/state.d.ts +51 -121
  219. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream-multiselect/state.js +13 -36
  220. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream-multiselect/template.d.ts +8 -45
  221. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream-multiselect/template.js +106 -246
  222. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/secret/state.d.ts +8 -38
  223. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/secret/state.js +3 -3
  224. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/secret/template.d.ts +4 -29
  225. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/secret/template.js +23 -54
  226. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/state.d.ts +43 -61
  227. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/state.d.ts.map +1 -1
  228. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/state.js +28 -24
  229. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/state.js.map +1 -1
  230. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/string/state.d.ts +8 -38
  231. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/string/state.js +3 -3
  232. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/string/template.d.ts +4 -29
  233. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/string/template.js +26 -58
  234. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/sum/state.d.ts +29 -93
  235. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/sum/state.js +7 -22
  236. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/sum/template.d.ts +7 -55
  237. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/sum/template.d.ts.map +1 -1
  238. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/sum/template.js +59 -175
  239. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/sum/template.js.map +1 -1
  240. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/builder.d.ts +973 -2779
  241. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/builder.js +2 -2
  242. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/infiniteLoader.d.ts +10 -48
  243. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/infiniteLoader.js +24 -57
  244. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/initialiseFiltersAndSorting.d.ts +10 -54
  245. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/initialiseFiltersAndSorting.js +20 -70
  246. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/initialiseTable.d.ts +12 -56
  247. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/initialiseTable.js +27 -61
  248. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/loadWithRetries.d.ts +3 -33
  249. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/loadWithRetries.js +19 -38
  250. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/runner.d.ts +26 -130
  251. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/runner.js +15 -43
  252. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/state.d.ts +217 -440
  253. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/state.d.ts.map +1 -1
  254. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/state.js +137 -301
  255. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/template.d.ts +19 -102
  256. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/template.d.ts.map +1 -1
  257. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/template.js +251 -628
  258. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/template.js.map +1 -1
  259. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/tuple/state.d.ts +18 -75
  260. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/tuple/state.js +8 -20
  261. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/tuple/template.d.ts +6 -51
  262. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/tuple/template.d.ts.map +1 -1
  263. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/tuple/template.js +36 -124
  264. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/tuple/template.js.map +1 -1
  265. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/union/state.d.ts +20 -76
  266. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/union/state.d.ts.map +1 -1
  267. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/union/state.js +8 -21
  268. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/union/state.js.map +1 -1
  269. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/union/template.d.ts +6 -51
  270. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/union/template.d.ts.map +1 -1
  271. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/union/template.js +32 -93
  272. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/union/template.js.map +1 -1
  273. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/unit/state.d.ts +13 -45
  274. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/unit/state.js +9 -12
  275. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/unit/template.d.ts +6 -29
  276. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/unit/template.js +20 -54
  277. package/bin/src/forms/domains/dispatched-forms/runner/domains/deltas/state.d.ts +466 -609
  278. package/bin/src/forms/domains/dispatched-forms/runner/domains/deltas/state.d.ts.map +1 -1
  279. package/bin/src/forms/domains/dispatched-forms/runner/domains/deltas/state.js +560 -676
  280. package/bin/src/forms/domains/dispatched-forms/runner/domains/deltas/state.js.map +1 -1
  281. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/list/state.d.ts +5 -24
  282. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/list/state.d.ts.map +1 -1
  283. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/list/state.js +18 -57
  284. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/list/state.js.map +1 -1
  285. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/lookup/state.d.ts +5 -22
  286. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/lookup/state.js +14 -45
  287. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/map/state.d.ts +5 -23
  288. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/map/state.d.ts.map +1 -1
  289. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/map/state.js +18 -74
  290. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/map/state.js.map +1 -1
  291. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/multiSelection/state.d.ts +5 -21
  292. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/multiSelection/state.js +24 -82
  293. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/nestedDispatcher/state.d.ts +6 -41
  294. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/nestedDispatcher/state.js +8 -37
  295. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/one/state.d.ts +7 -56
  296. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/one/state.d.ts.map +1 -1
  297. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/one/state.js +36 -118
  298. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/one/state.js.map +1 -1
  299. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/primitive/state.d.ts +5 -21
  300. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/primitive/state.js +63 -145
  301. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/readOnly/state.d.ts +5 -24
  302. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/readOnly/state.d.ts.map +1 -1
  303. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/readOnly/state.js +12 -43
  304. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/readOnly/state.js.map +1 -1
  305. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/recordField/state.d.ts +5 -25
  306. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/recordField/state.js +4 -14
  307. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/state.d.ts +6 -48
  308. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/state.d.ts.map +1 -1
  309. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/state.js +25 -80
  310. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/state.js.map +1 -1
  311. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/singleSelectionDispatcher/state.d.ts +5 -21
  312. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/singleSelectionDispatcher/state.js +24 -82
  313. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/sum/state.d.ts +5 -24
  314. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/sum/state.d.ts.map +1 -1
  315. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/sum/state.js +20 -61
  316. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/sum/state.js.map +1 -1
  317. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/table/state.d.ts +7 -54
  318. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/table/state.d.ts.map +1 -1
  319. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/table/state.js +80 -245
  320. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/table/state.js.map +1 -1
  321. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/tupleDispatcher/state.d.ts +5 -24
  322. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/tupleDispatcher/state.d.ts.map +1 -1
  323. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/tupleDispatcher/state.js +13 -60
  324. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/tupleDispatcher/state.js.map +1 -1
  325. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/unionDispatcher/state.d.ts +5 -24
  326. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/unionDispatcher/state.d.ts.map +1 -1
  327. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/unionDispatcher/state.js +33 -63
  328. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/unionDispatcher/state.js.map +1 -1
  329. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/state.d.ts +6 -43
  330. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/state.js +45 -144
  331. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/_init.d.ts +9 -43
  332. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/_init.d.ts.map +1 -1
  333. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/_init.js +95 -200
  334. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/_init.js.map +1 -1
  335. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/_sync.d.ts +10 -52
  336. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/_sync.js +37 -79
  337. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/builder.d.ts +262 -1248
  338. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/builder.js +2 -2
  339. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/runner.d.ts +10 -50
  340. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/runner.js +17 -19
  341. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/state.d.ts +39 -149
  342. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/state.d.ts.map +1 -1
  343. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/state.js +11 -54
  344. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/state.js.map +1 -1
  345. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/template.d.ts +11 -51
  346. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/template.d.ts.map +1 -1
  347. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/template.js +25 -72
  348. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/template.js.map +1 -1
  349. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/_init.d.ts +10 -49
  350. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/_init.d.ts.map +1 -1
  351. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/_init.js +95 -202
  352. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/_init.js.map +1 -1
  353. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/_sync.d.ts +10 -54
  354. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/_sync.js +37 -78
  355. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/builder.d.ts +262 -1248
  356. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/builder.js +2 -2
  357. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/runner.d.ts +10 -50
  358. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/runner.js +17 -19
  359. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/state.d.ts +39 -150
  360. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/state.d.ts.map +1 -1
  361. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/state.js +11 -54
  362. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/state.js.map +1 -1
  363. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/template.d.ts +11 -55
  364. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/template.d.ts.map +1 -1
  365. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/template.js +25 -70
  366. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/template.js.map +1 -1
  367. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/passthrough/coroutines/runner.d.ts +4 -34
  368. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/passthrough/coroutines/runner.d.ts.map +1 -1
  369. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/passthrough/coroutines/runner.js +85 -158
  370. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/passthrough/coroutines/runner.js.map +1 -1
  371. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/passthrough/state.d.ts +11 -60
  372. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/passthrough/state.js +4 -10
  373. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/passthrough/template.d.ts +6 -48
  374. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/passthrough/template.d.ts.map +1 -1
  375. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/passthrough/template.js +27 -71
  376. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/passthrough/template.js.map +1 -1
  377. package/bin/src/forms/domains/dispatched-forms/runner/domains/traversal/state.d.ts +18 -38
  378. package/bin/src/forms/domains/dispatched-forms/runner/domains/traversal/state.js +423 -773
  379. package/bin/src/forms/domains/dispatched-forms/runner/state.d.ts +84 -293
  380. package/bin/src/forms/domains/dispatched-forms/runner/state.d.ts.map +1 -1
  381. package/bin/src/forms/domains/dispatched-forms/runner/state.js +38 -58
  382. package/bin/src/forms/domains/dispatched-forms/runner/state.js.map +1 -1
  383. package/bin/src/forms/domains/dispatched-forms/runner/template.d.ts +4 -28
  384. package/bin/src/forms/domains/dispatched-forms/runner/template.js +25 -78
  385. package/bin/src/forms/domains/launcher/coroutines/runner.d.ts +4 -12
  386. package/bin/src/forms/domains/launcher/coroutines/runner.js +45 -120
  387. package/bin/src/forms/domains/launcher/domains/create/coroutines/runner.d.ts +3 -16
  388. package/bin/src/forms/domains/launcher/domains/create/coroutines/runner.js +101 -240
  389. package/bin/src/forms/domains/launcher/domains/create/state.d.ts +121 -236
  390. package/bin/src/forms/domains/launcher/domains/create/state.js +17 -62
  391. package/bin/src/forms/domains/launcher/domains/create/template.d.ts +6 -20
  392. package/bin/src/forms/domains/launcher/domains/create/template.js +42 -84
  393. package/bin/src/forms/domains/launcher/domains/edit/coroutines/runner.d.ts +3 -16
  394. package/bin/src/forms/domains/launcher/domains/edit/coroutines/runner.js +103 -242
  395. package/bin/src/forms/domains/launcher/domains/edit/state.d.ts +121 -230
  396. package/bin/src/forms/domains/launcher/domains/edit/state.js +17 -62
  397. package/bin/src/forms/domains/launcher/domains/edit/template.d.ts +6 -20
  398. package/bin/src/forms/domains/launcher/domains/edit/template.js +43 -86
  399. package/bin/src/forms/domains/launcher/domains/merger/state.d.ts +4 -4
  400. package/bin/src/forms/domains/launcher/domains/merger/state.js +26 -35
  401. package/bin/src/forms/domains/launcher/domains/passthrough/coroutines/runner.d.ts +5 -20
  402. package/bin/src/forms/domains/launcher/domains/passthrough/coroutines/runner.js +42 -88
  403. package/bin/src/forms/domains/launcher/domains/passthrough/state.d.ts +58 -123
  404. package/bin/src/forms/domains/launcher/domains/passthrough/state.js +19 -44
  405. package/bin/src/forms/domains/launcher/domains/passthrough/template.d.ts +6 -23
  406. package/bin/src/forms/domains/launcher/domains/passthrough/template.js +34 -56
  407. package/bin/src/forms/domains/launcher/state.d.ts +43 -62
  408. package/bin/src/forms/domains/launcher/state.js +6 -6
  409. package/bin/src/forms/domains/launcher/template.d.ts +15 -35
  410. package/bin/src/forms/domains/launcher/template.js +85 -169
  411. package/bin/src/forms/domains/parser/coroutines/runner.d.ts +5 -13
  412. package/bin/src/forms/domains/parser/coroutines/runner.js +25 -87
  413. package/bin/src/forms/domains/parser/domains/built-ins/state.d.ts +71 -135
  414. package/bin/src/forms/domains/parser/domains/built-ins/state.js +533 -944
  415. package/bin/src/forms/domains/parser/domains/deltas/state.d.ts +296 -417
  416. package/bin/src/forms/domains/parser/domains/deltas/state.js +318 -444
  417. package/bin/src/forms/domains/parser/domains/injectables/state.d.ts +20 -29
  418. package/bin/src/forms/domains/parser/domains/injectables/state.js +26 -29
  419. package/bin/src/forms/domains/parser/domains/layout/state.d.ts +49 -78
  420. package/bin/src/forms/domains/parser/domains/layout/state.d.ts.map +1 -1
  421. package/bin/src/forms/domains/parser/domains/layout/state.js +183 -265
  422. package/bin/src/forms/domains/parser/domains/layout/state.js.map +1 -1
  423. package/bin/src/forms/domains/parser/domains/predicates/domains/extractor/state.d.ts +6 -19
  424. package/bin/src/forms/domains/parser/domains/predicates/domains/extractor/state.js +162 -324
  425. package/bin/src/forms/domains/parser/domains/predicates/state.d.ts +314 -502
  426. package/bin/src/forms/domains/parser/domains/predicates/state.d.ts.map +1 -1
  427. package/bin/src/forms/domains/parser/domains/predicates/state.js +981 -1506
  428. package/bin/src/forms/domains/parser/domains/predicates/state.js.map +1 -1
  429. package/bin/src/forms/domains/parser/domains/renderer/state.d.ts +92 -245
  430. package/bin/src/forms/domains/parser/domains/renderer/state.js +480 -1137
  431. package/bin/src/forms/domains/parser/domains/types/state.d.ts +130 -170
  432. package/bin/src/forms/domains/parser/domains/types/state.js +170 -355
  433. package/bin/src/forms/domains/parser/domains/validator/state.d.ts +117 -143
  434. package/bin/src/forms/domains/parser/domains/validator/state.js +280 -417
  435. package/bin/src/forms/domains/parser/state.d.ts +82 -217
  436. package/bin/src/forms/domains/parser/state.js +373 -612
  437. package/bin/src/forms/domains/parser/template.d.ts +5 -13
  438. package/bin/src/forms/domains/parser/template.js +1 -1
  439. package/bin/src/forms/domains/primitives/domains/base-64-file/state.d.ts +11 -19
  440. package/bin/src/forms/domains/primitives/domains/base-64-file/state.js +5 -5
  441. package/bin/src/forms/domains/primitives/domains/base-64-file/template.d.ts +7 -18
  442. package/bin/src/forms/domains/primitives/domains/base-64-file/template.js +19 -38
  443. package/bin/src/forms/domains/primitives/domains/boolean/state.d.ts +11 -19
  444. package/bin/src/forms/domains/primitives/domains/boolean/state.js +5 -5
  445. package/bin/src/forms/domains/primitives/domains/boolean/template.d.ts +8 -24
  446. package/bin/src/forms/domains/primitives/domains/boolean/template.js +19 -38
  447. package/bin/src/forms/domains/primitives/domains/date/state.d.ts +20 -39
  448. package/bin/src/forms/domains/primitives/domains/date/state.js +9 -18
  449. package/bin/src/forms/domains/primitives/domains/date/template.d.ts +7 -18
  450. package/bin/src/forms/domains/primitives/domains/date/template.js +25 -51
  451. package/bin/src/forms/domains/primitives/domains/enum/state.d.ts +15 -31
  452. package/bin/src/forms/domains/primitives/domains/enum/state.js +6 -6
  453. package/bin/src/forms/domains/primitives/domains/enum/template.d.ts +7 -18
  454. package/bin/src/forms/domains/primitives/domains/enum/template.js +48 -117
  455. package/bin/src/forms/domains/primitives/domains/enum-multiselect/state.d.ts +8 -17
  456. package/bin/src/forms/domains/primitives/domains/enum-multiselect/state.js +1 -1
  457. package/bin/src/forms/domains/primitives/domains/enum-multiselect/template.d.ts +7 -18
  458. package/bin/src/forms/domains/primitives/domains/enum-multiselect/template.js +40 -99
  459. package/bin/src/forms/domains/primitives/domains/list/state.d.ts +24 -45
  460. package/bin/src/forms/domains/primitives/domains/list/state.js +14 -14
  461. package/bin/src/forms/domains/primitives/domains/list/template.d.ts +13 -38
  462. package/bin/src/forms/domains/primitives/domains/list/template.js +71 -200
  463. package/bin/src/forms/domains/primitives/domains/map/state.d.ts +29 -68
  464. package/bin/src/forms/domains/primitives/domains/map/state.js +14 -14
  465. package/bin/src/forms/domains/primitives/domains/map/template.d.ts +25 -65
  466. package/bin/src/forms/domains/primitives/domains/map/template.js +103 -294
  467. package/bin/src/forms/domains/primitives/domains/number/state.d.ts +11 -19
  468. package/bin/src/forms/domains/primitives/domains/number/state.js +5 -5
  469. package/bin/src/forms/domains/primitives/domains/number/template.d.ts +8 -24
  470. package/bin/src/forms/domains/primitives/domains/number/template.js +19 -38
  471. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream/state.d.ts +42 -89
  472. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream/state.js +16 -33
  473. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream/template.d.ts +8 -22
  474. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream/template.js +62 -171
  475. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream-multiselect/state.d.ts +9 -18
  476. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream-multiselect/state.js +1 -1
  477. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream-multiselect/template.d.ts +7 -18
  478. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream-multiselect/template.js +69 -182
  479. package/bin/src/forms/domains/primitives/domains/secret/state.d.ts +11 -19
  480. package/bin/src/forms/domains/primitives/domains/secret/state.js +5 -5
  481. package/bin/src/forms/domains/primitives/domains/secret/template.d.ts +7 -18
  482. package/bin/src/forms/domains/primitives/domains/secret/template.js +19 -38
  483. package/bin/src/forms/domains/primitives/domains/string/state.d.ts +13 -21
  484. package/bin/src/forms/domains/primitives/domains/string/state.js +5 -5
  485. package/bin/src/forms/domains/primitives/domains/string/template.d.ts +7 -18
  486. package/bin/src/forms/domains/primitives/domains/string/template.js +22 -42
  487. package/bin/src/forms/domains/primitives/domains/sum/state.d.ts +22 -62
  488. package/bin/src/forms/domains/primitives/domains/sum/state.js +10 -10
  489. package/bin/src/forms/domains/primitives/domains/sum/template.d.ts +16 -48
  490. package/bin/src/forms/domains/primitives/domains/sum/template.js +50 -141
  491. package/bin/src/forms/domains/primitives/domains/tuple/state.d.ts +23 -48
  492. package/bin/src/forms/domains/primitives/domains/tuple/state.js +9 -9
  493. package/bin/src/forms/domains/primitives/domains/tuple/template.d.ts +18 -46
  494. package/bin/src/forms/domains/primitives/domains/tuple/template.js +33 -100
  495. package/bin/src/forms/domains/primitives/domains/unit/state.d.ts +10 -17
  496. package/bin/src/forms/domains/primitives/domains/unit/state.js +8 -8
  497. package/bin/src/forms/domains/primitives/domains/unit/template.d.ts +4 -9
  498. package/bin/src/forms/domains/primitives/domains/unit/template.js +9 -22
  499. package/bin/src/forms/domains/singleton/domains/form-label/state.d.ts +4 -4
  500. package/bin/src/forms/domains/singleton/domains/form-label/state.js +1 -1
  501. package/bin/src/forms/domains/singleton/state.d.ts +43 -144
  502. package/bin/src/forms/domains/singleton/state.js +10 -12
  503. package/bin/src/forms/domains/singleton/template.d.ts +88 -177
  504. package/bin/src/forms/domains/singleton/template.js +113 -288
  505. package/bin/src/fun/domains/curry/state.d.ts +2 -4
  506. package/bin/src/fun/domains/curry/state.js +1 -1
  507. package/bin/src/fun/domains/id/state.d.ts +1 -1
  508. package/bin/src/fun/domains/id/state.js +1 -1
  509. package/bin/src/fun/domains/predicate/domains/bool-expr.d.ts +41 -57
  510. package/bin/src/fun/domains/predicate/domains/bool-expr.js +67 -76
  511. package/bin/src/fun/domains/predicate/state.d.ts +7 -9
  512. package/bin/src/fun/domains/predicate/state.js +10 -14
  513. package/bin/src/fun/domains/simpleCallback/state.d.ts +1 -1
  514. package/bin/src/fun/domains/simpleCallback/state.js +1 -1
  515. package/bin/src/fun/domains/uncurry/state.d.ts +2 -4
  516. package/bin/src/fun/domains/uncurry/state.js +1 -1
  517. package/bin/src/fun/domains/unit/state.d.ts +1 -1
  518. package/bin/src/fun/domains/unit/state.js +1 -1
  519. package/bin/src/fun/domains/updater/domains/caseUpdater/state.d.ts +7 -22
  520. package/bin/src/fun/domains/updater/domains/caseUpdater/state.js +10 -18
  521. package/bin/src/fun/domains/updater/domains/mapUpdater/state.d.ts +13 -24
  522. package/bin/src/fun/domains/updater/domains/mapUpdater/state.js +10 -40
  523. package/bin/src/fun/domains/updater/domains/maybeUpdater/state.d.ts +13 -19
  524. package/bin/src/fun/domains/updater/domains/maybeUpdater/state.js +9 -20
  525. package/bin/src/fun/domains/updater/domains/orderedMapUpdater/state.d.ts +13 -24
  526. package/bin/src/fun/domains/updater/domains/orderedMapUpdater/state.js +11 -47
  527. package/bin/src/fun/domains/updater/domains/orderedSetUpdater/state.d.ts +8 -20
  528. package/bin/src/fun/domains/updater/domains/orderedSetUpdater/state.js +5 -17
  529. package/bin/src/fun/domains/updater/domains/replaceWith/state.d.ts +1 -1
  530. package/bin/src/fun/domains/updater/domains/replaceWith/state.js +1 -1
  531. package/bin/src/fun/domains/updater/domains/simpleUpdater/domains/baseSimpleUpdater/state.d.ts +4 -13
  532. package/bin/src/fun/domains/updater/domains/simpleUpdater/domains/baseSimpleUpdater/state.js +4 -6
  533. package/bin/src/fun/domains/updater/domains/simpleUpdater/state.d.ts +22 -60
  534. package/bin/src/fun/domains/updater/domains/simpleUpdater/state.js +31 -42
  535. package/bin/src/fun/domains/updater/state.d.ts +4 -4
  536. package/bin/src/fun/domains/updater/state.js +10 -12
  537. package/bin/src/fun/state.d.ts +3 -3
  538. package/bin/src/fun/state.js +7 -9
  539. package/bin/src/infinite-data-stream/coroutines/builder.d.ts +27 -209
  540. package/bin/src/infinite-data-stream/coroutines/builder.js +1 -1
  541. package/bin/src/infinite-data-stream/coroutines/infiniteLoader.d.ts +5 -21
  542. package/bin/src/infinite-data-stream/coroutines/infiniteLoader.js +20 -47
  543. package/bin/src/infinite-data-stream/coroutines/runner.d.ts +3 -11
  544. package/bin/src/infinite-data-stream/coroutines/runner.js +7 -7
  545. package/bin/src/infinite-data-stream/state.d.ts +51 -84
  546. package/bin/src/infinite-data-stream/state.js +61 -125
  547. package/bin/src/infinite-data-stream/template.d.ts +3 -10
  548. package/bin/src/infinite-data-stream/template.js +2 -3
  549. package/bin/src/math/domains/DOMRect/state.d.ts +4 -4
  550. package/bin/src/math/domains/DOMRect/state.js +8 -10
  551. package/bin/src/math/domains/number/state.d.ts +5 -5
  552. package/bin/src/math/domains/number/state.js +5 -5
  553. package/bin/src/math/domains/rect/state.d.ts +8 -8
  554. package/bin/src/math/domains/rect/state.js +15 -16
  555. package/bin/src/math/domains/rgba/state.d.ts +17 -17
  556. package/bin/src/math/domains/rgba/state.js +81 -77
  557. package/bin/src/math/domains/size2/state.d.ts +8 -8
  558. package/bin/src/math/domains/size2/state.js +6 -6
  559. package/bin/src/math/domains/vector2/state.d.ts +10 -10
  560. package/bin/src/math/domains/vector2/state.js +8 -8
  561. package/bin/src/queue/state.d.ts +8 -24
  562. package/bin/src/queue/state.d.ts.map +1 -1
  563. package/bin/src/queue/state.js +17 -24
  564. package/bin/src/queue/state.js.map +1 -1
  565. package/bin/src/state/domains/repository/state.d.ts +9 -15
  566. package/bin/src/state/domains/repository/state.js +1 -1
  567. package/bin/src/template/state.d.ts +45 -153
  568. package/bin/src/template/state.js +115 -163
  569. package/bin/src/validation/state.d.ts +9 -23
  570. package/bin/src/validation/state.js +45 -38
  571. package/bin/src/value/domains/mutable-value/state.d.ts +3 -3
  572. package/bin/src/value/domains/mutable-value/state.js +2 -3
  573. package/bin/src/value/state.d.ts +9 -9
  574. package/bin/src/value/state.js +8 -11
  575. package/bin/src/value-infinite-data-stream/coroutines/builder.d.ts +25 -207
  576. package/bin/src/value-infinite-data-stream/coroutines/builder.js +1 -1
  577. package/bin/src/value-infinite-data-stream/coroutines/infiniteLoader.d.ts +2 -4
  578. package/bin/src/value-infinite-data-stream/coroutines/infiniteLoader.js +20 -55
  579. package/bin/src/value-infinite-data-stream/coroutines/runner.d.ts +2 -8
  580. package/bin/src/value-infinite-data-stream/coroutines/runner.js +4 -6
  581. package/bin/src/value-infinite-data-stream/state.d.ts +68 -134
  582. package/bin/src/value-infinite-data-stream/state.js +77 -199
  583. package/bin/src/value-infinite-data-stream/template.d.ts +2 -7
  584. package/bin/src/value-infinite-data-stream/template.js +2 -4
  585. package/bin/src/visibility/state.d.ts +2 -5
  586. package/bin/src/visibility/state.js +1 -1
  587. package/package.json +1 -1
  588. package/src/forms/domains/dispatched-forms/runner/domains/traversal/state.ts +99 -74
@@ -1,799 +1,449 @@
1
- import {
2
- Option,
3
- ValueOrErrors,
4
- PredicateValue,
5
- Expr,
6
- Updater,
7
- FormLayout,
8
- unit,
9
- TableLayout,
10
- } from "ballerina-core";
1
+ import { Option, ValueOrErrors, PredicateValue, Expr, Updater, FormLayout, unit, TableLayout, } from "ballerina-core";
11
2
  import { List, Map } from "immutable";
12
3
  import { LookupRenderer } from "../../../deserializer/domains/specification/domains/forms/domains/renderer/domains/lookup/state";
13
4
  export const RendererTraversal = {
14
- Operations: {
15
- Run: (renderer, traversalContext) => {
16
- const rec = RendererTraversal.Operations.Run;
17
- const mapEvalContext = (f) =>
18
- Updater(Option.Updaters.some((v) => (ctx) => v(f(ctx))));
19
- const traverseNode = traversalContext.traverseSingleType(renderer.type);
20
- if (
21
- renderer.type.kind == "primitive" ||
22
- renderer.type.kind == "singleSelection" ||
23
- renderer.type.kind == "multiSelection"
24
- ) {
25
- return ValueOrErrors.Default.return(traverseNode);
26
- }
27
- if (
28
- renderer.kind == "lookupType-lookupRenderer" ||
29
- renderer.kind == "lookupType-inlinedRenderer" ||
30
- renderer.kind == "inlinedType-lookupRenderer"
31
- ) {
32
- if (
33
- renderer.kind == "lookupType-lookupRenderer" ||
34
- renderer.kind == "lookupType-inlinedRenderer"
35
- ) {
36
- return LookupRenderer.Operations.ResolveRenderer(
37
- renderer,
38
- traversalContext.forms,
39
- ).Then((resolvedRenderer) =>
40
- rec(resolvedRenderer, traversalContext).Then((valueTraversal) =>
41
- ValueOrErrors.Default.return(
42
- // reassign local if it's a lookup renderer
43
- renderer.kind == "lookupType-lookupRenderer"
44
- ? mapEvalContext((ctx) =>
45
- Object.assign(Object.assign({}, ctx), {
46
- local: ctx.traversalIterator,
47
- }),
48
- )(valueTraversal)
49
- : valueTraversal,
50
- ).Then((resolvedTraversal) => {
51
- if (traverseNode.kind == "l" && resolvedTraversal.kind == "l") {
52
- return ValueOrErrors.Default.return(Option.Default.none());
53
- }
54
- if (traverseNode.kind == "l") {
55
- return ValueOrErrors.Default.return(resolvedTraversal);
56
- }
57
- if (resolvedTraversal.kind == "l") {
58
- return ValueOrErrors.Default.return(
59
- Option.Default.some((evalContext) =>
60
- traverseNode
61
- .value(evalContext)
62
- .Then((nodeResult) =>
63
- ValueOrErrors.Default.return(nodeResult),
64
- ),
65
- ),
66
- );
67
- }
68
- return ValueOrErrors.Default.return(
69
- Option.Default.some((evalContext) => {
70
- return resolvedTraversal
71
- .value(evalContext)
72
- .Then((resolvedTraversal) =>
73
- traverseNode
74
- .value(evalContext)
75
- .Then((nodeResult) =>
76
- ValueOrErrors.Default.return(
77
- traversalContext.joinRes([
5
+ Operations: {
6
+ Run: (renderer, traversalContext) => {
7
+ const rec = (RendererTraversal.Operations.Run);
8
+ const mapEvalContext = (f) => Updater(Option.Updaters.some((v) => (ctx) => v(f(ctx))));
9
+ const traverseNode = traversalContext.traverseSingleType(renderer.type);
10
+ if (renderer.type.kind == "primitive" ||
11
+ renderer.type.kind == "singleSelection" ||
12
+ renderer.type.kind == "multiSelection") {
13
+ return ValueOrErrors.Default.return(traverseNode);
14
+ }
15
+ if (renderer.kind == "lookupType-lookupRenderer" ||
16
+ renderer.kind == "lookupType-inlinedRenderer" ||
17
+ renderer.kind == "inlinedType-lookupRenderer") {
18
+ if (renderer.kind == "lookupType-lookupRenderer" ||
19
+ renderer.kind == "lookupType-inlinedRenderer") {
20
+ return LookupRenderer.Operations.ResolveRenderer(renderer, traversalContext.forms).Then((resolvedRenderer) => rec(resolvedRenderer, traversalContext).Then((valueTraversal) => ValueOrErrors.Default.return(
21
+ // reassign local if it's a lookup renderer
22
+ renderer.kind == "lookupType-lookupRenderer"
23
+ ? mapEvalContext((ctx) => (Object.assign(Object.assign({}, ctx), { local: ctx.traversalIterator })))(valueTraversal)
24
+ : valueTraversal).Then((resolvedTraversal) => {
25
+ if (traverseNode.kind == "l" &&
26
+ resolvedTraversal.kind == "l") {
27
+ return ValueOrErrors.Default.return(Option.Default.none());
28
+ }
29
+ if (traverseNode.kind == "l") {
30
+ return ValueOrErrors.Default.return(resolvedTraversal);
31
+ }
32
+ if (resolvedTraversal.kind == "l") {
33
+ return ValueOrErrors.Default.return(Option.Default.some((evalContext) => traverseNode
34
+ .value(evalContext)
35
+ .Then((nodeResult) => ValueOrErrors.Default.return(nodeResult))));
36
+ }
37
+ return ValueOrErrors.Default.return(Option.Default.some((evalContext) => {
38
+ return resolvedTraversal
39
+ .value(evalContext)
40
+ .Then((resolvedTraversal) => traverseNode
41
+ .value(evalContext)
42
+ .Then((nodeResult) => ValueOrErrors.Default.return(traversalContext.joinRes([
78
43
  nodeResult,
79
44
  resolvedTraversal,
80
- ]),
81
- ),
82
- ),
83
- );
84
- }),
85
- );
86
- }),
87
- ),
88
- );
89
- }
90
- return LookupRenderer.Operations.ResolveRenderer(
91
- renderer,
92
- traversalContext.forms,
93
- ).Then((resolvedRenderer) =>
94
- rec(resolvedRenderer, traversalContext).Then((valueTraversal) =>
95
- ValueOrErrors.Default.return(valueTraversal),
96
- ),
97
- );
98
- }
99
- if (
100
- renderer.type.kind == "readOnly" &&
101
- renderer.kind == "readOnlyRenderer"
102
- ) {
103
- return rec(renderer.childRenderer.renderer, traversalContext).Then(
104
- (valueTraversal) => {
105
- if (valueTraversal.kind == "l" && traverseNode.kind == "l") {
106
- return ValueOrErrors.Default.return(Option.Default.none());
107
- }
108
- return ValueOrErrors.Default.return(
109
- Option.Default.some((evalContext) => {
110
- const iterator = evalContext.traversalIterator;
111
- if (!PredicateValue.Operations.IsReadOnly(iterator)) {
112
- return ValueOrErrors.Default.throwOne(
113
- `Error: traversal iterator is not read only, got ${JSON.stringify(iterator, undefined, 2)}`,
114
- );
45
+ ]))));
46
+ }));
47
+ })));
115
48
  }
116
- return (
117
- valueTraversal.kind == "r"
118
- ? valueTraversal.value(
119
- Object.assign(Object.assign({}, evalContext), {
120
- traversalIterator: iterator.ReadOnly,
121
- }),
122
- )
123
- : ValueOrErrors.Default.return(
124
- traversalContext.zeroRes(unit),
125
- )
126
- ).Then((valueResult) =>
127
- traverseNode.kind == "r"
128
- ? traverseNode
129
- .value(evalContext)
130
- .Then((nodeResult) =>
131
- ValueOrErrors.Default.return(
132
- traversalContext.joinRes([valueResult, nodeResult]),
133
- ),
134
- )
135
- : ValueOrErrors.Default.return(valueResult),
136
- );
137
- }),
138
- );
139
- },
140
- );
141
- }
142
- if (renderer.type.kind == "record" && renderer.kind == "recordRenderer") {
143
- return ValueOrErrors.Operations.All(
144
- List(
145
- renderer.fields
146
- .map((fieldRenderer, fieldName) =>
147
- rec(fieldRenderer.renderer, traversalContext).Then(
148
- (fieldTraversal) => {
49
+ return LookupRenderer.Operations.ResolveRenderer(renderer, traversalContext.forms).Then((resolvedRenderer) => rec(resolvedRenderer, traversalContext).Then((valueTraversal) => ValueOrErrors.Default.return(valueTraversal)));
50
+ }
51
+ if (renderer.type.kind == "readOnly" &&
52
+ renderer.kind == "readOnlyRenderer") {
53
+ return rec(renderer.childRenderer.renderer, traversalContext).Then((valueTraversal) => {
54
+ if (valueTraversal.kind == "l" && traverseNode.kind == "l") {
55
+ return ValueOrErrors.Default.return(Option.Default.none());
56
+ }
57
+ return ValueOrErrors.Default.return(Option.Default.some((evalContext) => {
58
+ const iterator = evalContext.traversalIterator;
59
+ if (!PredicateValue.Operations.IsReadOnly(iterator)) {
60
+ return ValueOrErrors.Default.throwOne(`Error: traversal iterator is not read only, got ${JSON.stringify(iterator, undefined, 2)}`);
61
+ }
62
+ return (valueTraversal.kind == "r"
63
+ ? valueTraversal.value(Object.assign(Object.assign({}, evalContext), { traversalIterator: iterator.ReadOnly }))
64
+ : ValueOrErrors.Default.return(traversalContext.zeroRes(unit))).Then((valueResult) => traverseNode.kind == "r"
65
+ ? traverseNode
66
+ .value(evalContext)
67
+ .Then((nodeResult) => ValueOrErrors.Default.return(traversalContext.joinRes([valueResult, nodeResult])))
68
+ : ValueOrErrors.Default.return(valueResult));
69
+ }));
70
+ });
71
+ }
72
+ if (renderer.type.kind == "record" && renderer.kind == "recordRenderer") {
73
+ return ValueOrErrors.Operations.All(List(renderer.fields
74
+ .map((fieldRenderer, fieldName) => rec(fieldRenderer.renderer, traversalContext).Then((fieldTraversal) => {
149
75
  return ValueOrErrors.Default.return({
150
- fieldName: fieldName,
151
- visibility: fieldRenderer.visible,
152
- fieldTraversal: fieldTraversal,
76
+ fieldName: fieldName,
77
+ visibility: fieldRenderer.visible,
78
+ fieldTraversal: fieldTraversal,
153
79
  });
154
- },
155
- ),
156
- )
157
- .valueSeq(),
158
- ),
159
- ).Then((fieldTraversals) => {
160
- if (
161
- fieldTraversals.every((f) => f.fieldTraversal.kind == "l") &&
162
- traverseNode.kind == "l"
163
- ) {
164
- return ValueOrErrors.Default.return(Option.Default.none());
165
- }
166
- return ValueOrErrors.Default.return(
167
- Option.Default.some((evalContext) => {
168
- if (
169
- !PredicateValue.Operations.IsRecord(
170
- evalContext.traversalIterator,
171
- )
172
- )
173
- return ValueOrErrors.Default.throwOne(
174
- `Error: traversal iterator is not a record, got ${JSON.stringify(evalContext.traversalIterator, undefined, 2)}`,
175
- );
176
- const visibleFieldsRes =
177
- FormLayout.Operations.ComputeVisibleFieldsForRecord(
178
- Map([
179
- ["global", evalContext.global],
180
- ["local", evalContext.local],
181
- ["root", evalContext.root],
182
- ]),
183
- renderer.tabs,
184
- );
185
- // TODO later, make this monadic
186
- if (visibleFieldsRes.kind == "errors") {
187
- return visibleFieldsRes;
188
- }
189
- const visibleFields = visibleFieldsRes.value;
190
- const traversalIteratorFields =
191
- evalContext.traversalIterator.fields;
192
- return ValueOrErrors.Operations.All(
193
- fieldTraversals.flatMap((f) => {
194
- // should be a map and instead of flatmap and [] a VoE.default.return([]) then an All on this and then a flatmap, everything is returned in a VoE
195
- if (
196
- f.fieldTraversal.kind == "l" ||
197
- !visibleFields.includes(f.fieldName)
198
- )
199
- return [];
200
- if (f.visibility != undefined) {
201
- const visible = Expr.Operations.Evaluate(
202
- Map([
203
- ["global", evalContext.global],
204
- ["local", evalContext.local],
205
- ["root", evalContext.root],
206
- ]),
207
- )(f.visibility);
208
- if (visible.kind == "value" && !visible.value) {
209
- return [];
80
+ }))
81
+ .valueSeq())).Then((fieldTraversals) => {
82
+ if (fieldTraversals.every((f) => f.fieldTraversal.kind == "l") &&
83
+ traverseNode.kind == "l") {
84
+ return ValueOrErrors.Default.return(Option.Default.none());
210
85
  }
211
- }
212
- return [
213
- f.fieldTraversal.value(
214
- Object.assign(Object.assign({}, evalContext), {
215
- traversalIterator: traversalIteratorFields.get(
216
- f.fieldName,
217
- ),
218
- }),
219
- ),
220
- ];
221
- }),
222
- ).Then((fieldResults) => {
223
- return traverseNode.kind == "r"
224
- ? traverseNode
225
- .value(evalContext)
226
- .Then((nodeResult) =>
227
- ValueOrErrors.Default.return(
228
- fieldResults.reduce(
229
- (acc, res) => traversalContext.joinRes([acc, res]),
230
- nodeResult,
231
- ),
232
- ),
233
- )
234
- : ValueOrErrors.Default.return(
235
- fieldResults.reduce(
236
- (acc, res) => traversalContext.joinRes([acc, res]),
237
- traversalContext.zeroRes(unit),
238
- ),
239
- );
240
- });
241
- }),
242
- );
243
- });
244
- }
245
- if (
246
- renderer.type.kind == "sum" &&
247
- (renderer.kind == "sumRenderer" ||
248
- renderer.kind == "sumUnitDateRenderer")
249
- ) {
250
- // this will be removed when sums become proper partials
251
- if (renderer.kind == "sumUnitDateRenderer") {
252
- if (traverseNode.kind == "l") {
253
- return ValueOrErrors.Default.return(Option.Default.none());
254
- }
255
- return ValueOrErrors.Default.return(
256
- Option.Default.some((evalContext) =>
257
- traverseNode.value(evalContext),
258
- ),
259
- );
260
- }
261
- if (renderer.kind == "sumRenderer") {
262
- return rec(renderer.leftRenderer.renderer, traversalContext).Then(
263
- (leftTraversal) =>
264
- rec(renderer.rightRenderer.renderer, traversalContext).Then(
265
- (rightTraversal) => {
266
- if (
267
- leftTraversal.kind == "l" &&
268
- rightTraversal.kind == "l" &&
269
- traverseNode.kind == "l"
270
- ) {
271
- return ValueOrErrors.Default.return(Option.Default.none());
272
- }
273
- return ValueOrErrors.Default.return(
274
- Option.Default.some((evalContext) => {
275
- const iterator = evalContext.traversalIterator;
276
- if (!PredicateValue.Operations.IsSum(iterator)) {
277
- return ValueOrErrors.Default.throwOne(
278
- `Error: traversal iterator is not a sum, got ${evalContext.traversalIterator}`,
279
- );
280
- }
281
- const isRight = iterator.value.kind == "r";
282
- if (isRight && rightTraversal.kind == "r") {
283
- if (traverseNode.kind == "r") {
284
- return traverseNode
285
- .value(evalContext)
286
- .Then((nodeResult) => {
287
- return rightTraversal
288
- .value(
289
- Object.assign(
290
- Object.assign({}, evalContext),
291
- { traversalIterator: iterator.value.value },
292
- ),
293
- )
294
- .Then((rightRes) => {
295
- return ValueOrErrors.Default.return(
296
- traversalContext.joinRes([
297
- nodeResult,
298
- rightRes,
299
- ]),
300
- );
301
- });
302
- });
86
+ return ValueOrErrors.Default.return(Option.Default.some((evalContext) => {
87
+ if (!PredicateValue.Operations.IsRecord(evalContext.traversalIterator))
88
+ return ValueOrErrors.Default.throwOne(`Error: traversal iterator is not a record, got ${JSON.stringify(evalContext.traversalIterator, undefined, 2)}`);
89
+ const visibleFieldsRes = FormLayout.Operations.ComputeVisibleFieldsForRecord(Map([
90
+ ["global", evalContext.global],
91
+ ["local", evalContext.local],
92
+ ["root", evalContext.root],
93
+ ]), renderer.tabs);
94
+ // TODO later, make this monadic
95
+ if (visibleFieldsRes.kind == "errors") {
96
+ return visibleFieldsRes;
97
+ }
98
+ const visibleFields = visibleFieldsRes.value;
99
+ const traversalIteratorFields = evalContext.traversalIterator.fields;
100
+ return ValueOrErrors.Operations.All(fieldTraversals.flatMap((f) => {
101
+ // should be a map and instead of flatmap and [] a VoE.default.return([]) then an All on this and then a flatmap, everything is returned in a VoE
102
+ if (f.fieldTraversal.kind == "l" ||
103
+ !visibleFields.includes(f.fieldName))
104
+ return [];
105
+ if (f.visibility != undefined) {
106
+ const visible = Expr.Operations.Evaluate(Map([
107
+ ["global", evalContext.global],
108
+ ["local", evalContext.local],
109
+ ["root", evalContext.root],
110
+ ]))(f.visibility);
111
+ if (visible.kind == "value" && !visible.value) {
112
+ return [];
113
+ }
114
+ }
115
+ return [
116
+ f.fieldTraversal.value(Object.assign(Object.assign({}, evalContext), { traversalIterator: traversalIteratorFields.get(f.fieldName) })),
117
+ ];
118
+ })).Then((fieldResults) => {
119
+ return traverseNode.kind == "r"
120
+ ? traverseNode
121
+ .value(evalContext)
122
+ .Then((nodeResult) => ValueOrErrors.Default.return(fieldResults.reduce((acc, res) => traversalContext.joinRes([acc, res]), nodeResult)))
123
+ : ValueOrErrors.Default.return(fieldResults.reduce((acc, res) => traversalContext.joinRes([acc, res]), traversalContext.zeroRes(unit)));
124
+ });
125
+ }));
126
+ });
127
+ }
128
+ if (renderer.type.kind == "sum" &&
129
+ (renderer.kind == "sumRenderer" ||
130
+ renderer.kind == "sumUnitDateRenderer")) {
131
+ // this will be removed when sums become proper partials
132
+ if (renderer.kind == "sumUnitDateRenderer") {
133
+ if (traverseNode.kind == "l") {
134
+ return ValueOrErrors.Default.return(Option.Default.none());
135
+ }
136
+ return ValueOrErrors.Default.return(Option.Default.some((evalContext) => traverseNode.value(evalContext)));
137
+ }
138
+ if (renderer.kind == "sumRenderer") {
139
+ return rec(renderer.leftRenderer.renderer, traversalContext).Then((leftTraversal) => rec(renderer.rightRenderer.renderer, traversalContext).Then((rightTraversal) => {
140
+ if (leftTraversal.kind == "l" &&
141
+ rightTraversal.kind == "l" &&
142
+ traverseNode.kind == "l") {
143
+ return ValueOrErrors.Default.return(Option.Default.none());
303
144
  }
304
- return rightTraversal
305
- .value(
306
- Object.assign(Object.assign({}, evalContext), {
307
- traversalIterator: iterator.value.value,
308
- }),
309
- )
310
- .Then((rightRes) => {
311
- return ValueOrErrors.Default.return(rightRes);
312
- });
313
- }
314
- if (!isRight && leftTraversal.kind == "r") {
315
- if (traverseNode.kind == "r") {
316
- return traverseNode
317
- .value(evalContext)
318
- .Then((nodeResult) => {
319
- return leftTraversal
320
- .value(
321
- Object.assign(
322
- Object.assign({}, evalContext),
323
- { traversalIterator: iterator.value.value },
324
- ),
325
- )
326
- .Then((leftRes) => {
327
- return ValueOrErrors.Default.return(
328
- traversalContext.joinRes([
329
- nodeResult,
330
- leftRes,
331
- ]),
332
- );
145
+ return ValueOrErrors.Default.return(Option.Default.some((evalContext) => {
146
+ const iterator = evalContext.traversalIterator;
147
+ if (!PredicateValue.Operations.IsSum(iterator)) {
148
+ return ValueOrErrors.Default.throwOne(`Error: traversal iterator is not a sum, got ${evalContext.traversalIterator}`);
149
+ }
150
+ const isRight = iterator.value.kind == "r";
151
+ if (isRight && rightTraversal.kind == "r") {
152
+ if (traverseNode.kind == "r") {
153
+ return traverseNode
154
+ .value(evalContext)
155
+ .Then((nodeResult) => {
156
+ return rightTraversal
157
+ .value(Object.assign(Object.assign({}, evalContext), { traversalIterator: iterator.value.value }))
158
+ .Then((rightRes) => {
159
+ return ValueOrErrors.Default.return(traversalContext.joinRes([
160
+ nodeResult,
161
+ rightRes,
162
+ ]));
163
+ });
164
+ });
165
+ }
166
+ return rightTraversal
167
+ .value(Object.assign(Object.assign({}, evalContext), { traversalIterator: iterator.value.value }))
168
+ .Then((rightRes) => {
169
+ return ValueOrErrors.Default.return(rightRes);
333
170
  });
334
- });
171
+ }
172
+ if (!isRight && leftTraversal.kind == "r") {
173
+ if (traverseNode.kind == "r") {
174
+ return traverseNode
175
+ .value(evalContext)
176
+ .Then((nodeResult) => {
177
+ return leftTraversal
178
+ .value(Object.assign(Object.assign({}, evalContext), { traversalIterator: iterator.value.value }))
179
+ .Then((leftRes) => {
180
+ return ValueOrErrors.Default.return(traversalContext.joinRes([
181
+ nodeResult,
182
+ leftRes,
183
+ ]));
184
+ });
185
+ });
186
+ }
187
+ return leftTraversal
188
+ .value(Object.assign(Object.assign({}, evalContext), { traversalIterator: iterator.value.value }))
189
+ .Then((leftRes) => {
190
+ return ValueOrErrors.Default.return(leftRes);
191
+ });
192
+ }
193
+ return ValueOrErrors.Default.return(traversalContext.zeroRes(unit));
194
+ }));
195
+ }));
196
+ }
197
+ }
198
+ if (renderer.type.kind == "tuple" && renderer.kind == "tupleRenderer") {
199
+ return ValueOrErrors.Operations.All(List(renderer.itemRenderers.map((itemRenderer, index) => {
200
+ return rec(itemRenderer.renderer, traversalContext).Then((itemTraversal) => {
201
+ return ValueOrErrors.Default.return({
202
+ index: index,
203
+ itemTraversal: itemTraversal,
204
+ });
205
+ });
206
+ }))).Then((itemTraversals) => {
207
+ if (itemTraversals.every((i) => i.itemTraversal.kind == "l") &&
208
+ traverseNode.kind == "l") {
209
+ return ValueOrErrors.Default.return(Option.Default.none());
210
+ }
211
+ return ValueOrErrors.Default.return(Option.Default.some((evalContext) => {
212
+ const iterator = evalContext.traversalIterator;
213
+ if (!PredicateValue.Operations.IsTuple(iterator)) {
214
+ return ValueOrErrors.Default.throwOne(`Error: traversal iterator is not a tuple, got ${evalContext.traversalIterator}`);
335
215
  }
336
- return leftTraversal
337
- .value(
338
- Object.assign(Object.assign({}, evalContext), {
339
- traversalIterator: iterator.value.value,
340
- }),
341
- )
342
- .Then((leftRes) => {
343
- return ValueOrErrors.Default.return(leftRes);
344
- });
345
- }
346
- return ValueOrErrors.Default.return(
347
- traversalContext.zeroRes(unit),
348
- );
349
- }),
350
- );
351
- },
352
- ),
353
- );
354
- }
355
- }
356
- if (renderer.type.kind == "tuple" && renderer.kind == "tupleRenderer") {
357
- return ValueOrErrors.Operations.All(
358
- List(
359
- renderer.itemRenderers.map((itemRenderer, index) => {
360
- return rec(itemRenderer.renderer, traversalContext).Then(
361
- (itemTraversal) => {
362
- return ValueOrErrors.Default.return({
363
- index: index,
364
- itemTraversal: itemTraversal,
365
- });
366
- },
367
- );
368
- }),
369
- ),
370
- ).Then((itemTraversals) => {
371
- if (
372
- itemTraversals.every((i) => i.itemTraversal.kind == "l") &&
373
- traverseNode.kind == "l"
374
- ) {
375
- return ValueOrErrors.Default.return(Option.Default.none());
376
- }
377
- return ValueOrErrors.Default.return(
378
- Option.Default.some((evalContext) => {
379
- const iterator = evalContext.traversalIterator;
380
- if (!PredicateValue.Operations.IsTuple(iterator)) {
381
- return ValueOrErrors.Default.throwOne(
382
- `Error: traversal iterator is not a tuple, got ${evalContext.traversalIterator}`,
383
- );
384
- }
385
- return ValueOrErrors.Operations.All(
386
- itemTraversals.flatMap((i) =>
387
- i.itemTraversal.kind == "r"
388
- ? [
389
- i.itemTraversal.value(
390
- Object.assign(Object.assign({}, evalContext), {
391
- traversalIterator: iterator.values.get(i.index),
392
- }),
393
- ),
394
- ]
395
- : [],
396
- ),
397
- ).Then((itemResults) => {
398
- return traverseNode.kind == "r"
399
- ? traverseNode
400
- .value(evalContext)
401
- .Then((nodeResult) =>
402
- ValueOrErrors.Default.return(
403
- itemResults.reduce(
404
- (acc, res) => traversalContext.joinRes([acc, res]),
405
- nodeResult,
406
- ),
407
- ),
408
- )
409
- : ValueOrErrors.Default.return(
410
- itemResults.reduce(
411
- (acc, res) => traversalContext.joinRes([acc, res]),
412
- traversalContext.zeroRes(unit),
413
- ),
414
- );
415
- });
416
- }),
417
- );
418
- });
419
- }
420
- if (renderer.type.kind == "union" && renderer.kind == "unionRenderer") {
421
- return ValueOrErrors.Operations.All(
422
- List(
423
- renderer.cases
424
- .map((caseRenderer, caseName) =>
425
- rec(caseRenderer, traversalContext).Then((caseTraversal) =>
426
- ValueOrErrors.Default.return({
216
+ return ValueOrErrors.Operations.All(itemTraversals.flatMap((i) => i.itemTraversal.kind == "r"
217
+ ? [
218
+ i.itemTraversal.value(Object.assign(Object.assign({}, evalContext), { traversalIterator: iterator.values.get(i.index) })),
219
+ ]
220
+ : [])).Then((itemResults) => {
221
+ return traverseNode.kind == "r"
222
+ ? traverseNode
223
+ .value(evalContext)
224
+ .Then((nodeResult) => ValueOrErrors.Default.return(itemResults.reduce((acc, res) => traversalContext.joinRes([acc, res]), nodeResult)))
225
+ : ValueOrErrors.Default.return(itemResults.reduce((acc, res) => traversalContext.joinRes([acc, res]), traversalContext.zeroRes(unit)));
226
+ });
227
+ }));
228
+ });
229
+ }
230
+ if (renderer.type.kind == "union" && renderer.kind == "unionRenderer") {
231
+ return ValueOrErrors.Operations.All(List(renderer.cases
232
+ .map((caseRenderer, caseName) => rec(caseRenderer, traversalContext).Then((caseTraversal) => ValueOrErrors.Default.return({
427
233
  caseName: caseName,
428
234
  caseTraversal: caseTraversal,
429
- }),
430
- ),
431
- )
432
- .valueSeq(),
433
- ),
434
- ).Then((caseTraversals) => {
435
- if (
436
- caseTraversals.every((c) => c.caseTraversal.kind == "l") &&
437
- traverseNode.kind == "l"
438
- ) {
439
- return ValueOrErrors.Default.return(Option.Default.none());
440
- }
441
- return ValueOrErrors.Default.return(
442
- Option.Default.some((evalContext) => {
443
- var _a;
444
- const iterator = evalContext.traversalIterator;
445
- if (!PredicateValue.Operations.IsUnionCase(iterator)) {
446
- return ValueOrErrors.Default.throwOne(
447
- `Error: traversal iterator is not a union case, got ${evalContext.traversalIterator}`,
448
- );
449
- }
450
- const caseName = iterator.caseName;
451
- const caseTraversal =
452
- (_a = caseTraversals.find((c) => c.caseName == caseName)) ===
453
- null || _a === void 0
454
- ? void 0
455
- : _a.caseTraversal;
456
- if (!caseTraversal) {
457
- return ValueOrErrors.Default.throwOne(
458
- `Error: cannot find case traversal for case ${caseName}`,
459
- );
460
- }
461
- return caseTraversal.kind == "r"
462
- ? caseTraversal
463
- .value(
464
- Object.assign(Object.assign({}, evalContext), {
465
- traversalIterator: iterator.fields,
466
- }),
467
- )
468
- .Then((caseRes) => {
469
- return traverseNode.kind == "r"
470
- ? traverseNode.value(evalContext).Then((nodeResult) => {
471
- return ValueOrErrors.Default.return(
472
- traversalContext.joinRes([nodeResult, caseRes]),
473
- );
474
- })
475
- : ValueOrErrors.Default.return(caseRes);
476
- })
477
- : traverseNode.kind == "r"
478
- ? traverseNode.value(evalContext).Then((nodeResult) => {
479
- return ValueOrErrors.Default.return(nodeResult);
480
- })
481
- : ValueOrErrors.Default.return(
482
- traversalContext.zeroRes(unit),
483
- );
484
- }),
485
- );
486
- });
487
- }
488
- // TODO -- add recursion for the detailsRenderer, but requires state
489
- if (renderer.type.kind == "table" && renderer.kind == "tableRenderer") {
490
- return ValueOrErrors.Operations.All(
491
- List(
492
- renderer.columns
493
- .map((column, columnName) => {
494
- return rec(column.renderer, traversalContext).Then(
495
- (columnTraversal) => {
496
- return ValueOrErrors.Default.return({
497
- columnName: columnName,
498
- columnTraversal: columnTraversal,
499
- });
500
- },
501
- );
502
- })
503
- .valueSeq(),
504
- ),
505
- ).Then((columnTraversals) => {
506
- if (
507
- columnTraversals.every((c) => c.columnTraversal.kind == "l") &&
508
- traverseNode.kind == "l"
509
- ) {
510
- return ValueOrErrors.Default.return(Option.Default.none());
511
- }
512
- return ValueOrErrors.Default.return(
513
- Option.Default.some((evalContext) => {
514
- const iterator = evalContext.traversalIterator;
515
- if (!PredicateValue.Operations.IsTable(iterator)) {
516
- return ValueOrErrors.Default.throwOne(
517
- `Error: traversal iterator is not a table, got ${evalContext.traversalIterator}`,
518
- );
519
- }
520
- return TableLayout.Operations.ComputeLayout(
521
- Map([
522
- ["global", evalContext.global],
523
- ["local", evalContext.local],
524
- ["root", evalContext.root],
525
- ]),
526
- renderer.visibleColumns,
527
- ).Then((visibleColumns) => {
528
- // Note: we do not allow visiblity predicates on individual column cells
529
- return ValueOrErrors.Operations.All(
530
- columnTraversals.flatMap((c) => {
531
- const colTraversal = c.columnTraversal;
532
- if (
533
- colTraversal.kind == "l" ||
534
- !visibleColumns.columns.includes(c.columnName)
535
- ) {
536
- return [];
235
+ })))
236
+ .valueSeq())).Then((caseTraversals) => {
237
+ if (caseTraversals.every((c) => c.caseTraversal.kind == "l") &&
238
+ traverseNode.kind == "l") {
239
+ return ValueOrErrors.Default.return(Option.Default.none());
537
240
  }
538
- return iterator.data.valueSeq().flatMap((row) => {
539
- // TODO make this monadic
540
- const columnValue = row.fields.get(c.columnName);
541
- if (!columnValue) {
542
- return [
543
- ValueOrErrors.Default.throwOne(
544
- `Error: cannot find column ${c.columnName} in row ${JSON.stringify(row)}`,
545
- ),
546
- ];
547
- }
548
- return [
549
- colTraversal.value(
550
- Object.assign(Object.assign({}, evalContext), {
551
- traversalIterator: columnValue,
552
- }),
553
- ),
554
- ];
241
+ return ValueOrErrors.Default.return(Option.Default.some((evalContext) => {
242
+ var _a;
243
+ const iterator = evalContext.traversalIterator;
244
+ if (!PredicateValue.Operations.IsUnionCase(iterator)) {
245
+ return ValueOrErrors.Default.throwOne(`Error: traversal iterator is not a union case, got ${evalContext.traversalIterator}`);
246
+ }
247
+ const caseName = iterator.caseName;
248
+ const caseTraversal = (_a = caseTraversals.find((c) => c.caseName == caseName)) === null || _a === void 0 ? void 0 : _a.caseTraversal;
249
+ if (!caseTraversal) {
250
+ return ValueOrErrors.Default.throwOne(`Error: cannot find case traversal for case ${caseName}`);
251
+ }
252
+ return caseTraversal.kind == "r"
253
+ ? caseTraversal
254
+ .value(Object.assign(Object.assign({}, evalContext), { traversalIterator: iterator.fields }))
255
+ .Then((caseRes) => {
256
+ return traverseNode.kind == "r"
257
+ ? traverseNode
258
+ .value(evalContext)
259
+ .Then((nodeResult) => {
260
+ return ValueOrErrors.Default.return(traversalContext.joinRes([nodeResult, caseRes]));
261
+ })
262
+ : ValueOrErrors.Default.return(caseRes);
263
+ })
264
+ : traverseNode.kind == "r"
265
+ ? traverseNode.value(evalContext).Then((nodeResult) => {
266
+ return ValueOrErrors.Default.return(nodeResult);
267
+ })
268
+ : ValueOrErrors.Default.return(traversalContext.zeroRes(unit));
269
+ }));
270
+ });
271
+ }
272
+ // TODO -- add recursion for the detailsRenderer, but requires state
273
+ if (renderer.type.kind == "table" && renderer.kind == "tableRenderer") {
274
+ return ValueOrErrors.Operations.All(List(renderer.columns
275
+ .map((column, columnName) => {
276
+ return rec(column.renderer, traversalContext).Then((columnTraversal) => {
277
+ return ValueOrErrors.Default.return({
278
+ columnName: columnName,
279
+ columnTraversal: columnTraversal,
280
+ });
555
281
  });
556
- }),
557
- ).Then((columnResults) => {
558
- return traverseNode.kind == "r"
559
- ? traverseNode
560
- .value(evalContext)
561
- .Then((nodeResult) =>
562
- ValueOrErrors.Default.return(
563
- columnResults.reduce(
564
- (acc, res) =>
565
- traversalContext.joinRes([acc, res]),
566
- nodeResult,
567
- ),
568
- ),
569
- )
570
- : ValueOrErrors.Default.return(
571
- columnResults.reduce(
572
- (acc, res) => traversalContext.joinRes([acc, res]),
573
- traversalContext.zeroRes(unit),
574
- ),
575
- );
282
+ })
283
+ .valueSeq())).Then((columnTraversals) => {
284
+ if (columnTraversals.every((c) => c.columnTraversal.kind == "l") &&
285
+ traverseNode.kind == "l") {
286
+ return ValueOrErrors.Default.return(Option.Default.none());
287
+ }
288
+ return ValueOrErrors.Default.return(Option.Default.some((evalContext) => {
289
+ const iterator = evalContext.traversalIterator;
290
+ if (!PredicateValue.Operations.IsTable(iterator)) {
291
+ return ValueOrErrors.Default.throwOne(`Error: traversal iterator is not a table, got ${evalContext.traversalIterator}`);
292
+ }
293
+ return TableLayout.Operations.ComputeLayout(Map([
294
+ ["global", evalContext.global],
295
+ ["local", evalContext.local],
296
+ ["root", evalContext.root],
297
+ ]), renderer.visibleColumns).Then((visibleColumns) => {
298
+ // Note: we do not allow visiblity predicates on individual column cells
299
+ return ValueOrErrors.Operations.All(columnTraversals.flatMap((c) => {
300
+ const colTraversal = c.columnTraversal;
301
+ if (colTraversal.kind == "l" ||
302
+ !visibleColumns.columns.includes(c.columnName)) {
303
+ return [];
304
+ }
305
+ return iterator.data.valueSeq().flatMap((row) => {
306
+ // TODO make this monadic
307
+ const columnValue = row.fields.get(c.columnName);
308
+ if (!columnValue) {
309
+ return [
310
+ ValueOrErrors.Default.throwOne(`Error: cannot find column ${c.columnName} in row ${JSON.stringify(row)}`),
311
+ ];
312
+ }
313
+ return [
314
+ colTraversal.value(Object.assign(Object.assign({}, evalContext), { traversalIterator: columnValue })),
315
+ ];
316
+ });
317
+ })).Then((columnResults) => {
318
+ return traverseNode.kind == "r"
319
+ ? traverseNode
320
+ .value(evalContext)
321
+ .Then((nodeResult) => ValueOrErrors.Default.return(columnResults.reduce((acc, res) => traversalContext.joinRes([acc, res]), nodeResult)))
322
+ : ValueOrErrors.Default.return(columnResults.reduce((acc, res) => traversalContext.joinRes([acc, res]), traversalContext.zeroRes(unit)));
323
+ });
324
+ });
325
+ }));
576
326
  });
577
- });
578
- }),
579
- );
580
- });
581
- }
582
- // TODO -- should we also look at the previewRenderer? Woud also requite state
583
- if (renderer.type.kind == "one" && renderer.kind == "oneRenderer") {
584
- return rec(renderer.detailsRenderer.renderer, traversalContext).Then(
585
- (itemTraversal) => {
586
- if (itemTraversal.kind == "l" && traverseNode.kind == "l") {
587
- return ValueOrErrors.Default.return(Option.Default.none());
588
327
  }
589
- return ValueOrErrors.Default.return(
590
- Option.Default.some((evalContext) => {
591
- const iterator = evalContext.traversalIterator;
592
- // Handle partial ones
593
- if (PredicateValue.Operations.IsUnit(iterator)) {
594
- return traverseNode.kind == "r"
595
- ? traverseNode.value(evalContext)
596
- : ValueOrErrors.Default.return(
597
- traversalContext.zeroRes(unit),
598
- );
599
- }
600
- if (!PredicateValue.Operations.IsOption(iterator)) {
601
- return ValueOrErrors.Default.throwOne(
602
- `Error: traversal iterator for one is not an option, got ${iterator}`,
603
- );
604
- }
605
- const isSome =
606
- PredicateValue.Operations.IsOption(iterator) &&
607
- iterator.isSome;
608
- if (!isSome) {
609
- return traverseNode.kind == "r"
610
- ? traverseNode.value(evalContext)
611
- : ValueOrErrors.Default.return(
612
- traversalContext.zeroRes(unit),
613
- );
614
- }
615
- return traverseNode.kind == "r"
616
- ? traverseNode.value(evalContext).Then((nodeResult) => {
617
- return itemTraversal.kind == "r"
618
- ? itemTraversal
619
- .value(
620
- Object.assign(Object.assign({}, evalContext), {
621
- traversalIterator: iterator.value,
622
- }),
623
- )
624
- .Then((itemResult) => {
625
- return ValueOrErrors.Default.return(
626
- traversalContext.joinRes([
627
- nodeResult,
628
- itemResult,
629
- ]),
630
- );
328
+ // TODO -- should we also look at the previewRenderer? Woud also requite state
329
+ if (renderer.type.kind == "one" && renderer.kind == "oneRenderer") {
330
+ return rec(renderer.detailsRenderer.renderer, traversalContext).Then((itemTraversal) => {
331
+ if (itemTraversal.kind == "l" && traverseNode.kind == "l") {
332
+ return ValueOrErrors.Default.return(Option.Default.none());
333
+ }
334
+ return ValueOrErrors.Default.return(Option.Default.some((evalContext) => {
335
+ const iterator = evalContext.traversalIterator;
336
+ // Handle partial ones
337
+ if (PredicateValue.Operations.IsUnit(iterator)) {
338
+ return traverseNode.kind == "r"
339
+ ? traverseNode.value(evalContext)
340
+ : ValueOrErrors.Default.return(traversalContext.zeroRes(unit));
341
+ }
342
+ if (!PredicateValue.Operations.IsOption(iterator)) {
343
+ return ValueOrErrors.Default.throwOne(`Error: traversal iterator for one is not an option, got ${iterator}`);
344
+ }
345
+ const isSome = PredicateValue.Operations.IsOption(iterator) &&
346
+ iterator.isSome;
347
+ if (!isSome) {
348
+ return traverseNode.kind == "r"
349
+ ? traverseNode.value(evalContext)
350
+ : ValueOrErrors.Default.return(traversalContext.zeroRes(unit));
351
+ }
352
+ return traverseNode.kind == "r"
353
+ ? traverseNode
354
+ .value(evalContext)
355
+ .Then((nodeResult) => {
356
+ return itemTraversal.kind == "r"
357
+ ? itemTraversal
358
+ .value(Object.assign(Object.assign({}, evalContext), { traversalIterator: iterator.value }))
359
+ .Then((itemResult) => {
360
+ return ValueOrErrors.Default.return(traversalContext.joinRes([
361
+ nodeResult,
362
+ itemResult,
363
+ ]));
364
+ })
365
+ : ValueOrErrors.Default.return(nodeResult);
631
366
  })
632
- : ValueOrErrors.Default.return(nodeResult);
633
- })
634
- : itemTraversal.kind == "r"
635
- ? itemTraversal.value(
636
- Object.assign(Object.assign({}, evalContext), {
637
- traversalIterator: iterator.value,
638
- }),
639
- )
640
- : ValueOrErrors.Default.return(
641
- traversalContext.zeroRes(unit),
642
- );
643
- }),
644
- );
645
- },
646
- );
647
- }
648
- if (renderer.type.kind == "list" && renderer.kind == "listRenderer") {
649
- return rec(renderer.elementRenderer.renderer, traversalContext).Then(
650
- (elementTraversal) => {
651
- if (elementTraversal.kind == "l" && traverseNode.kind == "l") {
652
- return ValueOrErrors.Default.return(Option.Default.none());
367
+ : itemTraversal.kind == "r"
368
+ ? itemTraversal.value(Object.assign(Object.assign({}, evalContext), { traversalIterator: iterator.value }))
369
+ : ValueOrErrors.Default.return(traversalContext.zeroRes(unit));
370
+ }));
371
+ });
653
372
  }
654
- return ValueOrErrors.Default.return(
655
- Option.Default.some((evalContext) => {
656
- const iterator = evalContext.traversalIterator;
657
- if (!PredicateValue.Operations.IsTuple(iterator)) {
658
- return ValueOrErrors.Default.throwOne(
659
- `Error: traversal iterator for list is not a tuple, got ${JSON.stringify(iterator, null, 2)}`,
660
- );
661
- }
662
- return ValueOrErrors.Operations.All(
663
- iterator.values.map((value) =>
664
- elementTraversal.kind == "r"
665
- ? elementTraversal.value(
666
- Object.assign(Object.assign({}, evalContext), {
667
- traversalIterator: value,
668
- }),
669
- )
670
- : ValueOrErrors.Default.return(
671
- traversalContext.zeroRes(unit),
672
- ),
673
- ),
674
- ).Then((elementResults) =>
675
- traverseNode.kind == "r"
676
- ? traverseNode
677
- .value(evalContext)
678
- .Then((nodeResult) =>
679
- ValueOrErrors.Default.return(
680
- elementResults.reduce(
681
- (acc, res) =>
682
- traversalContext.joinRes([acc, res]),
683
- nodeResult,
684
- ),
685
- ),
686
- )
687
- : ValueOrErrors.Default.return(
688
- elementResults.reduce(
689
- (acc, res) => traversalContext.joinRes([acc, res]),
690
- traversalContext.zeroRes(unit),
691
- ),
692
- ),
693
- );
694
- }),
695
- );
696
- },
697
- );
698
- }
699
- if (renderer.type.kind == "map" && renderer.kind == "mapRenderer") {
700
- return rec(renderer.keyRenderer.renderer, traversalContext).Then(
701
- (keyTraversal) => {
702
- return rec(renderer.valueRenderer.renderer, traversalContext).Then(
703
- (valueTraversal) => {
704
- if (
705
- keyTraversal.kind == "l" &&
706
- valueTraversal.kind == "l" &&
707
- traverseNode.kind == "l"
708
- ) {
709
- return ValueOrErrors.Default.return(Option.Default.none());
710
- }
711
- return ValueOrErrors.Default.return(
712
- Option.Default.some((evalContext) => {
713
- if (
714
- keyTraversal.kind == "l" &&
715
- valueTraversal.kind == "l"
716
- ) {
717
- return traverseNode.kind == "r"
718
- ? traverseNode.value(evalContext)
719
- : ValueOrErrors.Default.return(
720
- traversalContext.zeroRes(unit),
721
- );
373
+ if (renderer.type.kind == "list" && renderer.kind == "listRenderer") {
374
+ return rec(renderer.elementRenderer.renderer, traversalContext).Then((elementTraversal) => {
375
+ if (elementTraversal.kind == "l" && traverseNode.kind == "l") {
376
+ return ValueOrErrors.Default.return(Option.Default.none());
722
377
  }
723
- const iterator = evalContext.traversalIterator;
724
- if (!PredicateValue.Operations.IsTuple(iterator)) {
725
- return ValueOrErrors.Default.throwOne(
726
- `Error: traversal iterator for map is not a tuple, got ${JSON.stringify(iterator, null, 2)}`,
727
- );
728
- }
729
- return ValueOrErrors.Operations.All(
730
- iterator.values.map((value) => {
731
- if (!PredicateValue.Operations.IsTuple(value)) {
732
- return ValueOrErrors.Default.throwOne(
733
- `Error: traversal iterator for map keyValue is not a tuple, got ${JSON.stringify(value, null, 2)}`,
734
- );
735
- }
736
- const keyRes =
737
- keyTraversal.kind == "r"
738
- ? keyTraversal.value(
739
- Object.assign(Object.assign({}, evalContext), {
740
- traversalIterator: value.values.get(0),
741
- }),
742
- )
743
- : ValueOrErrors.Default.return(
744
- traversalContext.zeroRes(unit),
745
- );
746
- const valueRes =
747
- valueTraversal.kind == "r"
748
- ? valueTraversal.value(
749
- Object.assign(Object.assign({}, evalContext), {
750
- traversalIterator: value.values.get(1),
751
- }),
752
- )
753
- : ValueOrErrors.Default.return(
754
- traversalContext.zeroRes(unit),
755
- );
756
- if (keyRes.kind == "errors") {
757
- return keyRes;
378
+ return ValueOrErrors.Default.return(Option.Default.some((evalContext) => {
379
+ const iterator = evalContext.traversalIterator;
380
+ if (!PredicateValue.Operations.IsTuple(iterator)) {
381
+ return ValueOrErrors.Default.throwOne(`Error: traversal iterator for list is not a tuple, got ${JSON.stringify(iterator, null, 2)}`);
758
382
  }
759
- if (valueRes.kind == "errors") {
760
- return valueRes;
383
+ return ValueOrErrors.Operations.All(iterator.values.map((value) => elementTraversal.kind == "r"
384
+ ? elementTraversal.value(Object.assign(Object.assign({}, evalContext), { traversalIterator: value }))
385
+ : ValueOrErrors.Default.return(traversalContext.zeroRes(unit)))).Then((elementResults) => traverseNode.kind == "r"
386
+ ? traverseNode
387
+ .value(evalContext)
388
+ .Then((nodeResult) => ValueOrErrors.Default.return(elementResults.reduce((acc, res) => traversalContext.joinRes([acc, res]), nodeResult)))
389
+ : ValueOrErrors.Default.return(elementResults.reduce((acc, res) => traversalContext.joinRes([acc, res]), traversalContext.zeroRes(unit))));
390
+ }));
391
+ });
392
+ }
393
+ if (renderer.type.kind == "map" && renderer.kind == "mapRenderer") {
394
+ return rec(renderer.keyRenderer.renderer, traversalContext).Then((keyTraversal) => {
395
+ return rec(renderer.valueRenderer.renderer, traversalContext).Then((valueTraversal) => {
396
+ if (keyTraversal.kind == "l" &&
397
+ valueTraversal.kind == "l" &&
398
+ traverseNode.kind == "l") {
399
+ return ValueOrErrors.Default.return(Option.Default.none());
761
400
  }
762
- return ValueOrErrors.Default.return(
763
- traversalContext.joinRes([
764
- keyRes.value,
765
- valueRes.value,
766
- ]),
767
- );
768
- }),
769
- ).Then((keyValueResults) => {
770
- return traverseNode.kind == "r"
771
- ? traverseNode.value(evalContext).Then((nodeResult) => {
772
- return ValueOrErrors.Default.return(
773
- keyValueResults.reduce(
774
- (acc, res) =>
775
- traversalContext.joinRes([acc, res]),
776
- nodeResult,
777
- ),
778
- );
779
- })
780
- : ValueOrErrors.Default.return(
781
- keyValueResults.reduce(
782
- (acc, res) =>
783
- traversalContext.joinRes([acc, res]),
784
- traversalContext.zeroRes(unit),
785
- ),
786
- );
401
+ return ValueOrErrors.Default.return(Option.Default.some((evalContext) => {
402
+ if (keyTraversal.kind == "l" &&
403
+ valueTraversal.kind == "l") {
404
+ return traverseNode.kind == "r"
405
+ ? traverseNode.value(evalContext)
406
+ : ValueOrErrors.Default.return(traversalContext.zeroRes(unit));
407
+ }
408
+ const iterator = evalContext.traversalIterator;
409
+ if (!PredicateValue.Operations.IsTuple(iterator)) {
410
+ return ValueOrErrors.Default.throwOne(`Error: traversal iterator for map is not a tuple, got ${JSON.stringify(iterator, null, 2)}`);
411
+ }
412
+ return ValueOrErrors.Operations.All(iterator.values.map((value) => {
413
+ if (!PredicateValue.Operations.IsTuple(value)) {
414
+ return ValueOrErrors.Default.throwOne(`Error: traversal iterator for map keyValue is not a tuple, got ${JSON.stringify(value, null, 2)}`);
415
+ }
416
+ const keyRes = keyTraversal.kind == "r"
417
+ ? keyTraversal.value(Object.assign(Object.assign({}, evalContext), { traversalIterator: value.values.get(0) }))
418
+ : ValueOrErrors.Default.return(traversalContext.zeroRes(unit));
419
+ const valueRes = valueTraversal.kind == "r"
420
+ ? valueTraversal.value(Object.assign(Object.assign({}, evalContext), { traversalIterator: value.values.get(1) }))
421
+ : ValueOrErrors.Default.return(traversalContext.zeroRes(unit));
422
+ if (keyRes.kind == "errors") {
423
+ return keyRes;
424
+ }
425
+ if (valueRes.kind == "errors") {
426
+ return valueRes;
427
+ }
428
+ return ValueOrErrors.Default.return(traversalContext.joinRes([
429
+ keyRes.value,
430
+ valueRes.value,
431
+ ]));
432
+ })).Then((keyValueResults) => {
433
+ return traverseNode.kind == "r"
434
+ ? traverseNode
435
+ .value(evalContext)
436
+ .Then((nodeResult) => {
437
+ return ValueOrErrors.Default.return(keyValueResults.reduce((acc, res) => traversalContext.joinRes([acc, res]), nodeResult));
438
+ })
439
+ : ValueOrErrors.Default.return(keyValueResults.reduce((acc, res) => traversalContext.joinRes([acc, res]), traversalContext.zeroRes(unit)));
440
+ });
441
+ }));
787
442
  });
788
- }),
789
- );
790
- },
791
- );
792
- },
793
- );
794
- }
795
- return ValueOrErrors.Default.return(Option.Default.none());
443
+ });
444
+ }
445
+ return ValueOrErrors.Default.return(Option.Default.none());
446
+ },
796
447
  },
797
- },
798
448
  };
799
- //# sourceMappingURL=state.js.map
449
+ //# sourceMappingURL=state.js.map