ballerina-core 1.0.261 → 1.0.262

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 (100) hide show
  1. package/.prettierignore +3 -0
  2. package/.prettierrc +5 -0
  3. package/Dockerfile +7 -0
  4. package/bin/src/forms/domains/dispatched-forms/runner/template.d.ts.map +1 -1
  5. package/bin/src/forms/domains/launcher/coroutines/runner.d.ts.map +1 -1
  6. package/bin/src/forms/domains/launcher/template.d.ts.map +1 -1
  7. package/package.json +5 -1
  8. package/tsconfig.json +5 -1
  9. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/layout/state.d.ts +0 -57
  10. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/layout/state.d.ts.map +0 -1
  11. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/layout/state.js +0 -85
  12. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/domains/forms/domains/layout/state.js.map +0 -1
  13. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/statev2.d.ts +0 -57
  14. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/statev2.d.ts.map +0 -1
  15. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/statev2.js +0 -170
  16. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification/statev2.js.map +0 -1
  17. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/enum/state.d.ts +0 -43
  18. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/enum/state.d.ts.map +0 -1
  19. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/enum/state.js +0 -42
  20. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/enum/state.js.map +0 -1
  21. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/list/state.d.ts +0 -78
  22. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/list/state.d.ts.map +0 -1
  23. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/list/state.js +0 -93
  24. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/list/state.js.map +0 -1
  25. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/lookup/state.d.ts +0 -129
  26. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/lookup/state.d.ts.map +0 -1
  27. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/lookup/state.js +0 -141
  28. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/lookup/state.js.map +0 -1
  29. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/map/state.d.ts +0 -53
  30. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/map/state.d.ts.map +0 -1
  31. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/map/state.js +0 -76
  32. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/map/state.js.map +0 -1
  33. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/nestedRenderer/state.d.ts +0 -81
  34. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/nestedRenderer/state.d.ts.map +0 -1
  35. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/nestedRenderer/state.js +0 -98
  36. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/nestedRenderer/state.js.map +0 -1
  37. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/one/state.d.ts +0 -76
  38. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/one/state.d.ts.map +0 -1
  39. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/one/state.js +0 -107
  40. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/one/state.js.map +0 -1
  41. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/primitive/state.d.ts +0 -27
  42. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/primitive/state.d.ts.map +0 -1
  43. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/primitive/state.js +0 -25
  44. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/primitive/state.js.map +0 -1
  45. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/readOnly/state.d.ts +0 -61
  46. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/readOnly/state.d.ts.map +0 -1
  47. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/readOnly/state.js +0 -64
  48. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/readOnly/state.js.map +0 -1
  49. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/record/domains/recordFieldRenderer/state.d.ts +0 -54
  50. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/record/domains/recordFieldRenderer/state.d.ts.map +0 -1
  51. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/record/domains/recordFieldRenderer/state.js +0 -70
  52. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/record/domains/recordFieldRenderer/state.js.map +0 -1
  53. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/record/state.d.ts +0 -60
  54. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/record/state.d.ts.map +0 -1
  55. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/record/state.js +0 -144
  56. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/record/state.js.map +0 -1
  57. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/stream/state.d.ts +0 -35
  58. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/stream/state.d.ts.map +0 -1
  59. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/stream/state.js +0 -45
  60. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/stream/state.js.map +0 -1
  61. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/sum/state.d.ts +0 -60
  62. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/sum/state.d.ts.map +0 -1
  63. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/sum/state.js +0 -75
  64. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/sum/state.js.map +0 -1
  65. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/sumUnitDate/state.d.ts +0 -32
  66. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/sumUnitDate/state.d.ts.map +0 -1
  67. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/sumUnitDate/state.js +0 -41
  68. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/sumUnitDate/state.js.map +0 -1
  69. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/table/domains/tableCellRenderer/state.d.ts +0 -51
  70. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/table/domains/tableCellRenderer/state.d.ts.map +0 -1
  71. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/table/domains/tableCellRenderer/state.js +0 -58
  72. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/table/domains/tableCellRenderer/state.js.map +0 -1
  73. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/table/state.d.ts +0 -102
  74. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/table/state.d.ts.map +0 -1
  75. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/table/state.js +0 -189
  76. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/table/state.js.map +0 -1
  77. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/tuple/state.d.ts +0 -49
  78. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/tuple/state.d.ts.map +0 -1
  79. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/tuple/state.js +0 -83
  80. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/tuple/state.js.map +0 -1
  81. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/union/state.d.ts +0 -52
  82. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/union/state.d.ts.map +0 -1
  83. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/union/state.js +0 -91
  84. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/domains/union/state.js.map +0 -1
  85. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/state.d.ts +0 -126
  86. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/state.d.ts.map +0 -1
  87. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/state.js +0 -221
  88. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/forms/domains/renderer/state.js.map +0 -1
  89. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/types/state.d.ts +0 -550
  90. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/types/state.d.ts.map +0 -1
  91. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/types/state.js +0 -1086
  92. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/domains/types/state.js.map +0 -1
  93. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/state.d.ts +0 -139
  94. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/state.d.ts.map +0 -1
  95. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/state.js +0 -338
  96. package/bin/src/forms/domains/dispatched-forms/deserializer/domains/specification-v2/state.js.map +0 -1
  97. package/bin/src/forms/domains/dispatched-forms/runner/coroutines/runner.d.ts +0 -34
  98. package/bin/src/forms/domains/dispatched-forms/runner/coroutines/runner.d.ts.map +0 -1
  99. package/bin/src/forms/domains/dispatched-forms/runner/coroutines/runner.js +0 -145
  100. package/bin/src/forms/domains/dispatched-forms/runner/coroutines/runner.js.map +0 -1
@@ -1,145 +0,0 @@
1
- import { AsyncState } from "../../../../../async/state";
2
- import { CoTypedFactory } from "../../../../../coroutines/builder";
3
- import { id } from "../../../../../fun/domains/id/state";
4
- import { DispatchFormRunnerState } from "../state";
5
- import { replaceWith } from "../../../../../fun/domains/updater/domains/replaceWith/state";
6
- import { List } from "immutable";
7
- import { Dispatcher } from "../../../../../../main";
8
- export const DispatchFormRunner = () => {
9
- const Co = CoTypedFactory();
10
- return Co.Template(
11
- Co.Seq([
12
- Co.SetState(
13
- DispatchFormRunnerState().Updaters.status(
14
- replaceWith({ kind: "loading" }),
15
- ),
16
- ),
17
- Co.GetState().then((current) =>
18
- !AsyncState.Operations.hasValue(current.deserializedSpecification.sync)
19
- ? Co.Wait(0)
20
- : Co.UpdateState((_) => {
21
- if (
22
- !AsyncState.Operations.hasValue(
23
- current.deserializedSpecification.sync,
24
- ) ||
25
- current.launcherRef.entity.kind == "r" ||
26
- current.launcherRef.config.kind == "r"
27
- )
28
- return id;
29
- if (current.deserializedSpecification.sync.value.kind == "errors")
30
- return DispatchFormRunnerState().Updaters.status(
31
- replaceWith({
32
- kind: "error",
33
- errors: current.deserializedSpecification.sync.value.errors,
34
- }),
35
- );
36
- if (current.launcherRef.entity.value.kind == "errors") {
37
- console.error(
38
- `Error parsing entity for form '${current.launcherRef.name}': ${current.launcherRef.entity.value.errors
39
- .valueSeq()
40
- .toArray()
41
- .join("\n")}`,
42
- );
43
- return DispatchFormRunnerState().Updaters.status(
44
- replaceWith({
45
- kind: "error",
46
- errors: current.launcherRef.entity.value.errors,
47
- }),
48
- );
49
- }
50
- if (current.launcherRef.config.value.kind == "errors") {
51
- console.error(
52
- `Error parsing global configuration for form '${current.launcherRef.name}': ${current.launcherRef.config.value.errors
53
- .valueSeq()
54
- .toArray()
55
- .join("\n")}`,
56
- );
57
- return DispatchFormRunnerState().Updaters.status(
58
- replaceWith({
59
- kind: "error",
60
- errors: current.launcherRef.config.value.errors,
61
- }),
62
- );
63
- }
64
- const launcherRef = current.launcherRef;
65
- const dispatcherContext =
66
- current.deserializedSpecification.sync.value.value
67
- .dispatcherContext;
68
- const passthroughFormLauncher =
69
- current.deserializedSpecification.sync.value.value.launchers.passthrough.get(
70
- launcherRef.name,
71
- );
72
- if (passthroughFormLauncher == undefined) {
73
- console.error(
74
- `Cannot find form '${launcherRef.name}' in the launchers`,
75
- );
76
- return DispatchFormRunnerState().Updaters.status(
77
- replaceWith({
78
- kind: "error",
79
- errors: List([
80
- `Cannot find form '${launcherRef.name}' in the launchers`,
81
- ]),
82
- }),
83
- );
84
- }
85
- const Form = Dispatcher.Operations.Dispatch(
86
- passthroughFormLauncher.renderer,
87
- dispatcherContext,
88
- false,
89
- false,
90
- undefined,
91
- );
92
- if (Form.kind == "errors") {
93
- console.error(Form.errors.valueSeq().toArray().join("\n"));
94
- return DispatchFormRunnerState().Updaters.status(
95
- replaceWith({
96
- kind: "error",
97
- errors: Form.errors,
98
- }),
99
- );
100
- }
101
- const initialState = dispatcherContext.defaultState(
102
- passthroughFormLauncher.type,
103
- passthroughFormLauncher.renderer,
104
- );
105
- if (initialState.kind == "errors") {
106
- console.error(
107
- initialState.errors.valueSeq().toArray().join("\n"),
108
- );
109
- return DispatchFormRunnerState().Updaters.status(
110
- replaceWith({
111
- kind: "error",
112
- errors: initialState.errors,
113
- }),
114
- );
115
- }
116
- return DispatchFormRunnerState()
117
- .Updaters.formState(replaceWith(initialState.value))
118
- .then(
119
- DispatchFormRunnerState().Updaters.status(
120
- replaceWith({
121
- kind: "loaded",
122
- Form: Form.value,
123
- }),
124
- ),
125
- );
126
- }),
127
- ),
128
- ]),
129
- {
130
- interval: 15,
131
- runFilter: (props) => {
132
- return (
133
- AsyncState.Operations.hasValue(
134
- props.context.deserializedSpecification.sync,
135
- ) &&
136
- props.context.launcherRef.entity.kind != "r" &&
137
- props.context.launcherRef.config.kind != "r" &&
138
- (props.context.status.kind == "not initialized" ||
139
- props.context.status.kind == "loading")
140
- );
141
- },
142
- },
143
- );
144
- };
145
- //# sourceMappingURL=runner.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../../../../../../src/forms/domains/dispatched-forms/runner/coroutines/runner.ts"],"names":[],"mappings":"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"}