ballerina-core 1.0.197 → 1.0.199

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 (499) hide show
  1. package/bin/main.d.ts +1 -1
  2. package/bin/main.js +1 -1
  3. package/bin/src/api-response-handler/coroutines/runner.d.ts +2 -9
  4. package/bin/src/api-response-handler/coroutines/runner.js +13 -20
  5. package/bin/src/api-response-handler/state.d.ts +12 -12
  6. package/bin/src/api-response-handler/state.js +11 -13
  7. package/bin/src/apiResultStatus/state.d.ts +3 -10
  8. package/bin/src/apiResultStatus/state.js +5 -2
  9. package/bin/src/async/domains/mirroring/domains/collection/coroutines/synchronizers.d.ts +75 -400
  10. package/bin/src/async/domains/mirroring/domains/collection/coroutines/synchronizers.js +196 -314
  11. package/bin/src/async/domains/mirroring/domains/collection/state.d.ts +25 -38
  12. package/bin/src/async/domains/mirroring/domains/collection/state.js +36 -126
  13. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-collection/state.d.ts +8 -12
  14. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-collection/state.js +11 -18
  15. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-collection-entity/state.d.ts +9 -12
  16. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-collection-entity/state.js +19 -19
  17. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-entities/state.d.ts +8 -17
  18. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-entities/state.js +1 -1
  19. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-entity/state.d.ts +13 -16
  20. package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-entity/state.js +18 -18
  21. package/bin/src/async/domains/mirroring/domains/entity/state.d.ts +9 -12
  22. package/bin/src/async/domains/mirroring/domains/entity/state.js +9 -18
  23. package/bin/src/async/domains/mirroring/domains/singleton/coroutines/synchronizers.d.ts +41 -233
  24. package/bin/src/async/domains/mirroring/domains/singleton/coroutines/synchronizers.js +83 -134
  25. package/bin/src/async/domains/mirroring/domains/singleton/state.d.ts +15 -24
  26. package/bin/src/async/domains/mirroring/domains/singleton/state.js +8 -52
  27. package/bin/src/async/domains/mirroring/domains/synchronization-result/state.d.ts +2 -5
  28. package/bin/src/async/domains/mirroring/domains/synchronization-result/state.js +1 -1
  29. package/bin/src/async/domains/mirroring/domains/synchronized-entities/state.d.ts +10 -16
  30. package/bin/src/async/domains/mirroring/domains/synchronized-entities/state.js +4 -7
  31. package/bin/src/async/domains/promise/state.d.ts +4 -9
  32. package/bin/src/async/domains/promise/state.js +9 -20
  33. package/bin/src/async/domains/synchronized/coroutines/synchronize.d.ts +4 -29
  34. package/bin/src/async/domains/synchronized/coroutines/synchronize.js +28 -80
  35. package/bin/src/async/domains/synchronized/state.d.ts +7 -14
  36. package/bin/src/async/domains/synchronized/state.js +6 -16
  37. package/bin/src/async/state.d.ts +45 -56
  38. package/bin/src/async/state.js +97 -115
  39. package/bin/src/baseEntity/domains/identifiable/state.d.ts +11 -15
  40. package/bin/src/baseEntity/domains/identifiable/state.js +9 -9
  41. package/bin/src/collections/domains/array/state.d.ts +7 -7
  42. package/bin/src/collections/domains/array/state.js +5 -5
  43. package/bin/src/collections/domains/errors/state.d.ts +10 -10
  44. package/bin/src/collections/domains/errors/state.js +10 -10
  45. package/bin/src/collections/domains/immutable/domains/list/state.d.ts +15 -19
  46. package/bin/src/collections/domains/immutable/domains/list/state.js +44 -46
  47. package/bin/src/collections/domains/immutable/domains/map/state.d.ts +16 -30
  48. package/bin/src/collections/domains/immutable/domains/map/state.js +23 -41
  49. package/bin/src/collections/domains/immutable/domains/orderedMap/state.d.ts +25 -53
  50. package/bin/src/collections/domains/immutable/domains/orderedMap/state.js +65 -84
  51. package/bin/src/collections/domains/immutable/domains/ordereredSet/state.d.ts +6 -6
  52. package/bin/src/collections/domains/immutable/domains/ordereredSet/state.js +6 -6
  53. package/bin/src/collections/domains/maybe/state.d.ts +9 -9
  54. package/bin/src/collections/domains/maybe/state.js +9 -12
  55. package/bin/src/collections/domains/product/state.d.ts +19 -25
  56. package/bin/src/collections/domains/product/state.js +10 -13
  57. package/bin/src/collections/domains/sum/state.d.ts +77 -101
  58. package/bin/src/collections/domains/sum/state.js +32 -49
  59. package/bin/src/collections/domains/valueOrErrors/state.d.ts +27 -53
  60. package/bin/src/collections/domains/valueOrErrors/state.js +56 -81
  61. package/bin/src/coroutines/builder.d.ts +49 -135
  62. package/bin/src/coroutines/builder.js +19 -40
  63. package/bin/src/coroutines/state.d.ts +71 -186
  64. package/bin/src/coroutines/state.js +306 -381
  65. package/bin/src/coroutines/template.d.ts +8 -17
  66. package/bin/src/coroutines/template.js +59 -97
  67. package/bin/src/debounced/coroutines/debounce.d.ts +6 -15
  68. package/bin/src/debounced/coroutines/debounce.js +89 -115
  69. package/bin/src/debounced/state.d.ts +19 -26
  70. package/bin/src/debounced/state.js +25 -62
  71. package/bin/src/diagnostics/domains/message-box/state.d.ts +1 -1
  72. package/bin/src/diagnostics/domains/message-box/state.js +3 -3
  73. package/bin/src/foreignMutations/state.d.ts +3 -3
  74. package/bin/src/foreignMutations/state.js +1 -1
  75. package/bin/src/forms/domains/attachments/views/attachments-view.d.ts +4 -4
  76. package/bin/src/forms/domains/attachments/views/attachments-view.js +8 -30
  77. package/bin/src/forms/domains/collection/domains/reference/state.d.ts +22 -29
  78. package/bin/src/forms/domains/collection/domains/reference/state.js +20 -26
  79. package/bin/src/forms/domains/collection/domains/selection/state.d.ts +15 -37
  80. package/bin/src/forms/domains/collection/domains/selection/state.js +1 -1
  81. package/bin/src/forms/domains/dispatched-forms/built-ins/state.d.ts +109 -531
  82. package/bin/src/forms/domains/dispatched-forms/built-ins/state.d.ts.map +1 -1
  83. package/bin/src/forms/domains/dispatched-forms/built-ins/state.js +563 -1472
  84. package/bin/src/forms/domains/dispatched-forms/built-ins/state.js.map +1 -1
  85. package/bin/src/forms/domains/dispatched-forms/deserializer/coroutines/runner.d.ts +2 -22
  86. package/bin/src/forms/domains/dispatched-forms/deserializer/coroutines/runner.js +44 -128
  87. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/apis/state.d.ts +49 -68
  88. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/apis/state.js +96 -178
  89. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/enum/state.d.ts +19 -35
  90. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/enum/state.js +27 -40
  91. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/list/state.d.ts +28 -60
  92. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/list/state.js +40 -76
  93. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/lookup/state.d.ts +56 -121
  94. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/lookup/state.js +59 -102
  95. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/map/state.d.ts +15 -42
  96. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/map/state.js +29 -64
  97. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/nestedRenderer/state.d.ts +29 -70
  98. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/nestedRenderer/state.js +20 -52
  99. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/one/state.d.ts +18 -61
  100. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/one/state.js +33 -88
  101. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/primitive/state.d.ts +10 -20
  102. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/primitive/state.js +13 -21
  103. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/readOnly/state.d.ts +19 -50
  104. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/readOnly/state.js +23 -52
  105. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/record/domains/recordFieldRenderer/state.d.ts +11 -42
  106. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/record/domains/recordFieldRenderer/state.js +18 -59
  107. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/record/state.d.ts +18 -46
  108. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/record/state.js +48 -110
  109. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/stream/state.d.ts +14 -29
  110. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/stream/state.js +27 -43
  111. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/sum/state.d.ts +19 -49
  112. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/sum/state.js +23 -63
  113. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/sumUnitDate/state.d.ts +13 -21
  114. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/sumUnitDate/state.js +22 -39
  115. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/table/domains/tableCellRenderer/state.d.ts +10 -39
  116. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/table/domains/tableCellRenderer/state.js +11 -46
  117. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/table/state.d.ts +34 -79
  118. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/table/state.js +46 -146
  119. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/tuple/state.d.ts +13 -37
  120. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/tuple/state.js +29 -64
  121. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/union/state.d.ts +15 -40
  122. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/union/state.js +33 -78
  123. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/state.d.ts +19 -107
  124. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/state.js +62 -157
  125. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/types/state.d.ts +165 -290
  126. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/types/state.js +391 -731
  127. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/state.d.ts +51 -103
  128. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/state.d.ts.map +1 -1
  129. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/state.js +94 -258
  130. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/state.js.map +1 -1
  131. package/bin/src/forms/domains/dispatched-forms/deserializer/state.d.ts +80 -302
  132. package/bin/src/forms/domains/dispatched-forms/deserializer/state.d.ts.map +1 -1
  133. package/bin/src/forms/domains/dispatched-forms/deserializer/state.js +55 -174
  134. package/bin/src/forms/domains/dispatched-forms/deserializer/state.js.map +1 -1
  135. package/bin/src/forms/domains/dispatched-forms/deserializer/template.d.ts +2 -27
  136. package/bin/src/forms/domains/dispatched-forms/deserializer/template.js +2 -3
  137. package/bin/src/forms/domains/dispatched-forms/runner/coroutines/runner.d.ts +4 -27
  138. package/bin/src/forms/domains/dispatched-forms/runner/coroutines/runner.js +82 -136
  139. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/base-64-file/state.d.ts +7 -35
  140. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/base-64-file/state.js +3 -3
  141. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/base-64-file/template.d.ts +4 -28
  142. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/base-64-file/template.js +23 -49
  143. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/boolean/state.d.ts +7 -32
  144. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/boolean/state.js +3 -3
  145. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/boolean/template.d.ts +4 -25
  146. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/boolean/template.js +23 -49
  147. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/date/state.d.ts +19 -56
  148. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/date/state.js +6 -18
  149. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/date/template.d.ts +7 -29
  150. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/date/template.js +30 -64
  151. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum/state.d.ts +15 -42
  152. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum/state.js +6 -9
  153. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum/template.d.ts +8 -40
  154. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum/template.js +59 -150
  155. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum-multiselect/state.d.ts +11 -45
  156. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum-multiselect/state.js +1 -1
  157. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum-multiselect/template.d.ts +8 -42
  158. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum-multiselect/template.js +50 -127
  159. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/injectables/state.d.ts +19 -55
  160. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/injectables/state.js +22 -40
  161. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/list/state.d.ts +27 -76
  162. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/list/state.js +10 -19
  163. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/list/template.d.ts +6 -50
  164. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/list/template.js +97 -290
  165. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/lookup-type/state.d.ts +7 -41
  166. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/lookup-type/state.js +1 -1
  167. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/lookup-type/template.d.ts +4 -45
  168. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/lookup-type/template.js +8 -28
  169. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/map/state.d.ts +26 -103
  170. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/map/state.js +18 -61
  171. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/map/template.d.ts +9 -64
  172. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/map/template.js +89 -308
  173. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/number/state.d.ts +7 -37
  174. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/number/state.js +3 -3
  175. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/number/template.d.ts +4 -29
  176. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/number/template.js +23 -54
  177. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_debouncer.d.ts +13 -48
  178. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_debouncer.js +10 -22
  179. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_initializeOne.d.ts +12 -57
  180. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_initializeOne.d.ts.map +1 -1
  181. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_initializeOne.js +27 -68
  182. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_initializeOne.js.map +1 -1
  183. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_initializeStream.d.ts +11 -45
  184. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_initializeStream.d.ts.map +1 -1
  185. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_initializeStream.js +10 -28
  186. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_initializeStream.js.map +1 -1
  187. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/builder.d.ts +1280 -3903
  188. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/builder.js +2 -2
  189. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/runner.d.ts +36 -153
  190. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/runner.d.ts.map +1 -1
  191. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/runner.js +26 -45
  192. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/runner.js.map +1 -1
  193. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/state.d.ts +80 -231
  194. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/state.d.ts.map +1 -1
  195. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/state.js +37 -85
  196. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/state.js.map +1 -1
  197. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/template.d.ts +10 -59
  198. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/template.d.ts.map +1 -1
  199. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/template.js +146 -343
  200. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/template.js.map +1 -1
  201. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/readOnly/state.d.ts +20 -65
  202. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/readOnly/state.js +10 -19
  203. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/readOnly/template.d.ts +6 -47
  204. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/readOnly/template.js +18 -61
  205. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/record/state.d.ts +21 -81
  206. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/record/state.js +11 -32
  207. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/record/template.d.ts +10 -57
  208. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/record/template.js +63 -194
  209. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream/state.d.ts +49 -123
  210. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream/state.js +13 -35
  211. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream/template.d.ts +8 -45
  212. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream/template.js +68 -195
  213. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream-multiselect/state.d.ts +51 -121
  214. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream-multiselect/state.js +13 -36
  215. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream-multiselect/template.d.ts +8 -45
  216. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream-multiselect/template.js +106 -246
  217. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/secret/state.d.ts +8 -38
  218. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/secret/state.js +3 -3
  219. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/secret/template.d.ts +4 -29
  220. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/secret/template.js +23 -54
  221. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/state.d.ts +34 -58
  222. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/state.js +13 -24
  223. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/string/state.d.ts +8 -38
  224. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/string/state.js +3 -3
  225. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/string/template.d.ts +4 -29
  226. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/string/template.js +26 -58
  227. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/sum/state.d.ts +29 -92
  228. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/sum/state.js +7 -22
  229. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/sum/template.d.ts +7 -55
  230. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/sum/template.js +48 -162
  231. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/runner.d.ts +24 -83
  232. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/runner.js +40 -89
  233. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/runner.js.map +1 -1
  234. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/state.d.ts +155 -324
  235. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/state.d.ts.map +1 -1
  236. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/state.js +56 -117
  237. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/state.js.map +1 -1
  238. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/template.d.ts +9 -69
  239. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/template.d.ts.map +1 -1
  240. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/template.js +231 -494
  241. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/template.js.map +1 -1
  242. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/tuple/state.d.ts +18 -75
  243. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/tuple/state.js +8 -20
  244. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/tuple/template.d.ts +6 -51
  245. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/tuple/template.js +32 -121
  246. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/union/state.d.ts +18 -76
  247. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/union/state.js +8 -21
  248. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/union/template.d.ts +6 -51
  249. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/union/template.js +31 -90
  250. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/unit/state.d.ts +13 -45
  251. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/unit/state.js +9 -12
  252. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/unit/template.d.ts +6 -29
  253. package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/unit/template.js +20 -54
  254. package/bin/src/forms/domains/dispatched-forms/runner/domains/deltas/state.d.ts +438 -601
  255. package/bin/src/forms/domains/dispatched-forms/runner/domains/deltas/state.js +516 -665
  256. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/list/state.d.ts +5 -24
  257. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/list/state.js +16 -51
  258. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/lookup/state.d.ts +6 -26
  259. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/lookup/state.js +13 -40
  260. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/map/state.d.ts +5 -23
  261. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/map/state.js +16 -68
  262. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/multiSelection/state.d.ts +5 -22
  263. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/multiSelection/state.js +22 -76
  264. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/nestedDispatcher/state.d.ts +6 -41
  265. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/nestedDispatcher/state.js +8 -37
  266. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/one/state.d.ts +7 -57
  267. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/one/state.js +38 -130
  268. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/primitive/state.d.ts +5 -22
  269. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/primitive/state.d.ts.map +1 -1
  270. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/primitive/state.js +61 -139
  271. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/primitive/state.js.map +1 -1
  272. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/readOnly/state.d.ts +5 -24
  273. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/readOnly/state.js +10 -37
  274. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/recordField/state.d.ts +5 -26
  275. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/recordField/state.js +4 -14
  276. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/state.d.ts +6 -49
  277. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/state.js +25 -79
  278. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/singleSelectionDispatcher/state.d.ts +5 -22
  279. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/singleSelectionDispatcher/state.js +22 -76
  280. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/sum/state.d.ts +5 -25
  281. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/sum/state.js +18 -55
  282. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/table/state.d.ts +7 -54
  283. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/table/state.js +48 -161
  284. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/tupleDispatcher/state.d.ts +5 -25
  285. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/tupleDispatcher/state.js +11 -54
  286. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/unionDispatcher/state.d.ts +5 -25
  287. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/unionDispatcher/state.js +15 -63
  288. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/state.d.ts +6 -44
  289. package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/state.js +45 -144
  290. package/bin/src/forms/domains/dispatched-forms/runner/domains/traversal/state.d.ts +18 -38
  291. package/bin/src/forms/domains/dispatched-forms/runner/domains/traversal/state.js +423 -773
  292. package/bin/src/forms/domains/dispatched-forms/runner/state.d.ts +37 -90
  293. package/bin/src/forms/domains/dispatched-forms/runner/state.js +9 -12
  294. package/bin/src/forms/domains/dispatched-forms/runner/template.d.ts +4 -28
  295. package/bin/src/forms/domains/dispatched-forms/runner/template.js +19 -47
  296. package/bin/src/forms/domains/launcher/coroutines/runner.d.ts +4 -12
  297. package/bin/src/forms/domains/launcher/coroutines/runner.js +45 -120
  298. package/bin/src/forms/domains/launcher/domains/create/coroutines/runner.d.ts +3 -16
  299. package/bin/src/forms/domains/launcher/domains/create/coroutines/runner.js +101 -240
  300. package/bin/src/forms/domains/launcher/domains/create/state.d.ts +121 -236
  301. package/bin/src/forms/domains/launcher/domains/create/state.js +17 -62
  302. package/bin/src/forms/domains/launcher/domains/create/template.d.ts +6 -20
  303. package/bin/src/forms/domains/launcher/domains/create/template.js +42 -84
  304. package/bin/src/forms/domains/launcher/domains/edit/coroutines/runner.d.ts +3 -16
  305. package/bin/src/forms/domains/launcher/domains/edit/coroutines/runner.js +103 -242
  306. package/bin/src/forms/domains/launcher/domains/edit/state.d.ts +121 -230
  307. package/bin/src/forms/domains/launcher/domains/edit/state.js +17 -62
  308. package/bin/src/forms/domains/launcher/domains/edit/template.d.ts +6 -20
  309. package/bin/src/forms/domains/launcher/domains/edit/template.js +43 -86
  310. package/bin/src/forms/domains/launcher/domains/merger/state.d.ts +4 -4
  311. package/bin/src/forms/domains/launcher/domains/merger/state.js +26 -35
  312. package/bin/src/forms/domains/launcher/domains/passthrough/coroutines/runner.d.ts +5 -20
  313. package/bin/src/forms/domains/launcher/domains/passthrough/coroutines/runner.js +42 -88
  314. package/bin/src/forms/domains/launcher/domains/passthrough/state.d.ts +58 -123
  315. package/bin/src/forms/domains/launcher/domains/passthrough/state.js +19 -44
  316. package/bin/src/forms/domains/launcher/domains/passthrough/template.d.ts +6 -23
  317. package/bin/src/forms/domains/launcher/domains/passthrough/template.js +34 -56
  318. package/bin/src/forms/domains/launcher/state.d.ts +43 -62
  319. package/bin/src/forms/domains/launcher/state.js +6 -6
  320. package/bin/src/forms/domains/launcher/template.d.ts +15 -35
  321. package/bin/src/forms/domains/launcher/template.js +85 -169
  322. package/bin/src/forms/domains/parser/coroutines/runner.d.ts +5 -13
  323. package/bin/src/forms/domains/parser/coroutines/runner.js +25 -87
  324. package/bin/src/forms/domains/parser/domains/built-ins/state.d.ts +71 -135
  325. package/bin/src/forms/domains/parser/domains/built-ins/state.js +533 -944
  326. package/bin/src/forms/domains/parser/domains/deltas/state.d.ts +296 -417
  327. package/bin/src/forms/domains/parser/domains/deltas/state.js +318 -444
  328. package/bin/src/forms/domains/parser/domains/injectables/state.d.ts +20 -29
  329. package/bin/src/forms/domains/parser/domains/injectables/state.js +26 -29
  330. package/bin/src/forms/domains/parser/domains/layout/state.d.ts +41 -63
  331. package/bin/src/forms/domains/parser/domains/layout/state.js +136 -214
  332. package/bin/src/forms/domains/parser/domains/predicates/domains/extractor/state.d.ts +6 -19
  333. package/bin/src/forms/domains/parser/domains/predicates/domains/extractor/state.d.ts.map +1 -1
  334. package/bin/src/forms/domains/parser/domains/predicates/domains/extractor/state.js +162 -307
  335. package/bin/src/forms/domains/parser/domains/predicates/domains/extractor/state.js.map +1 -1
  336. package/bin/src/forms/domains/parser/domains/predicates/state.d.ts +246 -382
  337. package/bin/src/forms/domains/parser/domains/predicates/state.js +761 -1236
  338. package/bin/src/forms/domains/parser/domains/renderer/state.d.ts +92 -245
  339. package/bin/src/forms/domains/parser/domains/renderer/state.js +480 -1137
  340. package/bin/src/forms/domains/parser/domains/types/state.d.ts +130 -170
  341. package/bin/src/forms/domains/parser/domains/types/state.js +170 -355
  342. package/bin/src/forms/domains/parser/domains/validator/state.d.ts +117 -143
  343. package/bin/src/forms/domains/parser/domains/validator/state.js +280 -417
  344. package/bin/src/forms/domains/parser/state.d.ts +82 -217
  345. package/bin/src/forms/domains/parser/state.js +373 -612
  346. package/bin/src/forms/domains/parser/template.d.ts +5 -13
  347. package/bin/src/forms/domains/parser/template.js +1 -1
  348. package/bin/src/forms/domains/primitives/domains/base-64-file/state.d.ts +11 -19
  349. package/bin/src/forms/domains/primitives/domains/base-64-file/state.js +5 -5
  350. package/bin/src/forms/domains/primitives/domains/base-64-file/template.d.ts +7 -18
  351. package/bin/src/forms/domains/primitives/domains/base-64-file/template.js +19 -38
  352. package/bin/src/forms/domains/primitives/domains/boolean/state.d.ts +11 -19
  353. package/bin/src/forms/domains/primitives/domains/boolean/state.js +5 -5
  354. package/bin/src/forms/domains/primitives/domains/boolean/template.d.ts +8 -24
  355. package/bin/src/forms/domains/primitives/domains/boolean/template.js +19 -38
  356. package/bin/src/forms/domains/primitives/domains/date/state.d.ts +20 -39
  357. package/bin/src/forms/domains/primitives/domains/date/state.js +9 -18
  358. package/bin/src/forms/domains/primitives/domains/date/template.d.ts +7 -18
  359. package/bin/src/forms/domains/primitives/domains/date/template.js +25 -51
  360. package/bin/src/forms/domains/primitives/domains/enum/state.d.ts +15 -31
  361. package/bin/src/forms/domains/primitives/domains/enum/state.js +6 -6
  362. package/bin/src/forms/domains/primitives/domains/enum/template.d.ts +7 -18
  363. package/bin/src/forms/domains/primitives/domains/enum/template.js +48 -117
  364. package/bin/src/forms/domains/primitives/domains/enum-multiselect/state.d.ts +8 -17
  365. package/bin/src/forms/domains/primitives/domains/enum-multiselect/state.js +1 -1
  366. package/bin/src/forms/domains/primitives/domains/enum-multiselect/template.d.ts +7 -18
  367. package/bin/src/forms/domains/primitives/domains/enum-multiselect/template.js +40 -99
  368. package/bin/src/forms/domains/primitives/domains/list/state.d.ts +24 -45
  369. package/bin/src/forms/domains/primitives/domains/list/state.js +14 -14
  370. package/bin/src/forms/domains/primitives/domains/list/template.d.ts +13 -38
  371. package/bin/src/forms/domains/primitives/domains/list/template.js +71 -200
  372. package/bin/src/forms/domains/primitives/domains/map/state.d.ts +29 -68
  373. package/bin/src/forms/domains/primitives/domains/map/state.js +14 -14
  374. package/bin/src/forms/domains/primitives/domains/map/template.d.ts +25 -65
  375. package/bin/src/forms/domains/primitives/domains/map/template.js +103 -294
  376. package/bin/src/forms/domains/primitives/domains/number/state.d.ts +11 -19
  377. package/bin/src/forms/domains/primitives/domains/number/state.js +5 -5
  378. package/bin/src/forms/domains/primitives/domains/number/template.d.ts +8 -24
  379. package/bin/src/forms/domains/primitives/domains/number/template.js +19 -38
  380. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream/state.d.ts +42 -89
  381. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream/state.js +16 -33
  382. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream/template.d.ts +8 -22
  383. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream/template.js +62 -171
  384. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream-multiselect/state.d.ts +9 -18
  385. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream-multiselect/state.js +1 -1
  386. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream-multiselect/template.d.ts +7 -18
  387. package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream-multiselect/template.js +69 -182
  388. package/bin/src/forms/domains/primitives/domains/secret/state.d.ts +11 -19
  389. package/bin/src/forms/domains/primitives/domains/secret/state.js +5 -5
  390. package/bin/src/forms/domains/primitives/domains/secret/template.d.ts +7 -18
  391. package/bin/src/forms/domains/primitives/domains/secret/template.js +19 -38
  392. package/bin/src/forms/domains/primitives/domains/string/state.d.ts +13 -21
  393. package/bin/src/forms/domains/primitives/domains/string/state.js +5 -5
  394. package/bin/src/forms/domains/primitives/domains/string/template.d.ts +7 -18
  395. package/bin/src/forms/domains/primitives/domains/string/template.js +22 -42
  396. package/bin/src/forms/domains/primitives/domains/sum/state.d.ts +22 -62
  397. package/bin/src/forms/domains/primitives/domains/sum/state.js +10 -10
  398. package/bin/src/forms/domains/primitives/domains/sum/template.d.ts +16 -48
  399. package/bin/src/forms/domains/primitives/domains/sum/template.js +50 -141
  400. package/bin/src/forms/domains/primitives/domains/tuple/state.d.ts +23 -48
  401. package/bin/src/forms/domains/primitives/domains/tuple/state.js +9 -9
  402. package/bin/src/forms/domains/primitives/domains/tuple/template.d.ts +18 -46
  403. package/bin/src/forms/domains/primitives/domains/tuple/template.js +33 -100
  404. package/bin/src/forms/domains/primitives/domains/unit/state.d.ts +10 -17
  405. package/bin/src/forms/domains/primitives/domains/unit/state.js +8 -8
  406. package/bin/src/forms/domains/primitives/domains/unit/template.d.ts +4 -9
  407. package/bin/src/forms/domains/primitives/domains/unit/template.js +9 -22
  408. package/bin/src/forms/domains/singleton/domains/form-label/state.d.ts +4 -4
  409. package/bin/src/forms/domains/singleton/domains/form-label/state.js +1 -1
  410. package/bin/src/forms/domains/singleton/state.d.ts +43 -144
  411. package/bin/src/forms/domains/singleton/state.js +10 -12
  412. package/bin/src/forms/domains/singleton/template.d.ts +88 -177
  413. package/bin/src/forms/domains/singleton/template.js +113 -288
  414. package/bin/src/fun/domains/curry/state.d.ts +2 -4
  415. package/bin/src/fun/domains/curry/state.js +1 -1
  416. package/bin/src/fun/domains/id/state.d.ts +1 -1
  417. package/bin/src/fun/domains/id/state.js +1 -1
  418. package/bin/src/fun/domains/predicate/domains/bool-expr.d.ts +41 -57
  419. package/bin/src/fun/domains/predicate/domains/bool-expr.js +67 -76
  420. package/bin/src/fun/domains/predicate/state.d.ts +7 -9
  421. package/bin/src/fun/domains/predicate/state.js +10 -14
  422. package/bin/src/fun/domains/simpleCallback/state.d.ts +1 -1
  423. package/bin/src/fun/domains/simpleCallback/state.js +1 -1
  424. package/bin/src/fun/domains/uncurry/state.d.ts +2 -4
  425. package/bin/src/fun/domains/uncurry/state.js +1 -1
  426. package/bin/src/fun/domains/unit/state.d.ts +1 -1
  427. package/bin/src/fun/domains/unit/state.js +1 -1
  428. package/bin/src/fun/domains/updater/domains/caseUpdater/state.d.ts +7 -22
  429. package/bin/src/fun/domains/updater/domains/caseUpdater/state.js +10 -18
  430. package/bin/src/fun/domains/updater/domains/mapUpdater/state.d.ts +13 -24
  431. package/bin/src/fun/domains/updater/domains/mapUpdater/state.js +10 -40
  432. package/bin/src/fun/domains/updater/domains/maybeUpdater/state.d.ts +13 -19
  433. package/bin/src/fun/domains/updater/domains/maybeUpdater/state.js +9 -20
  434. package/bin/src/fun/domains/updater/domains/orderedMapUpdater/state.d.ts +13 -24
  435. package/bin/src/fun/domains/updater/domains/orderedMapUpdater/state.js +11 -47
  436. package/bin/src/fun/domains/updater/domains/orderedSetUpdater/state.d.ts +8 -20
  437. package/bin/src/fun/domains/updater/domains/orderedSetUpdater/state.js +5 -17
  438. package/bin/src/fun/domains/updater/domains/replaceWith/state.d.ts +1 -1
  439. package/bin/src/fun/domains/updater/domains/replaceWith/state.js +1 -1
  440. package/bin/src/fun/domains/updater/domains/simpleUpdater/domains/baseSimpleUpdater/state.d.ts +4 -13
  441. package/bin/src/fun/domains/updater/domains/simpleUpdater/domains/baseSimpleUpdater/state.js +4 -6
  442. package/bin/src/fun/domains/updater/domains/simpleUpdater/state.d.ts +22 -60
  443. package/bin/src/fun/domains/updater/domains/simpleUpdater/state.js +31 -42
  444. package/bin/src/fun/domains/updater/state.d.ts +4 -4
  445. package/bin/src/fun/domains/updater/state.js +10 -12
  446. package/bin/src/fun/state.d.ts +3 -3
  447. package/bin/src/fun/state.js +7 -9
  448. package/bin/src/infinite-data-stream/coroutines/builder.d.ts +27 -209
  449. package/bin/src/infinite-data-stream/coroutines/builder.js +1 -1
  450. package/bin/src/infinite-data-stream/coroutines/infiniteLoader.d.ts +5 -21
  451. package/bin/src/infinite-data-stream/coroutines/infiniteLoader.js +20 -47
  452. package/bin/src/infinite-data-stream/coroutines/runner.d.ts +3 -11
  453. package/bin/src/infinite-data-stream/coroutines/runner.js +7 -7
  454. package/bin/src/infinite-data-stream/state.d.ts +51 -84
  455. package/bin/src/infinite-data-stream/state.js +61 -125
  456. package/bin/src/infinite-data-stream/template.d.ts +3 -10
  457. package/bin/src/infinite-data-stream/template.js +2 -3
  458. package/bin/src/math/domains/DOMRect/state.d.ts +4 -4
  459. package/bin/src/math/domains/DOMRect/state.js +8 -10
  460. package/bin/src/math/domains/number/state.d.ts +5 -5
  461. package/bin/src/math/domains/number/state.js +5 -5
  462. package/bin/src/math/domains/rect/state.d.ts +8 -8
  463. package/bin/src/math/domains/rect/state.js +15 -16
  464. package/bin/src/math/domains/rgba/state.d.ts +17 -17
  465. package/bin/src/math/domains/rgba/state.js +81 -77
  466. package/bin/src/math/domains/size2/state.d.ts +8 -8
  467. package/bin/src/math/domains/size2/state.js +6 -6
  468. package/bin/src/math/domains/vector2/state.d.ts +10 -10
  469. package/bin/src/math/domains/vector2/state.js +8 -8
  470. package/bin/src/queue/state.d.ts +7 -23
  471. package/bin/src/queue/state.js +16 -23
  472. package/bin/src/state/domains/repository/state.d.ts +9 -15
  473. package/bin/src/state/domains/repository/state.js +1 -1
  474. package/bin/src/template/state.d.ts +45 -153
  475. package/bin/src/template/state.js +115 -163
  476. package/bin/src/validation/state.d.ts +9 -23
  477. package/bin/src/validation/state.js +45 -38
  478. package/bin/src/value/domains/mutable-value/state.d.ts +3 -3
  479. package/bin/src/value/domains/mutable-value/state.js +2 -3
  480. package/bin/src/value/state.d.ts +9 -9
  481. package/bin/src/value/state.js +8 -11
  482. package/bin/src/value-infinite-data-stream/coroutines/builder.d.ts +25 -207
  483. package/bin/src/value-infinite-data-stream/coroutines/builder.js +1 -1
  484. package/bin/src/value-infinite-data-stream/coroutines/infiniteLoader.d.ts +2 -4
  485. package/bin/src/value-infinite-data-stream/coroutines/infiniteLoader.js +20 -55
  486. package/bin/src/value-infinite-data-stream/coroutines/runner.d.ts +2 -8
  487. package/bin/src/value-infinite-data-stream/coroutines/runner.js +4 -6
  488. package/bin/src/value-infinite-data-stream/state.d.ts +68 -132
  489. package/bin/src/value-infinite-data-stream/state.d.ts.map +1 -1
  490. package/bin/src/value-infinite-data-stream/state.js +77 -187
  491. package/bin/src/value-infinite-data-stream/state.js.map +1 -1
  492. package/bin/src/value-infinite-data-stream/template.d.ts +2 -7
  493. package/bin/src/value-infinite-data-stream/template.js +2 -4
  494. package/bin/src/visibility/state.d.ts +2 -5
  495. package/bin/src/visibility/state.js +1 -1
  496. package/package.json +2 -2
  497. package/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/runner.ts +1 -1
  498. package/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/state.ts +8 -1
  499. package/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/template.tsx +117 -39
@@ -1,1518 +1,609 @@
1
1
  import { Map, List, OrderedMap } from "immutable";
2
- import {
3
- CollectionReference,
4
- EnumReference,
5
- } from "../../collection/domains/reference/state";
2
+ import { CollectionReference, EnumReference, } from "../../collection/domains/reference/state";
6
3
  import { ValueOrErrors } from "../../../../collections/domains/valueOrErrors/state";
7
- import {
8
- PredicateValue,
9
- replaceWith,
10
- Sum,
11
- unit,
12
- RecordAbstractRendererState,
13
- TableAbstractRendererState,
14
- MapRepo,
15
- ValueTable,
16
- DispatchCommonFormState,
17
- UnionAbstractRendererState,
18
- OneAbstractRendererState,
19
- } from "../../../../../main";
20
- import { DispatchParsedType } from "../deserializer/domains/specification/domains/types/state";
21
- import { UnitAbstractRendererState } from "../runner/domains/abstract-renderers/unit/state";
22
- import { StringAbstractRendererState } from "../runner/domains/abstract-renderers/string/state";
23
- import { NumberAbstractRendererState } from "../runner/domains/abstract-renderers/number/state";
24
- import { BoolAbstractRendererState } from "../runner/domains/abstract-renderers/boolean/state";
25
- import { DateAbstractRendererState } from "../runner/domains/abstract-renderers/date/state";
26
- import { Base64FileAbstractRendererState } from "../runner/domains/abstract-renderers/base-64-file/state";
27
- import { SecretAbstractRendererState } from "../runner/domains/abstract-renderers/secret/state";
4
+ import { PredicateValue, replaceWith, Sum, unit, RecordAbstractRendererState, TableAbstractRendererState, MapRepo, ValueTable, DispatchCommonFormState, UnionAbstractRendererState, OneAbstractRendererState, } from "../../../../../main";
5
+ import { DispatchParsedType, } from "../deserializer/domains/specification/domains/types/state";
6
+ import { UnitAbstractRendererState, } from "../runner/domains/abstract-renderers/unit/state";
7
+ import { StringAbstractRendererState, } from "../runner/domains/abstract-renderers/string/state";
8
+ import { NumberAbstractRendererState, } from "../runner/domains/abstract-renderers/number/state";
9
+ import { BoolAbstractRendererState, } from "../runner/domains/abstract-renderers/boolean/state";
10
+ import { DateAbstractRendererState, } from "../runner/domains/abstract-renderers/date/state";
11
+ import { Base64FileAbstractRendererState, } from "../runner/domains/abstract-renderers/base-64-file/state";
12
+ import { SecretAbstractRendererState, } from "../runner/domains/abstract-renderers/secret/state";
28
13
  import { ReadOnlyAbstractRendererState } from "../runner/domains/abstract-renderers/readOnly/state";
29
- import { MapAbstractRendererState } from "../runner/domains/abstract-renderers/map/state";
30
- import { TupleAbstractRendererState } from "../runner/domains/abstract-renderers/tuple/state";
31
- import { SumAbstractRendererState } from "../runner/domains/abstract-renderers/sum/state";
32
- import { EnumAbstractRendererState } from "../runner/domains/abstract-renderers/enum/state";
33
- import { ListAbstractRendererState } from "../runner/domains/abstract-renderers/list/state";
34
- import { SearchableInfiniteStreamAbstractRendererState } from "../runner/domains/abstract-renderers/searchable-infinite-stream/state";
14
+ import { MapAbstractRendererState, } from "../runner/domains/abstract-renderers/map/state";
15
+ import { TupleAbstractRendererState, } from "../runner/domains/abstract-renderers/tuple/state";
16
+ import { SumAbstractRendererState, } from "../runner/domains/abstract-renderers/sum/state";
17
+ import { EnumAbstractRendererState, } from "../runner/domains/abstract-renderers/enum/state";
18
+ import { ListAbstractRendererState, } from "../runner/domains/abstract-renderers/list/state";
19
+ import { SearchableInfiniteStreamAbstractRendererState, } from "../runner/domains/abstract-renderers/searchable-infinite-stream/state";
35
20
  import { LookupRenderer } from "../deserializer/domains/specification/domains/forms/domains/renderer/domains/lookup/state";
36
- const sortObjectKeys = (obj) =>
37
- Object.keys(obj)
21
+ const sortObjectKeys = (obj) => Object.keys(obj)
38
22
  .sort()
39
23
  .reduce((sortedObj, key) => {
40
- sortedObj[key] = obj[key];
41
- return sortedObj;
42
- }, {});
24
+ sortedObj[key] = obj[key];
25
+ return sortedObj;
26
+ }, {});
43
27
  const simpleMapKeyToIdentifer = (key) => {
44
- if (typeof key == "object") return JSON.stringify(sortObjectKeys(key));
45
- return JSON.stringify(key);
28
+ if (typeof key == "object")
29
+ return JSON.stringify(sortObjectKeys(key));
30
+ return JSON.stringify(key);
46
31
  };
47
32
  export const DispatchGenericTypes = [
48
- "SingleSelection",
49
- "MultiSelection",
50
- "List",
51
- "Map",
52
- "Union",
53
- "Tuple",
54
- "Option",
55
- "Sum",
56
- "KeyOf",
57
- "Table",
58
- "One",
59
- "ReadOnly",
33
+ "SingleSelection",
34
+ "MultiSelection",
35
+ "List",
36
+ "Map",
37
+ "Union",
38
+ "Tuple",
39
+ "Option",
40
+ "Sum",
41
+ "KeyOf",
42
+ "Table",
43
+ "One",
44
+ "ReadOnly",
60
45
  ];
61
46
  export const concreteRendererToKind = (concreteRenderers) => (name) => {
62
- const viewTypes = Object.keys(concreteRenderers);
63
- for (const viewType of viewTypes) {
64
- if (name in concreteRenderers[viewType]) {
65
- return ValueOrErrors.Default.return(viewType);
47
+ const viewTypes = Object.keys(concreteRenderers);
48
+ for (const viewType of viewTypes) {
49
+ if (name in concreteRenderers[viewType]) {
50
+ return ValueOrErrors.Default.return(viewType);
51
+ }
66
52
  }
67
- }
68
- return ValueOrErrors.Default.throwOne(
69
- `cannot find view ${name} in concrete renderers`,
70
- );
53
+ return ValueOrErrors.Default.throwOne(`cannot find view ${name} in concrete renderers`);
71
54
  };
72
55
  export const tryGetConcreteRenderer = (concreteRenderers) => (kind, name) => {
73
- if (!concreteRenderers[kind]) {
74
- return ValueOrErrors.Default.throwOne(
75
- `cannot find concrete renderer kind "${kind}" in concrete renderers`,
76
- );
77
- }
78
- if (concreteRenderers[kind][name]) {
79
- return ValueOrErrors.Default.return(concreteRenderers[kind][name]());
80
- }
81
- return ValueOrErrors.Default.throwOne(
82
- `cannot find concrete renderer "${name}" in kind "${kind}"`,
83
- );
56
+ if (!concreteRenderers[kind]) {
57
+ return ValueOrErrors.Default.throwOne(`cannot find concrete renderer kind "${kind}" in concrete renderers`);
58
+ }
59
+ if (concreteRenderers[kind][name]) {
60
+ return ValueOrErrors.Default.return(concreteRenderers[kind][name]());
61
+ }
62
+ return ValueOrErrors.Default.throwOne(`cannot find concrete renderer "${name}" in kind "${kind}"`);
84
63
  };
85
- export const getDefaultRecordRenderer = (
86
- isNested,
87
- defaultRecordRenderer,
88
- defaultNestedRecordRenderer,
89
- ) => (isNested ? defaultNestedRecordRenderer() : defaultRecordRenderer());
90
- export const dispatchDefaultState =
91
- (
92
- infiniteStreamSources,
93
- injectedPrimitives,
94
- types,
95
- forms,
96
- converters,
97
- lookupSources,
98
- tableApiSources,
99
- ) =>
100
- (t, renderer) => {
64
+ export const getDefaultRecordRenderer = (isNested, defaultRecordRenderer, defaultNestedRecordRenderer) => (isNested ? defaultNestedRecordRenderer() : defaultRecordRenderer());
65
+ export const dispatchDefaultState = (infiniteStreamSources, injectedPrimitives, types, forms, converters, lookupSources, tableApiSources, specApis) => (t, renderer) => {
101
66
  const result = (() => {
102
- if (renderer == undefined) {
103
- return ValueOrErrors.Default.return(undefined);
104
- }
105
- if (renderer.kind == "lookupType-lookupRenderer") {
106
- return DispatchParsedType.Operations.ResolveLookupType(
107
- renderer.type.name,
108
- types,
109
- ).Then((resolvedType) =>
110
- LookupRenderer.Operations.ResolveRenderer(renderer, forms).Then(
111
- (resolvedRenderer) =>
112
- dispatchDefaultState(
113
- infiniteStreamSources,
114
- injectedPrimitives,
115
- types,
116
- forms,
117
- converters,
118
- lookupSources,
119
- tableApiSources,
120
- )(resolvedType, resolvedRenderer),
121
- ),
122
- );
123
- }
124
- if (renderer.kind == "lookupType-inlinedRenderer") {
125
- return DispatchParsedType.Operations.ResolveLookupType(
126
- renderer.type.name,
127
- types,
128
- ).Then((resolvedType) =>
129
- dispatchDefaultState(
130
- infiniteStreamSources,
131
- injectedPrimitives,
132
- types,
133
- forms,
134
- converters,
135
- lookupSources,
136
- tableApiSources,
137
- )(resolvedType, renderer.inlinedRenderer),
138
- );
139
- }
140
- if (renderer.kind == "inlinedType-lookupRenderer") {
141
- return LookupRenderer.Operations.ResolveRenderer(renderer, forms).Then(
142
- (resolvedRenderer) =>
143
- dispatchDefaultState(
144
- infiniteStreamSources,
145
- injectedPrimitives,
146
- types,
147
- forms,
148
- converters,
149
- lookupSources,
150
- tableApiSources,
151
- )(renderer.type, resolvedRenderer),
152
- );
153
- }
154
- if (t.kind == "primitive")
155
- return t.name == "unit"
156
- ? ValueOrErrors.Default.return(UnitAbstractRendererState.Default())
157
- : t.name == "boolean"
158
- ? ValueOrErrors.Default.return(BoolAbstractRendererState.Default())
159
- : t.name == "number"
160
- ? ValueOrErrors.Default.return(
161
- NumberAbstractRendererState.Default(),
162
- )
163
- : t.name == "string"
164
- ? ValueOrErrors.Default.return(
165
- StringAbstractRendererState.Default(),
166
- )
167
- : t.name == "base64File"
168
- ? ValueOrErrors.Default.return(
169
- Base64FileAbstractRendererState.Default(),
170
- )
171
- : t.name == "secret"
172
- ? ValueOrErrors.Default.return(
173
- SecretAbstractRendererState.Default(),
174
- )
175
- : t.name == "Date"
176
- ? ValueOrErrors.Default.return(
177
- DateAbstractRendererState.Default(),
178
- )
179
- : (injectedPrimitives === null ||
180
- injectedPrimitives === void 0
181
- ? void 0
182
- : injectedPrimitives.get(t.name)) != undefined
183
- ? ValueOrErrors.Default.return(
184
- Object.assign(
185
- {
186
- commonFormState:
187
- DispatchCommonFormState.Default(),
188
- },
189
- injectedPrimitives === null ||
190
- injectedPrimitives === void 0
191
- ? void 0
192
- : injectedPrimitives.get(t.name).defaultState,
193
- ),
194
- )
195
- : ValueOrErrors.Default.throwOne(
196
- `could not resolve defaultState for primitive renderer kind "${t.name}"`,
197
- );
198
- if (t.kind == "singleSelection")
199
- return renderer.kind == "enumRenderer"
200
- ? ValueOrErrors.Default.return(EnumAbstractRendererState().Default())
201
- : renderer.kind == "streamRenderer"
202
- ? infiniteStreamSources(renderer.stream).Then((streamSource) =>
203
- ValueOrErrors.Default.return(
204
- SearchableInfiniteStreamAbstractRendererState.Default(
205
- streamSource,
206
- ),
207
- ),
208
- )
209
- : ValueOrErrors.Default.throwOne(
210
- `received non singleSelection renderer kind "${renderer.kind}" when resolving defaultState for singleSelection`,
211
- );
212
- if (t.kind == "multiSelection")
213
- return renderer.kind == "enumRenderer"
214
- ? ValueOrErrors.Default.return(EnumAbstractRendererState().Default())
215
- : renderer.kind == "streamRenderer"
216
- ? infiniteStreamSources(renderer.stream).Then((streamSource) =>
217
- ValueOrErrors.Default.return(
218
- SearchableInfiniteStreamAbstractRendererState.Default(
219
- streamSource,
220
- ),
221
- ),
222
- )
223
- : ValueOrErrors.Default.throwOne(
224
- `received non multiSelection renderer kind "${renderer.kind}" when resolving defaultState for multiSelection`,
225
- );
226
- if (t.kind == "list")
227
- return renderer.kind == "listRenderer"
228
- ? ValueOrErrors.Default.return(
229
- ListAbstractRendererState.Default.zero(),
230
- )
231
- : ValueOrErrors.Default.throwOne(
232
- `received non list renderer kind "${renderer.kind}" when resolving defaultState for list`,
233
- );
234
- if (t.kind == "map")
235
- return renderer.kind == "mapRenderer"
236
- ? ValueOrErrors.Default.return(
237
- MapAbstractRendererState.Default.zero(),
238
- )
239
- : ValueOrErrors.Default.throwOne(
240
- `received non map renderer kind "${renderer.kind}" when resolving defaultState for map`,
241
- );
242
- if (t.kind == "tuple")
243
- return renderer.kind == "tupleRenderer"
244
- ? ValueOrErrors.Operations.All(
245
- List(
246
- t.args.map((_, index) =>
247
- dispatchDefaultState(
248
- infiniteStreamSources,
249
- injectedPrimitives,
250
- types,
251
- forms,
252
- converters,
253
- lookupSources,
254
- tableApiSources,
255
- )(_, renderer.itemRenderers[index].renderer).Then(
256
- (itemState) =>
257
- ValueOrErrors.Default.return([index, itemState]),
258
- ),
259
- ),
260
- ),
261
- ).Then((itemStates) =>
262
- ValueOrErrors.Default.return(
263
- TupleAbstractRendererState.Default(Map(itemStates)),
264
- ),
265
- )
266
- : ValueOrErrors.Default.throwOne(
267
- `received non tuple renderer kind "${renderer.kind}" when resolving defaultState for tuple`,
268
- );
269
- if (t.kind == "sum")
270
- return renderer.kind == "sumRenderer"
271
- ? dispatchDefaultState(
272
- infiniteStreamSources,
273
- injectedPrimitives,
274
- types,
275
- forms,
276
- converters,
277
- lookupSources,
278
- tableApiSources,
279
- )(t.args[0], renderer.leftRenderer.renderer).Then((left) =>
280
- renderer.rightRenderer == undefined
281
- ? ValueOrErrors.Default.throwOne(
282
- `rightRenderer is undefined when resolving defaultState sum view ${renderer.concreteRenderer}`,
283
- )
284
- : dispatchDefaultState(
285
- infiniteStreamSources,
286
- injectedPrimitives,
287
- types,
288
- forms,
289
- converters,
290
- lookupSources,
291
- tableApiSources,
292
- )(t.args[1], renderer.rightRenderer.renderer).Then((right) =>
293
- ValueOrErrors.Default.return(
294
- SumAbstractRendererState.Default({
67
+ var _a, _b, _c, _d;
68
+ if (renderer == undefined) {
69
+ return ValueOrErrors.Default.return(undefined);
70
+ }
71
+ if (renderer.kind == "lookupType-lookupRenderer") {
72
+ return DispatchParsedType.Operations.ResolveLookupType(renderer.type.name, types).Then((resolvedType) => LookupRenderer.Operations.ResolveRenderer(renderer, forms).Then((resolvedRenderer) => dispatchDefaultState(infiniteStreamSources, injectedPrimitives, types, forms, converters, lookupSources, tableApiSources, specApis)(resolvedType, resolvedRenderer)));
73
+ }
74
+ if (renderer.kind == "lookupType-inlinedRenderer") {
75
+ return DispatchParsedType.Operations.ResolveLookupType(renderer.type.name, types).Then((resolvedType) => dispatchDefaultState(infiniteStreamSources, injectedPrimitives, types, forms, converters, lookupSources, tableApiSources, specApis)(resolvedType, renderer.inlinedRenderer));
76
+ }
77
+ if (renderer.kind == "inlinedType-lookupRenderer") {
78
+ return LookupRenderer.Operations.ResolveRenderer(renderer, forms).Then((resolvedRenderer) => dispatchDefaultState(infiniteStreamSources, injectedPrimitives, types, forms, converters, lookupSources, tableApiSources, specApis)(renderer.type, resolvedRenderer));
79
+ }
80
+ if (t.kind == "primitive")
81
+ return t.name == "unit"
82
+ ? ValueOrErrors.Default.return(UnitAbstractRendererState.Default())
83
+ : t.name == "boolean"
84
+ ? ValueOrErrors.Default.return(BoolAbstractRendererState.Default())
85
+ : t.name == "number"
86
+ ? ValueOrErrors.Default.return(NumberAbstractRendererState.Default())
87
+ : t.name == "string"
88
+ ? ValueOrErrors.Default.return(StringAbstractRendererState.Default())
89
+ : t.name == "base64File"
90
+ ? ValueOrErrors.Default.return(Base64FileAbstractRendererState.Default())
91
+ : t.name == "secret"
92
+ ? ValueOrErrors.Default.return(SecretAbstractRendererState.Default())
93
+ : t.name == "Date"
94
+ ? ValueOrErrors.Default.return(DateAbstractRendererState.Default())
95
+ : (injectedPrimitives === null || injectedPrimitives === void 0 ? void 0 : injectedPrimitives.get(t.name)) != undefined
96
+ ? ValueOrErrors.Default.return(Object.assign({ commonFormState: DispatchCommonFormState.Default() }, injectedPrimitives === null || injectedPrimitives === void 0 ? void 0 : injectedPrimitives.get(t.name).defaultState))
97
+ : ValueOrErrors.Default.throwOne(`could not resolve defaultState for primitive renderer kind "${t.name}"`);
98
+ if (t.kind == "singleSelection")
99
+ return renderer.kind == "enumRenderer"
100
+ ? ValueOrErrors.Default.return(EnumAbstractRendererState().Default())
101
+ : renderer.kind == "streamRenderer"
102
+ ? infiniteStreamSources(renderer.stream).Then((streamSource) => ValueOrErrors.Default.return(SearchableInfiniteStreamAbstractRendererState.Default(streamSource)))
103
+ : ValueOrErrors.Default.throwOne(`received non singleSelection renderer kind "${renderer.kind}" when resolving defaultState for singleSelection`);
104
+ if (t.kind == "multiSelection")
105
+ return renderer.kind == "enumRenderer"
106
+ ? ValueOrErrors.Default.return(EnumAbstractRendererState().Default())
107
+ : renderer.kind == "streamRenderer"
108
+ ? infiniteStreamSources(renderer.stream).Then((streamSource) => ValueOrErrors.Default.return(SearchableInfiniteStreamAbstractRendererState.Default(streamSource)))
109
+ : ValueOrErrors.Default.throwOne(`received non multiSelection renderer kind "${renderer.kind}" when resolving defaultState for multiSelection`);
110
+ if (t.kind == "list")
111
+ return renderer.kind == "listRenderer"
112
+ ? ValueOrErrors.Default.return(ListAbstractRendererState.Default.zero())
113
+ : ValueOrErrors.Default.throwOne(`received non list renderer kind "${renderer.kind}" when resolving defaultState for list`);
114
+ if (t.kind == "map")
115
+ return renderer.kind == "mapRenderer"
116
+ ? ValueOrErrors.Default.return(MapAbstractRendererState.Default.zero())
117
+ : ValueOrErrors.Default.throwOne(`received non map renderer kind "${renderer.kind}" when resolving defaultState for map`);
118
+ if (t.kind == "tuple")
119
+ return renderer.kind == "tupleRenderer"
120
+ ? ValueOrErrors.Operations.All(List(t.args.map((_, index) => dispatchDefaultState(infiniteStreamSources, injectedPrimitives, types, forms, converters, lookupSources, tableApiSources, specApis)(_, renderer.itemRenderers[index].renderer).Then((itemState) => ValueOrErrors.Default.return([index, itemState]))))).Then((itemStates) => ValueOrErrors.Default.return(TupleAbstractRendererState.Default(Map(itemStates))))
121
+ : ValueOrErrors.Default.throwOne(`received non tuple renderer kind "${renderer.kind}" when resolving defaultState for tuple`);
122
+ if (t.kind == "sum")
123
+ return renderer.kind == "sumRenderer"
124
+ ? dispatchDefaultState(infiniteStreamSources, injectedPrimitives, types, forms, converters, lookupSources, tableApiSources, specApis)(t.args[0], renderer.leftRenderer.renderer).Then((left) => renderer.rightRenderer == undefined
125
+ ? ValueOrErrors.Default.throwOne(`rightRenderer is undefined when resolving defaultState sum view ${renderer.concreteRenderer}`)
126
+ : dispatchDefaultState(infiniteStreamSources, injectedPrimitives, types, forms, converters, lookupSources, tableApiSources, specApis)(t.args[1], renderer.rightRenderer.renderer).Then((right) => ValueOrErrors.Default.return(SumAbstractRendererState.Default({
295
127
  left,
296
128
  right,
297
- }),
298
- ),
299
- ),
300
- )
301
- : renderer.kind == "sumUnitDateRenderer"
302
- ? ValueOrErrors.Default.return(
303
- SumAbstractRendererState.Default({
304
- left: UnitAbstractRendererState.Default(),
305
- right: DateAbstractRendererState.Default(),
306
- }),
307
- )
308
- : ValueOrErrors.Default.throwOne(
309
- `renderer kind "${renderer.kind}" not supported for sum`,
310
- );
311
- if (t.kind == "one")
312
- return renderer.kind != "oneRenderer"
313
- ? ValueOrErrors.Default.throwOne(
314
- `received non one renderer kind "${renderer.kind}" when resolving defaultState for one`,
315
- )
316
- : lookupSources == undefined
317
- ? ValueOrErrors.Default.throwOne(
318
- `lookup sources referenced but no lookup sources are provided`,
319
- )
320
- : lookupSources(renderer.api[0]) == undefined
321
- ? ValueOrErrors.Default.throwOne(
322
- `cannot find lookup source for ${renderer.api[0]}`,
323
- )
324
- : lookupSources(renderer.api[0]).Then((lookupSource) =>
325
- lookupSource.one == undefined
326
- ? ValueOrErrors.Default.throwOne(
327
- `one source not provided for ${renderer.api[0]}`,
328
- )
329
- : lookupSource
330
- .one(renderer.api[1]) // safe because we check for undefined above but type system doesn't know that
331
- .Then((oneSource) =>
332
- MapRepo.Operations.tryFindWithError(
333
- t.arg.name,
334
- types,
335
- () =>
336
- `cannot find lookup type ${JSON.stringify(t.arg.name)} in ${JSON.stringify(t)}`,
337
- ).Then((lookupType) =>
338
- ValueOrErrors.Default.return(
339
- OneAbstractRendererState.Default(
340
- oneSource.getManyUnlinked(
341
- dispatchFromAPIRawValue(
342
- lookupType,
343
- types,
344
- converters,
345
- injectedPrimitives,
346
- ),
347
- ),
348
- ),
349
- ),
350
- ),
351
- ),
352
- );
353
- if (t.kind == "readOnly")
354
- return renderer.kind != "readOnlyRenderer"
355
- ? ValueOrErrors.Default.throwOne(
356
- `received non readOnly renderer kind "${renderer.kind}" when resolving defaultState for readOnly`,
357
- )
358
- : dispatchDefaultState(
359
- infiniteStreamSources,
360
- injectedPrimitives,
361
- types,
362
- forms,
363
- converters,
364
- lookupSources,
365
- tableApiSources,
366
- )(t.arg, renderer.childRenderer.renderer).Then((childState) =>
367
- ValueOrErrors.Default.return(
368
- ReadOnlyAbstractRendererState.Default.childFormState(
369
- childState,
370
- ),
371
- ),
372
- );
373
- if (t.kind == "record")
374
- return renderer.kind == "recordRenderer"
375
- ? ValueOrErrors.Operations.All(
376
- List(
377
- renderer.fields
378
- .entrySeq()
379
- .map(([fieldName, fieldRenderer]) =>
380
- MapRepo.Operations.tryFindWithError(
381
- fieldName,
382
- t.fields,
383
- () =>
384
- `field ${fieldName} not found in renderer ${JSON.stringify(renderer.fields)} fields`,
385
- ).Then((fieldType) =>
386
- dispatchDefaultState(
387
- infiniteStreamSources,
388
- injectedPrimitives,
389
- types,
390
- forms,
391
- converters,
392
- lookupSources,
393
- tableApiSources,
394
- )(fieldType, fieldRenderer.renderer).Then((value) =>
395
- ValueOrErrors.Default.return([fieldName, value]),
396
- ),
397
- ),
398
- ),
399
- ),
400
- ).Then((res) =>
401
- ValueOrErrors.Default.return(
402
- RecordAbstractRendererState.Default.fieldState(Map(res)),
403
- ),
404
- )
405
- : ValueOrErrors.Default.throwOne(
406
- `received non record renderer kind "${renderer.kind}" when resolving defaultValue for record`,
407
- );
408
- if (t.kind == "union") {
409
- return renderer.kind == "unionRenderer"
410
- ? ValueOrErrors.Operations.All(
411
- List(
412
- renderer.cases
413
- .entrySeq()
414
- .map(([caseName, caseRenderer]) =>
415
- MapRepo.Operations.tryFindWithError(
416
- caseName,
417
- t.args,
418
- () =>
419
- `case ${caseName} not found in type ${JSON.stringify(t)}`,
420
- ).Then((caseType) =>
421
- dispatchDefaultState(
422
- infiniteStreamSources,
423
- injectedPrimitives,
424
- types,
425
- forms,
426
- converters,
427
- lookupSources,
428
- tableApiSources,
429
- )(caseType, caseRenderer).Then((caseState) =>
430
- ValueOrErrors.Default.return([caseName, caseState]),
431
- ),
432
- ),
433
- ),
434
- ),
435
- ).Then((caseStates) =>
436
- ValueOrErrors.Default.return(
437
- UnionAbstractRendererState.Default(Map(caseStates)),
438
- ),
439
- )
440
- : ValueOrErrors.Default.throwOne(
441
- `received non union renderer kind "${renderer.kind}" when resolving defaultState for union`,
442
- );
443
- }
444
- if (t.kind == "table") {
445
- return renderer.kind == "tableRenderer"
446
- ? ValueOrErrors.Default.return(TableAbstractRendererState.Default())
447
- : ValueOrErrors.Default.throwOne(
448
- `received non table renderer kind "${renderer.kind}" when resolving defaultState for table`,
449
- );
450
- }
451
- return ValueOrErrors.Default.throwOne(
452
- `type of kind "${JSON.stringify(t)}" not supported by defaultState`,
453
- );
129
+ }))))
130
+ : renderer.kind == "sumUnitDateRenderer"
131
+ ? ValueOrErrors.Default.return(SumAbstractRendererState.Default({
132
+ left: UnitAbstractRendererState.Default(),
133
+ right: DateAbstractRendererState.Default(),
134
+ }))
135
+ : ValueOrErrors.Default.throwOne(`renderer kind "${renderer.kind}" not supported for sum`);
136
+ if (t.kind == "one")
137
+ return renderer.kind != "oneRenderer"
138
+ ? ValueOrErrors.Default.throwOne(`received non one renderer kind "${renderer.kind}" when resolving defaultState for one`)
139
+ : specApis.lookups != undefined &&
140
+ specApis.lookups.get(renderer.api[0]) != undefined &&
141
+ ((_a = specApis.lookups.get(renderer.api[0])) === null || _a === void 0 ? void 0 : _a.one) != undefined &&
142
+ ((_b = specApis.lookups.get(renderer.api[0])) === null || _b === void 0 ? void 0 : _b.one.get(renderer.api[1])) !=
143
+ undefined &&
144
+ ((_d = (_c = specApis.lookups.get(renderer.api[0])) === null || _c === void 0 ? void 0 : _c.one.get(renderer.api[1])) === null || _d === void 0 ? void 0 : _d.methods.getManyUnlinked)
145
+ ? lookupSources == undefined
146
+ ? ValueOrErrors.Default.throwOne(`lookup sources referenced but no lookup sources are provided`)
147
+ : lookupSources(renderer.api[0]) == undefined
148
+ ? ValueOrErrors.Default.throwOne(`cannot find lookup source for ${renderer.api[0]}`)
149
+ : lookupSources(renderer.api[0]).Then((lookupSource) => lookupSource.one == undefined
150
+ ? ValueOrErrors.Default.throwOne(`one source not provided for ${renderer.api[0]}`)
151
+ : lookupSource.one(renderer.api[1]) // safe because we check for undefined above but type system doesn't know that
152
+ .Then((oneSource) => oneSource.getManyUnlinked == undefined
153
+ ? ValueOrErrors.Default.throwOne(`getManyUnlinked not provided for ${renderer.api[0]}-${renderer.api[1]}`)
154
+ : MapRepo.Operations.tryFindWithError(t.arg.name, types, () => `cannot find lookup type ${JSON.stringify(t.arg.name)} in ${JSON.stringify(t)}`).Then((lookupType) => ValueOrErrors.Default.return(OneAbstractRendererState.Default(oneSource.getManyUnlinked(
155
+ // safe because we check for undefined above but type system doesn't know that
156
+ dispatchFromAPIRawValue(lookupType, types, converters, injectedPrimitives)))))))
157
+ : ValueOrErrors.Default.return(OneAbstractRendererState.Default(undefined));
158
+ if (t.kind == "readOnly")
159
+ return renderer.kind != "readOnlyRenderer"
160
+ ? ValueOrErrors.Default.throwOne(`received non readOnly renderer kind "${renderer.kind}" when resolving defaultState for readOnly`)
161
+ : dispatchDefaultState(infiniteStreamSources, injectedPrimitives, types, forms, converters, lookupSources, tableApiSources, specApis)(t.arg, renderer.childRenderer.renderer).Then((childState) => ValueOrErrors.Default.return(ReadOnlyAbstractRendererState.Default.childFormState(childState)));
162
+ if (t.kind == "record")
163
+ return renderer.kind == "recordRenderer"
164
+ ? ValueOrErrors.Operations.All(List(renderer.fields
165
+ .entrySeq()
166
+ .map(([fieldName, fieldRenderer]) => MapRepo.Operations.tryFindWithError(fieldName, t.fields, () => `field ${fieldName} not found in renderer ${JSON.stringify(renderer.fields)} fields`).Then((fieldType) => dispatchDefaultState(infiniteStreamSources, injectedPrimitives, types, forms, converters, lookupSources, tableApiSources, specApis)(fieldType, fieldRenderer.renderer).Then((value) => ValueOrErrors.Default.return([fieldName, value])))))).Then((res) => ValueOrErrors.Default.return(RecordAbstractRendererState.Default.fieldState(Map(res))))
167
+ : ValueOrErrors.Default.throwOne(`received non record renderer kind "${renderer.kind}" when resolving defaultValue for record`);
168
+ if (t.kind == "union") {
169
+ return renderer.kind == "unionRenderer"
170
+ ? ValueOrErrors.Operations.All(List(renderer.cases
171
+ .entrySeq()
172
+ .map(([caseName, caseRenderer]) => MapRepo.Operations.tryFindWithError(caseName, t.args, () => `case ${caseName} not found in type ${JSON.stringify(t)}`).Then((caseType) => dispatchDefaultState(infiniteStreamSources, injectedPrimitives, types, forms, converters, lookupSources, tableApiSources, specApis)(caseType, caseRenderer).Then((caseState) => ValueOrErrors.Default.return([caseName, caseState])))))).Then((caseStates) => ValueOrErrors.Default.return(UnionAbstractRendererState.Default(Map(caseStates))))
173
+ : ValueOrErrors.Default.throwOne(`received non union renderer kind "${renderer.kind}" when resolving defaultState for union`);
174
+ }
175
+ if (t.kind == "table") {
176
+ return renderer.kind == "tableRenderer"
177
+ ? ValueOrErrors.Default.return(TableAbstractRendererState.Default())
178
+ : ValueOrErrors.Default.throwOne(`received non table renderer kind "${renderer.kind}" when resolving defaultState for table`);
179
+ }
180
+ return ValueOrErrors.Default.throwOne(`type of kind "${JSON.stringify(t)}" not supported by defaultState`);
454
181
  })();
455
- return result.MapErrors((errors) =>
456
- errors.map(
457
- (error) =>
458
- `${error}\n...When resolving defaultState for ${t.kind} and renderer kind ${renderer.kind}`,
459
- ),
460
- );
461
- };
462
- export const dispatchDefaultValue =
463
- (injectedPrimitives, types, forms) => (t, renderer) => {
182
+ return result.MapErrors((errors) => errors.map((error) => `${error}\n...When resolving defaultState for ${t.kind} and renderer kind ${renderer.kind}`));
183
+ };
184
+ export const dispatchDefaultValue = (injectedPrimitives, types, forms) => (t, renderer) => {
464
185
  const result = (() => {
465
- if (renderer == undefined) {
466
- return ValueOrErrors.Default.return(PredicateValue.Default.unit());
467
- }
468
- if (renderer.kind == "lookupType-lookupRenderer")
469
- return DispatchParsedType.Operations.ResolveLookupType(
470
- renderer.type.name,
471
- types,
472
- ).Then((resolvedType) =>
473
- LookupRenderer.Operations.ResolveRenderer(renderer, forms).Then(
474
- (resolvedRenderer) =>
475
- dispatchDefaultValue(
476
- injectedPrimitives,
477
- types,
478
- forms,
479
- )(resolvedType, resolvedRenderer),
480
- ),
481
- );
482
- if (renderer.kind == "lookupType-inlinedRenderer")
483
- return DispatchParsedType.Operations.ResolveLookupType(
484
- renderer.type.name,
485
- types,
486
- ).Then((resolvedType) =>
487
- dispatchDefaultValue(
488
- injectedPrimitives,
489
- types,
490
- forms,
491
- )(resolvedType, renderer.inlinedRenderer),
492
- );
493
- if (renderer.kind == "inlinedType-lookupRenderer")
494
- return LookupRenderer.Operations.ResolveRenderer(renderer, forms).Then(
495
- (resolvedRenderer) =>
496
- dispatchDefaultValue(
497
- injectedPrimitives,
498
- types,
499
- forms,
500
- )(renderer.type, resolvedRenderer),
501
- );
502
- if (t.kind == "primitive")
503
- return t.name == "unit"
504
- ? ValueOrErrors.Default.return(PredicateValue.Default.unit())
505
- : t.name == "boolean"
506
- ? ValueOrErrors.Default.return(PredicateValue.Default.boolean())
507
- : t.name == "number"
508
- ? ValueOrErrors.Default.return(PredicateValue.Default.number())
509
- : t.name == "string"
510
- ? ValueOrErrors.Default.return(PredicateValue.Default.string())
511
- : t.name == "base64File"
512
- ? ValueOrErrors.Default.return(
513
- PredicateValue.Default.string(),
514
- )
515
- : t.name == "secret"
516
- ? ValueOrErrors.Default.return(
517
- PredicateValue.Default.string(),
518
- )
519
- : t.name == "Date"
520
- ? ValueOrErrors.Default.return(
521
- PredicateValue.Default.date(),
522
- )
523
- : (injectedPrimitives === null ||
524
- injectedPrimitives === void 0
525
- ? void 0
526
- : injectedPrimitives.get(t.name)) != undefined
527
- ? ValueOrErrors.Default.return(
528
- injectedPrimitives === null ||
529
- injectedPrimitives === void 0
530
- ? void 0
531
- : injectedPrimitives.get(t.name).defaultValue,
532
- )
533
- : ValueOrErrors.Default.throwOne(
534
- `could not resolve defaultValue for primitive renderer type "${t.name}"`,
535
- );
536
- if (t.kind == "singleSelection")
537
- return renderer.kind == "enumRenderer" ||
538
- renderer.kind == "streamRenderer"
539
- ? ValueOrErrors.Default.return(
540
- PredicateValue.Default.option(
541
- false,
542
- PredicateValue.Default.unit(),
543
- ),
544
- )
545
- : ValueOrErrors.Default.throwOne(
546
- `received non singleSelection renderer kind "${renderer.kind}" when resolving defaultValue for singleSelection`,
547
- );
548
- if (t.kind == "multiSelection")
549
- return renderer.kind == "enumRenderer" ||
550
- renderer.kind == "streamRenderer"
551
- ? ValueOrErrors.Default.return(
552
- PredicateValue.Default.record(OrderedMap()),
553
- )
554
- : ValueOrErrors.Default.throwOne(
555
- `received non multiSelection renderer kind "${renderer.kind}" when resolving defaultValue for multiSelection`,
556
- );
557
- if (t.kind == "list")
558
- return renderer.kind == "listRenderer"
559
- ? ValueOrErrors.Default.return(PredicateValue.Default.tuple(List()))
560
- : ValueOrErrors.Default.throwOne(
561
- `received non list renderer kind "${renderer.kind}" when resolving defaultValue for list`,
562
- );
563
- if (t.kind == "map")
564
- return renderer.kind == "mapRenderer"
565
- ? ValueOrErrors.Default.return(PredicateValue.Default.tuple(List()))
566
- : ValueOrErrors.Default.throwOne(
567
- `received non map renderer kind "${renderer.kind}" when resolving defaultValue for map`,
568
- );
569
- if (t.kind == "tuple")
570
- return renderer.kind == "tupleRenderer"
571
- ? ValueOrErrors.Operations.All(
572
- List(
573
- t.args.map((_, index) =>
574
- dispatchDefaultValue(
575
- injectedPrimitives,
576
- types,
577
- forms,
578
- )(_, renderer.itemRenderers[index].renderer),
579
- ),
580
- ),
581
- ).Then((values) =>
582
- ValueOrErrors.Default.return(
583
- PredicateValue.Default.tuple(List(values)),
584
- ),
585
- )
586
- : ValueOrErrors.Default.throwOne(
587
- `received non tuple renderer kind "${renderer.kind}" when resolving defaultValue for tuple`,
588
- );
589
- if (t.kind == "sum")
590
- return renderer.kind == "sumRenderer"
591
- ? dispatchDefaultValue(
592
- injectedPrimitives,
593
- types,
594
- forms,
595
- )(t.args[1], renderer.rightRenderer.renderer).Then((right) =>
596
- ValueOrErrors.Default.return(
597
- PredicateValue.Default.sum(Sum.Default.right(right)),
598
- ),
599
- )
600
- : renderer.kind == "sumUnitDateRenderer"
601
- ? ValueOrErrors.Default.return(
602
- PredicateValue.Default.sum(
603
- Sum.Default.left(PredicateValue.Default.unit()),
604
- ),
605
- )
606
- : ValueOrErrors.Default.throwOne(
607
- `received non sum renderer kind "${renderer.kind}" when resolving defaultValue for sum`,
608
- );
609
- if (t.kind == "one") {
610
- return renderer.kind == "oneRenderer"
611
- ? ValueOrErrors.Default.return(
612
- PredicateValue.Default.option(
613
- false,
614
- PredicateValue.Default.unit(),
615
- ),
616
- )
617
- : ValueOrErrors.Default.throwOne(
618
- `received non one renderer kind "${renderer.kind}" when resolving defaultValue for one`,
619
- );
620
- }
621
- if (t.kind == "readOnly") {
622
- return renderer.kind == "readOnlyRenderer"
623
- ? dispatchDefaultValue(
624
- injectedPrimitives,
625
- types,
626
- forms,
627
- )(t.arg, renderer.childRenderer.renderer).Then((childValue) =>
628
- ValueOrErrors.Default.return(
629
- PredicateValue.Default.readonly(childValue),
630
- ),
631
- )
632
- : ValueOrErrors.Default.throwOne(
633
- `received non readOnly renderer kind "${renderer.kind}" when resolving defaultValue for readOnly`,
634
- );
635
- }
636
- if (t.kind == "record")
637
- return renderer.kind == "recordRenderer"
638
- ? ValueOrErrors.Operations.All(
639
- List(
640
- renderer.fields
641
- .entrySeq()
642
- .map(([fieldName, fieldRenderer]) =>
643
- MapRepo.Operations.tryFindWithError(
644
- fieldName,
645
- t.fields,
646
- () =>
647
- `field ${fieldName} not found in type ${JSON.stringify(t)} fields`,
648
- ).Then((fieldType) =>
649
- dispatchDefaultValue(
650
- injectedPrimitives,
651
- types,
652
- forms,
653
- )(fieldType, fieldRenderer.renderer).Then((value) =>
654
- ValueOrErrors.Default.return([fieldName, value]),
655
- ),
656
- ),
657
- ),
658
- ),
659
- ).Then((res) =>
660
- ValueOrErrors.Default.return(
661
- PredicateValue.Default.record(OrderedMap(res)),
662
- ),
663
- )
664
- : ValueOrErrors.Default.throwOne(
665
- `received non record renderer kind "${renderer.kind}" when resolving defaultValue for record`,
666
- );
667
- if (t.kind == "union") {
668
- return renderer.kind != "unionRenderer"
669
- ? ValueOrErrors.Default.throwOne(
670
- `received non union renderer kind "${renderer.kind}" when resolving defaultValue for union`,
671
- )
672
- : MapRepo.Operations.tryFirstWithError(
673
- t.args,
674
- () => `union type ${JSON.stringify(t, null, 2)} has no cases`,
675
- ).Then((firstCaseType) =>
676
- MapRepo.Operations.tryFirstWithError(
677
- renderer.cases,
678
- () => `union renderer has no cases`,
679
- ).Then((firstCaseRenderer) =>
680
- dispatchDefaultValue(
681
- injectedPrimitives,
682
- types,
683
- forms,
684
- )(firstCaseType, firstCaseRenderer),
685
- ),
686
- );
687
- }
688
- if (t.kind == "table") {
689
- return renderer.kind == "tableRenderer"
690
- ? ValueOrErrors.Default.return(
691
- PredicateValue.Default.table(0, 0, Map(), false),
692
- )
693
- : ValueOrErrors.Default.throwOne(
694
- `received non table renderer kind "${renderer.kind}" when resolving defaultValue for table`,
695
- );
696
- }
697
- return ValueOrErrors.Default.throwOne(
698
- `type ${t} not supported by defaultValue`,
699
- );
186
+ if (renderer == undefined) {
187
+ return ValueOrErrors.Default.return(PredicateValue.Default.unit());
188
+ }
189
+ if (renderer.kind == "lookupType-lookupRenderer")
190
+ return DispatchParsedType.Operations.ResolveLookupType(renderer.type.name, types).Then((resolvedType) => LookupRenderer.Operations.ResolveRenderer(renderer, forms).Then((resolvedRenderer) => dispatchDefaultValue(injectedPrimitives, types, forms)(resolvedType, resolvedRenderer)));
191
+ if (renderer.kind == "lookupType-inlinedRenderer")
192
+ return DispatchParsedType.Operations.ResolveLookupType(renderer.type.name, types).Then((resolvedType) => dispatchDefaultValue(injectedPrimitives, types, forms)(resolvedType, renderer.inlinedRenderer));
193
+ if (renderer.kind == "inlinedType-lookupRenderer")
194
+ return LookupRenderer.Operations.ResolveRenderer(renderer, forms).Then((resolvedRenderer) => dispatchDefaultValue(injectedPrimitives, types, forms)(renderer.type, resolvedRenderer));
195
+ if (t.kind == "primitive")
196
+ return t.name == "unit"
197
+ ? ValueOrErrors.Default.return(PredicateValue.Default.unit())
198
+ : t.name == "boolean"
199
+ ? ValueOrErrors.Default.return(PredicateValue.Default.boolean())
200
+ : t.name == "number"
201
+ ? ValueOrErrors.Default.return(PredicateValue.Default.number())
202
+ : t.name == "string"
203
+ ? ValueOrErrors.Default.return(PredicateValue.Default.string())
204
+ : t.name == "base64File"
205
+ ? ValueOrErrors.Default.return(PredicateValue.Default.string())
206
+ : t.name == "secret"
207
+ ? ValueOrErrors.Default.return(PredicateValue.Default.string())
208
+ : t.name == "Date"
209
+ ? ValueOrErrors.Default.return(PredicateValue.Default.date())
210
+ : (injectedPrimitives === null || injectedPrimitives === void 0 ? void 0 : injectedPrimitives.get(t.name)) != undefined
211
+ ? ValueOrErrors.Default.return(injectedPrimitives === null || injectedPrimitives === void 0 ? void 0 : injectedPrimitives.get(t.name).defaultValue)
212
+ : ValueOrErrors.Default.throwOne(`could not resolve defaultValue for primitive renderer type "${t.name}"`);
213
+ if (t.kind == "singleSelection")
214
+ return renderer.kind == "enumRenderer" ||
215
+ renderer.kind == "streamRenderer"
216
+ ? ValueOrErrors.Default.return(PredicateValue.Default.option(false, PredicateValue.Default.unit()))
217
+ : ValueOrErrors.Default.throwOne(`received non singleSelection renderer kind "${renderer.kind}" when resolving defaultValue for singleSelection`);
218
+ if (t.kind == "multiSelection")
219
+ return renderer.kind == "enumRenderer" ||
220
+ renderer.kind == "streamRenderer"
221
+ ? ValueOrErrors.Default.return(PredicateValue.Default.record(OrderedMap()))
222
+ : ValueOrErrors.Default.throwOne(`received non multiSelection renderer kind "${renderer.kind}" when resolving defaultValue for multiSelection`);
223
+ if (t.kind == "list")
224
+ return renderer.kind == "listRenderer"
225
+ ? ValueOrErrors.Default.return(PredicateValue.Default.tuple(List()))
226
+ : ValueOrErrors.Default.throwOne(`received non list renderer kind "${renderer.kind}" when resolving defaultValue for list`);
227
+ if (t.kind == "map")
228
+ return renderer.kind == "mapRenderer"
229
+ ? ValueOrErrors.Default.return(PredicateValue.Default.tuple(List()))
230
+ : ValueOrErrors.Default.throwOne(`received non map renderer kind "${renderer.kind}" when resolving defaultValue for map`);
231
+ if (t.kind == "tuple")
232
+ return renderer.kind == "tupleRenderer"
233
+ ? ValueOrErrors.Operations.All(List(t.args.map((_, index) => dispatchDefaultValue(injectedPrimitives, types, forms)(_, renderer.itemRenderers[index].renderer)))).Then((values) => ValueOrErrors.Default.return(PredicateValue.Default.tuple(List(values))))
234
+ : ValueOrErrors.Default.throwOne(`received non tuple renderer kind "${renderer.kind}" when resolving defaultValue for tuple`);
235
+ if (t.kind == "sum")
236
+ return renderer.kind == "sumRenderer"
237
+ ? dispatchDefaultValue(injectedPrimitives, types, forms)(t.args[1], renderer.rightRenderer.renderer).Then((right) => ValueOrErrors.Default.return(PredicateValue.Default.sum(Sum.Default.right(right))))
238
+ : renderer.kind == "sumUnitDateRenderer"
239
+ ? ValueOrErrors.Default.return(PredicateValue.Default.sum(Sum.Default.left(PredicateValue.Default.unit())))
240
+ : ValueOrErrors.Default.throwOne(`received non sum renderer kind "${renderer.kind}" when resolving defaultValue for sum`);
241
+ if (t.kind == "one") {
242
+ return renderer.kind == "oneRenderer"
243
+ ? ValueOrErrors.Default.return(PredicateValue.Default.option(false, PredicateValue.Default.unit()))
244
+ : ValueOrErrors.Default.throwOne(`received non one renderer kind "${renderer.kind}" when resolving defaultValue for one`);
245
+ }
246
+ if (t.kind == "readOnly") {
247
+ return renderer.kind == "readOnlyRenderer"
248
+ ? dispatchDefaultValue(injectedPrimitives, types, forms)(t.arg, renderer.childRenderer.renderer).Then((childValue) => ValueOrErrors.Default.return(PredicateValue.Default.readonly(childValue)))
249
+ : ValueOrErrors.Default.throwOne(`received non readOnly renderer kind "${renderer.kind}" when resolving defaultValue for readOnly`);
250
+ }
251
+ if (t.kind == "record")
252
+ return renderer.kind == "recordRenderer"
253
+ ? ValueOrErrors.Operations.All(List(renderer.fields
254
+ .entrySeq()
255
+ .map(([fieldName, fieldRenderer]) => MapRepo.Operations.tryFindWithError(fieldName, t.fields, () => `field ${fieldName} not found in type ${JSON.stringify(t)} fields`).Then((fieldType) => dispatchDefaultValue(injectedPrimitives, types, forms)(fieldType, fieldRenderer.renderer).Then((value) => ValueOrErrors.Default.return([fieldName, value])))))).Then((res) => ValueOrErrors.Default.return(PredicateValue.Default.record(OrderedMap(res))))
256
+ : ValueOrErrors.Default.throwOne(`received non record renderer kind "${renderer.kind}" when resolving defaultValue for record`);
257
+ if (t.kind == "union") {
258
+ return renderer.kind != "unionRenderer"
259
+ ? ValueOrErrors.Default.throwOne(`received non union renderer kind "${renderer.kind}" when resolving defaultValue for union`)
260
+ : MapRepo.Operations.tryFirstWithError(t.args, () => `union type ${JSON.stringify(t, null, 2)} has no cases`).Then((firstCaseType) => MapRepo.Operations.tryFirstWithError(renderer.cases, () => `union renderer has no cases`).Then((firstCaseRenderer) => dispatchDefaultValue(injectedPrimitives, types, forms)(firstCaseType, firstCaseRenderer)));
261
+ }
262
+ if (t.kind == "table") {
263
+ return renderer.kind == "tableRenderer"
264
+ ? ValueOrErrors.Default.return(PredicateValue.Default.table(0, 0, Map(), false))
265
+ : ValueOrErrors.Default.throwOne(`received non table renderer kind "${renderer.kind}" when resolving defaultValue for table`);
266
+ }
267
+ return ValueOrErrors.Default.throwOne(`type ${t} not supported by defaultValue`);
700
268
  })();
701
- return result.MapErrors((errors) =>
702
- errors.map(
703
- (error) =>
704
- `${error}\n...When resolving defaultValue for type "${JSON.stringify(t, null, 2)}" and renderer kind "${renderer.kind}"`,
705
- ),
706
- );
707
- };
708
- export const dispatchFromAPIRawValue =
709
- (t, types, converters, injectedPrimitives) => (raw) => {
269
+ return result.MapErrors((errors) => errors.map((error) => `${error}\n...When resolving defaultValue for type "${JSON.stringify(t, null, 2)}" and renderer kind "${renderer.kind}"`));
270
+ };
271
+ export const dispatchFromAPIRawValue = (t, types, converters, injectedPrimitives) => (raw) => {
710
272
  const result = (() => {
711
- if (t.kind == "primitive") {
712
- // unit is a special kind of primitive
713
- if (t.name == "unit") {
714
- return ValueOrErrors.Default.return(PredicateValue.Default.unit());
273
+ if (t.kind == "primitive") {
274
+ // unit is a special kind of primitive
275
+ if (t.name == "unit") {
276
+ return ValueOrErrors.Default.return(PredicateValue.Default.unit());
277
+ }
278
+ if (!PredicateValue.Operations.IsPrimitive(raw) &&
279
+ !(injectedPrimitives === null || injectedPrimitives === void 0 ? void 0 : injectedPrimitives.keySeq().contains(t.name))) {
280
+ return ValueOrErrors.Default.throwOne(`primitive expected but got ${JSON.stringify(raw)}`);
281
+ }
282
+ return ValueOrErrors.Default.return(converters[t.name].fromAPIRawValue(raw));
715
283
  }
716
- if (
717
- !PredicateValue.Operations.IsPrimitive(raw) &&
718
- !(injectedPrimitives === null || injectedPrimitives === void 0
719
- ? void 0
720
- : injectedPrimitives.keySeq().contains(t.name))
721
- ) {
722
- return ValueOrErrors.Default.throwOne(
723
- `primitive expected but got ${JSON.stringify(raw)}`,
724
- );
284
+ if (t.kind == "union") {
285
+ const result = converters["union"].fromAPIRawValue(raw);
286
+ const caseType = t.args.get(result.caseName);
287
+ if (caseType == undefined)
288
+ return ValueOrErrors.Default.throwOne(`union case ${result.caseName} not found in type ${JSON.stringify(t)}`);
289
+ return dispatchFromAPIRawValue(caseType, types, converters, injectedPrimitives)(result.fields).Then((value) => ValueOrErrors.Default.return(PredicateValue.Default.unionCase(result.caseName, value)));
725
290
  }
726
- return ValueOrErrors.Default.return(
727
- converters[t.name].fromAPIRawValue(raw),
728
- );
729
- }
730
- if (t.kind == "union") {
731
- const result = converters["union"].fromAPIRawValue(raw);
732
- const caseType = t.args.get(result.caseName);
733
- if (caseType == undefined)
734
- return ValueOrErrors.Default.throwOne(
735
- `union case ${result.caseName} not found in type ${JSON.stringify(t)}`,
736
- );
737
- return dispatchFromAPIRawValue(
738
- caseType,
739
- types,
740
- converters,
741
- injectedPrimitives,
742
- )(result.fields).Then((value) =>
743
- ValueOrErrors.Default.return(
744
- PredicateValue.Default.unionCase(result.caseName, value),
745
- ),
746
- );
747
- }
748
- if (t.kind == "singleSelection") {
749
- const result = converters["SingleSelection"].fromAPIRawValue(raw);
750
- const isSome = result.kind == "l";
751
- const value = isSome
752
- ? PredicateValue.Default.record(OrderedMap(result.value))
753
- : PredicateValue.Default.unit();
754
- return ValueOrErrors.Default.return(
755
- PredicateValue.Default.option(isSome, value),
756
- );
757
- }
758
- if (t.kind == "multiSelection") {
759
- const result = converters["MultiSelection"].fromAPIRawValue(raw);
760
- const values = result.map((_) =>
761
- PredicateValue.Default.record(OrderedMap(_)),
762
- );
763
- return ValueOrErrors.Default.return(
764
- PredicateValue.Default.record(OrderedMap(values)),
765
- );
766
- }
767
- if (t.kind == "list") {
768
- const result = converters["List"].fromAPIRawValue(raw);
769
- return ValueOrErrors.Operations.All(
770
- result.map((_) =>
771
- dispatchFromAPIRawValue(
772
- t.args[0],
773
- types,
774
- converters,
775
- injectedPrimitives,
776
- )(_),
777
- ),
778
- ).Then((values) =>
779
- ValueOrErrors.Default.return(PredicateValue.Default.tuple(values)),
780
- );
781
- }
782
- if (t.kind == "map" && t.args.length == 2) {
783
- const result = converters["Map"].fromAPIRawValue(raw);
784
- return ValueOrErrors.Operations.All(
785
- List(
786
- result.map((_) =>
787
- dispatchFromAPIRawValue(
788
- t.args[0],
789
- types,
790
- converters,
791
- injectedPrimitives,
792
- )(_[0]).Then((key) =>
793
- dispatchFromAPIRawValue(
794
- t.args[1],
795
- types,
796
- converters,
797
- injectedPrimitives,
798
- )(_[1]).Then((value) =>
799
- ValueOrErrors.Default.return(
800
- PredicateValue.Default.tuple(List([key, value])),
801
- ),
802
- ),
803
- ),
804
- ),
805
- ),
806
- ).Then((values) =>
807
- ValueOrErrors.Default.return(
808
- PredicateValue.Default.tuple(List(values)),
809
- ),
810
- );
811
- }
812
- if (t.kind == "tuple") {
813
- const result = converters["Tuple"].fromAPIRawValue(raw);
814
- return ValueOrErrors.Operations.All(
815
- List(
816
- result.map((_, index) =>
817
- dispatchFromAPIRawValue(
818
- t.args[index],
819
- types,
820
- converters,
821
- injectedPrimitives,
822
- )(_),
823
- ),
824
- ),
825
- ).Then((values) =>
826
- ValueOrErrors.Default.return(
827
- PredicateValue.Default.tuple(List(values)),
828
- ),
829
- );
830
- }
831
- if (t.kind == "sum" && t.args.length === 2) {
832
- const result = converters["Sum"].fromAPIRawValue(raw);
833
- return dispatchFromAPIRawValue(
834
- result.kind == "l" ? t.args[0] : t.args[1],
835
- types,
836
- converters,
837
- injectedPrimitives,
838
- )(result.value).Then((value) =>
839
- ValueOrErrors.Default.return(
840
- PredicateValue.Default.sum(
841
- Sum.Updaters.map2(replaceWith(value), replaceWith(value))(result),
842
- ),
843
- ),
844
- );
845
- }
846
- if (t.kind == "lookup")
847
- return MapRepo.Operations.tryFindWithError(
848
- t.name, // TODO -- double check this is correct instead of typeName, and maybe remove typeName
849
- types,
850
- () => `type ${t.name} not found in types`,
851
- ).Then((type) =>
852
- dispatchFromAPIRawValue(
853
- type,
854
- types,
855
- converters,
856
- injectedPrimitives,
857
- )(raw),
858
- );
859
- // TODO -- this can be more functional
860
- if (t.kind == "table") {
861
- // move to the converter
862
- if (typeof raw != "object") {
863
- return ValueOrErrors.Default.throwOne(
864
- `object expected but got ${JSON.stringify(raw)}`,
865
- );
291
+ if (t.kind == "singleSelection") {
292
+ const result = converters["SingleSelection"].fromAPIRawValue(raw);
293
+ const isSome = result.kind == "l";
294
+ const value = isSome
295
+ ? PredicateValue.Default.record(OrderedMap(result.value))
296
+ : PredicateValue.Default.unit();
297
+ return ValueOrErrors.Default.return(PredicateValue.Default.option(isSome, value));
866
298
  }
867
- const converterResult = converters["Table"].fromAPIRawValue(raw);
868
- const argType = t.arg;
869
- return DispatchParsedType.Operations.ResolveLookupType(
870
- argType.name,
871
- types,
872
- ).Then((resolvedType) =>
873
- ValueOrErrors.Operations.All(
874
- List(
875
- converterResult.data
876
- .toArray()
877
- .map(([key, record]) =>
878
- dispatchFromAPIRawValue(
879
- resolvedType,
880
- types,
881
- converters,
882
- injectedPrimitives,
883
- )(record).Then((value) =>
884
- PredicateValue.Operations.IsRecord(value)
885
- ? ValueOrErrors.Default.return([key, value])
886
- : ValueOrErrors.Default.throwOne(
887
- `record expected but got ${PredicateValue.Operations.GetKind(value)}`,
888
- ),
889
- ),
890
- ),
891
- ),
892
- ).Then((values) =>
893
- ValueOrErrors.Default.return(
894
- ValueTable.Default.fromParsed(
895
- converterResult.from,
896
- converterResult.to,
897
- converterResult.hasMoreValues,
898
- OrderedMap(values),
899
- ),
900
- ),
901
- ),
902
- );
903
- }
904
- if (t.kind == "one") {
905
- const result = converters["One"].fromAPIRawValue(raw);
906
- if (!result.isSome) {
907
- return ValueOrErrors.Default.return(result);
299
+ if (t.kind == "multiSelection") {
300
+ const result = converters["MultiSelection"].fromAPIRawValue(raw);
301
+ const values = result.map((_) => PredicateValue.Default.record(OrderedMap(_)));
302
+ return ValueOrErrors.Default.return(PredicateValue.Default.record(OrderedMap(values)));
908
303
  }
909
- return dispatchFromAPIRawValue(
910
- t.arg,
911
- types,
912
- converters,
913
- injectedPrimitives,
914
- )(result.value).Then((value) =>
915
- ValueOrErrors.Default.return(
916
- PredicateValue.Default.option(true, value),
917
- ),
918
- );
919
- }
920
- if (t.kind == "readOnly") {
921
- const readOnlyResult = converters["ReadOnly"].fromAPIRawValue(raw);
922
- return dispatchFromAPIRawValue(
923
- t.arg,
924
- types,
925
- converters,
926
- injectedPrimitives,
927
- )(readOnlyResult.ReadOnly).Then((value) =>
928
- ValueOrErrors.Default.return(PredicateValue.Default.readonly(value)),
929
- );
930
- }
931
- // TODO -- this can be more functional
932
- if (t.kind == "record") {
933
- if (typeof raw != "object") {
934
- return ValueOrErrors.Default.throwOne(
935
- `object expected but got ${JSON.stringify(raw)}`,
936
- );
304
+ if (t.kind == "list") {
305
+ const result = converters["List"].fromAPIRawValue(raw);
306
+ return ValueOrErrors.Operations.All(result.map((_) => dispatchFromAPIRawValue(t.args[0], types, converters, injectedPrimitives)(_))).Then((values) => ValueOrErrors.Default.return(PredicateValue.Default.tuple(values)));
937
307
  }
938
- let result = OrderedMap();
939
- let errors = List();
940
- t.fields.forEach((fieldType, fieldName) => {
941
- const fieldValue = raw[fieldName];
942
- if (fieldValue !== null && fieldValue === undefined) {
943
- return;
944
- }
945
- const parsedValue = dispatchFromAPIRawValue(
946
- fieldType,
947
- types,
948
- converters,
949
- injectedPrimitives,
950
- )(fieldValue);
951
- if (parsedValue.kind == "errors") {
952
- errors = errors.concat(parsedValue.errors);
953
- } else {
954
- result = result.set(fieldName, parsedValue.value);
955
- }
956
- });
957
- if (errors.size > 0) {
958
- return ValueOrErrors.Default.throw(errors);
308
+ if (t.kind == "map" && t.args.length == 2) {
309
+ const result = converters["Map"].fromAPIRawValue(raw);
310
+ return ValueOrErrors.Operations.All(List(result.map((_) => dispatchFromAPIRawValue(t.args[0], types, converters, injectedPrimitives)(_[0]).Then((key) => dispatchFromAPIRawValue(t.args[1], types, converters, injectedPrimitives)(_[1]).Then((value) => ValueOrErrors.Default.return(PredicateValue.Default.tuple(List([key, value])))))))).Then((values) => ValueOrErrors.Default.return(PredicateValue.Default.tuple(List(values))));
959
311
  }
960
- return ValueOrErrors.Default.return(
961
- PredicateValue.Default.record(result),
962
- );
963
- }
964
- return ValueOrErrors.Default.throwOne(
965
- `unsupported type ${JSON.stringify(t)} for raw: `,
966
- );
967
- })();
968
- return result.MapErrors((errors) =>
969
- errors.map(
970
- (error) =>
971
- `${error}\n...When converting type ${JSON.stringify(t, null, 2)} and value ${JSON.stringify(raw, null, 2)} from API raw value`,
972
- ),
973
- );
974
- };
975
- export const dispatchToAPIRawValue =
976
- (t, types, converters, injectedPrimitives) => (raw, formState) => {
977
- const result = (() => {
978
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
979
- if (t.kind == "primitive") {
980
- if (t.name == "unit") {
981
- return ValueOrErrors.Default.return(unit);
312
+ if (t.kind == "tuple") {
313
+ const result = converters["Tuple"].fromAPIRawValue(raw);
314
+ return ValueOrErrors.Operations.All(List(result.map((_, index) => dispatchFromAPIRawValue(t.args[index], types, converters, injectedPrimitives)(_)))).Then((values) => ValueOrErrors.Default.return(PredicateValue.Default.tuple(List(values))));
982
315
  }
983
- return ValueOrErrors.Operations.Return(
984
- converters[t.name].toAPIRawValue([
985
- raw,
986
- (_b =
987
- (_a =
988
- formState === null || formState === void 0
989
- ? void 0
990
- : formState.commonFormState) === null || _a === void 0
991
- ? void 0
992
- : _a.modifiedByUser) !== null && _b !== void 0
993
- ? _b
994
- : false,
995
- ]),
996
- );
997
- }
998
- if (t.kind == "union") {
999
- if (!PredicateValue.Operations.IsUnionCase(raw)) {
1000
- return ValueOrErrors.Default.throwOne(
1001
- `Union case expected but got ${JSON.stringify(raw)}\n...when converting union to API raw value`,
1002
- );
316
+ if (t.kind == "sum" && t.args.length === 2) {
317
+ const result = converters["Sum"].fromAPIRawValue(raw);
318
+ return dispatchFromAPIRawValue(result.kind == "l" ? t.args[0] : t.args[1], types, converters, injectedPrimitives)(result.value).Then((value) => ValueOrErrors.Default.return(PredicateValue.Default.sum(Sum.Updaters.map2(replaceWith(value), replaceWith(value))(result))));
1003
319
  }
1004
- const caseName = raw.caseName;
1005
- if (
1006
- caseName == undefined ||
1007
- !PredicateValue.Operations.IsString(caseName)
1008
- ) {
1009
- return ValueOrErrors.Default.throwOne(
1010
- `caseName expected but got ${JSON.stringify(raw)}`,
1011
- );
320
+ if (t.kind == "lookup")
321
+ return MapRepo.Operations.tryFindWithError(t.name, // TODO -- double check this is correct instead of typeName, and maybe remove typeName
322
+ types, () => `type ${t.name} not found in types`).Then((type) => dispatchFromAPIRawValue(type, types, converters, injectedPrimitives)(raw));
323
+ // TODO -- this can be more functional
324
+ if (t.kind == "table") {
325
+ // move to the converter
326
+ if (typeof raw != "object") {
327
+ return ValueOrErrors.Default.throwOne(`object expected but got ${JSON.stringify(raw)}`);
328
+ }
329
+ const converterResult = converters["Table"].fromAPIRawValue(raw);
330
+ const argType = t.arg;
331
+ return DispatchParsedType.Operations.ResolveLookupType(argType.name, types).Then((resolvedType) => ValueOrErrors.Operations.All(List(converterResult.data
332
+ .toArray()
333
+ .map(([key, record]) => dispatchFromAPIRawValue(resolvedType, types, converters, injectedPrimitives)(record).Then((value) => PredicateValue.Operations.IsRecord(value)
334
+ ? ValueOrErrors.Default.return([key, value])
335
+ : ValueOrErrors.Default.throwOne(`record expected but got ${PredicateValue.Operations.GetKind(value)}`))))).Then((values) => ValueOrErrors.Default.return(ValueTable.Default.fromParsed(converterResult.from, converterResult.to, converterResult.hasMoreValues, OrderedMap(values)))));
1012
336
  }
1013
- const caseType = t.args.get(caseName);
1014
- if (caseType == undefined) {
1015
- return ValueOrErrors.Default.throwOne(
1016
- `union case ${caseName} not found in type ${JSON.stringify(t)}`,
1017
- );
337
+ if (t.kind == "one") {
338
+ const result = converters["One"].fromAPIRawValue(raw);
339
+ if (!result.isSome) {
340
+ return ValueOrErrors.Default.return(result);
341
+ }
342
+ return dispatchFromAPIRawValue(t.arg, types, converters, injectedPrimitives)(result.value).Then((value) => ValueOrErrors.Default.return(PredicateValue.Default.option(true, value)));
1018
343
  }
1019
- return dispatchToAPIRawValue(
1020
- caseType,
1021
- types,
1022
- converters,
1023
- injectedPrimitives,
1024
- )(raw.fields, formState);
1025
- }
1026
- if (t.kind == "singleSelection") {
1027
- if (!PredicateValue.Operations.IsOption(raw)) {
1028
- return ValueOrErrors.Default.throwOne(
1029
- `Option expected but got ${JSON.stringify(raw)}`,
1030
- );
344
+ if (t.kind == "readOnly") {
345
+ const readOnlyResult = converters["ReadOnly"].fromAPIRawValue(raw);
346
+ return dispatchFromAPIRawValue(t.arg, types, converters, injectedPrimitives)(readOnlyResult.ReadOnly).Then((value) => ValueOrErrors.Default.return(PredicateValue.Default.readonly(value)));
1031
347
  }
1032
- if (raw.isSome) {
1033
- if (!PredicateValue.Operations.IsRecord(raw.value)) {
1034
- return ValueOrErrors.Default.throwOne(
1035
- `Record expected but got ${JSON.stringify(raw.value)}`,
1036
- );
1037
- }
1038
- const rawValue = raw.value.fields.toJS();
1039
- if (
1040
- !CollectionReference.Operations.IsCollectionReference(rawValue) &&
1041
- !EnumReference.Operations.IsEnumReference(rawValue)
1042
- ) {
1043
- return ValueOrErrors.Default.throwOne(
1044
- `CollectionReference or EnumReference expected but got ${rawValue}`,
1045
- );
1046
- }
1047
- return ValueOrErrors.Operations.Return(
1048
- converters["SingleSelection"].toAPIRawValue([
1049
- Sum.Default.left(rawValue),
1050
- (_d =
1051
- (_c =
1052
- formState === null || formState === void 0
1053
- ? void 0
1054
- : formState.commonFormState) === null || _c === void 0
1055
- ? void 0
1056
- : _c.modifiedByUser) !== null && _d !== void 0
1057
- ? _d
1058
- : false,
1059
- ]),
1060
- );
1061
- } else {
1062
- return ValueOrErrors.Operations.Return(
1063
- converters["SingleSelection"].toAPIRawValue([
1064
- Sum.Default.right("no selection"),
1065
- (_f =
1066
- (_e =
1067
- formState === null || formState === void 0
1068
- ? void 0
1069
- : formState.commonFormState) === null || _e === void 0
1070
- ? void 0
1071
- : _e.modifiedByUser) !== null && _f !== void 0
1072
- ? _f
1073
- : false,
1074
- ]),
1075
- );
348
+ // TODO -- this can be more functional
349
+ if (t.kind == "record") {
350
+ if (typeof raw != "object") {
351
+ return ValueOrErrors.Default.throwOne(`object expected but got ${JSON.stringify(raw)}`);
352
+ }
353
+ let result = OrderedMap();
354
+ let errors = List();
355
+ t.fields.forEach((fieldType, fieldName) => {
356
+ const fieldValue = raw[fieldName];
357
+ if (fieldValue !== null && fieldValue === undefined) {
358
+ return;
359
+ }
360
+ const parsedValue = dispatchFromAPIRawValue(fieldType, types, converters, injectedPrimitives)(fieldValue);
361
+ if (parsedValue.kind == "errors") {
362
+ errors = errors.concat(parsedValue.errors);
363
+ }
364
+ else {
365
+ result = result.set(fieldName, parsedValue.value);
366
+ }
367
+ });
368
+ if (errors.size > 0) {
369
+ return ValueOrErrors.Default.throw(errors);
370
+ }
371
+ return ValueOrErrors.Default.return(PredicateValue.Default.record(result));
1076
372
  }
1077
- }
1078
- if (t.kind == "multiSelection") {
1079
- if (!PredicateValue.Operations.IsRecord(raw)) {
1080
- return ValueOrErrors.Default.throwOne(
1081
- `Record expected but got multi selection of ${JSON.stringify(raw)}`,
1082
- );
373
+ return ValueOrErrors.Default.throwOne(`unsupported type ${JSON.stringify(t)} for raw: `);
374
+ })();
375
+ return result.MapErrors((errors) => errors.map((error) => `${error}\n...When converting type ${JSON.stringify(t, null, 2)} and value ${JSON.stringify(raw, null, 2)} from API raw value`));
376
+ };
377
+ export const dispatchToAPIRawValue = (t, types, converters, injectedPrimitives) => (raw, formState) => {
378
+ const result = (() => {
379
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
380
+ if (t.kind == "primitive") {
381
+ if (t.name == "unit") {
382
+ return ValueOrErrors.Default.return(unit);
383
+ }
384
+ return ValueOrErrors.Operations.Return(converters[t.name].toAPIRawValue([
385
+ raw,
386
+ (_b = (_a = formState === null || formState === void 0 ? void 0 : formState.commonFormState) === null || _a === void 0 ? void 0 : _a.modifiedByUser) !== null && _b !== void 0 ? _b : false,
387
+ ]));
1083
388
  }
1084
- const rawValue = raw.fields.map((value) => {
1085
- if (!PredicateValue.Operations.IsRecord(value)) {
1086
- return ValueOrErrors.Default.throwOne(
1087
- `Record expected but got ${JSON.stringify(value)}`,
1088
- );
1089
- }
1090
- const fieldsObject = value.fields.toJS();
1091
- if (
1092
- !CollectionReference.Operations.IsCollectionReference(
1093
- fieldsObject,
1094
- ) &&
1095
- !EnumReference.Operations.IsEnumReference(fieldsObject)
1096
- ) {
1097
- return ValueOrErrors.Default.throwOne(
1098
- `CollectionReference or EnumReference expected but got ${JSON.stringify(fieldsObject)}`,
1099
- );
1100
- }
1101
- return ValueOrErrors.Default.return(fieldsObject);
1102
- });
1103
- return ValueOrErrors.Operations.All(rawValue.valueSeq().toList()).Then(
1104
- (values) => {
1105
- var _a, _b;
1106
- return ValueOrErrors.Default.return(
1107
- converters["MultiSelection"].toAPIRawValue([
1108
- OrderedMap(
1109
- values
1110
- .map((v) => {
1111
- if (
1112
- CollectionReference.Operations.IsCollectionReference(v)
1113
- ) {
1114
- return [v.Id, v];
1115
- }
1116
- return [v.Value, v];
389
+ if (t.kind == "union") {
390
+ if (!PredicateValue.Operations.IsUnionCase(raw)) {
391
+ return ValueOrErrors.Default.throwOne(`Union case expected but got ${JSON.stringify(raw)}\n...when converting union to API raw value`);
392
+ }
393
+ const caseName = raw.caseName;
394
+ if (caseName == undefined ||
395
+ !PredicateValue.Operations.IsString(caseName)) {
396
+ return ValueOrErrors.Default.throwOne(`caseName expected but got ${JSON.stringify(raw)}`);
397
+ }
398
+ const caseType = t.args.get(caseName);
399
+ if (caseType == undefined) {
400
+ return ValueOrErrors.Default.throwOne(`union case ${caseName} not found in type ${JSON.stringify(t)}`);
401
+ }
402
+ return dispatchToAPIRawValue(caseType, types, converters, injectedPrimitives)(raw.fields, formState);
403
+ }
404
+ if (t.kind == "singleSelection") {
405
+ if (!PredicateValue.Operations.IsOption(raw)) {
406
+ return ValueOrErrors.Default.throwOne(`Option expected but got ${JSON.stringify(raw)}`);
407
+ }
408
+ if (raw.isSome) {
409
+ if (!PredicateValue.Operations.IsRecord(raw.value)) {
410
+ return ValueOrErrors.Default.throwOne(`Record expected but got ${JSON.stringify(raw.value)}`);
411
+ }
412
+ const rawValue = raw.value.fields.toJS();
413
+ if (!CollectionReference.Operations.IsCollectionReference(rawValue) &&
414
+ !EnumReference.Operations.IsEnumReference(rawValue)) {
415
+ return ValueOrErrors.Default.throwOne(`CollectionReference or EnumReference expected but got ${rawValue}`);
416
+ }
417
+ return ValueOrErrors.Operations.Return(converters["SingleSelection"].toAPIRawValue([
418
+ Sum.Default.left(rawValue),
419
+ (_d = (_c = formState === null || formState === void 0 ? void 0 : formState.commonFormState) === null || _c === void 0 ? void 0 : _c.modifiedByUser) !== null && _d !== void 0 ? _d : false,
420
+ ]));
421
+ }
422
+ else {
423
+ return ValueOrErrors.Operations.Return(converters["SingleSelection"].toAPIRawValue([
424
+ Sum.Default.right("no selection"),
425
+ (_f = (_e = formState === null || formState === void 0 ? void 0 : formState.commonFormState) === null || _e === void 0 ? void 0 : _e.modifiedByUser) !== null && _f !== void 0 ? _f : false,
426
+ ]));
427
+ }
428
+ }
429
+ if (t.kind == "multiSelection") {
430
+ if (!PredicateValue.Operations.IsRecord(raw)) {
431
+ return ValueOrErrors.Default.throwOne(`Record expected but got multi selection of ${JSON.stringify(raw)}`);
432
+ }
433
+ const rawValue = raw.fields.map((value) => {
434
+ if (!PredicateValue.Operations.IsRecord(value)) {
435
+ return ValueOrErrors.Default.throwOne(`Record expected but got ${JSON.stringify(value)}`);
436
+ }
437
+ const fieldsObject = value.fields.toJS();
438
+ if (!CollectionReference.Operations.IsCollectionReference(fieldsObject) &&
439
+ !EnumReference.Operations.IsEnumReference(fieldsObject)) {
440
+ return ValueOrErrors.Default.throwOne(`CollectionReference or EnumReference expected but got ${JSON.stringify(fieldsObject)}`);
441
+ }
442
+ return ValueOrErrors.Default.return(fieldsObject);
443
+ });
444
+ return ValueOrErrors.Operations.All(rawValue.valueSeq().toList()).Then((values) => {
445
+ var _a, _b;
446
+ return ValueOrErrors.Default.return(converters["MultiSelection"].toAPIRawValue([
447
+ OrderedMap(values
448
+ .map((v) => {
449
+ if (CollectionReference.Operations.IsCollectionReference(v)) {
450
+ return [v.Id, v];
451
+ }
452
+ return [v.Value, v];
1117
453
  })
1118
- .toArray(),
1119
- ),
1120
- (_b =
1121
- (_a =
1122
- formState === null || formState === void 0
1123
- ? void 0
1124
- : formState.commonFormState) === null || _a === void 0
1125
- ? void 0
1126
- : _a.modifiedByUser) !== null && _b !== void 0
1127
- ? _b
1128
- : false,
1129
- ]),
1130
- );
1131
- },
1132
- );
1133
- }
1134
- if (t.kind == "list") {
1135
- if (!PredicateValue.Operations.IsTuple(raw)) {
1136
- return ValueOrErrors.Default.throwOne(
1137
- `Tuple expected but got list of ${JSON.stringify(raw)}`,
1138
- );
454
+ .toArray()),
455
+ (_b = (_a = formState === null || formState === void 0 ? void 0 : formState.commonFormState) === null || _a === void 0 ? void 0 : _a.modifiedByUser) !== null && _b !== void 0 ? _b : false,
456
+ ]));
457
+ });
1139
458
  }
1140
- return ValueOrErrors.Operations.All(
1141
- List(
1142
- raw.values.map((value, index) => {
1143
- var _a;
1144
- return dispatchToAPIRawValue(
1145
- t.args[0],
1146
- types,
1147
- converters,
1148
- injectedPrimitives,
1149
- )(
1150
- value,
1151
- (_a =
1152
- formState === null || formState === void 0
1153
- ? void 0
1154
- : formState.elementFormStates) === null || _a === void 0
1155
- ? void 0
1156
- : _a.get(index),
1157
- );
1158
- }),
1159
- ),
1160
- ).Then((values) => {
1161
- var _a, _b;
1162
- return ValueOrErrors.Default.return(
1163
- converters["List"].toAPIRawValue([
1164
- values,
1165
- (_b =
1166
- (_a =
1167
- formState === null || formState === void 0
1168
- ? void 0
1169
- : formState.commonFormState) === null || _a === void 0
1170
- ? void 0
1171
- : _a.modifiedByUser) !== null && _b !== void 0
1172
- ? _b
1173
- : false,
1174
- ]),
1175
- );
1176
- });
1177
- }
1178
- if (t.kind == "map" && t.args.length == 2) {
1179
- const keyValues = raw.values.map((keyValue, index) => {
1180
- var _a, _b;
1181
- return dispatchToAPIRawValue(
1182
- t.args[0],
1183
- types,
1184
- converters,
1185
- injectedPrimitives,
1186
- )(
1187
- keyValue.values.get(0),
1188
- (_b =
1189
- (_a =
1190
- formState === null || formState === void 0
1191
- ? void 0
1192
- : formState.elementFormStates) === null || _a === void 0
1193
- ? void 0
1194
- : _a.get(index)) === null || _b === void 0
1195
- ? void 0
1196
- : _b.KeyFormState,
1197
- )
1198
- .Then((possiblyUndefinedKey) => {
1199
- if (
1200
- possiblyUndefinedKey == undefined ||
1201
- possiblyUndefinedKey == null ||
1202
- possiblyUndefinedKey == "" ||
1203
- (typeof possiblyUndefinedKey == "object" &&
1204
- (Object.keys(possiblyUndefinedKey).length == 0 ||
1205
- ("IsSome" in possiblyUndefinedKey &&
1206
- !possiblyUndefinedKey.IsSome)))
1207
- ) {
1208
- return ValueOrErrors.Default.throwOne(
1209
- `A mapped key is undefined for type ${JSON.stringify(t.args[0])}`,
1210
- );
1211
- } else {
1212
- return ValueOrErrors.Default.return(possiblyUndefinedKey);
1213
- }
1214
- })
1215
- .Then((key) => {
1216
- var _a, _b;
1217
- return dispatchToAPIRawValue(
1218
- t.args[1],
1219
- types,
1220
- converters,
1221
- injectedPrimitives,
1222
- )(
1223
- keyValue.values.get(1),
1224
- (_b =
1225
- (_a =
1226
- formState === null || formState === void 0
1227
- ? void 0
1228
- : formState.elementFormStates) === null || _a === void 0
1229
- ? void 0
1230
- : _a.get(index)) === null || _b === void 0
1231
- ? void 0
1232
- : _b.ValueFormState,
1233
- ).Then((value) => ValueOrErrors.Default.return([key, value]));
459
+ if (t.kind == "list") {
460
+ if (!PredicateValue.Operations.IsTuple(raw)) {
461
+ return ValueOrErrors.Default.throwOne(`Tuple expected but got list of ${JSON.stringify(raw)}`);
462
+ }
463
+ return ValueOrErrors.Operations.All(List(raw.values.map((value, index) => {
464
+ var _a;
465
+ return dispatchToAPIRawValue(t.args[0], types, converters, injectedPrimitives)(value, (_a = formState === null || formState === void 0 ? void 0 : formState.elementFormStates) === null || _a === void 0 ? void 0 : _a.get(index));
466
+ }))).Then((values) => {
467
+ var _a, _b;
468
+ return ValueOrErrors.Default.return(converters["List"].toAPIRawValue([
469
+ values,
470
+ (_b = (_a = formState === null || formState === void 0 ? void 0 : formState.commonFormState) === null || _a === void 0 ? void 0 : _a.modifiedByUser) !== null && _b !== void 0 ? _b : false,
471
+ ]));
1234
472
  });
1235
- });
1236
- return ValueOrErrors.Operations.All(List(keyValues)).Then((values) => {
1237
- var _a, _b;
1238
- if (
1239
- values.map((kv) => JSON.stringify(kv[0])).toSet().size !=
1240
- values.size
1241
- ) {
1242
- return ValueOrErrors.Default.throwOne(
1243
- "Keys in the map are not unique",
1244
- );
1245
- }
1246
- return ValueOrErrors.Operations.Return(
1247
- converters["Map"].toAPIRawValue([
1248
- values,
1249
- (_b =
1250
- (_a =
1251
- formState === null || formState === void 0
1252
- ? void 0
1253
- : formState.commonFormState) === null || _a === void 0
1254
- ? void 0
1255
- : _a.modifiedByUser) !== null && _b !== void 0
1256
- ? _b
1257
- : false,
1258
- ]),
1259
- );
1260
- });
1261
- }
1262
- if (t.kind == "sum" && t.args.length === 2) {
1263
- if (!PredicateValue.Operations.IsSum(raw)) {
1264
- return ValueOrErrors.Default.throwOne(
1265
- `Sum expected but got ${JSON.stringify(raw)}`,
1266
- );
1267
473
  }
1268
- return dispatchToAPIRawValue(
1269
- raw.value.kind == "l" ? t.args[0] : t.args[1],
1270
- types,
1271
- converters,
1272
- injectedPrimitives,
1273
- )(
1274
- raw.value.value,
1275
- raw.value.kind == "l"
1276
- ? (_g =
1277
- formState === null || formState === void 0
1278
- ? void 0
1279
- : formState.commonFormState) === null || _g === void 0
1280
- ? void 0
1281
- : _g.left
1282
- : (_h =
1283
- formState === null || formState === void 0
1284
- ? void 0
1285
- : formState.commonFormState) === null || _h === void 0
1286
- ? void 0
1287
- : _h.right,
1288
- ).Then((value) => {
1289
- var _a, _b;
1290
- return ValueOrErrors.Default.return(
1291
- converters["Sum"].toAPIRawValue([
1292
- raw.value.kind == "l"
1293
- ? Sum.Default.left(value)
1294
- : Sum.Default.right(value),
1295
- (_b =
1296
- (_a =
1297
- formState === null || formState === void 0
1298
- ? void 0
1299
- : formState.commonFormState) === null || _a === void 0
1300
- ? void 0
1301
- : _a.modifiedByUser) !== null && _b !== void 0
1302
- ? _b
1303
- : false,
1304
- ]),
1305
- );
1306
- });
1307
- }
1308
- if (t.kind == "tuple") {
1309
- if (!PredicateValue.Operations.IsTuple(raw)) {
1310
- return ValueOrErrors.Default.throwOne(
1311
- `Tuple expected but got ${JSON.stringify(raw)}`,
1312
- );
474
+ if (t.kind == "map" && t.args.length == 2) {
475
+ const keyValues = raw.values.map((keyValue, index) => {
476
+ var _a, _b;
477
+ return dispatchToAPIRawValue(t.args[0], types, converters, injectedPrimitives)(keyValue.values.get(0), (_b = (_a = formState === null || formState === void 0 ? void 0 : formState.elementFormStates) === null || _a === void 0 ? void 0 : _a.get(index)) === null || _b === void 0 ? void 0 : _b.KeyFormState)
478
+ .Then((possiblyUndefinedKey) => {
479
+ if (possiblyUndefinedKey == undefined ||
480
+ possiblyUndefinedKey == null ||
481
+ possiblyUndefinedKey == "" ||
482
+ (typeof possiblyUndefinedKey == "object" &&
483
+ (Object.keys(possiblyUndefinedKey).length == 0 ||
484
+ ("IsSome" in possiblyUndefinedKey &&
485
+ !possiblyUndefinedKey.IsSome)))) {
486
+ return ValueOrErrors.Default.throwOne(`A mapped key is undefined for type ${JSON.stringify(t.args[0])}`);
487
+ }
488
+ else {
489
+ return ValueOrErrors.Default.return(possiblyUndefinedKey);
490
+ }
491
+ })
492
+ .Then((key) => {
493
+ var _a, _b;
494
+ return dispatchToAPIRawValue(t.args[1], types, converters, injectedPrimitives)(keyValue.values.get(1), (_b = (_a = formState === null || formState === void 0 ? void 0 : formState.elementFormStates) === null || _a === void 0 ? void 0 : _a.get(index)) === null || _b === void 0 ? void 0 : _b.ValueFormState).Then((value) => ValueOrErrors.Default.return([key, value]));
495
+ });
496
+ });
497
+ return ValueOrErrors.Operations.All(List(keyValues)).Then((values) => {
498
+ var _a, _b;
499
+ if (values.map((kv) => JSON.stringify(kv[0])).toSet().size !=
500
+ values.size) {
501
+ return ValueOrErrors.Default.throwOne("Keys in the map are not unique");
502
+ }
503
+ return ValueOrErrors.Operations.Return(converters["Map"].toAPIRawValue([
504
+ values,
505
+ (_b = (_a = formState === null || formState === void 0 ? void 0 : formState.commonFormState) === null || _a === void 0 ? void 0 : _a.modifiedByUser) !== null && _b !== void 0 ? _b : false,
506
+ ]));
507
+ });
1313
508
  }
1314
- return ValueOrErrors.Operations.All(
1315
- List(
1316
- raw.values.map((value, index) => {
1317
- var _a;
1318
- return dispatchToAPIRawValue(
1319
- t.args[index],
1320
- types,
1321
- converters,
1322
- injectedPrimitives,
1323
- )(
1324
- value,
1325
- (_a =
1326
- formState === null || formState === void 0
1327
- ? void 0
1328
- : formState.itemFormStates) === null || _a === void 0
1329
- ? void 0
1330
- : _a.get(index),
1331
- );
1332
- }),
1333
- ),
1334
- ).Then((values) => {
1335
- var _a, _b;
1336
- return ValueOrErrors.Default.return(
1337
- converters["Tuple"].toAPIRawValue([
1338
- values,
1339
- (_b =
1340
- (_a =
1341
- formState === null || formState === void 0
1342
- ? void 0
1343
- : formState.commonFormState) === null || _a === void 0
1344
- ? void 0
1345
- : _a.modifiedByUser) !== null && _b !== void 0
1346
- ? _b
1347
- : false,
1348
- ]),
1349
- );
1350
- });
1351
- }
1352
- if (t.kind == "lookup")
1353
- return dispatchToAPIRawValue(
1354
- types.get(t.name),
1355
- types,
1356
- converters,
1357
- injectedPrimitives,
1358
- )(raw, formState);
1359
- if (t.kind == "record") {
1360
- if (!PredicateValue.Operations.IsRecord(raw)) {
1361
- return ValueOrErrors.Default.throwOne(
1362
- `Record expected but got ${JSON.stringify(raw)}`,
1363
- );
509
+ if (t.kind == "sum" && t.args.length === 2) {
510
+ if (!PredicateValue.Operations.IsSum(raw)) {
511
+ return ValueOrErrors.Default.throwOne(`Sum expected but got ${JSON.stringify(raw)}`);
512
+ }
513
+ return dispatchToAPIRawValue(raw.value.kind == "l" ? t.args[0] : t.args[1], types, converters, injectedPrimitives)(raw.value.value, raw.value.kind == "l"
514
+ ? (_g = formState === null || formState === void 0 ? void 0 : formState.commonFormState) === null || _g === void 0 ? void 0 : _g.left
515
+ : (_h = formState === null || formState === void 0 ? void 0 : formState.commonFormState) === null || _h === void 0 ? void 0 : _h.right).Then((value) => {
516
+ var _a, _b;
517
+ return ValueOrErrors.Default.return(converters["Sum"].toAPIRawValue([
518
+ raw.value.kind == "l"
519
+ ? Sum.Default.left(value)
520
+ : Sum.Default.right(value),
521
+ (_b = (_a = formState === null || formState === void 0 ? void 0 : formState.commonFormState) === null || _a === void 0 ? void 0 : _a.modifiedByUser) !== null && _b !== void 0 ? _b : false,
522
+ ]));
523
+ });
1364
524
  }
1365
- const res = [];
1366
- t.fields.forEach((fieldType, fieldName) => {
1367
- var _a;
1368
- const rawField = raw.fields.get(fieldName);
1369
- if (rawField == undefined) {
1370
- return;
1371
- }
1372
- res.push([
1373
- fieldName,
1374
- dispatchToAPIRawValue(
1375
- fieldType,
1376
- types,
1377
- converters,
1378
- injectedPrimitives,
1379
- )(
1380
- raw.fields.get(fieldName),
1381
- (_a =
1382
- formState === null || formState === void 0
1383
- ? void 0
1384
- : formState.fieldStates) === null || _a === void 0
1385
- ? void 0
1386
- : _a.get(fieldName),
1387
- ),
1388
- ]);
1389
- });
1390
- const errors = ValueOrErrors.Operations.All(
1391
- List(res.map(([_, value]) => value)),
1392
- );
1393
- if (errors.kind == "errors") return errors;
1394
- return ValueOrErrors.Operations.Return(
1395
- res.reduce((acc, [fieldName, value]) => {
1396
- acc[fieldName] = value.value;
1397
- return acc;
1398
- }, {}),
1399
- );
1400
- }
1401
- if (t.kind == "one") {
1402
- if (!PredicateValue.Operations.IsOption(raw)) {
1403
- return ValueOrErrors.Default.throwOne(
1404
- `Option expected but got ${JSON.stringify(raw)}\n...when converting one to API raw value`,
1405
- );
525
+ if (t.kind == "tuple") {
526
+ if (!PredicateValue.Operations.IsTuple(raw)) {
527
+ return ValueOrErrors.Default.throwOne(`Tuple expected but got ${JSON.stringify(raw)}`);
528
+ }
529
+ return ValueOrErrors.Operations.All(List(raw.values.map((value, index) => {
530
+ var _a;
531
+ return dispatchToAPIRawValue(t.args[index], types, converters, injectedPrimitives)(value, (_a = formState === null || formState === void 0 ? void 0 : formState.itemFormStates) === null || _a === void 0 ? void 0 : _a.get(index));
532
+ }))).Then((values) => {
533
+ var _a, _b;
534
+ return ValueOrErrors.Default.return(converters["Tuple"].toAPIRawValue([
535
+ values,
536
+ (_b = (_a = formState === null || formState === void 0 ? void 0 : formState.commonFormState) === null || _a === void 0 ? void 0 : _a.modifiedByUser) !== null && _b !== void 0 ? _b : false,
537
+ ]));
538
+ });
1406
539
  }
1407
- if (!raw.isSome) {
1408
- return ValueOrErrors.Default.return(
1409
- converters["One"].toAPIRawValue([
1410
- raw,
1411
- (_k =
1412
- (_j =
1413
- formState === null || formState === void 0
1414
- ? void 0
1415
- : formState.commonFormState) === null || _j === void 0
1416
- ? void 0
1417
- : _j.modifiedByUser) !== null && _k !== void 0
1418
- ? _k
1419
- : false,
1420
- ]),
1421
- );
540
+ if (t.kind == "lookup")
541
+ return dispatchToAPIRawValue(types.get(t.name), types, converters, injectedPrimitives)(raw, formState);
542
+ if (t.kind == "record") {
543
+ if (!PredicateValue.Operations.IsRecord(raw)) {
544
+ return ValueOrErrors.Default.throwOne(`Record expected but got ${JSON.stringify(raw)}`);
545
+ }
546
+ const res = [];
547
+ t.fields.forEach((fieldType, fieldName) => {
548
+ var _a;
549
+ const rawField = raw.fields.get(fieldName);
550
+ if (rawField == undefined) {
551
+ return;
552
+ }
553
+ res.push([
554
+ fieldName,
555
+ dispatchToAPIRawValue(fieldType, types, converters, injectedPrimitives)(raw.fields.get(fieldName), (_a = formState === null || formState === void 0 ? void 0 : formState.fieldStates) === null || _a === void 0 ? void 0 : _a.get(fieldName)),
556
+ ]);
557
+ });
558
+ const errors = ValueOrErrors.Operations.All(List(res.map(([_, value]) => value)));
559
+ if (errors.kind == "errors")
560
+ return errors;
561
+ return ValueOrErrors.Operations.Return(res.reduce((acc, [fieldName, value]) => {
562
+ acc[fieldName] = value.value;
563
+ return acc;
564
+ }, {}));
1422
565
  }
1423
- return dispatchToAPIRawValue(
1424
- t.arg,
1425
- types,
1426
- converters,
1427
- injectedPrimitives,
1428
- )(
1429
- raw.value,
1430
- (_m =
1431
- (_l =
1432
- formState === null || formState === void 0
1433
- ? void 0
1434
- : formState.commonFormState) === null || _l === void 0
1435
- ? void 0
1436
- : _l.modifiedByUser) !== null && _m !== void 0
1437
- ? _m
1438
- : false,
1439
- ).Then((value) => {
1440
- var _a, _b;
1441
- return ValueOrErrors.Default.return(
1442
- converters["One"].toAPIRawValue([
1443
- PredicateValue.Default.option(true, value),
1444
- (_b =
1445
- (_a =
1446
- formState === null || formState === void 0
1447
- ? void 0
1448
- : formState.commonFormState) === null || _a === void 0
1449
- ? void 0
1450
- : _a.modifiedByUser) !== null && _b !== void 0
1451
- ? _b
1452
- : false,
1453
- ]),
1454
- );
1455
- });
1456
- }
1457
- if (t.kind == "readOnly") {
1458
- if (!PredicateValue.Operations.IsReadOnly(raw)) {
1459
- return ValueOrErrors.Default.throwOne(
1460
- `ReadOnly expected but got ${JSON.stringify(raw)}`,
1461
- );
566
+ if (t.kind == "one") {
567
+ if (!PredicateValue.Operations.IsOption(raw)) {
568
+ return ValueOrErrors.Default.throwOne(`Option expected but got ${JSON.stringify(raw)}\n...when converting one to API raw value`);
569
+ }
570
+ if (!raw.isSome) {
571
+ return ValueOrErrors.Default.return(converters["One"].toAPIRawValue([
572
+ raw,
573
+ (_k = (_j = formState === null || formState === void 0 ? void 0 : formState.commonFormState) === null || _j === void 0 ? void 0 : _j.modifiedByUser) !== null && _k !== void 0 ? _k : false,
574
+ ]));
575
+ }
576
+ return dispatchToAPIRawValue(t.arg, types, converters, injectedPrimitives)(raw.value, (_m = (_l = formState === null || formState === void 0 ? void 0 : formState.commonFormState) === null || _l === void 0 ? void 0 : _l.modifiedByUser) !== null && _m !== void 0 ? _m : false).Then((value) => {
577
+ var _a, _b;
578
+ return ValueOrErrors.Default.return(converters["One"].toAPIRawValue([
579
+ PredicateValue.Default.option(true, value),
580
+ (_b = (_a = formState === null || formState === void 0 ? void 0 : formState.commonFormState) === null || _a === void 0 ? void 0 : _a.modifiedByUser) !== null && _b !== void 0 ? _b : false,
581
+ ]));
582
+ });
583
+ }
584
+ if (t.kind == "readOnly") {
585
+ if (!PredicateValue.Operations.IsReadOnly(raw)) {
586
+ return ValueOrErrors.Default.throwOne(`ReadOnly expected but got ${JSON.stringify(raw)}`);
587
+ }
588
+ return dispatchToAPIRawValue(t.arg, types, converters, injectedPrimitives)(raw.ReadOnly, formState).Then((childValue) => {
589
+ var _a, _b;
590
+ return ValueOrErrors.Default.return(converters["ReadOnly"].toAPIRawValue([
591
+ { ReadOnly: childValue },
592
+ (_b = (_a = formState === null || formState === void 0 ? void 0 : formState.commonFormState) === null || _a === void 0 ? void 0 : _a.modifiedByUser) !== null && _b !== void 0 ? _b : false,
593
+ ]));
594
+ });
1462
595
  }
1463
- return dispatchToAPIRawValue(
1464
- t.arg,
1465
- types,
1466
- converters,
1467
- injectedPrimitives,
1468
- )(raw.ReadOnly, formState).Then((childValue) => {
1469
- var _a, _b;
1470
- return ValueOrErrors.Default.return(
1471
- converters["ReadOnly"].toAPIRawValue([
1472
- { ReadOnly: childValue },
1473
- (_b =
1474
- (_a =
1475
- formState === null || formState === void 0
1476
- ? void 0
1477
- : formState.commonFormState) === null || _a === void 0
1478
- ? void 0
1479
- : _a.modifiedByUser) !== null && _b !== void 0
1480
- ? _b
1481
- : false,
1482
- ]),
1483
- );
1484
- });
1485
- }
1486
- if (t.kind == "table") {
1487
- if (!PredicateValue.Operations.IsTable(raw)) {
1488
- return ValueOrErrors.Default.throwOne(
1489
- `Table expected but got ${JSON.stringify(raw)}`,
1490
- );
596
+ if (t.kind == "table") {
597
+ if (!PredicateValue.Operations.IsTable(raw)) {
598
+ return ValueOrErrors.Default.throwOne(`Table expected but got ${JSON.stringify(raw)}`);
599
+ }
600
+ return ValueOrErrors.Default.return(converters["Table"].toAPIRawValue([
601
+ raw,
602
+ (_p = (_o = formState === null || formState === void 0 ? void 0 : formState.commonFormState) === null || _o === void 0 ? void 0 : _o.modifiedByUser) !== null && _p !== void 0 ? _p : false,
603
+ ]));
1491
604
  }
1492
- return ValueOrErrors.Default.return(
1493
- converters["Table"].toAPIRawValue([
1494
- raw,
1495
- (_p =
1496
- (_o =
1497
- formState === null || formState === void 0
1498
- ? void 0
1499
- : formState.commonFormState) === null || _o === void 0
1500
- ? void 0
1501
- : _o.modifiedByUser) !== null && _p !== void 0
1502
- ? _p
1503
- : false,
1504
- ]),
1505
- );
1506
- }
1507
- return ValueOrErrors.Default.throwOne(
1508
- `Unsupported type ${JSON.stringify(t)}`,
1509
- );
605
+ return ValueOrErrors.Default.throwOne(`Unsupported type ${JSON.stringify(t)}`);
1510
606
  })();
1511
- return result.MapErrors((errors) =>
1512
- errors.map(
1513
- (error) =>
1514
- `${error}\n...When converting type ${JSON.stringify(t, null, 2)} and value ${JSON.stringify(raw, null, 2)} to API raw value`,
1515
- ),
1516
- );
1517
- };
1518
- //# sourceMappingURL=state.js.map
607
+ return result.MapErrors((errors) => errors.map((error) => `${error}\n...When converting type ${JSON.stringify(t, null, 2)} and value ${JSON.stringify(raw, null, 2)} to API raw value`));
608
+ };
609
+ //# sourceMappingURL=state.js.map