ballerina-core 1.0.253 → 1.0.255

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 (589) hide show
  1. package/bin/main.d.ts +1 -1
  2. package/bin/main.js +1 -1
  3. package/bin/src/api-response-handler/coroutines/runner.d.ts +9 -2
  4. package/bin/src/api-response-handler/coroutines/runner.js +20 -13
  5. package/bin/src/api-response-handler/state.d.ts +12 -12
  6. package/bin/src/api-response-handler/state.js +13 -11
  7. package/bin/src/apiResultStatus/state.d.ts +10 -3
  8. package/bin/src/apiResultStatus/state.js +2 -5
  9. package/bin/src/async/domains/mirroring/domains/collection/coroutines/synchronizers.d.ts +400 -75
  10. package/bin/src/async/domains/mirroring/domains/collection/coroutines/synchronizers.js +314 -196
  11. package/bin/src/async/domains/mirroring/domains/collection/state.d.ts +38 -25
  12. package/bin/src/async/domains/mirroring/domains/collection/state.js +126 -36
  13. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-collection/state.d.ts +12 -8
  14. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-collection/state.js +18 -11
  15. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-collection-entity/state.d.ts +12 -9
  16. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-collection-entity/state.js +19 -19
  17. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-entities/state.d.ts +17 -8
  18. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-entities/state.js +1 -1
  19. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-entity/state.d.ts +16 -13
  20. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-entity/state.js +18 -18
  21. package/bin/src/async/domains/mirroring/domains/entity/state.d.ts +12 -9
  22. package/bin/src/async/domains/mirroring/domains/entity/state.js +18 -9
  23. package/bin/src/async/domains/mirroring/domains/singleton/coroutines/synchronizers.d.ts +233 -41
  24. package/bin/src/async/domains/mirroring/domains/singleton/coroutines/synchronizers.js +134 -83
  25. package/bin/src/async/domains/mirroring/domains/singleton/state.d.ts +24 -15
  26. package/bin/src/async/domains/mirroring/domains/singleton/state.js +52 -8
  27. package/bin/src/async/domains/mirroring/domains/synchronization-result/state.d.ts +5 -9
  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 +16 -10
  31. package/bin/src/async/domains/mirroring/domains/synchronized-entities/state.js +7 -4
  32. package/bin/src/async/domains/promise/state.d.ts +9 -4
  33. package/bin/src/async/domains/promise/state.js +20 -9
  34. package/bin/src/async/domains/synchronized/coroutines/synchronize.d.ts +29 -4
  35. package/bin/src/async/domains/synchronized/coroutines/synchronize.js +80 -28
  36. package/bin/src/async/domains/synchronized/state.d.ts +14 -7
  37. package/bin/src/async/domains/synchronized/state.js +16 -6
  38. package/bin/src/async/state.d.ts +56 -45
  39. package/bin/src/async/state.js +115 -97
  40. package/bin/src/baseEntity/domains/identifiable/state.d.ts +15 -11
  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 +19 -15
  47. package/bin/src/collections/domains/immutable/domains/list/state.js +46 -44
  48. package/bin/src/collections/domains/immutable/domains/map/state.d.ts +30 -16
  49. package/bin/src/collections/domains/immutable/domains/map/state.js +41 -23
  50. package/bin/src/collections/domains/immutable/domains/orderedMap/state.d.ts +53 -25
  51. package/bin/src/collections/domains/immutable/domains/orderedMap/state.js +84 -65
  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 +12 -9
  56. package/bin/src/collections/domains/product/state.d.ts +25 -19
  57. package/bin/src/collections/domains/product/state.js +13 -10
  58. package/bin/src/collections/domains/sum/state.d.ts +101 -77
  59. package/bin/src/collections/domains/sum/state.js +49 -32
  60. package/bin/src/collections/domains/valueOrErrors/state.d.ts +53 -27
  61. package/bin/src/collections/domains/valueOrErrors/state.js +81 -56
  62. package/bin/src/coroutines/builder.d.ts +135 -49
  63. package/bin/src/coroutines/builder.js +40 -19
  64. package/bin/src/coroutines/state.d.ts +186 -71
  65. package/bin/src/coroutines/state.js +381 -306
  66. package/bin/src/coroutines/template.d.ts +17 -8
  67. package/bin/src/coroutines/template.js +97 -59
  68. package/bin/src/debounced/coroutines/debounce.d.ts +15 -6
  69. package/bin/src/debounced/coroutines/debounce.js +115 -89
  70. package/bin/src/debounced/state.d.ts +26 -19
  71. package/bin/src/debounced/state.js +62 -25
  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 +30 -8
  78. package/bin/src/forms/domains/collection/domains/reference/state.d.ts +29 -22
  79. package/bin/src/forms/domains/collection/domains/reference/state.js +26 -20
  80. package/bin/src/forms/domains/collection/domains/selection/state.d.ts +37 -15
  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 +531 -120
  83. package/bin/src/forms/domains/dispatched-forms/built-ins/state.js +2007 -754
  84. package/bin/src/forms/domains/dispatched-forms/deserializer/coroutines/runner.d.ts +17 -2
  85. package/bin/src/forms/domains/dispatched-forms/deserializer/coroutines/runner.js +123 -44
  86. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/apis/state.d.ts +119 -67
  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 +315 -167
  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 +35 -19
  91. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/enum/state.js +40 -27
  92. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/list/state.d.ts +60 -29
  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 +76 -41
  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 +121 -56
  97. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/lookup/state.js +102 -59
  98. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/map/state.d.ts +42 -15
  99. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/map/state.js +64 -29
  100. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/nestedRenderer/state.d.ts +70 -29
  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 +53 -33
  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 +61 -18
  105. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/one/state.js +88 -33
  106. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/primitive/state.d.ts +20 -10
  107. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/primitive/state.js +21 -13
  108. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/readOnly/state.d.ts +50 -19
  109. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/readOnly/state.js +52 -23
  110. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/record/domains/recordFieldRenderer/state.d.ts +42 -11
  111. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/record/domains/recordFieldRenderer/state.js +59 -18
  112. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/record/state.d.ts +49 -19
  113. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/record/state.js +129 -55
  114. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/stream/state.d.ts +29 -14
  115. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/stream/state.js +43 -27
  116. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/sum/state.d.ts +49 -19
  117. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/sum/state.js +63 -23
  118. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/sumUnitDate/state.d.ts +21 -13
  119. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/sumUnitDate/state.js +39 -22
  120. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/table/domains/tableCellRenderer/state.d.ts +39 -10
  121. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/table/domains/tableCellRenderer/state.js +46 -11
  122. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/table/state.d.ts +79 -39
  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 +146 -50
  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 +37 -13
  127. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/tuple/state.js +64 -29
  128. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/union/state.d.ts +40 -15
  129. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/union/state.js +78 -33
  130. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/state.d.ts +107 -19
  131. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/state.js +157 -62
  132. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/types/state.d.ts +417 -227
  133. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/types/state.js +977 -569
  134. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/state.d.ts +103 -51
  135. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/state.js +255 -94
  136. package/bin/src/forms/domains/dispatched-forms/deserializer/state.d.ts +360 -106
  137. package/bin/src/forms/domains/dispatched-forms/deserializer/state.js +322 -90
  138. package/bin/src/forms/domains/dispatched-forms/deserializer/template.d.ts +27 -2
  139. package/bin/src/forms/domains/dispatched-forms/deserializer/template.js +3 -2
  140. package/bin/src/forms/domains/dispatched-forms/runner/coroutines/runner.d.ts +27 -4
  141. package/bin/src/forms/domains/dispatched-forms/runner/coroutines/runner.js +136 -82
  142. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/base-64-file/state.d.ts +35 -7
  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 +28 -4
  145. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/base-64-file/template.js +49 -23
  146. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/boolean/state.d.ts +33 -7
  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 +25 -4
  149. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/boolean/template.js +52 -24
  150. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/date/state.d.ts +56 -19
  151. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/date/state.js +18 -6
  152. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/date/template.d.ts +29 -7
  153. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/date/template.js +64 -30
  154. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum/state.d.ts +43 -15
  155. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum/state.js +9 -6
  156. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum/template.d.ts +41 -8
  157. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum/template.js +153 -60
  158. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum-multiselect/state.d.ts +45 -11
  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 +42 -8
  161. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum-multiselect/template.js +127 -50
  162. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/injectables/state.d.ts +54 -19
  163. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/injectables/state.js +40 -22
  164. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/list/state.d.ts +92 -39
  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 +20 -13
  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 +50 -9
  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 +394 -152
  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 +41 -7
  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 +45 -4
  175. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/lookup-type/template.js +28 -8
  176. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/map/state.d.ts +103 -26
  177. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/map/state.js +61 -18
  178. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/map/template.d.ts +64 -9
  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 +314 -90
  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 +37 -7
  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 +29 -4
  185. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/number/template.js +54 -23
  186. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_debouncer.d.ts +50 -13
  187. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_debouncer.js +22 -10
  188. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_initializeOne.d.ts +59 -12
  189. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_initializeOne.js +49 -31
  190. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_initializeStream.d.ts +47 -11
  191. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_initializeStream.js +29 -10
  192. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/builder.d.ts +3868 -1065
  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 +161 -36
  195. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/runner.js +47 -26
  196. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/state.d.ts +245 -80
  197. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/state.js +88 -40
  198. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/template.d.ts +83 -10
  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 +372 -154
  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 +65 -20
  203. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/readOnly/state.js +19 -10
  204. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/readOnly/template.d.ts +47 -6
  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 +68 -21
  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 +81 -21
  209. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/record/state.js +32 -11
  210. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/record/template.d.ts +59 -11
  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 +209 -83
  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 +123 -49
  215. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream/state.js +35 -13
  216. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream/template.d.ts +45 -8
  217. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream/template.js +195 -68
  218. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream-multiselect/state.d.ts +121 -51
  219. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream-multiselect/state.js +36 -13
  220. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream-multiselect/template.d.ts +45 -8
  221. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream-multiselect/template.js +246 -106
  222. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/secret/state.d.ts +38 -8
  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 +29 -4
  225. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/secret/template.js +54 -23
  226. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/state.d.ts +61 -43
  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 +24 -28
  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 +38 -8
  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 +29 -4
  233. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/string/template.js +58 -26
  234. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/sum/state.d.ts +93 -29
  235. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/sum/state.js +22 -7
  236. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/sum/template.d.ts +55 -7
  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 +175 -59
  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 +2779 -973
  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 +48 -10
  243. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/infiniteLoader.js +57 -24
  244. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/initialiseFiltersAndSorting.d.ts +54 -10
  245. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/initialiseFiltersAndSorting.js +70 -20
  246. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/initialiseTable.d.ts +56 -12
  247. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/initialiseTable.js +61 -27
  248. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/loadWithRetries.d.ts +33 -3
  249. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/loadWithRetries.js +38 -19
  250. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/runner.d.ts +130 -26
  251. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/runner.js +43 -15
  252. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/state.d.ts +440 -217
  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 +301 -137
  255. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/template.d.ts +102 -19
  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 +628 -251
  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 +75 -18
  260. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/tuple/state.js +20 -8
  261. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/tuple/template.d.ts +51 -6
  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 +124 -36
  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 +76 -20
  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 +21 -8
  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 +51 -6
  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 +93 -32
  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 +45 -13
  274. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/unit/state.js +12 -9
  275. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/unit/template.d.ts +29 -6
  276. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/unit/template.js +54 -20
  277. package/bin/src/forms/domains/dispatched-forms/runner/domains/deltas/state.d.ts +609 -466
  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 +676 -560
  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 +24 -5
  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 +57 -18
  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 +22 -5
  286. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/lookup/state.js +45 -14
  287. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/map/state.d.ts +23 -5
  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 +74 -18
  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 +21 -5
  292. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/multiSelection/state.js +82 -24
  293. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/nestedDispatcher/state.d.ts +41 -6
  294. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/nestedDispatcher/state.js +37 -8
  295. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/one/state.d.ts +56 -7
  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 +118 -36
  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 +21 -5
  300. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/primitive/state.js +145 -63
  301. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/readOnly/state.d.ts +24 -5
  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 +43 -12
  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 +25 -5
  306. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/recordField/state.js +14 -4
  307. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/state.d.ts +48 -6
  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 +80 -25
  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 +21 -5
  312. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/singleSelectionDispatcher/state.js +82 -24
  313. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/sum/state.d.ts +24 -5
  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 +61 -20
  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 +54 -7
  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 +245 -80
  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 +24 -5
  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 +60 -13
  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 +24 -5
  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 +63 -33
  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 +43 -6
  330. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/state.js +144 -45
  331. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/_init.d.ts +43 -9
  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 +200 -95
  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 +52 -10
  336. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/_sync.js +79 -37
  337. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/builder.d.ts +1248 -262
  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 +50 -10
  340. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/runner.js +19 -17
  341. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/state.d.ts +149 -39
  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 +54 -11
  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 +51 -11
  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 +72 -25
  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 +49 -10
  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 +202 -95
  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 +54 -10
  354. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/_sync.js +78 -37
  355. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/builder.d.ts +1248 -262
  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 +50 -10
  358. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/runner.js +19 -17
  359. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/state.d.ts +150 -39
  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 +54 -11
  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 +55 -11
  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 +70 -25
  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 +34 -4
  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 +158 -85
  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 +60 -11
  372. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/passthrough/state.js +10 -4
  373. package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/passthrough/template.d.ts +48 -6
  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 +71 -27
  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 +38 -18
  378. package/bin/src/forms/domains/dispatched-forms/runner/domains/traversal/state.js +773 -423
  379. package/bin/src/forms/domains/dispatched-forms/runner/state.d.ts +293 -84
  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 +58 -38
  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 +28 -4
  384. package/bin/src/forms/domains/dispatched-forms/runner/template.js +78 -25
  385. package/bin/src/forms/domains/launcher/coroutines/runner.d.ts +12 -4
  386. package/bin/src/forms/domains/launcher/coroutines/runner.js +120 -45
  387. package/bin/src/forms/domains/launcher/domains/create/coroutines/runner.d.ts +16 -3
  388. package/bin/src/forms/domains/launcher/domains/create/coroutines/runner.js +240 -101
  389. package/bin/src/forms/domains/launcher/domains/create/state.d.ts +236 -121
  390. package/bin/src/forms/domains/launcher/domains/create/state.js +62 -17
  391. package/bin/src/forms/domains/launcher/domains/create/template.d.ts +20 -6
  392. package/bin/src/forms/domains/launcher/domains/create/template.js +84 -42
  393. package/bin/src/forms/domains/launcher/domains/edit/coroutines/runner.d.ts +16 -3
  394. package/bin/src/forms/domains/launcher/domains/edit/coroutines/runner.js +242 -103
  395. package/bin/src/forms/domains/launcher/domains/edit/state.d.ts +230 -121
  396. package/bin/src/forms/domains/launcher/domains/edit/state.js +62 -17
  397. package/bin/src/forms/domains/launcher/domains/edit/template.d.ts +20 -6
  398. package/bin/src/forms/domains/launcher/domains/edit/template.js +86 -43
  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 +35 -26
  401. package/bin/src/forms/domains/launcher/domains/passthrough/coroutines/runner.d.ts +20 -5
  402. package/bin/src/forms/domains/launcher/domains/passthrough/coroutines/runner.js +88 -42
  403. package/bin/src/forms/domains/launcher/domains/passthrough/state.d.ts +123 -58
  404. package/bin/src/forms/domains/launcher/domains/passthrough/state.js +44 -19
  405. package/bin/src/forms/domains/launcher/domains/passthrough/template.d.ts +23 -6
  406. package/bin/src/forms/domains/launcher/domains/passthrough/template.js +56 -34
  407. package/bin/src/forms/domains/launcher/state.d.ts +62 -43
  408. package/bin/src/forms/domains/launcher/state.js +6 -6
  409. package/bin/src/forms/domains/launcher/template.d.ts +35 -15
  410. package/bin/src/forms/domains/launcher/template.js +169 -85
  411. package/bin/src/forms/domains/parser/coroutines/runner.d.ts +13 -5
  412. package/bin/src/forms/domains/parser/coroutines/runner.js +87 -25
  413. package/bin/src/forms/domains/parser/domains/built-ins/state.d.ts +135 -71
  414. package/bin/src/forms/domains/parser/domains/built-ins/state.js +944 -533
  415. package/bin/src/forms/domains/parser/domains/deltas/state.d.ts +417 -296
  416. package/bin/src/forms/domains/parser/domains/deltas/state.js +444 -318
  417. package/bin/src/forms/domains/parser/domains/injectables/state.d.ts +29 -20
  418. package/bin/src/forms/domains/parser/domains/injectables/state.js +29 -26
  419. package/bin/src/forms/domains/parser/domains/layout/state.d.ts +78 -49
  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 +265 -183
  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 +19 -6
  424. package/bin/src/forms/domains/parser/domains/predicates/domains/extractor/state.js +324 -162
  425. package/bin/src/forms/domains/parser/domains/predicates/state.d.ts +502 -314
  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 +1506 -981
  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 +245 -92
  430. package/bin/src/forms/domains/parser/domains/renderer/state.js +1137 -480
  431. package/bin/src/forms/domains/parser/domains/types/state.d.ts +170 -130
  432. package/bin/src/forms/domains/parser/domains/types/state.js +355 -170
  433. package/bin/src/forms/domains/parser/domains/validator/state.d.ts +143 -117
  434. package/bin/src/forms/domains/parser/domains/validator/state.js +417 -280
  435. package/bin/src/forms/domains/parser/state.d.ts +217 -82
  436. package/bin/src/forms/domains/parser/state.js +612 -373
  437. package/bin/src/forms/domains/parser/template.d.ts +13 -5
  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 +19 -11
  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 +18 -7
  442. package/bin/src/forms/domains/primitives/domains/base-64-file/template.js +38 -19
  443. package/bin/src/forms/domains/primitives/domains/boolean/state.d.ts +19 -11
  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 +24 -8
  446. package/bin/src/forms/domains/primitives/domains/boolean/template.js +38 -19
  447. package/bin/src/forms/domains/primitives/domains/date/state.d.ts +39 -20
  448. package/bin/src/forms/domains/primitives/domains/date/state.js +18 -9
  449. package/bin/src/forms/domains/primitives/domains/date/template.d.ts +18 -7
  450. package/bin/src/forms/domains/primitives/domains/date/template.js +51 -25
  451. package/bin/src/forms/domains/primitives/domains/enum/state.d.ts +31 -15
  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 +18 -7
  454. package/bin/src/forms/domains/primitives/domains/enum/template.js +117 -48
  455. package/bin/src/forms/domains/primitives/domains/enum-multiselect/state.d.ts +17 -8
  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 +18 -7
  458. package/bin/src/forms/domains/primitives/domains/enum-multiselect/template.js +99 -40
  459. package/bin/src/forms/domains/primitives/domains/list/state.d.ts +45 -24
  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 +38 -13
  462. package/bin/src/forms/domains/primitives/domains/list/template.js +200 -71
  463. package/bin/src/forms/domains/primitives/domains/map/state.d.ts +68 -29
  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 +65 -25
  466. package/bin/src/forms/domains/primitives/domains/map/template.js +294 -103
  467. package/bin/src/forms/domains/primitives/domains/number/state.d.ts +19 -11
  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 +24 -8
  470. package/bin/src/forms/domains/primitives/domains/number/template.js +38 -19
  471. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream/state.d.ts +89 -42
  472. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream/state.js +33 -16
  473. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream/template.d.ts +22 -8
  474. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream/template.js +171 -62
  475. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream-multiselect/state.d.ts +18 -9
  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 +18 -7
  478. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream-multiselect/template.js +182 -69
  479. package/bin/src/forms/domains/primitives/domains/secret/state.d.ts +19 -11
  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 +18 -7
  482. package/bin/src/forms/domains/primitives/domains/secret/template.js +38 -19
  483. package/bin/src/forms/domains/primitives/domains/string/state.d.ts +21 -13
  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 +18 -7
  486. package/bin/src/forms/domains/primitives/domains/string/template.js +42 -22
  487. package/bin/src/forms/domains/primitives/domains/sum/state.d.ts +62 -22
  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 +48 -16
  490. package/bin/src/forms/domains/primitives/domains/sum/template.js +141 -50
  491. package/bin/src/forms/domains/primitives/domains/tuple/state.d.ts +48 -23
  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 +46 -18
  494. package/bin/src/forms/domains/primitives/domains/tuple/template.js +100 -33
  495. package/bin/src/forms/domains/primitives/domains/unit/state.d.ts +17 -10
  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 +9 -4
  498. package/bin/src/forms/domains/primitives/domains/unit/template.js +22 -9
  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 +144 -43
  502. package/bin/src/forms/domains/singleton/state.js +12 -10
  503. package/bin/src/forms/domains/singleton/template.d.ts +177 -88
  504. package/bin/src/forms/domains/singleton/template.js +288 -113
  505. package/bin/src/fun/domains/curry/state.d.ts +4 -2
  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 +57 -41
  510. package/bin/src/fun/domains/predicate/domains/bool-expr.js +76 -67
  511. package/bin/src/fun/domains/predicate/state.d.ts +9 -7
  512. package/bin/src/fun/domains/predicate/state.js +14 -10
  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 +4 -2
  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 +22 -7
  520. package/bin/src/fun/domains/updater/domains/caseUpdater/state.js +18 -10
  521. package/bin/src/fun/domains/updater/domains/mapUpdater/state.d.ts +24 -13
  522. package/bin/src/fun/domains/updater/domains/mapUpdater/state.js +40 -10
  523. package/bin/src/fun/domains/updater/domains/maybeUpdater/state.d.ts +19 -13
  524. package/bin/src/fun/domains/updater/domains/maybeUpdater/state.js +20 -9
  525. package/bin/src/fun/domains/updater/domains/orderedMapUpdater/state.d.ts +24 -13
  526. package/bin/src/fun/domains/updater/domains/orderedMapUpdater/state.js +47 -11
  527. package/bin/src/fun/domains/updater/domains/orderedSetUpdater/state.d.ts +20 -8
  528. package/bin/src/fun/domains/updater/domains/orderedSetUpdater/state.js +17 -5
  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 +13 -4
  532. package/bin/src/fun/domains/updater/domains/simpleUpdater/domains/baseSimpleUpdater/state.js +6 -4
  533. package/bin/src/fun/domains/updater/domains/simpleUpdater/state.d.ts +60 -22
  534. package/bin/src/fun/domains/updater/domains/simpleUpdater/state.js +42 -31
  535. package/bin/src/fun/domains/updater/state.d.ts +4 -4
  536. package/bin/src/fun/domains/updater/state.js +12 -10
  537. package/bin/src/fun/state.d.ts +3 -3
  538. package/bin/src/fun/state.js +9 -7
  539. package/bin/src/infinite-data-stream/coroutines/builder.d.ts +209 -27
  540. package/bin/src/infinite-data-stream/coroutines/builder.js +1 -1
  541. package/bin/src/infinite-data-stream/coroutines/infiniteLoader.d.ts +21 -5
  542. package/bin/src/infinite-data-stream/coroutines/infiniteLoader.js +47 -20
  543. package/bin/src/infinite-data-stream/coroutines/runner.d.ts +11 -3
  544. package/bin/src/infinite-data-stream/coroutines/runner.js +7 -7
  545. package/bin/src/infinite-data-stream/state.d.ts +84 -51
  546. package/bin/src/infinite-data-stream/state.js +125 -61
  547. package/bin/src/infinite-data-stream/template.d.ts +10 -3
  548. package/bin/src/infinite-data-stream/template.js +3 -2
  549. package/bin/src/math/domains/DOMRect/state.d.ts +4 -4
  550. package/bin/src/math/domains/DOMRect/state.js +10 -8
  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 +16 -15
  555. package/bin/src/math/domains/rgba/state.d.ts +17 -17
  556. package/bin/src/math/domains/rgba/state.js +77 -81
  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 +24 -8
  562. package/bin/src/queue/state.d.ts.map +1 -1
  563. package/bin/src/queue/state.js +24 -17
  564. package/bin/src/queue/state.js.map +1 -1
  565. package/bin/src/state/domains/repository/state.d.ts +15 -9
  566. package/bin/src/state/domains/repository/state.js +1 -1
  567. package/bin/src/template/state.d.ts +153 -45
  568. package/bin/src/template/state.js +163 -115
  569. package/bin/src/validation/state.d.ts +23 -9
  570. package/bin/src/validation/state.js +38 -45
  571. package/bin/src/value/domains/mutable-value/state.d.ts +3 -3
  572. package/bin/src/value/domains/mutable-value/state.js +3 -2
  573. package/bin/src/value/state.d.ts +9 -9
  574. package/bin/src/value/state.js +11 -8
  575. package/bin/src/value-infinite-data-stream/coroutines/builder.d.ts +207 -25
  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 +4 -2
  578. package/bin/src/value-infinite-data-stream/coroutines/infiniteLoader.js +55 -20
  579. package/bin/src/value-infinite-data-stream/coroutines/runner.d.ts +8 -2
  580. package/bin/src/value-infinite-data-stream/coroutines/runner.js +6 -4
  581. package/bin/src/value-infinite-data-stream/state.d.ts +134 -68
  582. package/bin/src/value-infinite-data-stream/state.js +199 -77
  583. package/bin/src/value-infinite-data-stream/template.d.ts +7 -2
  584. package/bin/src/value-infinite-data-stream/template.js +4 -2
  585. package/bin/src/visibility/state.d.ts +5 -2
  586. package/bin/src/visibility/state.js +1 -1
  587. package/package.json +1 -1
  588. package/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/template.tsx +4 -2
  589. package/src/forms/domains/dispatched-forms/runner/domains/deltas/state.ts +2 -2
@@ -1,449 +1,799 @@
1
- import { Option, ValueOrErrors, PredicateValue, Expr, Updater, FormLayout, unit, TableLayout, } from "ballerina-core";
1
+ import {
2
+ Option,
3
+ ValueOrErrors,
4
+ PredicateValue,
5
+ Expr,
6
+ Updater,
7
+ FormLayout,
8
+ unit,
9
+ TableLayout,
10
+ } from "ballerina-core";
2
11
  import { List, Map } from "immutable";
3
12
  import { LookupRenderer } from "../../../deserializer/domains/specification/domains/forms/domains/renderer/domains/lookup/state";
4
13
  export const RendererTraversal = {
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([
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([
43
78
  nodeResult,
44
79
  resolvedTraversal,
45
- ]))));
46
- }));
47
- })));
48
- }
49
- return LookupRenderer.Operations.ResolveRenderer(renderer, traversalContext.forms).Then((resolvedRenderer) => rec(resolvedRenderer, traversalContext).Then((valueTraversal) => ValueOrErrors.Default.return(valueTraversal)));
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());
50
107
  }
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) => {
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
+ );
115
+ }
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) => {
75
149
  return ValueOrErrors.Default.return({
76
- fieldName: fieldName,
77
- visibility: fieldRenderer.visible,
78
- fieldTraversal: fieldTraversal,
150
+ fieldName: fieldName,
151
+ visibility: fieldRenderer.visible,
152
+ fieldTraversal: fieldTraversal,
79
153
  });
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());
85
- }
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());
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 [];
135
210
  }
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());
144
- }
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);
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
+ );
170
301
  });
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);
302
+ });
303
+ }
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
+ );
191
333
  });
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}`);
334
+ });
215
335
  }
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({
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({
233
427
  caseName: caseName,
234
428
  caseTraversal: caseTraversal,
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());
240
- }
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
- });
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,
281
499
  });
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());
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 [];
287
537
  }
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
- }));
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
+ ];
555
+ });
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
+ );
326
576
  });
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());
327
588
  }
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);
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
+ );
366
631
  })
367
- : itemTraversal.kind == "r"
368
- ? itemTraversal.value(Object.assign(Object.assign({}, evalContext), { traversalIterator: iterator.value }))
369
- : ValueOrErrors.Default.return(traversalContext.zeroRes(unit));
370
- }));
371
- });
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());
372
653
  }
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());
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
+ );
377
722
  }
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)}`);
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
+ );
382
735
  }
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());
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;
400
758
  }
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
- }));
759
+ if (valueRes.kind == "errors") {
760
+ return valueRes;
761
+ }
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
+ );
442
787
  });
443
- });
444
- }
445
- return ValueOrErrors.Default.return(Option.Default.none());
446
- },
788
+ }),
789
+ );
790
+ },
791
+ );
792
+ },
793
+ );
794
+ }
795
+ return ValueOrErrors.Default.return(Option.Default.none());
447
796
  },
797
+ },
448
798
  };
449
- //# sourceMappingURL=state.js.map
799
+ //# sourceMappingURL=state.js.map