ballerina-core 1.0.256 → 1.0.258
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.
- package/bin/src/api-response-handler/coroutines/runner.js +20 -13
- package/bin/src/api-response-handler/state.js +13 -11
- package/bin/src/apiResultStatus/state.d.ts +10 -3
- package/bin/src/apiResultStatus/state.js +2 -5
- package/bin/src/async/domains/mirroring/domains/collection/coroutines/synchronizers.js +314 -196
- package/bin/src/async/domains/mirroring/domains/collection/state.js +126 -36
- package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-collection/state.js +18 -11
- package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-collection-entity/state.js +19 -19
- package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-entities/state.js +1 -1
- package/bin/src/async/domains/mirroring/domains/entity/domains/loaded-entity/state.js +18 -18
- package/bin/src/async/domains/mirroring/domains/entity/state.js +18 -9
- package/bin/src/async/domains/mirroring/domains/singleton/coroutines/synchronizers.js +134 -83
- package/bin/src/async/domains/mirroring/domains/singleton/state.js +52 -8
- package/bin/src/async/domains/mirroring/domains/synchronization-result/state.d.ts +15 -9
- package/bin/src/async/domains/mirroring/domains/synchronization-result/state.js +1 -1
- package/bin/src/async/domains/mirroring/domains/synchronized-entities/state.js +7 -4
- package/bin/src/async/domains/promise/state.d.ts +9 -4
- package/bin/src/async/domains/promise/state.js +20 -9
- package/bin/src/async/domains/synchronized/coroutines/synchronize.js +80 -28
- package/bin/src/async/domains/synchronized/state.d.ts +14 -7
- package/bin/src/async/domains/synchronized/state.js +16 -6
- package/bin/src/async/state.d.ts +56 -45
- package/bin/src/async/state.js +115 -97
- package/bin/src/baseEntity/domains/identifiable/state.d.ts +15 -11
- package/bin/src/baseEntity/domains/identifiable/state.js +9 -9
- package/bin/src/collections/domains/array/state.d.ts +7 -7
- package/bin/src/collections/domains/array/state.js +5 -5
- package/bin/src/collections/domains/errors/state.d.ts +10 -10
- package/bin/src/collections/domains/errors/state.js +10 -10
- package/bin/src/collections/domains/immutable/domains/list/state.js +46 -44
- package/bin/src/collections/domains/immutable/domains/map/state.js +41 -23
- package/bin/src/collections/domains/immutable/domains/orderedMap/state.js +84 -65
- package/bin/src/collections/domains/immutable/domains/ordereredSet/state.d.ts +6 -6
- package/bin/src/collections/domains/immutable/domains/ordereredSet/state.js +6 -6
- package/bin/src/collections/domains/maybe/state.d.ts +9 -9
- package/bin/src/collections/domains/maybe/state.js +12 -9
- package/bin/src/collections/domains/product/state.d.ts +25 -19
- package/bin/src/collections/domains/product/state.js +13 -10
- package/bin/src/collections/domains/sum/state.d.ts +101 -77
- package/bin/src/collections/domains/sum/state.js +49 -32
- package/bin/src/collections/domains/valueOrErrors/state.js +81 -56
- package/bin/src/coroutines/builder.js +40 -19
- package/bin/src/coroutines/state.js +381 -306
- package/bin/src/coroutines/template.js +97 -59
- package/bin/src/debounced/coroutines/debounce.js +115 -89
- package/bin/src/debounced/state.js +62 -25
- package/bin/src/diagnostics/domains/message-box/state.d.ts +1 -1
- package/bin/src/diagnostics/domains/message-box/state.js +3 -3
- package/bin/src/foreignMutations/state.d.ts +3 -3
- package/bin/src/foreignMutations/state.js +1 -1
- package/bin/src/forms/domains/attachments/views/attachments-view.js +30 -8
- package/bin/src/forms/domains/collection/domains/reference/state.js +26 -20
- package/bin/src/forms/domains/collection/domains/selection/state.js +1 -1
- package/bin/src/forms/domains/dispatched-forms/built-ins/state.js +2007 -754
- package/bin/src/forms/domains/dispatched-forms/deserializer/coroutines/runner.d.ts.map +1 -1
- package/bin/src/forms/domains/dispatched-forms/deserializer/coroutines/runner.js +123 -44
- package/bin/src/forms/domains/dispatched-forms/deserializer/coroutines/runner.js.map +1 -1
- package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/enum/state.js +40 -27
- package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/primitive/state.js +21 -13
- package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/stream/state.js +43 -27
- package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/sumUnitDate/state.js +39 -22
- package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/serializable/state.d.ts +167 -0
- package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/serializable/state.d.ts.map +1 -0
- package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/serializable/state.js +367 -0
- package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/serializable/state.js.map +1 -0
- package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/types/state.d.ts +7 -29
- package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/types/state.d.ts.map +1 -1
- package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/types/state.js +1098 -572
- package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/types/state.js.map +1 -1
- package/bin/src/forms/domains/dispatched-forms/deserializer/state.d.ts +1 -0
- package/bin/src/forms/domains/dispatched-forms/deserializer/state.d.ts.map +1 -1
- package/bin/src/forms/domains/dispatched-forms/deserializer/state.js +322 -90
- package/bin/src/forms/domains/dispatched-forms/deserializer/state.js.map +1 -1
- package/bin/src/forms/domains/dispatched-forms/deserializer/template.js +3 -2
- package/bin/src/forms/domains/dispatched-forms/runner/coroutines/runner.d.ts +27 -4
- package/bin/src/forms/domains/dispatched-forms/runner/coroutines/runner.js +136 -82
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/base-64-file/state.js +3 -3
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/base-64-file/template.js +49 -23
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/boolean/state.js +3 -3
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/boolean/template.js +52 -24
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/date/state.js +18 -6
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/date/template.js +64 -30
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum/state.js +9 -6
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum/template.js +153 -60
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum-multiselect/state.js +1 -1
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/enum-multiselect/template.js +127 -50
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/injectables/state.js +40 -22
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/list/state.js +31 -13
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/list/template.js +452 -152
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/lookup-type/state.js +1 -1
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/lookup-type/template.js +29 -8
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/lookup-type/template.js.map +1 -1
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/map/state.js +61 -18
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/map/template.js +329 -90
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/number/state.js +3 -3
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/number/template.js +54 -23
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_debouncer.js +22 -10
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_initializeOne.js +49 -31
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/_initializeStream.js +29 -10
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/builder.js +2 -2
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/coroutines/runner.js +47 -26
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/state.js +88 -40
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/one/template.js +386 -152
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/readOnly/state.js +19 -10
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/readOnly/template.js +99 -33
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/record/state.js +32 -11
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/record/template.js +227 -82
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream/state.js +35 -13
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream/template.js +195 -68
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream-multiselect/state.js +36 -13
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/searchable-infinite-stream-multiselect/template.js +246 -106
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/secret/state.js +3 -3
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/secret/template.js +54 -23
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/state.js +40 -27
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/string/state.js +3 -3
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/string/template.js +58 -26
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/sum/state.js +22 -7
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/sum/template.js +188 -53
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/builder.js +2 -2
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/infiniteLoader.js +57 -24
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/initialiseFiltersAndSorting.js +70 -20
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/initialiseTable.d.ts.map +1 -1
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/initialiseTable.js +88 -48
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/initialiseTable.js.map +1 -1
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/loadWithRetries.js +40 -20
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/coroutines/runner.js +43 -15
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/state.js +301 -137
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/state.js.map +1 -1
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/template.js +692 -240
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/tuple/state.js +20 -8
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/tuple/template.js +132 -35
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/union/state.js +21 -8
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/union/template.js +105 -33
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/unit/state.js +12 -9
- package/bin/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/unit/template.js +54 -20
- package/bin/src/forms/domains/dispatched-forms/runner/domains/deltas/state.js +716 -560
- package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/list/state.js +58 -18
- package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/lookup/state.js +45 -14
- package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/map/state.js +76 -18
- package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/multiSelection/state.js +82 -24
- package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/nestedDispatcher/state.js +37 -8
- package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/one/state.js +120 -36
- package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/primitive/state.js +145 -63
- package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/readOnly/state.js +44 -12
- package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/recordField/state.js +14 -4
- package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/record/state.js +81 -25
- package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/singleSelectionDispatcher/state.js +82 -24
- package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/sum/state.js +63 -20
- package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/table/state.js +248 -74
- package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/tupleDispatcher/state.js +61 -13
- package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/domains/unionDispatcher/state.js +92 -33
- package/bin/src/forms/domains/dispatched-forms/runner/domains/dispatcher/state.js +144 -45
- package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/_init.js +203 -95
- package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/_sync.js +79 -37
- package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/builder.js +2 -2
- package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/coroutines/runner.js +19 -17
- package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/state.js +58 -11
- package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/create/template.js +73 -25
- package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/_init.js +205 -95
- package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/_sync.js +78 -37
- package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/builder.js +2 -2
- package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/coroutines/runner.js +19 -17
- package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/state.js +58 -11
- package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/edit/template.js +71 -25
- package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/passthrough/coroutines/runner.js +163 -85
- package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/passthrough/state.js +10 -4
- package/bin/src/forms/domains/dispatched-forms/runner/domains/kind/passthrough/template.js +72 -27
- package/bin/src/forms/domains/dispatched-forms/runner/domains/traversal/state.js +796 -436
- package/bin/src/forms/domains/dispatched-forms/runner/state.js +62 -38
- package/bin/src/forms/domains/dispatched-forms/runner/template.js +78 -25
- package/bin/src/forms/domains/launcher/coroutines/runner.js +120 -45
- package/bin/src/forms/domains/launcher/domains/create/coroutines/runner.js +240 -101
- package/bin/src/forms/domains/launcher/domains/create/state.js +62 -17
- package/bin/src/forms/domains/launcher/domains/create/template.js +84 -42
- package/bin/src/forms/domains/launcher/domains/edit/coroutines/runner.js +242 -103
- package/bin/src/forms/domains/launcher/domains/edit/state.js +62 -17
- package/bin/src/forms/domains/launcher/domains/edit/template.js +86 -43
- package/bin/src/forms/domains/launcher/domains/merger/state.d.ts +4 -4
- package/bin/src/forms/domains/launcher/domains/merger/state.js +35 -26
- package/bin/src/forms/domains/launcher/domains/passthrough/coroutines/runner.js +88 -42
- package/bin/src/forms/domains/launcher/domains/passthrough/state.js +44 -19
- package/bin/src/forms/domains/launcher/domains/passthrough/template.js +56 -34
- package/bin/src/forms/domains/launcher/state.js +6 -6
- package/bin/src/forms/domains/launcher/template.js +169 -85
- package/bin/src/forms/domains/parser/coroutines/runner.js +87 -25
- package/bin/src/forms/domains/parser/domains/built-ins/state.js +944 -533
- package/bin/src/forms/domains/parser/domains/deltas/state.js +444 -318
- package/bin/src/forms/domains/parser/domains/injectables/state.js +29 -26
- package/bin/src/forms/domains/parser/domains/layout/state.js +271 -183
- package/bin/src/forms/domains/parser/domains/predicates/domains/extractor/state.js +324 -162
- package/bin/src/forms/domains/parser/domains/predicates/state.js +1514 -984
- package/bin/src/forms/domains/parser/domains/renderer/state.js +1137 -480
- package/bin/src/forms/domains/parser/domains/types/state.js +355 -170
- package/bin/src/forms/domains/parser/domains/validator/state.js +417 -280
- package/bin/src/forms/domains/parser/state.js +612 -373
- package/bin/src/forms/domains/parser/template.js +1 -1
- package/bin/src/forms/domains/primitives/domains/base-64-file/state.js +5 -5
- package/bin/src/forms/domains/primitives/domains/base-64-file/template.js +38 -19
- package/bin/src/forms/domains/primitives/domains/boolean/state.js +5 -5
- package/bin/src/forms/domains/primitives/domains/boolean/template.js +38 -19
- package/bin/src/forms/domains/primitives/domains/date/state.js +18 -9
- package/bin/src/forms/domains/primitives/domains/date/template.js +51 -25
- package/bin/src/forms/domains/primitives/domains/enum/state.js +6 -6
- package/bin/src/forms/domains/primitives/domains/enum/template.js +117 -48
- package/bin/src/forms/domains/primitives/domains/enum-multiselect/state.js +1 -1
- package/bin/src/forms/domains/primitives/domains/enum-multiselect/template.js +99 -40
- package/bin/src/forms/domains/primitives/domains/list/state.js +14 -14
- package/bin/src/forms/domains/primitives/domains/list/template.js +200 -71
- package/bin/src/forms/domains/primitives/domains/map/state.js +14 -14
- package/bin/src/forms/domains/primitives/domains/map/template.js +294 -103
- package/bin/src/forms/domains/primitives/domains/number/state.js +5 -5
- package/bin/src/forms/domains/primitives/domains/number/template.js +38 -19
- package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream/state.js +33 -16
- package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream/template.js +171 -62
- package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream-multiselect/state.js +1 -1
- package/bin/src/forms/domains/primitives/domains/searchable-infinite-stream-multiselect/template.js +182 -69
- package/bin/src/forms/domains/primitives/domains/secret/state.js +5 -5
- package/bin/src/forms/domains/primitives/domains/secret/template.js +38 -19
- package/bin/src/forms/domains/primitives/domains/string/state.js +5 -5
- package/bin/src/forms/domains/primitives/domains/string/template.js +42 -22
- package/bin/src/forms/domains/primitives/domains/sum/state.js +10 -10
- package/bin/src/forms/domains/primitives/domains/sum/template.js +141 -50
- package/bin/src/forms/domains/primitives/domains/tuple/state.js +9 -9
- package/bin/src/forms/domains/primitives/domains/tuple/template.js +100 -33
- package/bin/src/forms/domains/primitives/domains/unit/state.js +8 -8
- package/bin/src/forms/domains/primitives/domains/unit/template.js +22 -9
- package/bin/src/forms/domains/singleton/domains/form-label/state.d.ts +4 -4
- package/bin/src/forms/domains/singleton/domains/form-label/state.js +1 -1
- package/bin/src/forms/domains/singleton/state.js +12 -10
- package/bin/src/forms/domains/singleton/template.js +288 -113
- package/bin/src/fun/domains/curry/state.d.ts +4 -2
- package/bin/src/fun/domains/curry/state.js +1 -1
- package/bin/src/fun/domains/id/state.d.ts +1 -1
- package/bin/src/fun/domains/id/state.js +1 -1
- package/bin/src/fun/domains/predicate/domains/bool-expr.d.ts +57 -41
- package/bin/src/fun/domains/predicate/domains/bool-expr.js +76 -67
- package/bin/src/fun/domains/predicate/state.d.ts +9 -7
- package/bin/src/fun/domains/predicate/state.js +14 -10
- package/bin/src/fun/domains/simpleCallback/state.d.ts +1 -1
- package/bin/src/fun/domains/simpleCallback/state.js +1 -1
- package/bin/src/fun/domains/uncurry/state.d.ts +4 -2
- package/bin/src/fun/domains/uncurry/state.js +1 -1
- package/bin/src/fun/domains/unit/state.d.ts +1 -1
- package/bin/src/fun/domains/unit/state.js +1 -1
- package/bin/src/fun/domains/updater/domains/caseUpdater/state.d.ts +22 -7
- package/bin/src/fun/domains/updater/domains/caseUpdater/state.js +18 -10
- package/bin/src/fun/domains/updater/domains/mapUpdater/state.d.ts +24 -13
- package/bin/src/fun/domains/updater/domains/mapUpdater/state.js +40 -10
- package/bin/src/fun/domains/updater/domains/maybeUpdater/state.d.ts +19 -13
- package/bin/src/fun/domains/updater/domains/maybeUpdater/state.js +20 -9
- package/bin/src/fun/domains/updater/domains/orderedMapUpdater/state.d.ts +24 -13
- package/bin/src/fun/domains/updater/domains/orderedMapUpdater/state.js +47 -11
- package/bin/src/fun/domains/updater/domains/orderedSetUpdater/state.d.ts +20 -8
- package/bin/src/fun/domains/updater/domains/orderedSetUpdater/state.js +17 -5
- package/bin/src/fun/domains/updater/domains/replaceWith/state.d.ts +1 -1
- package/bin/src/fun/domains/updater/domains/replaceWith/state.js +1 -1
- package/bin/src/fun/domains/updater/domains/simpleUpdater/domains/baseSimpleUpdater/state.d.ts +13 -4
- package/bin/src/fun/domains/updater/domains/simpleUpdater/domains/baseSimpleUpdater/state.js +6 -4
- package/bin/src/fun/domains/updater/domains/simpleUpdater/state.d.ts +60 -22
- package/bin/src/fun/domains/updater/domains/simpleUpdater/state.js +42 -31
- package/bin/src/fun/domains/updater/state.d.ts +4 -4
- package/bin/src/fun/domains/updater/state.js +12 -10
- package/bin/src/fun/state.d.ts +3 -3
- package/bin/src/fun/state.js +9 -7
- package/bin/src/infinite-data-stream/coroutines/builder.js +1 -1
- package/bin/src/infinite-data-stream/coroutines/infiniteLoader.js +47 -20
- package/bin/src/infinite-data-stream/coroutines/runner.js +7 -7
- package/bin/src/infinite-data-stream/state.d.ts +84 -51
- package/bin/src/infinite-data-stream/state.js +125 -61
- package/bin/src/infinite-data-stream/template.js +3 -2
- package/bin/src/math/domains/DOMRect/state.d.ts +4 -4
- package/bin/src/math/domains/DOMRect/state.js +10 -8
- package/bin/src/math/domains/number/state.d.ts +5 -5
- package/bin/src/math/domains/number/state.js +5 -5
- package/bin/src/math/domains/rect/state.d.ts +8 -8
- package/bin/src/math/domains/rect/state.js +16 -15
- package/bin/src/math/domains/rgba/state.d.ts +17 -17
- package/bin/src/math/domains/rgba/state.js +77 -81
- package/bin/src/math/domains/size2/state.d.ts +8 -8
- package/bin/src/math/domains/size2/state.js +6 -6
- package/bin/src/math/domains/vector2/state.d.ts +10 -10
- package/bin/src/math/domains/vector2/state.js +8 -8
- package/bin/src/queue/state.js +23 -16
- package/bin/src/state/domains/repository/state.d.ts +15 -9
- package/bin/src/state/domains/repository/state.js +1 -1
- package/bin/src/template/state.js +163 -115
- package/bin/src/validation/state.js +38 -45
- package/bin/src/value/domains/mutable-value/state.js +3 -2
- package/bin/src/value/state.d.ts +9 -9
- package/bin/src/value/state.js +11 -8
- package/bin/src/value-infinite-data-stream/coroutines/builder.js +1 -1
- package/bin/src/value-infinite-data-stream/coroutines/infiniteLoader.js +55 -20
- package/bin/src/value-infinite-data-stream/coroutines/runner.js +6 -4
- package/bin/src/value-infinite-data-stream/state.js +199 -77
- package/bin/src/value-infinite-data-stream/template.js +4 -2
- package/bin/src/visibility/state.d.ts +5 -2
- package/bin/src/visibility/state.js +1 -1
- package/main.ts +1 -0
- package/package.json +1 -1
- package/src/forms/domains/dispatched-forms/deserializer/coroutines/runner.ts +2 -2
- package/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/apis/state.ts +117 -111
- package/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/list/state.ts +14 -5
- package/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/lookup/state.ts +75 -18
- package/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/map/state.ts +16 -6
- package/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/nestedRenderer/state.ts +27 -9
- package/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/one/state.ts +28 -8
- package/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/readOnly/state.ts +13 -4
- package/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/record/domains/recordFieldRenderer/state.ts +18 -7
- package/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/record/state.ts +40 -14
- package/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/sum/state.ts +15 -5
- package/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/table/domains/tableCellRenderer/state.ts +20 -6
- package/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/table/state.ts +101 -50
- package/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/tuple/state.ts +22 -23
- package/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/domains/union/state.ts +37 -19
- package/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/renderer/state.ts +64 -6
- package/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/serializable/state.ts +585 -0
- package/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/types/state.ts +592 -340
- package/src/forms/domains/dispatched-forms/deserializer/domains/specification/state.ts +364 -226
- package/src/forms/domains/dispatched-forms/deserializer/state.ts +1 -2
- package/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/lookup-type/template.tsx +1 -1
- package/src/forms/domains/dispatched-forms/runner/domains/abstract-renderers/table/state.ts +2 -2
|
@@ -8,7 +8,6 @@ import {
|
|
|
8
8
|
EditLauncher,
|
|
9
9
|
PassthroughLauncher,
|
|
10
10
|
SerializedEntityApi,
|
|
11
|
-
Launcher,
|
|
12
11
|
EnumApis,
|
|
13
12
|
StreamApis,
|
|
14
13
|
SpecificationApis,
|
|
@@ -33,15 +32,25 @@ export type SerializedSpecification = {
|
|
|
33
32
|
launchers?: unknown;
|
|
34
33
|
};
|
|
35
34
|
|
|
35
|
+
export type SerializedLauncher = {
|
|
36
|
+
kind: "create" | "edit" | "passthrough";
|
|
37
|
+
form: string;
|
|
38
|
+
api?: string;
|
|
39
|
+
configApi?: string;
|
|
40
|
+
configType?: string;
|
|
41
|
+
};
|
|
42
|
+
|
|
36
43
|
export type Specification<T> = {
|
|
37
44
|
types: Map<DispatchTypeName, DispatchParsedType<T>>;
|
|
38
45
|
apis: SpecificationApis<T>;
|
|
39
46
|
forms: Map<string, Renderer<T>>;
|
|
40
|
-
launchers:
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
47
|
+
launchers: Launchers;
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
export type Launchers = {
|
|
51
|
+
create: Map<string, CreateLauncher>;
|
|
52
|
+
edit: Map<string, EditLauncher>;
|
|
53
|
+
passthrough: Map<string, PassthroughLauncher>;
|
|
45
54
|
};
|
|
46
55
|
|
|
47
56
|
export const Specification = {
|
|
@@ -94,18 +103,20 @@ export const Specification = {
|
|
|
94
103
|
} =>
|
|
95
104
|
DispatchIsObject(_) && "launchers" in _ && DispatchIsObject(_.launchers),
|
|
96
105
|
DeserializeSpecTypes: <T>(
|
|
106
|
+
launcherTypes: List<DispatchTypeName>,
|
|
97
107
|
serializedTypes: Record<string, SerializedType<T>>,
|
|
98
108
|
injectedPrimitives?: DispatchInjectedPrimitives<T>,
|
|
99
109
|
): ValueOrErrors<Map<DispatchTypeName, DispatchParsedType<T>>, string> => {
|
|
100
|
-
const serializedTypeNames = Set(Object.keys(serializedTypes));
|
|
101
110
|
return ValueOrErrors.Operations.All(
|
|
102
111
|
List<ValueOrErrors<[DispatchTypeName, DispatchParsedType<T>], string>>(
|
|
103
|
-
|
|
104
|
-
.reduce((acc,
|
|
112
|
+
launcherTypes
|
|
113
|
+
.reduce((acc, rawTypeName) => {
|
|
114
|
+
if (acc.has(rawTypeName)) {
|
|
115
|
+
return acc;
|
|
116
|
+
}
|
|
105
117
|
const res = DispatchParsedType.Operations.ParseRawType(
|
|
106
118
|
rawTypeName,
|
|
107
|
-
|
|
108
|
-
serializedTypeNames,
|
|
119
|
+
serializedTypes[rawTypeName],
|
|
109
120
|
serializedTypes,
|
|
110
121
|
acc,
|
|
111
122
|
injectedPrimitives,
|
|
@@ -129,7 +140,60 @@ export const Specification = {
|
|
|
129
140
|
),
|
|
130
141
|
),
|
|
131
142
|
),
|
|
132
|
-
).Then((parsedTypes) =>
|
|
143
|
+
).Then((parsedTypes) =>
|
|
144
|
+
ValueOrErrors.Default.return(
|
|
145
|
+
Map<DispatchTypeName, DispatchParsedType<T>>(parsedTypes),
|
|
146
|
+
),
|
|
147
|
+
);
|
|
148
|
+
},
|
|
149
|
+
DeserializeLaunchers: <T>(
|
|
150
|
+
desiredLaunchers: string[] | undefined,
|
|
151
|
+
serializedLaunchers: Record<string, SerializedLauncher>,
|
|
152
|
+
): ValueOrErrors<Launchers, string> => {
|
|
153
|
+
let launchers: Specification<T>["launchers"] = {
|
|
154
|
+
create: Map<string, CreateLauncher>(),
|
|
155
|
+
edit: Map<string, EditLauncher>(),
|
|
156
|
+
passthrough: Map<string, PassthroughLauncher>(),
|
|
157
|
+
};
|
|
158
|
+
Object.entries(serializedLaunchers)
|
|
159
|
+
.filter(([launcherName, _]) =>
|
|
160
|
+
desiredLaunchers ? desiredLaunchers.includes(launcherName) : true,
|
|
161
|
+
)
|
|
162
|
+
.forEach(([launcherName, serializedLauncher]) => {
|
|
163
|
+
const launcher =
|
|
164
|
+
serializedLauncher["kind"] == "create" ||
|
|
165
|
+
serializedLauncher["kind"] == "edit"
|
|
166
|
+
? {
|
|
167
|
+
name: launcherName,
|
|
168
|
+
kind: serializedLauncher["kind"],
|
|
169
|
+
form: serializedLauncher["form"],
|
|
170
|
+
api: serializedLauncher["api"],
|
|
171
|
+
configApi: serializedLauncher["configApi"],
|
|
172
|
+
}
|
|
173
|
+
: {
|
|
174
|
+
name: launcherName,
|
|
175
|
+
kind: serializedLauncher["kind"],
|
|
176
|
+
form: serializedLauncher["form"],
|
|
177
|
+
configType: serializedLauncher["configType"],
|
|
178
|
+
};
|
|
179
|
+
if (launcher.kind == "create")
|
|
180
|
+
launchers.create = launchers.create.set(
|
|
181
|
+
launcherName,
|
|
182
|
+
launcher as CreateLauncher,
|
|
183
|
+
);
|
|
184
|
+
else if (launcher.kind == "edit")
|
|
185
|
+
launchers.edit = launchers.edit.set(
|
|
186
|
+
launcherName,
|
|
187
|
+
launcher as EditLauncher,
|
|
188
|
+
);
|
|
189
|
+
else if (launcher.kind == "passthrough")
|
|
190
|
+
launchers.passthrough = launchers.passthrough.set(
|
|
191
|
+
launcherName,
|
|
192
|
+
launcher as PassthroughLauncher,
|
|
193
|
+
);
|
|
194
|
+
});
|
|
195
|
+
|
|
196
|
+
return ValueOrErrors.Default.return(launchers);
|
|
133
197
|
},
|
|
134
198
|
DeserializeForms: <
|
|
135
199
|
T extends DispatchInjectablesTypes<T>,
|
|
@@ -145,51 +209,187 @@ export const Specification = {
|
|
|
145
209
|
CustomPresentationContext,
|
|
146
210
|
ExtraContext
|
|
147
211
|
>,
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
212
|
+
launcherForms: List<string>,
|
|
213
|
+
): ValueOrErrors<Map<string, Renderer<T>>, string> => {
|
|
214
|
+
return Object.entries(forms)
|
|
215
|
+
.filter(([formName]) => launcherForms.includes(formName))
|
|
216
|
+
.reduce<
|
|
217
|
+
ValueOrErrors<
|
|
218
|
+
[Map<string, Renderer<T>>, Map<string, Renderer<T>>],
|
|
219
|
+
string
|
|
220
|
+
>
|
|
221
|
+
>(
|
|
222
|
+
(acc, [formName, form]) =>
|
|
223
|
+
acc.Then(([formsMap, accumulatedAlreadyParsedForms]) =>
|
|
224
|
+
!DispatchIsObject(form) ||
|
|
225
|
+
!("type" in form) ||
|
|
226
|
+
typeof form.type != "string"
|
|
227
|
+
? ValueOrErrors.Default.throwOne<
|
|
228
|
+
[Map<string, Renderer<T>>, Map<string, Renderer<T>>],
|
|
229
|
+
string
|
|
230
|
+
>(`form ${formName} is missing the required type attribute`)
|
|
231
|
+
: accumulatedAlreadyParsedForms.has(formName)
|
|
232
|
+
? ValueOrErrors.Default.return<
|
|
233
|
+
[Map<string, Renderer<T>>, Map<string, Renderer<T>>],
|
|
234
|
+
string
|
|
235
|
+
>([
|
|
236
|
+
formsMap.set(
|
|
237
|
+
formName,
|
|
238
|
+
accumulatedAlreadyParsedForms.get(formName)!,
|
|
239
|
+
),
|
|
240
|
+
accumulatedAlreadyParsedForms,
|
|
241
|
+
])
|
|
242
|
+
: MapRepo.Operations.tryFindWithError(
|
|
243
|
+
form.type,
|
|
244
|
+
types,
|
|
245
|
+
() => `form type ${form.type} not found in types`,
|
|
246
|
+
).Then((formType) =>
|
|
247
|
+
Renderer.Operations.Deserialize(
|
|
248
|
+
"columns" in form
|
|
249
|
+
? DispatchParsedType.Default.table(
|
|
250
|
+
DispatchParsedType.Default.lookup(
|
|
251
|
+
form.type as string,
|
|
252
|
+
),
|
|
253
|
+
)
|
|
254
|
+
: formType,
|
|
255
|
+
form,
|
|
256
|
+
concreteRenderers as unknown as ConcreteRenderers<
|
|
257
|
+
T,
|
|
258
|
+
Flags,
|
|
259
|
+
CustomPresentationContext
|
|
260
|
+
>,
|
|
261
|
+
types,
|
|
262
|
+
undefined,
|
|
263
|
+
forms,
|
|
264
|
+
accumulatedAlreadyParsedForms,
|
|
265
|
+
)
|
|
266
|
+
.MapErrors((errors) =>
|
|
267
|
+
errors.map(
|
|
268
|
+
(error) =>
|
|
269
|
+
`${error}\n...When deserializing form ${formName}`,
|
|
168
270
|
),
|
|
169
271
|
)
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
(error) =>
|
|
183
|
-
`${error}\n...When deserializing form ${formName}`,
|
|
184
|
-
),
|
|
185
|
-
)
|
|
186
|
-
.Then((form) =>
|
|
187
|
-
ValueOrErrors.Default.return([formName, form]),
|
|
272
|
+
.Then(([deserializedForm, newAlreadyParsedForms]) =>
|
|
273
|
+
ValueOrErrors.Default.return<
|
|
274
|
+
[
|
|
275
|
+
Map<string, Renderer<T>>,
|
|
276
|
+
Map<string, Renderer<T>>,
|
|
277
|
+
],
|
|
278
|
+
string
|
|
279
|
+
>([
|
|
280
|
+
formsMap.set(formName, deserializedForm),
|
|
281
|
+
newAlreadyParsedForms,
|
|
282
|
+
]),
|
|
283
|
+
),
|
|
188
284
|
),
|
|
189
|
-
|
|
285
|
+
),
|
|
286
|
+
ValueOrErrors.Default.return<
|
|
287
|
+
[Map<string, Renderer<T>>, Map<string, Renderer<T>>],
|
|
288
|
+
string
|
|
289
|
+
>([Map<string, Renderer<T>>(), Map<string, Renderer<T>>()]),
|
|
290
|
+
)
|
|
291
|
+
.Then(([forms, accumulatedAlreadyParsedForms]) =>
|
|
292
|
+
ValueOrErrors.Default.return<Map<string, Renderer<T>>, string>(
|
|
293
|
+
accumulatedAlreadyParsedForms.concat(forms),
|
|
190
294
|
),
|
|
191
|
-
)
|
|
192
|
-
|
|
295
|
+
);
|
|
296
|
+
},
|
|
297
|
+
GetFormType: <T>(form: object): ValueOrErrors<string, string> => {
|
|
298
|
+
if (!("type" in form) || typeof form.type != "string")
|
|
299
|
+
return ValueOrErrors.Default.throwOne(
|
|
300
|
+
`form is missing the required type attribute`,
|
|
301
|
+
);
|
|
302
|
+
return ValueOrErrors.Default.return(form.type);
|
|
303
|
+
},
|
|
304
|
+
TryFindForm: <T>(
|
|
305
|
+
formName: string,
|
|
306
|
+
forms: object,
|
|
307
|
+
): ValueOrErrors<object, string> => {
|
|
308
|
+
if (!(formName in forms))
|
|
309
|
+
return ValueOrErrors.Default.throwOne(
|
|
310
|
+
`form ${formName} not found in forms`,
|
|
311
|
+
);
|
|
312
|
+
return ValueOrErrors.Default.return(Reflect.get(forms, formName));
|
|
313
|
+
},
|
|
314
|
+
GetLauncherFormNames: <T>(launchers: Launchers): List<string> => {
|
|
315
|
+
const forms: string[] = [];
|
|
316
|
+
launchers.create.forEach((launcher) => forms.push(launcher.form));
|
|
317
|
+
launchers.edit.forEach((launcher) => forms.push(launcher.form));
|
|
318
|
+
launchers.passthrough.forEach((launcher) => forms.push(launcher.form));
|
|
319
|
+
return List(forms);
|
|
320
|
+
},
|
|
321
|
+
GetCreateAndEditConfigEntityTypes: <T>(
|
|
322
|
+
launchers: Launchers,
|
|
323
|
+
apis: object,
|
|
324
|
+
): List<ValueOrErrors<string, string>> => {
|
|
325
|
+
const entities = Reflect.get(apis, "entities");
|
|
326
|
+
const results: ValueOrErrors<string, string>[] = [];
|
|
327
|
+
launchers.create.forEach((launcher) => {
|
|
328
|
+
const entityType = Reflect.get(entities, launcher.configApi)?.type;
|
|
329
|
+
results.push(
|
|
330
|
+
entityType
|
|
331
|
+
? ValueOrErrors.Default.return<string, string>(entityType)
|
|
332
|
+
: ValueOrErrors.Default.throwOne<string, string>(
|
|
333
|
+
`entity type ${launcher.configApi} not found in entities`,
|
|
334
|
+
),
|
|
335
|
+
);
|
|
336
|
+
});
|
|
337
|
+
launchers.edit.forEach((launcher) => {
|
|
338
|
+
const entityType = Reflect.get(entities, launcher.configApi)?.type;
|
|
339
|
+
results.push(
|
|
340
|
+
entityType
|
|
341
|
+
? ValueOrErrors.Default.return<string, string>(entityType)
|
|
342
|
+
: ValueOrErrors.Default.throwOne<string, string>(
|
|
343
|
+
`entity type ${launcher.configApi} not found in entities`,
|
|
344
|
+
),
|
|
345
|
+
);
|
|
346
|
+
});
|
|
347
|
+
return List(results);
|
|
348
|
+
},
|
|
349
|
+
|
|
350
|
+
GetLauncherConfigTypes: <T>(launchers: Launchers): List<string> => {
|
|
351
|
+
return launchers.passthrough
|
|
352
|
+
.map((launcher) => launcher.configType)
|
|
353
|
+
.toList();
|
|
354
|
+
},
|
|
355
|
+
GetLaucherFormTypes: <T>(
|
|
356
|
+
launchers: Launchers,
|
|
357
|
+
forms: object,
|
|
358
|
+
apis: object,
|
|
359
|
+
): ValueOrErrors<List<string>, string> => {
|
|
360
|
+
const results: ValueOrErrors<string, string>[] = [];
|
|
361
|
+
launchers.create.forEach((launcher) => {
|
|
362
|
+
results.push(
|
|
363
|
+
Specification.Operations.TryFindForm(launcher.form, forms).Then(
|
|
364
|
+
(form) => Specification.Operations.GetFormType(form),
|
|
365
|
+
),
|
|
366
|
+
);
|
|
367
|
+
});
|
|
368
|
+
launchers.edit.forEach((launcher) => {
|
|
369
|
+
results.push(
|
|
370
|
+
Specification.Operations.TryFindForm(launcher.form, forms).Then(
|
|
371
|
+
(form) => Specification.Operations.GetFormType(form),
|
|
372
|
+
),
|
|
373
|
+
);
|
|
374
|
+
});
|
|
375
|
+
launchers.passthrough.forEach((launcher) => {
|
|
376
|
+
results.push(
|
|
377
|
+
Specification.Operations.TryFindForm(launcher.form, forms).Then(
|
|
378
|
+
(form) => Specification.Operations.GetFormType(form),
|
|
379
|
+
),
|
|
380
|
+
);
|
|
381
|
+
results.push(
|
|
382
|
+
ValueOrErrors.Default.return<string, string>(launcher.configType),
|
|
383
|
+
);
|
|
384
|
+
});
|
|
385
|
+
results.push(
|
|
386
|
+
...Specification.Operations.GetCreateAndEditConfigEntityTypes(
|
|
387
|
+
launchers,
|
|
388
|
+
apis,
|
|
389
|
+
).toArray(),
|
|
390
|
+
);
|
|
391
|
+
return ValueOrErrors.Operations.All(List(results));
|
|
392
|
+
},
|
|
193
393
|
Deserialize:
|
|
194
394
|
<
|
|
195
395
|
T extends DispatchInjectablesTypes<T>,
|
|
@@ -207,205 +407,143 @@ export const Specification = {
|
|
|
207
407
|
injectedPrimitives?: DispatchInjectedPrimitives<T>,
|
|
208
408
|
) =>
|
|
209
409
|
(
|
|
210
|
-
|
|
410
|
+
serializedSpecificationV2s:
|
|
211
411
|
| SerializedSpecification
|
|
212
412
|
| SerializedSpecification[],
|
|
413
|
+
launcherNames?: string[],
|
|
213
414
|
): ValueOrErrors<Specification<T>, string> =>
|
|
214
415
|
injectedPrimitives
|
|
215
416
|
?.keySeq()
|
|
216
|
-
.toArray()
|
|
217
417
|
.some(
|
|
218
418
|
(injectedPrimitiveName) =>
|
|
219
|
-
!
|
|
220
|
-
injectedPrimitiveName as string,
|
|
221
|
-
),
|
|
419
|
+
!(injectedPrimitiveName in apiConverters),
|
|
222
420
|
)
|
|
223
421
|
? ValueOrErrors.Default.throwOne(
|
|
224
422
|
`the formsConfig does not contain an Api Converter for all injected primitives`,
|
|
225
423
|
)
|
|
226
|
-
: !Specification.Operations.
|
|
424
|
+
: !Specification.Operations.hasLaunchers(serializedSpecificationV2s)
|
|
227
425
|
? ValueOrErrors.Default.throwOne<Specification<T>, string>(
|
|
228
|
-
"
|
|
426
|
+
"launchers are missing from the specificationV2",
|
|
229
427
|
)
|
|
230
|
-
: Specification.Operations.
|
|
231
|
-
|
|
232
|
-
|
|
428
|
+
: Specification.Operations.DeserializeLaunchers(
|
|
429
|
+
launcherNames,
|
|
430
|
+
serializedSpecificationV2s.launchers,
|
|
233
431
|
)
|
|
234
|
-
.Then((
|
|
235
|
-
!Specification.Operations.
|
|
432
|
+
.Then((launchers) =>
|
|
433
|
+
!Specification.Operations.hasTypes(serializedSpecificationV2s)
|
|
236
434
|
? ValueOrErrors.Default.throwOne<Specification<T>, string>(
|
|
237
|
-
"
|
|
435
|
+
"types are missing from the specificationV2",
|
|
238
436
|
)
|
|
239
|
-
: Specification.Operations.
|
|
240
|
-
|
|
241
|
-
Flags,
|
|
242
|
-
CustomPresentationContext,
|
|
243
|
-
ExtraContext
|
|
244
|
-
>(
|
|
245
|
-
serializedSpecifications.forms,
|
|
246
|
-
allTypes,
|
|
247
|
-
concreteRenderers,
|
|
248
|
-
).Then((forms) =>
|
|
249
|
-
!Specification.Operations.hasApis(
|
|
250
|
-
serializedSpecifications,
|
|
437
|
+
: !Specification.Operations.hasForms(
|
|
438
|
+
serializedSpecificationV2s,
|
|
251
439
|
)
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
let launchers: Specification<T>["launchers"] =
|
|
305
|
-
{
|
|
306
|
-
create: Map<string, CreateLauncher>(),
|
|
307
|
-
edit: Map<string, EditLauncher>(),
|
|
308
|
-
passthrough: Map<
|
|
440
|
+
? ValueOrErrors.Default.throwOne<
|
|
441
|
+
Specification<T>,
|
|
442
|
+
string
|
|
443
|
+
>("forms are missing from the specificationV2")
|
|
444
|
+
: !Specification.Operations.hasApis(
|
|
445
|
+
serializedSpecificationV2s,
|
|
446
|
+
)
|
|
447
|
+
? ValueOrErrors.Default.throwOne<
|
|
448
|
+
Specification<T>,
|
|
449
|
+
string
|
|
450
|
+
>("apis are missing from the specificationV2")
|
|
451
|
+
: Specification.Operations.GetLaucherFormTypes(
|
|
452
|
+
launchers,
|
|
453
|
+
serializedSpecificationV2s.forms,
|
|
454
|
+
serializedSpecificationV2s.apis,
|
|
455
|
+
).Then((formTypes) =>
|
|
456
|
+
Specification.Operations.DeserializeSpecTypes(
|
|
457
|
+
formTypes,
|
|
458
|
+
serializedSpecificationV2s.types,
|
|
459
|
+
injectedPrimitives,
|
|
460
|
+
).Then((allTypes) =>
|
|
461
|
+
Specification.Operations.DeserializeForms<
|
|
462
|
+
T,
|
|
463
|
+
Flags,
|
|
464
|
+
CustomPresentationContext,
|
|
465
|
+
ExtraContext
|
|
466
|
+
>(
|
|
467
|
+
serializedSpecificationV2s.forms,
|
|
468
|
+
allTypes,
|
|
469
|
+
concreteRenderers,
|
|
470
|
+
Specification.Operations.GetLauncherFormNames(
|
|
471
|
+
launchers,
|
|
472
|
+
),
|
|
473
|
+
).Then((forms) =>
|
|
474
|
+
EnumApis.Operations.Deserialize(
|
|
475
|
+
serializedSpecificationV2s.apis.enumOptions,
|
|
476
|
+
).Then((enums) =>
|
|
477
|
+
StreamApis.Operations.Deserialize(
|
|
478
|
+
serializedSpecificationV2s.apis
|
|
479
|
+
.searchableStreams,
|
|
480
|
+
).Then((streams) =>
|
|
481
|
+
TableApis.Operations.Deserialize(
|
|
482
|
+
concreteRenderers,
|
|
483
|
+
allTypes,
|
|
484
|
+
serializedSpecificationV2s.types,
|
|
485
|
+
serializedSpecificationV2s.apis.tables,
|
|
486
|
+
injectedPrimitives,
|
|
487
|
+
).Then((tables) =>
|
|
488
|
+
LookupApis.Operations.Deserialize(
|
|
489
|
+
serializedSpecificationV2s.apis.lookups,
|
|
490
|
+
).Then((lookups) => {
|
|
491
|
+
const entityEntries: [
|
|
309
492
|
string,
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
? {
|
|
337
|
-
name: launcherName,
|
|
338
|
-
kind: serializedSpecifications
|
|
339
|
-
.launchers[launcherName][
|
|
340
|
-
"kind"
|
|
341
|
-
],
|
|
342
|
-
form: serializedSpecifications
|
|
343
|
-
.launchers[launcherName][
|
|
344
|
-
"form"
|
|
345
|
-
],
|
|
346
|
-
api: serializedSpecifications
|
|
347
|
-
.launchers[launcherName]["api"],
|
|
348
|
-
configApi:
|
|
349
|
-
serializedSpecifications
|
|
350
|
-
.launchers[launcherName][
|
|
351
|
-
"configApi"
|
|
352
|
-
],
|
|
353
|
-
}
|
|
354
|
-
: {
|
|
355
|
-
name: launcherName,
|
|
356
|
-
kind: serializedSpecifications
|
|
357
|
-
.launchers[launcherName][
|
|
358
|
-
"kind"
|
|
359
|
-
],
|
|
360
|
-
form: serializedSpecifications
|
|
361
|
-
.launchers[launcherName][
|
|
362
|
-
"form"
|
|
363
|
-
],
|
|
364
|
-
configType:
|
|
365
|
-
serializedSpecifications
|
|
366
|
-
.launchers[launcherName][
|
|
367
|
-
"configType"
|
|
368
|
-
],
|
|
369
|
-
};
|
|
370
|
-
if (launcher.kind == "create")
|
|
371
|
-
launchers.create = launchers.create.set(
|
|
372
|
-
launcherName,
|
|
373
|
-
launcher,
|
|
374
|
-
);
|
|
375
|
-
else if (launcher.kind == "edit")
|
|
376
|
-
launchers.edit = launchers.edit.set(
|
|
377
|
-
launcherName,
|
|
378
|
-
launcher,
|
|
493
|
+
EntityApi,
|
|
494
|
+
][] = Object.entries(
|
|
495
|
+
serializedSpecificationV2s.apis
|
|
496
|
+
.entities,
|
|
497
|
+
).map(
|
|
498
|
+
([entityApiName, entityApi]: [
|
|
499
|
+
entiyApiName: string,
|
|
500
|
+
entityApi: SerializedEntityApi,
|
|
501
|
+
]) => {
|
|
502
|
+
const methods = entityApi.methods;
|
|
503
|
+
return [
|
|
504
|
+
entityApiName,
|
|
505
|
+
{
|
|
506
|
+
type: entityApi.type,
|
|
507
|
+
methods: {
|
|
508
|
+
create:
|
|
509
|
+
methods.includes("create"),
|
|
510
|
+
get: methods.includes("get"),
|
|
511
|
+
update:
|
|
512
|
+
methods.includes("update"),
|
|
513
|
+
default:
|
|
514
|
+
methods.includes("default"),
|
|
515
|
+
},
|
|
516
|
+
},
|
|
517
|
+
] as [string, EntityApi];
|
|
518
|
+
},
|
|
379
519
|
);
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
launchers.passthrough.set(
|
|
383
|
-
launcherName,
|
|
384
|
-
launcher,
|
|
385
|
-
);
|
|
386
|
-
});
|
|
520
|
+
const entities: Map<string, EntityApi> =
|
|
521
|
+
Map(entityEntries);
|
|
387
522
|
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
523
|
+
return ValueOrErrors.Default.return({
|
|
524
|
+
types: allTypes,
|
|
525
|
+
forms,
|
|
526
|
+
apis: {
|
|
527
|
+
enums,
|
|
528
|
+
streams,
|
|
529
|
+
entities,
|
|
530
|
+
tables,
|
|
531
|
+
lookups,
|
|
532
|
+
},
|
|
533
|
+
launchers,
|
|
534
|
+
});
|
|
535
|
+
}),
|
|
536
|
+
),
|
|
537
|
+
),
|
|
401
538
|
),
|
|
402
539
|
),
|
|
403
540
|
),
|
|
404
|
-
|
|
541
|
+
),
|
|
405
542
|
)
|
|
406
543
|
.MapErrors((errors) =>
|
|
407
544
|
errors.map(
|
|
408
|
-
(error) =>
|
|
545
|
+
(error) =>
|
|
546
|
+
`${error}\n...When deserializing specificationV2`,
|
|
409
547
|
),
|
|
410
548
|
),
|
|
411
549
|
},
|