@inseefr/lunatic 2.7.19 → 2.7.20-rc.2

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 (35) hide show
  1. package/lib/components/commons/components/errors/errors.spec.js +6 -7
  2. package/lib/components/declarations/declarations-after-text.js +2 -1
  3. package/lib/components/declarations/declarations-before-text.js +2 -1
  4. package/lib/components/declarations/declarations-detachable.js +2 -1
  5. package/lib/components/index.js +7 -0
  6. package/lib/components/modal-controls/modal-controls.spec.js +8 -9
  7. package/lib/components/question/Question.js +49 -0
  8. package/lib/components/question/index.js +16 -0
  9. package/lib/index.js +8 -2
  10. package/lib/src/components/declarations/declarations-after-text.d.ts +3 -2
  11. package/lib/src/components/declarations/declarations-before-text.d.ts +3 -2
  12. package/lib/src/components/declarations/declarations-detachable.d.ts +3 -2
  13. package/lib/src/components/index.d.ts +1 -0
  14. package/lib/src/components/question/Question.d.ts +7 -0
  15. package/lib/src/components/question/index.d.ts +1 -0
  16. package/lib/src/components/type.d.ts +5 -1
  17. package/lib/src/index.d.ts +1 -0
  18. package/lib/src/use-lunatic/commons/fill-components/fill-component-required.d.ts +40 -20
  19. package/lib/src/use-lunatic/commons/fill-components/fill-from-state.d.ts +38 -0
  20. package/lib/src/use-lunatic/commons/fill-components/fill-iterations.d.ts +24 -18
  21. package/lib/src/use-lunatic/commons/fill-components/fill-specific-expression.d.ts +54 -4
  22. package/lib/src/use-lunatic/commons/use-components-from-state.d.ts +1 -1
  23. package/lib/src/use-lunatic/replace-component-sequence.d.ts +5 -1
  24. package/lib/src/use-lunatic/type-source.d.ts +24 -19
  25. package/lib/src/use-lunatic/use-lunatic.d.ts +11 -3
  26. package/lib/stories/behaviour/others/V2_QuestSimple_Boucles.json +4 -1
  27. package/lib/stories/question/question.stories.js +32 -0
  28. package/lib/stories/question/source.json +220 -0
  29. package/lib/use-lunatic/commons/compile-controls.js +4 -5
  30. package/lib/use-lunatic/commons/fill-components/fill-specific-expression.js +1 -0
  31. package/lib/use-lunatic/commons/variables/behaviours/resizing-behaviour.js +10 -5
  32. package/lib/use-lunatic/commons/variables/lunatic-variables-store.spec.js +43 -0
  33. package/lib/use-lunatic/replace-component-sequence.js +6 -3
  34. package/lib/use-lunatic/type-source.js +1 -22
  35. package/package.json +2 -9
@@ -4,7 +4,6 @@ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" ==
4
4
  var _react = require("@testing-library/react");
5
5
  var _vitest = require("vitest");
6
6
  var _errors = _interopRequireWildcard(require("./errors"));
7
- var _typeSource = require("../../../../use-lunatic/type-source");
8
7
  var _jsxRuntime = require("react/jsx-runtime");
9
8
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
10
9
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
@@ -13,19 +12,19 @@ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e;
13
12
  id1: [{
14
13
  id: 'error1',
15
14
  errorMessage: 'Error 1 message',
16
- criticality: _typeSource.Criticality.ERROR,
17
- typeOfControl: _typeSource.TypeOfControl.CONSISTENCY
15
+ criticality: 'ERROR',
16
+ typeOfControl: 'CONSISTENCY'
18
17
  }],
19
18
  id2: [{
20
19
  id: 'error2',
21
20
  errorMessage: 'Error 2 message',
22
- criticality: _typeSource.Criticality.ERROR,
23
- typeOfControl: _typeSource.TypeOfControl.CONSISTENCY
21
+ criticality: 'ERROR',
22
+ typeOfControl: 'CONSISTENCY'
24
23
  }, {
25
24
  id: 'error3',
26
25
  errorMessage: 'Error 3 message',
27
- criticality: _typeSource.Criticality.ERROR,
28
- typeOfControl: _typeSource.TypeOfControl.CONSISTENCY
26
+ criticality: 'ERROR',
27
+ typeOfControl: 'CONSISTENCY'
29
28
  }]
30
29
  };
31
30
  (0, _vitest.it)('renders null when no active errors', function () {
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = void 0;
7
+ var _commons = require("../commons");
7
8
  var _declarations = _interopRequireWildcard(require("./declarations"));
8
9
  var _jsxRuntime = require("react/jsx-runtime");
9
10
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
@@ -19,4 +20,4 @@ function DeclarationsAfterText(props) {
19
20
  type: _declarations.DECLARATION_POSITIONS.after
20
21
  }, props));
21
22
  }
22
- var _default = exports["default"] = DeclarationsAfterText;
23
+ var _default = exports["default"] = (0, _commons.createCustomizableLunaticField)(DeclarationsAfterText, 'DeclarationsAfterText');
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports["default"] = void 0;
7
7
  var _react = _interopRequireDefault(require("react"));
8
8
  var _declarations = _interopRequireWildcard(require("./declarations"));
9
+ var _commons = require("../commons");
9
10
  var _jsxRuntime = require("react/jsx-runtime");
10
11
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
11
12
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
@@ -21,4 +22,4 @@ function DeclarationsBeforeText(props) {
21
22
  type: _declarations.DECLARATION_POSITIONS.before
22
23
  }, props));
23
24
  }
24
- var _default = exports["default"] = DeclarationsBeforeText;
25
+ var _default = exports["default"] = (0, _commons.createCustomizableLunaticField)(DeclarationsBeforeText, ' DeclarationsBeforeText');
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports["default"] = void 0;
7
7
  var _react = _interopRequireDefault(require("react"));
8
8
  var _declarations = _interopRequireWildcard(require("./declarations"));
9
+ var _commons = require("../commons");
9
10
  var _jsxRuntime = require("react/jsx-runtime");
10
11
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
11
12
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
@@ -21,4 +22,4 @@ function DeclarationsDetachable(props) {
21
22
  type: _declarations.DECLARATION_POSITIONS.detachable
22
23
  }, props));
23
24
  }
24
- var _default = exports["default"] = DeclarationsDetachable;
25
+ var _default = exports["default"] = (0, _commons.createCustomizableLunaticField)(DeclarationsDetachable, 'DeclarationsDetachable');
@@ -99,6 +99,12 @@ Object.defineProperty(exports, "PairwiseLinks", {
99
99
  return _pairwiseLinks.PairwiseLinks;
100
100
  }
101
101
  });
102
+ Object.defineProperty(exports, "Question", {
103
+ enumerable: true,
104
+ get: function get() {
105
+ return _question.Question;
106
+ }
107
+ });
102
108
  Object.defineProperty(exports, "QuestionContext", {
103
109
  enumerable: true,
104
110
  get: function get() {
@@ -213,4 +219,5 @@ var _questionInformation = _interopRequireDefault(require("./questions/question-
213
219
  var _questionContext = _interopRequireDefault(require("./questions/question-context"));
214
220
  var _questionExplication = _interopRequireDefault(require("./question-explication"));
215
221
  var _modal = _interopRequireDefault(require("./modal"));
222
+ var _question = require("./question");
216
223
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
@@ -3,7 +3,6 @@
3
3
  var _react = require("@testing-library/react");
4
4
  var _modalControls = _interopRequireDefault(require("./modal-controls"));
5
5
  var _vitest = require("vitest");
6
- var _typeSource = require("../../use-lunatic/type-source");
7
6
  var _jsxRuntime = require("react/jsx-runtime");
8
7
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
9
8
  (0, _vitest.describe)('ModalControls component', function () {
@@ -11,15 +10,15 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "d
11
10
  var errors = {
12
11
  field1: [{
13
12
  id: 'message1',
14
- criticality: _typeSource.Criticality.ERROR,
13
+ criticality: 'ERROR',
15
14
  errorMessage: 'Error message 1',
16
- typeOfControl: _typeSource.TypeOfControl.CONSISTENCY
15
+ typeOfControl: 'CONSISTENCY'
17
16
  }],
18
17
  field2: [{
19
18
  id: 'message2',
20
- criticality: _typeSource.Criticality.ERROR,
19
+ criticality: 'ERROR',
21
20
  errorMessage: 'Error message 2',
22
- typeOfControl: _typeSource.TypeOfControl.CONSISTENCY
21
+ typeOfControl: 'CONSISTENCY'
23
22
  }]
24
23
  };
25
24
  var goNext = _vitest.vi.fn();
@@ -46,16 +45,16 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "d
46
45
  (0, _vitest.it)('should call the goNext function when the skip button is clicked', function () {
47
46
  var errors = {
48
47
  field1: [{
49
- criticality: _typeSource.Criticality.ERROR,
48
+ criticality: 'ERROR',
50
49
  errorMessage: 'Error message 1',
51
50
  id: 'message1',
52
- typeOfControl: _typeSource.TypeOfControl.CONSISTENCY
51
+ typeOfControl: 'CONSISTENCY'
53
52
  }],
54
53
  field2: [{
55
- criticality: _typeSource.Criticality.ERROR,
54
+ criticality: 'ERROR',
56
55
  errorMessage: 'Error message 2',
57
56
  id: 'message2',
58
- typeOfControl: _typeSource.TypeOfControl.CONSISTENCY
57
+ typeOfControl: 'CONSISTENCY'
59
58
  }]
60
59
  };
61
60
  var goNext = _vitest.vi.fn();
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.Question = void 0;
7
+ var _commons = require("../commons");
8
+ var _declarations = require("../declarations");
9
+ var _lunaticComponents = require("../lunatic-components");
10
+ var _jsxRuntime = require("react/jsx-runtime");
11
+ /**
12
+ * Question that must represent the Don dilman's definition of it.
13
+ */
14
+ var Question = exports.Question = (0, _commons.createCustomizableLunaticField)(function (props) {
15
+ var id = props.id,
16
+ description = props.description,
17
+ declarations = props.declarations,
18
+ label = props.label,
19
+ components = props.components;
20
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
21
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_declarations.DeclarationsBeforeText, {
22
+ declarations: declarations,
23
+ id: id
24
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("fieldset", {
25
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("legend", {
26
+ id: "question-legend-".concat(id),
27
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("h3", {
28
+ children: label
29
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("p", {
30
+ className: "description-lunatic",
31
+ id: "question-description-".concat(id),
32
+ children: description
33
+ })]
34
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_declarations.DeclarationsAfterText, {
35
+ declarations: declarations,
36
+ id: id
37
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_lunaticComponents.LunaticComponents, {
38
+ components: components,
39
+ wrapper: function wrapper(_ref) {
40
+ var children = _ref.children;
41
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
42
+ className: "question-components",
43
+ children: children
44
+ });
45
+ }
46
+ })]
47
+ })]
48
+ });
49
+ }, 'Question');
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _Question = require("./Question");
7
+ Object.keys(_Question).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _Question[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function get() {
13
+ return _Question[key];
14
+ }
15
+ });
16
+ });
package/lib/index.js CHANGED
@@ -1,9 +1,11 @@
1
1
  "use strict";
2
2
 
3
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
6
7
  var _exportNames = {
8
+ components: true,
7
9
  LunaticComponents: true,
8
10
  useLunatic: true
9
11
  };
@@ -13,13 +15,15 @@ Object.defineProperty(exports, "LunaticComponents", {
13
15
  return _lunaticComponents.LunaticComponents;
14
16
  }
15
17
  });
18
+ exports.components = void 0;
16
19
  Object.defineProperty(exports, "useLunatic", {
17
20
  enumerable: true,
18
21
  get: function get() {
19
22
  return _useLunatic["default"];
20
23
  }
21
24
  });
22
- var _components = require("./components");
25
+ var _components = _interopRequireWildcard(require("./components"));
26
+ exports.components = _components;
23
27
  Object.keys(_components).forEach(function (key) {
24
28
  if (key === "default" || key === "__esModule") return;
25
29
  if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
@@ -33,4 +37,6 @@ Object.keys(_components).forEach(function (key) {
33
37
  });
34
38
  var _lunaticComponents = require("./components/lunatic-components");
35
39
  var _useLunatic = _interopRequireDefault(require("./use-lunatic"));
36
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
40
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
41
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
42
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { type DeclarationsProps } from './declarations';
2
- declare function DeclarationsAfterText(props: Omit<DeclarationsProps, 'type'>): import("react/jsx-runtime").JSX.Element;
3
- export default DeclarationsAfterText;
3
+ declare const _default: import("react").ComponentType<Omit<DeclarationsProps, "type">>;
4
+ export default _default;
@@ -1,3 +1,4 @@
1
+ import React from 'react';
1
2
  import { type DeclarationsProps } from './declarations';
2
- declare function DeclarationsBeforeText(props: Omit<DeclarationsProps, 'type'>): import("react/jsx-runtime").JSX.Element;
3
- export default DeclarationsBeforeText;
3
+ declare const _default: React.ComponentType<Omit<DeclarationsProps, "type">>;
4
+ export default _default;
@@ -1,3 +1,4 @@
1
+ import React from 'react';
1
2
  import { type DeclarationsProps } from './declarations';
2
- declare function DeclarationsDetachable(props: Omit<DeclarationsProps, 'type'>): import("react/jsx-runtime").JSX.Element;
3
- export default DeclarationsDetachable;
3
+ declare const _default: React.ComponentType<Omit<DeclarationsProps, "type">>;
4
+ export default _default;
@@ -28,3 +28,4 @@ export { default as QuestionInformation } from './questions/question-information
28
28
  export { default as QuestionContext } from './questions/question-context';
29
29
  export { default as QuestionExplication } from './question-explication';
30
30
  export { default as ConfirmationModal } from './modal';
31
+ export { Question } from './question';
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ /**
3
+ * Question that must represent the Don dilman's definition of it.
4
+ */
5
+ export declare const Question: import("react").ComponentType<Pick<import("../type").LunaticBaseProps<unknown>, "label" | "id" | "description" | "declarations"> & {
6
+ components: import("../../use-lunatic/commons/fill-components/fill-components").FilledLunaticComponentProps[];
7
+ }>;
@@ -0,0 +1 @@
1
+ export * from './Question';
@@ -83,7 +83,11 @@ type ComponentPropsByType = {
83
83
  };
84
84
  Sequence: Pick<LunaticBaseProps<string>, 'id' | 'declarations' | 'label' | 'style'>;
85
85
  Subsequence: Pick<LunaticBaseProps<string>, 'id' | 'declarations' | 'label'>;
86
- Question: Pick<LunaticBaseProps<unknown>, 'label' | 'description'>;
86
+ Question: Pick<LunaticBaseProps<unknown>, 'declarations' | 'label' | 'id' | 'description'> & {
87
+ components: FilledLunaticComponentProps[];
88
+ };
89
+ QuestionContext: Pick<LunaticBaseProps<unknown>, 'label' | 'description'>;
90
+ QuestionInformation: Pick<LunaticBaseProps<unknown>, 'label' | 'description'>;
87
91
  ComponentSet: LunaticBaseProps<unknown> & {
88
92
  components: FilledLunaticComponentProps[];
89
93
  value: Record<string, unknown>;
@@ -1,4 +1,5 @@
1
1
  export * from './components';
2
+ export * as components from './components';
2
3
  export { LunaticComponents } from './components/lunatic-components';
3
4
  export { default as useLunatic } from './use-lunatic';
4
5
  export type { LunaticComponentDefinition, LunaticControl, LunaticData, LunaticValues, LunaticError, LunaticExpression, LunaticVariable, LunaticCollectedValue, LunaticStateVariable, LunaticState, } from './use-lunatic/type';
@@ -3,49 +3,55 @@ import type { LunaticComponentDefinition } from '../../type';
3
3
  * Add required attribute on component that are mandatory
4
4
  */
5
5
  export declare function fillComponentRequired(component: LunaticComponentDefinition): (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentSequenceType & {
6
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
6
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
7
7
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentSubSequenceType & {
8
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
8
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
9
9
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentRosterForLoopType & {
10
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
10
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
11
11
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentLoopType & {
12
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
12
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
13
13
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentTableType & {
14
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
14
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
15
15
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentNumberType & {
16
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
16
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
17
17
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentDatePickerType & {
18
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
18
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
19
19
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentCheckboxGroupType & {
20
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
20
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
21
21
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentCheckboxBooleanType & {
22
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
22
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
23
23
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentRadioType & {
24
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
24
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
25
25
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentFilterDescriptionType & {
26
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
26
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
27
27
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentDropdownType & {
28
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
28
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
29
29
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentPairWiseLinksType & {
30
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
30
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
31
31
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentRoundaboutType & {
32
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
32
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
33
33
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentSuggesterType & {
34
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
34
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
35
35
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentInputOrTextareaType & {
36
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
36
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
37
37
  }) | (import("../../type-source").ComponentTypeBase & {
38
38
  componentType: "CheckboxOne";
39
39
  } & {
40
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
40
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
41
41
  }) | (import("../../type-source").ComponentTypeBase & {
42
42
  componentType: "ConfirmationModal";
43
43
  } & {
44
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
44
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
45
45
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentComponentSetType & {
46
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
46
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
47
47
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentQuestionExplicationType & {
48
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
48
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
49
+ }) | (import("../../type-source").ComponentTypeBase & {
50
+ componentType: "Question";
51
+ components: import("../../type-source").ComponentType[];
52
+ description: import("../../type-source").LabelType;
53
+ } & {
54
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
49
55
  }) | {
50
56
  required: boolean;
51
57
  label: import("../../type-source").LabelType;
@@ -385,4 +391,18 @@ export declare function fillComponentRequired(component: LunaticComponentDefinit
385
391
  componentType: "QuestionExplication";
386
392
  description: string;
387
393
  bgColor?: string | undefined;
394
+ } | {
395
+ required: boolean;
396
+ label: import("../../type-source").LabelType;
397
+ declarations?: import("../../type-source").DeclarationType[] | undefined;
398
+ conditionFilter?: import("../../type-source").ConditionFilterType | undefined;
399
+ controls?: import("../../type-source").ControlType[] | undefined;
400
+ id: string;
401
+ bindingDependencies?: string[] | undefined;
402
+ hierarchy?: import("../../type-source").Hierarchy | undefined;
403
+ mandatory?: boolean | undefined;
404
+ page: string;
405
+ componentType: "Question";
406
+ components: import("../../type-source").ComponentType[];
407
+ description: import("../../type-source").LabelType;
388
408
  };
@@ -830,5 +830,43 @@ declare function fillFromState(component: LunaticComponentDefinition, state: Lun
830
830
  componentType: "QuestionExplication";
831
831
  description: string;
832
832
  bgColor?: string | undefined;
833
+ } | {
834
+ handleChange: (response: {
835
+ name: string;
836
+ }, value: any, args?: {
837
+ iteration?: number[] | undefined;
838
+ } | undefined) => void;
839
+ executeExpression: <T extends unknown = unknown>(expression: unknown, args?: {
840
+ iteration?: number | number[] | undefined;
841
+ bindingDependencies?: string[] | undefined;
842
+ deps?: string[] | undefined;
843
+ } | undefined) => T;
844
+ preferences: ["COLLECTED"];
845
+ goToPage: (page: {
846
+ page: string;
847
+ iteration?: number | undefined;
848
+ nbIterations?: number | undefined;
849
+ subPage?: number | undefined;
850
+ }) => void;
851
+ shortcut: boolean | undefined;
852
+ getSuggesterStatus: (name: string) => {
853
+ status: import("../../use-suggesters").SuggesterStatus;
854
+ timestamp: number;
855
+ };
856
+ workersBasePath: string | undefined;
857
+ goNextPage: () => void;
858
+ goPreviousPage: () => void;
859
+ label: import("../../type-source").LabelType;
860
+ declarations?: import("../../type-source").DeclarationType[] | undefined;
861
+ conditionFilter?: import("../../type-source").ConditionFilterType | undefined;
862
+ controls?: import("../../type-source").ControlType[] | undefined;
863
+ id: string;
864
+ bindingDependencies?: string[] | undefined;
865
+ hierarchy?: import("../../type-source").Hierarchy | undefined;
866
+ mandatory?: boolean | undefined;
867
+ page: string;
868
+ componentType: "Question";
869
+ components: import("../../type-source").ComponentType[];
870
+ description: import("../../type-source").LabelType;
833
871
  };
834
872
  export default fillFromState;
@@ -3,45 +3,51 @@ import type { LunaticComponentDefinition, LunaticState } from '../../type';
3
3
  * Fill the number of iterations for loop components without "iterations" expression
4
4
  */
5
5
  export declare function fillIterations(component: LunaticComponentDefinition, state: LunaticState): (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentSequenceType & {
6
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
6
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
7
7
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentSubSequenceType & {
8
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
8
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
9
9
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentTableType & {
10
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
10
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
11
11
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentNumberType & {
12
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
12
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
13
13
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentDatePickerType & {
14
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
14
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
15
15
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentCheckboxGroupType & {
16
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
16
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
17
17
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentCheckboxBooleanType & {
18
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
18
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
19
19
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentRadioType & {
20
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
20
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
21
21
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentFilterDescriptionType & {
22
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
22
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
23
23
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentDropdownType & {
24
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
24
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
25
25
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentPairWiseLinksType & {
26
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
26
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
27
27
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentRoundaboutType & {
28
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
28
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
29
29
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentSuggesterType & {
30
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
30
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
31
31
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentInputOrTextareaType & {
32
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
32
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
33
33
  }) | (import("../../type-source").ComponentTypeBase & {
34
34
  componentType: "CheckboxOne";
35
35
  } & {
36
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
36
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
37
37
  }) | (import("../../type-source").ComponentTypeBase & {
38
38
  componentType: "ConfirmationModal";
39
39
  } & {
40
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
40
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
41
41
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentComponentSetType & {
42
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
42
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
43
43
  }) | (import("../../type-source").ComponentTypeBase & import("../../type-source").ComponentQuestionExplicationType & {
44
- componentType: "CheckboxOne" | "ConfirmationModal" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
44
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
45
+ }) | (import("../../type-source").ComponentTypeBase & {
46
+ componentType: "Question";
47
+ components: import("../../type-source").ComponentType[];
48
+ description: import("../../type-source").LabelType;
49
+ } & {
50
+ componentType: "CheckboxOne" | "ConfirmationModal" | "Question" | "Sequence" | "Subsequence" | "RosterForLoop" | "Loop" | "Table" | "InputNumber" | "Datepicker" | "CheckboxGroup" | "CheckboxBoolean" | "Radio" | "FilterDescription" | "Dropdown" | "PairwiseLinks" | "Roundabout" | "Suggester" | "Input" | "Textarea" | "ComponentSet" | "QuestionExplication";
45
51
  }) | {
46
52
  iterations: number;
47
53
  label: import("../../type-source").LabelType;