@inseefr/lunatic 0.3.4-experimental → 0.3.7-experimental
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/lib/index.js +2 -2
- package/lib/index.js.map +1 -1
- package/package.json +2 -1
- package/src/components/breadcrumb/component.js +29 -29
- package/src/components/button/component.js +53 -53
- package/src/components/button/index.js +1 -1
- package/src/components/checkbox/index.js +3 -3
- package/src/components/datepicker/index.js +1 -1
- package/src/components/declarations/index.js +1 -1
- package/src/components/declarations/wrappers/list-declarations-wrapper.js +232 -232
- package/src/components/filter-description/component.js +42 -42
- package/src/components/icon/component.js +33 -33
- package/src/components/index.js +2 -0
- package/src/components/input/index.js +2 -2
- package/src/components/loop/index.js +1 -1
- package/src/components/loop-constructor/wrapper/body-component.js +13 -1
- package/src/components/radio/index.js +1 -1
- package/src/components/sequence/index.js +1 -1
- package/src/components/subsequence/index.js +1 -1
- package/src/components/suggester/check-store.js +70 -70
- package/src/components/suggester/components/create-on-keydown-callback.js +28 -28
- package/src/components/tooltip/response.js +52 -52
- package/src/stories/checkbox-boolean/data-forced.json +48 -48
- package/src/stories/checkbox-group/data-vtl.json +102 -102
- package/src/stories/icons/icons.stories.js +16 -16
- package/src/stories/questionnaire/kish.json +275 -0
- package/src/stories/questionnaire/questionnaire.stories.js +12 -0
- package/src/stories/utils/custom-lunatic.scss +23 -23
- package/src/tests/components/breadcrumb.spec.js +13 -13
- package/src/tests/components/button.spec.js +11 -11
- package/src/tests/components/checkbox-boolean.spec.js +45 -45
- package/src/tests/components/checkbox-group.spec.js +53 -53
- package/src/tests/components/checkbox-one.spec.js +32 -32
- package/src/tests/components/datepicker.spec.js +22 -22
- package/src/tests/components/declarations-wrappers/input-declarations-wrapper.spec.js +67 -67
- package/src/tests/components/declarations-wrappers/list-declarations-wrapper.spec.js +52 -52
- package/src/tests/components/declarations-wrappers/simple-declarations-wrapper.spec.js +21 -21
- package/src/tests/components/declarations.spec.js +46 -46
- package/src/tests/components/input.spec.js +18 -18
- package/src/tests/components/loops/loop-static.json +66 -66
- package/src/tests/components/loops/loop.json +258 -258
- package/src/tests/components/loops/loop.spec.js +30 -30
- package/src/tests/components/loops/roster-for-loop.spec.js +18 -18
- package/src/tests/components/progress-bar.spec.js +15 -15
- package/src/tests/components/radio.spec.js +27 -27
- package/src/tests/components/sequence.spec.js +9 -9
- package/src/tests/components/subsequence.spec.js +9 -9
- package/src/tests/components/table.spec.js +11 -11
- package/src/tests/components/textarea.spec.js +18 -18
- package/src/tests/components/tooltip.spec.js +25 -25
- package/src/tests/setup/setupTests.js +4 -4
- package/src/tests/utils/lib/alphabet.spec.js +36 -36
- package/src/tests/utils/lib/array.spec.js +22 -22
- package/src/tests/utils/lib/checkbox/group.spec.js +72 -72
- package/src/tests/utils/lib/decorator/title-decorator.spec.js +12 -12
- package/src/tests/utils/lib/input-number.spec.js +18 -18
- package/src/tests/utils/lib/items-positioning.spec.js +17 -17
- package/src/tests/utils/lib/label-position.spec.js +22 -22
- package/src/tests/utils/lib/loops/bindings.spec.js +75 -75
- package/src/tests/utils/lib/loops/shared.spec.js +82 -82
- package/src/tests/utils/lib/missing/missing.spec.js +74 -74
- package/src/tests/utils/lib/missing/mock.js +137 -137
- package/src/tests/utils/lib/pagination/shared.spec.js +42 -42
- package/src/tests/utils/lib/responses.spec.js +64 -64
- package/src/tests/utils/lib/style.spec.js +26 -26
- package/src/tests/utils/lib/tooltip/build-response.spec.js +95 -95
- package/src/tests/utils/lib/tooltip/content.spec.js +109 -109
- package/src/tests/utils/to-expose/handler/handler.spec.js +94 -94
- package/src/tests/utils/to-expose/handler/questionnaire.json +158 -158
- package/src/tests/utils/to-expose/handler/results/index.js +6 -6
- package/src/tests/utils/to-expose/handler/results/res-double.json +158 -158
- package/src/tests/utils/to-expose/handler/results/res-input-collected.json +158 -158
- package/src/tests/utils/to-expose/handler/results/res-loop.json +158 -158
- package/src/tests/utils/to-expose/handler/results/res-matrix.json +158 -158
- package/src/tests/utils/to-expose/handler/results/res-responses.json +158 -158
- package/src/tests/utils/to-expose/hooks/use-lunatic.spec.js +46 -46
- package/src/tests/utils/to-expose/init-questionnaire/data.json +12 -12
- package/src/tests/utils/to-expose/init-questionnaire/init-questionnaire.spec.js +19 -19
- package/src/tests/utils/to-expose/interpret/interpret.spec.js +48 -48
- package/src/tests/utils/to-expose/state/questionnaire.json +61 -61
- package/src/tests/utils/to-expose/state/results.js +78 -78
- package/src/utils/lib/tooltip/build-response.js +41 -41
- package/src/utils/store-tools/create/index.js +1 -1
- package/src/utils/store-tools/create/update-store-info.js +26 -26
- package/src/utils/store-tools/index.js +5 -5
package/lib/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Object.defineProperty(exports,"__esModule",{value:// attributeNamespace
|
|
2
2
|
// sanitizeURL
|
|
3
|
-
!0});var React=require("react"),PropTypes=require("prop-types"),trevas=require("@inseefr/trevas"),ReactMarkdown=require("react-markdown"),ReactTooltip=require("react-tooltip"),isEqual=require("lodash.isequal"),camelCase=require("lodash.camelcase"),KeyboardEventHandler=require("react-keyboard-event-handler"),debounce=require("lodash.debounce"),removeAccents=require("remove-accents");function _interopDefaultLegacy(n){return n&&"object"==typeof n&&"default"in n?n:{default:n}}var React__default=/*#__PURE__*/_interopDefaultLegacy(React),PropTypes__default=/*#__PURE__*/_interopDefaultLegacy(PropTypes),ReactMarkdown__default=/*#__PURE__*/_interopDefaultLegacy(ReactMarkdown),ReactTooltip__default=/*#__PURE__*/_interopDefaultLegacy(ReactTooltip),isEqual__default=/*#__PURE__*/_interopDefaultLegacy(isEqual),camelCase__default=/*#__PURE__*/_interopDefaultLegacy(camelCase),KeyboardEventHandler__default=/*#__PURE__*/_interopDefaultLegacy(KeyboardEventHandler),debounce__default=/*#__PURE__*/_interopDefaultLegacy(debounce),removeAccents__default=/*#__PURE__*/_interopDefaultLegacy(removeAccents),lunatic=/*#__PURE__*/Object.freeze({__proto__:null,get Breadcrumb(){return Breadcrumb},get Button(){return Button},get Datepicker(){return component$6},get Declarations(){return Declarations},get Dropdown(){return component$5},get FilterDescription(){return FilterDescription},get Modal(){return Modal},get ProgressBar(){return ProgressBar},get Radio(){return component$4},get Loop(){return LoopWrapper},get Sequence(){return component$2},get Subsequence(){return component$1},get Suggester(){return lunaticSuggester},get Textarea(){return component},get SuggesterLoaderWidget(){return SuggesterLoaderWidget},get TooltipResponse(){return TooltipResponse},get CheckboxGroup(){return group},get CheckboxBoolean(){return boolean},get CheckboxOne(){return one},get Input(){return input},get InputNumber(){return inputNumber},get RosterForLoop(){return component$3}}),getAlphabet=function(){return["a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"]},buildNullNestedArray=function n(e){return Array.isArray(e)?e.map(function(e){return Array.isArray(e)?n(e):null}):[]};function ownKeys(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);n&&(a=a.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,a)}return t}function _objectSpread2(e){for(var n=1,t;n<arguments.length;n++)t=null==arguments[n]?{}:arguments[n],n%2?ownKeys(Object(t),!0).forEach(function(n){_defineProperty(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))});return e}function _typeof(e){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_typeof(e)}function asyncGeneratorStep(e,n,t,a,i,o,d){try{var r=e[o](d),s=r.value}catch(e){return void t(e)}r.done?n(s):Promise.resolve(s).then(a,i)}function _asyncToGenerator(e){return function(){var n=this,t=arguments;return new Promise(function(a,i){function o(e){asyncGeneratorStep(r,a,i,o,d,"next",e)}function d(e){asyncGeneratorStep(r,a,i,o,d,"throw",e)}var r=e.apply(n,t);o(// last
|
|
3
|
+
!0}),require("array-flat-polyfill");var React=require("react"),PropTypes=require("prop-types"),trevas=require("@inseefr/trevas"),ReactMarkdown=require("react-markdown"),ReactTooltip=require("react-tooltip"),isEqual=require("lodash.isequal"),camelCase=require("lodash.camelcase"),KeyboardEventHandler=require("react-keyboard-event-handler"),debounce=require("lodash.debounce"),removeAccents=require("remove-accents");function _interopDefaultLegacy(n){return n&&"object"==typeof n&&"default"in n?n:{default:n}}var React__default=/*#__PURE__*/_interopDefaultLegacy(React),PropTypes__default=/*#__PURE__*/_interopDefaultLegacy(PropTypes),ReactMarkdown__default=/*#__PURE__*/_interopDefaultLegacy(ReactMarkdown),ReactTooltip__default=/*#__PURE__*/_interopDefaultLegacy(ReactTooltip),isEqual__default=/*#__PURE__*/_interopDefaultLegacy(isEqual),camelCase__default=/*#__PURE__*/_interopDefaultLegacy(camelCase),KeyboardEventHandler__default=/*#__PURE__*/_interopDefaultLegacy(KeyboardEventHandler),debounce__default=/*#__PURE__*/_interopDefaultLegacy(debounce),removeAccents__default=/*#__PURE__*/_interopDefaultLegacy(removeAccents),lunatic=/*#__PURE__*/Object.freeze({__proto__:null,get Breadcrumb(){return Breadcrumb},get Button(){return Button},get Datepicker(){return component$6},get Declarations(){return Declarations},get Dropdown(){return component$5},get FilterDescription(){return FilterDescription},get Modal(){return Modal},get ProgressBar(){return ProgressBar},get Radio(){return component$4},get Loop(){return LoopWrapper},get Sequence(){return component$2},get Subsequence(){return component$1},get Suggester(){return lunaticSuggester},get Textarea(){return component},get SuggesterLoaderWidget(){return SuggesterLoaderWidget},get TooltipResponse(){return TooltipResponse},get CheckboxGroup(){return group},get CheckboxBoolean(){return boolean},get CheckboxOne(){return one},get Input(){return input},get InputNumber(){return inputNumber},get RosterForLoop(){return component$3}}),getAlphabet=function(){return["a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"]},buildNullNestedArray=function n(e){return Array.isArray(e)?e.map(function(e){return Array.isArray(e)?n(e):null}):[]};function ownKeys(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);n&&(a=a.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),t.push.apply(t,a)}return t}function _objectSpread2(e){for(var n=1,t;n<arguments.length;n++)t=null==arguments[n]?{}:arguments[n],n%2?ownKeys(Object(t),!0).forEach(function(n){_defineProperty(e,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))});return e}function _typeof(e){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_typeof(e)}function asyncGeneratorStep(e,n,t,a,i,o,d){try{var r=e[o](d),s=r.value}catch(e){return void t(e)}r.done?n(s):Promise.resolve(s).then(a,i)}function _asyncToGenerator(e){return function(){var n=this,t=arguments;return new Promise(function(a,i){function o(e){asyncGeneratorStep(r,a,i,o,d,"next",e)}function d(e){asyncGeneratorStep(r,a,i,o,d,"throw",e)}var r=e.apply(n,t);o(// last
|
|
4
4
|
void 0)})}}function _defineProperty(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function _extends(){return _extends=Object.assign||function(e){for(var n=1,t;n<arguments.length;n++)for(var a in t=arguments[n],t)Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a]);return e},_extends.apply(this,arguments)}function _objectWithoutPropertiesLoose(e,n){if(null==e)return{};var t={},a=Object.keys(e),o,d;for(d=0;d<a.length;d++)o=a[d],0<=n.indexOf(o)||(t[o]=e[o]);return t}function _objectWithoutProperties(e,n){if(null==e)return{};var t=_objectWithoutPropertiesLoose(e,n),a,o;if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(e);for(o=0;o<d.length;o++)a=d[o],0<=n.indexOf(a)||Object.prototype.propertyIsEnumerable.call(e,a)&&(t[a]=e[a])}return t}function _slicedToArray(e,n){return _arrayWithHoles(e)||_iterableToArrayLimit(e,n)||_unsupportedIterableToArray(e,n)||_nonIterableRest()}function _toArray(e){return _arrayWithHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableRest()}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function _iterableToArrayLimit(e,n){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var a=[],i=!0,o=// attributeNamespace
|
|
5
5
|
// sanitizeURL
|
|
6
6
|
// attributeNamespace
|
|
@@ -771,7 +771,7 @@ Math.abs(a-M).toFixed(C)!==e("".concat(n(10,-C))).toFixed(C)&&!Number.parseInt(a
|
|
|
771
771
|
*/function Dropdown$1(e){var n=e.id,t=e.widthAuto,a=e.options,i=void 0===a?[]:a,o=e.onSelect,d=e.response,r=e.className,s=e.placeholderList,l=e.label,u=e.labelPosition,c=e.mandatory,f=e.value,p=e.zIndex,m=e.management,g=e.disabled,h=e.focused,b=e.DeclarationAfterLabel,y=e.logFunction,w=React.useReducer(reducer,_objectSpread2(_objectSpread2({},initial),{},{id:"dropdown-".concat(n||new Date().getMilliseconds()),disabled:g,focused:h})),x=_slicedToArray(w,2),v=x[0],k=x[1],E=v.prefix,S=v.visible,C=v.activeIndex,T=v.visibleOptions,N=v.value,R=v.focused,P=v.id,_=React.useRef(),L=React.useRef(),D=createOnSelect(v,k,o),I=i.find(function(e){return e.label===N});return React.useEffect(function(){S&&!C&&k(initActiveIndex())},[C,S]),React.useEffect(function(){var e=_.current;e&&R&&e.focus()},[_,R]),/*#__PURE__*/React__default["default"].createElement(DropdownContainer,{className:r||"lunatic-dropdown",state:v,ref:L,dispatch:k,options:i,label:l,labelPosition:u,mandatory:c,response:d,onSelect:D,value:f,zIndex:p,management:m,logFunction:y},/*#__PURE__*/React__default["default"].createElement(b,null),/*#__PURE__*/React__default["default"].createElement("span",{className:classnames("lunatic-dropdown-input",{focused:R,disabled:g})},/*#__PURE__*/React__default["default"].createElement("input",{type:"text",ref:_,value:N||"",disabled:g,placeholderList:s,autoComplete:"list",autoCorrect:"off",autoCapitalize:"off",spellCheck:"false",tabIndex:"0",onChange:onChangeCallback(v,k)})),/*#__PURE__*/React__default["default"].createElement(Icon,{prefix:E,visible:S,disabled:g,onDelete:function(n){n.stopPropagation(),_.current.value="",k(resetSelection()),D({value:null})},onSwitch:function(n){n.stopPropagation(),n.preventDefault(),S?k(hidePanel()):(k(showPanel()),L.current.focus())}}),/*#__PURE__*/React__default["default"].createElement("div",{tabIndex:"-1",className:classnames("lunatic-transition",{visible:isDisplay(v),"width-auto":t})},/*#__PURE__*/React__default["default"].createElement(Panel$1,{idDropdown:P,options:T,display:isDisplay(v)&&!g,prefix:E,activeIndex:C,optionComponent:Option,selectedOption:I,onSelect:D,handleActive:function(e){return k(setActiveOption(e))}})))}Dropdown$1.propTypes={widthAuto:PropTypes__default["default"].bool,zIndex:PropTypes__default["default"].number,disabled:PropTypes__default["default"].bool,focused:PropTypes__default["default"].bool,className:PropTypes__default["default"].string,id:PropTypes__default["default"].string,options:PropTypes__default["default"].array.isRequired,onSelect:PropTypes__default["default"].func,placeholderList:PropTypes__default["default"].string,value:PropTypes__default["default"].oneOfType([PropTypes__default["default"].string,PropTypes__default["default"].number,PropTypes__default["default"].bool])},Dropdown$1.defaultProps={options:[],zIndex:0,onSelect:function(){return null},placeholderList:"Search...",disabled:!1,focused:!1,widthAuto:!1};var childrenToOption=function(){var e=0<arguments.length&&arguments[0]!==void 0?arguments[0]:[];return(Array.isArray(e)?e:[e]).map(function(e){var n=e.props.value,t=e.props.children;if(t===void 0||n===void 0)throw new Error("Ooops");return{label:t,value:n}})},_excluded$7=["children","options"],createDropDown=function(e){return function(n){var t=n.children,a=n.options,i=_objectWithoutProperties(n,_excluded$7),d=a||childrenToOption(t);return/*#__PURE__*/React__default["default"].createElement(e,_extends({options:d},i))}},DropdownEdit=createDropDown(Dropdown$1),css_248z$e=".lunatic-component .lunatic-dropdown {\n display: block;\n width: 100%;\n margin-bottom: 1.5rem;\n}\n.lunatic-component .lunatic-dropdown:focus {\n outline: none;\n}\n.lunatic-component .lunatic-dropdown.label-left {\n display: flex;\n flex-direction: row;\n}\n.lunatic-component .lunatic-dropdown.label-right {\n display: flex;\n flex-direction: row-reverse;\n}\n.lunatic-component .lunatic-dropdown.label-top {\n display: flex;\n flex-direction: column;\n}\n.lunatic-component .lunatic-dropdown.label-bottom {\n display: flex;\n flex-direction: column-reverse;\n}\n.lunatic-component .lunatic-dropdown .lunatic-dropdown-label {\n opacity: 1;\n}\n.lunatic-component .lunatic-dropdown .lunatic-dropdown-container {\n position: relative;\n height: 2em;\n width: 100%;\n z-index: 1;\n}\n.lunatic-component .lunatic-dropdown .lunatic-dropdown-container ul {\n padding-inline-start: 0px;\n font-size: 1rem;\n}\n.lunatic-component .lunatic-dropdown .lunatic-dropdown-container.focused {\n z-index: 2;\n}\n.lunatic-component .lunatic-dropdown .lunatic-dropdown-container:focus {\n outline: none;\n}\n.lunatic-component .lunatic-dropdown .lunatic-dropdown-container .lunatic-dropdown-content {\n border-color: white;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n position: absolute;\n height: auto;\n}\n.lunatic-component .lunatic-dropdown .lunatic-dropdown-container .lunatic-dropdown-content.visible {\n height: auto;\n}\n.lunatic-component .lunatic-dropdown .lunatic-dropdown-container .lunatic-dropdown-content.disabled {\n background-color: var(--color-disabled);\n}\n.lunatic-component .lunatic-dropdown .lunatic-dropdown-container .lunatic-dropdown-content .lunatic-dropdown-input {\n border-bottom: 1px solid var(--color-primary-dark);\n padding: 6px 0 7px;\n}\n.lunatic-component .lunatic-dropdown .lunatic-dropdown-container .lunatic-dropdown-content .lunatic-dropdown-input input {\n font-family: \"Roboto\", \"Helvetica\", \"Arial\", sans-serif;\n -moz-user-select: none;\n /* Firefox */\n -ms-user-select: none;\n /* Internet Explorer */\n -khtml-user-select: none;\n /* KHTML browsers (e.g. Konqueror) */\n -webkit-user-select: none;\n /* Chrome, Safari, and Opera */\n -webkit-touch-callout: none;\n /* Disable Android and iOS callouts*/\n margin: 0px 25px 0px 0px;\n width: calc(100% - 37px);\n background-color: transparent;\n border-color: transparent;\n height: 2em;\n border: none;\n outline: none;\n text-align: left;\n cursor: inherit;\n}\n.lunatic-component .lunatic-dropdown .lunatic-dropdown-container .lunatic-dropdown-content .lunatic-dropdown-input:hover {\n cursor: pointer;\n border-bottom: 2px solid var(--color-primary-main);\n}\n.lunatic-component .lunatic-dropdown .lunatic-dropdown-container .lunatic-dropdown-content .lunatic-dropdown-input.focused {\n background-color: rgba(0, 0, 0, 0.05);\n box-shadow: 12px 0 rgba(0, 0, 0, 0.05);\n}\n.lunatic-component .lunatic-dropdown .lunatic-dropdown-container .lunatic-dropdown-content .lunatic-dropdown-icon {\n cursor: pointer;\n position: absolute;\n right: 2px;\n top: 2px;\n}\n.lunatic-component .lunatic-dropdown .lunatic-dropdown-container .lunatic-dropdown-content .lunatic-dropdown-icon svg {\n fill: #929292;\n}\n.lunatic-component .lunatic-dropdown .lunatic-dropdown-container .lunatic-dropdown-content .lunatic-transition {\n opacity: 0;\n /** options style */\n}\n.lunatic-component .lunatic-dropdown .lunatic-dropdown-container .lunatic-dropdown-content .lunatic-transition:focus {\n outline: none;\n}\n.lunatic-component .lunatic-dropdown .lunatic-dropdown-container .lunatic-dropdown-content .lunatic-transition.visible {\n visibility: visible;\n opacity: 1;\n transition: opacity var(--dropdown-transition-time) ease-out;\n}\n.lunatic-component .lunatic-dropdown .lunatic-dropdown-container .lunatic-dropdown-content .lunatic-transition .lunatic-dropdown-panel-container {\n box-shadow: 0px 3px 3px -2px rgba(0, 0, 0, 0.9), 0px 3px 4px 0px rgba(0, 0, 0, 0.14), 0px 1px 8px 0px rgba(0, 0, 0, 0.12);\n}\n.lunatic-component .lunatic-dropdown .lunatic-dropdown-container .lunatic-dropdown-content .lunatic-transition .lunatic-dropdown-panel-container .lunatic-dropdown-panel {\n background-color: white;\n margin: 0 0 12px 0;\n border-radius: 4px;\n z-index: 3;\n padding-top: 3px;\n list-style: none;\n max-height: 100px;\n overflow-y: auto;\n}\n.lunatic-component .lunatic-dropdown .lunatic-dropdown-container .lunatic-dropdown-content .lunatic-transition .lunatic-dropdown-panel-container .lunatic-dropdown-panel:focus {\n outline: none;\n}\n.lunatic-component .lunatic-dropdown .lunatic-dropdown-container .lunatic-dropdown-content .lunatic-transition .lunatic-dropdown-option {\n padding-left: 10px;\n cursor: pointer;\n font-family: \"Roboto\", \"Helvetica\", \"Arial\", sans-serif;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n color: black;\n line-height: 2rem;\n display: block;\n}\n.lunatic-component .lunatic-dropdown .lunatic-dropdown-container .lunatic-dropdown-content .lunatic-transition .lunatic-dropdown-option.lunatic-dropdown-option-active {\n color: var(--color-primary-dark);\n background-color: var(--color-dropdown-active);\n}\n.lunatic-component .lunatic-dropdown .lunatic-dropdown-container .lunatic-dropdown-content .lunatic-transition .lunatic-dropdown-option.lunatic-dropdown-option-selected {\n background-color: var(--color-dropdown-selected);\n}\n.lunatic-component .lunatic-dropdown .lunatic-dropdown-container .lunatic-dropdown-content .lunatic-transition .lunatic-dropdown-option .lunatic-prefix {\n color: var(--color-prefix);\n font-weight: bold;\n}";styleInject(css_248z$e);var _excluded$6=["id","label","preferences","response","handleChange","options","writable","declarations","features","bindings","management","freezeOptions"],_excluded2$3=["label"];function compileFeatures(){var e=0<arguments.length&&arguments[0]!==void 0?arguments[0]:[];return e.reduce(function(e,n){return"MD"===n?e:[].concat(_toConsumableArray(e),[n])},[])}var Dropdown=function(e){var n=e.id,t=e.label,a=e.preferences,i=e.response,o=e.handleChange,d=e.options,r=e.writable,s=e.declarations,l=e.features,u=e.bindings,c=e.management,f=e.freezeOptions,p=_objectWithoutProperties(e,_excluded$6),m=React.useState(d),g=_slicedToArray(m,2),h=g[0],b=g[1],y=React.useMemo(function(){return compileFeatures(l)},[l]);React.useEffect(function(){if(!f){var e=d.map(function(e){var n=e.label,t=_objectWithoutProperties(e,_excluded2$3);return _objectSpread2({label:interpret(y)(u)(n)},t)});b(e)}},[f,y,l,u,d]);var w=interpret(l,null===p||void 0===p?void 0:p.logFunction)(u)(t),x=getResponseByPreference(a)(i),v=function(n){return o(_defineProperty({},getResponseName(i),n.value))},k=function(){return/*#__PURE__*/React__default["default"].createElement(Declarations,{id:n,type:AFTER_QUESTION_TEXT,declarations:s,features:l,bindings:u})};return/*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment,null,/*#__PURE__*/React__default["default"].createElement(Declarations,{id:n,type:BEFORE_QUESTION_TEXT,declarations:s,features:l,bindings:u}),r?/*#__PURE__*/React__default["default"].createElement(DropdownEdit,_extends({},p,{id:n,value:x,response:i,label:w,options:h,onSelect:v,management:c,DeclarationAfterLabel:k})):/*#__PURE__*/React__default["default"].createElement(DropdownSimple,_extends({},p,{id:n,value:x,response:i,label:w,options:h,onSelect:v,management:c,DeclarationAfterLabel:k})),/*#__PURE__*/React__default["default"].createElement(Declarations,{id:n,type:DETACHABLE,declarations:s,features:l,bindings:u}))};Dropdown.propTypes={disabled:PropTypes__default["default"].bool,writable:PropTypes__default["default"].bool,features:PropTypes__default["default"].arrayOf(PropTypes__default["default"].string),handleChange:PropTypes__default["default"].func,label:PropTypes__default["default"].oneOfType([PropTypes__default["default"].string,PropTypes__default["default"].element]),className:PropTypes__default["default"].string,zIndex:PropTypes__default["default"].number,freezeOptions:PropTypes__default["default"].bool},Dropdown.defaultProps={writable:!1,handleChange:function(){return null},features:[],label:void 0,className:void 0,zIndex:0,disabled:!1,freezeOptions:!1};var component$5=componentWrapper(/*#__PURE__*/React__default["default"].memo(Dropdown,areEqual)),css_248z$d=".lunatic-component .input-lunatic,\n.lunatic-component .datepicker-lunatic,\n.lunatic-component .textarea-lunatic {\n font: inherit;\n border: 0;\n border-bottom: 0.125rem double rgba(0, 0, 0, 0.42);\n margin: 0;\n padding: 0.375rem 0 0.375rem 0.4375rem;\n display: block;\n min-width: 0;\n box-sizing: content-box;\n background: none;\n}\n.lunatic-component .input-lunatic:focus,\n.lunatic-component .datepicker-lunatic:focus,\n.lunatic-component .textarea-lunatic:focus {\n outline: none;\n border-bottom: 0.125rem solid var(--color-primary-main);\n}\n.lunatic-component .input-lunatic:hover,\n.lunatic-component .datepicker-lunatic:hover,\n.lunatic-component .textarea-lunatic:hover {\n border-bottom: 0.125rem solid black;\n}\n.lunatic-component .input-lunatic:read-only,\n.lunatic-component .datepicker-lunatic:read-only,\n.lunatic-component .textarea-lunatic:read-only {\n background-color: var(--color-disabled);\n}\n.lunatic-component .warning {\n box-sizing: border-box;\n border: solid 2px var(--color-error);\n background-color: var(--color-error);\n}";styleInject(css_248z$d);var Input=function(e){return/*#__PURE__*/React__default["default"].createElement(InputDeclarationsWrapper,_extends({type:"text",roleType:"input"},e))},input=componentWrapper(/*#__PURE__*/React__default["default"].memo(Input,areEqual)),_excluded$5=["numberAsTextfield","decimals"],InputNumber=function(e){var n=e.numberAsTextfield,t=e.decimals,a=_objectWithoutProperties(e,_excluded$5);return/*#__PURE__*/React__default["default"].createElement(InputDeclarationsWrapper,_extends({type:n?"text":"number",roleType:"input"},a,{decimals:t||0,isInputNumber:!0,numberAsTextfield:!0,validators:[getTypeControls]}))};InputNumber.defaultProps={validators:[]},InputNumber.propTypes={validators:PropTypes__default["default"].arrayOf(PropTypes__default["default"].func)};var inputNumber=componentWrapper(/*#__PURE__*/React__default["default"].memo(InputNumber,areEqual)),FilterDescription=function(e){var n=e.id,t=e.label,a=e.filterDescription,i=e.features,o=e.bindings,d=e.style,r=e.logFunction;return a?/*#__PURE__*/React__default["default"].createElement("div",{id:"filter-description-".concat(n),"aria-label":"filter-description",className:"filter-description-lunatic",style:buildStyleObject(d)},interpret(i,r)(o)(t)):null};FilterDescription.defaultProps={filterDescription:!1,features:[],bindings:{},style:{}},FilterDescription.propTypes={id:PropTypes__default["default"].string.isRequired,label:PropTypes__default["default"].string.isRequired,filterDescription:PropTypes__default["default"].bool,features:PropTypes__default["default"].arrayOf(PropTypes__default["default"].string),bindings:PropTypes__default["default"].object,style:PropTypes__default["default"].object};var css_248z$c=".lunatic-modal {\n position: fixed;\n padding-top: 50px;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n background-color: black;\n background-color: rgba(0, 0, 0, 0.7);\n z-index: 1000;\n}\n.lunatic-modal .lunatic-modal-content {\n position: relative;\n background-color: white;\n padding: 20px;\n margin: auto;\n width: 50%;\n -webkit-animation-name: animatetop;\n -webkit-animation-duration: 0.4s;\n animation-name: animatetop;\n animation-duration: 0.4s;\n}\n.lunatic-modal .lunatic-modal-content .lunatic-modal-text {\n font-family: \"Roboto\", \"Helvetica\", \"Arial\", sans-serif;\n font-size: 1em;\n}\n.lunatic-modal .lunatic-modal-content .lunatic-modal-buttons {\n display: flex;\n justify-content: space-around;\n}\n.lunatic-modal .lunatic-modal-content .lunatic-modal-buttons .lunatic-modal-button {\n font-size: 0.8em;\n}";styleInject(".lunatic-modal {\n position: fixed;\n padding-top: 50px;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n background-color: black;\n background-color: rgba(0, 0, 0, 0.7);\n z-index: 1000;\n}\n.lunatic-modal .lunatic-modal-content {\n position: relative;\n background-color: white;\n padding: 20px;\n margin: auto;\n width: 50%;\n -webkit-animation-name: animatetop;\n -webkit-animation-duration: 0.4s;\n animation-name: animatetop;\n animation-duration: 0.4s;\n}\n.lunatic-modal .lunatic-modal-content .lunatic-modal-text {\n font-family: \"Roboto\", \"Helvetica\", \"Arial\", sans-serif;\n font-size: 1em;\n}\n.lunatic-modal .lunatic-modal-content .lunatic-modal-buttons {\n display: flex;\n justify-content: space-around;\n}\n.lunatic-modal .lunatic-modal-content .lunatic-modal-buttons .lunatic-modal-button {\n font-size: 0.8em;\n}");var Modal=function(e){var n=e.controls,t=e.cancelModal,a=e.validateModal,i=n.map(function(e){var n=e.criticality;return n}).includes("LOCK");return/*#__PURE__*/React__default["default"].createElement("div",{className:"lunatic-modal"},/*#__PURE__*/React__default["default"].createElement("div",{className:"lunatic-modal-content"},/*#__PURE__*/React__default["default"].createElement("div",{className:"lunatic-modal-text"},/*#__PURE__*/React__default["default"].createElement("ul",null,n.map(function(e){var n=e.id,t=e.errorMessage;return/*#__PURE__*/React__default["default"].createElement("li",{key:n},t)}))),/*#__PURE__*/React__default["default"].createElement("div",{className:"lunatic-modal-buttons"},/*#__PURE__*/React__default["default"].createElement("div",{className:"lunatic-modal-button"},/*#__PURE__*/React__default["default"].createElement(Button,{value:"Corriger ma r\xE9ponse",onClick:t})),/*#__PURE__*/React__default["default"].createElement("div",{className:"lunatic-modal-button"},/*#__PURE__*/React__default["default"].createElement(Button,{value:"Continuer",onClick:a,disabled:i})))))},css_248z$b=".lunatic-component .progress-lunatic {\n height: 30px;\n position: relative;\n background: var(--color-disabled);\n -moz-border-radius: 20px;\n -webkit-border-radius: 20px;\n border-radius: 20px;\n padding: 5px;\n box-shadow: inset 0 -1px 1px rgba(255, 255, 255, 0.3);\n text-align: center;\n font-weight: bold;\n}\n.lunatic-component .progress-lunatic > span {\n display: block;\n height: 100%;\n border-radius: 20px;\n background-color: var(--color-primary-light);\n opacity: 0.6;\n box-shadow: inset 0 2px 9px rgba(255, 255, 255, 0.3), inset 0 -2px 6px rgba(0, 0, 0, 0.4);\n position: relative;\n top: -18px;\n overflow: hidden;\n}\n.lunatic-component .progress-lunatic > span:after {\n content: \"\";\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n background-image: linear-gradient(-45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);\n z-index: 1;\n background-size: 50px 50px;\n animation: move 2s linear infinite;\n border-top-right-radius: 8px;\n border-bottom-right-radius: 8px;\n border-top-left-radius: 20px;\n border-bottom-left-radius: 20px;\n overflow: hidden;\n}";styleInject(css_248z$b);var ProgressBar=function(e){var n=e.id,t=e.value,a=e.style,i=t;return 0>t&&(i=0),100<t&&(i=100),/*#__PURE__*/React__default["default"].createElement("div",{id:"progress-".concat(n),className:"progress-lunatic",style:buildStyleObject(a)},"".concat(i.toFixed(0)," %"),/*#__PURE__*/React__default["default"].createElement("span",{style:{width:"".concat(i,"%")}}))};ProgressBar.propTypes={id:PropTypes__default["default"].string.isRequired,value:PropTypes__default["default"].number.isRequired,style:PropTypes__default["default"].object};var css_248z$a=".lunatic-component .radio-group-list {\n border: 0;\n outline: 0;\n padding: 0;\n margin-top: 0.9375rem;\n}\n.lunatic-component .radio-lunatic {\n position: absolute;\n opacity: 0;\n margin-bottom: 0;\n margin-top: 0.05rem;\n margin-left: 0.2rem;\n height: 20px;\n width: 20px;\n}\n.lunatic-component .radio-lunatic + label {\n margin-left: 2rem;\n}\n.lunatic-component .radio-lunatic:focus + label {\n background-color: rgba(0, 0, 0, 0.05);\n}\n.lunatic-component .radio-lunatic + label::before {\n float: left;\n line-height: 2rem;\n}\n.lunatic-component .field .radio-group-list .radio-modality,\n.lunatic-component .field-with-tooltip .radio-group-list .radio-modality {\n height: 1.375em;\n}\n.lunatic-component .radio-group-list .radio-modality label {\n display: flex;\n}\n.lunatic-component .radio-group-list .radio-modality.radio-modality-block label {\n padding-top: 0.325em;\n}\n.lunatic-component .radio-group-list .radio-modality.radio-modality-block.horizontal-options label {\n padding-top: 0;\n}\n.lunatic-component .radio-modality {\n margin-bottom: 0.8em;\n}\n.lunatic-component .radio-lunatic + label {\n margin-top: 0.325em;\n}";styleInject(".lunatic-component .radio-group-list {\n border: 0;\n outline: 0;\n padding: 0;\n margin-top: 0.9375rem;\n}\n.lunatic-component .radio-lunatic {\n position: absolute;\n opacity: 0;\n margin-bottom: 0;\n margin-top: 0.05rem;\n margin-left: 0.2rem;\n height: 20px;\n width: 20px;\n}\n.lunatic-component .radio-lunatic + label {\n margin-left: 2rem;\n}\n.lunatic-component .radio-lunatic:focus + label {\n background-color: rgba(0, 0, 0, 0.05);\n}\n.lunatic-component .radio-lunatic + label::before {\n float: left;\n line-height: 2rem;\n}\n.lunatic-component .field .radio-group-list .radio-modality,\n.lunatic-component .field-with-tooltip .radio-group-list .radio-modality {\n height: 1.375em;\n}\n.lunatic-component .radio-group-list .radio-modality label {\n display: flex;\n}\n.lunatic-component .radio-group-list .radio-modality.radio-modality-block label {\n padding-top: 0.325em;\n}\n.lunatic-component .radio-group-list .radio-modality.radio-modality-block.horizontal-options label {\n padding-top: 0;\n}\n.lunatic-component .radio-modality {\n margin-bottom: 0.8em;\n}\n.lunatic-component .radio-lunatic + label {\n margin-top: 0.325em;\n}");var Radio=function(e){return/*#__PURE__*/React__default["default"].createElement(ListDeclarationsWrapper,_extends({type:"radio"},e))},component$4=componentWrapper(/*#__PURE__*/React__default["default"].memo(Radio,areEqual)),css_248z$9=".lunatic-component .lunatic-loop .loop-label {\n text-align: center;\n font-weight: bold;\n font-size: 2em;\n}\n.lunatic-component .lunatic-loop .loop-component {\n margin-top: 0.4em;\n margin-bottom: 0.4em;\n}";styleInject(css_248z$9);var _excluded$4=["id","label","iterations","components","bindings","handleChange","loopDependencies","maxPage","pagination","paginatedLoop","currentPage","depth"],_excluded2$2=["componentType","id","rowNumber","conditionFilter","page","bindingDependencies","missingResponse"],Loop=function(e){var n=e.id;e.label;var t=e.iterations,a=e.components,i=e.bindings,o=e.handleChange;e.loopDependencies,e.maxPage;var d=e.pagination,r=e.paginatedLoop,s=e.currentPage,l=e.depth,u=_objectWithoutProperties(e,_excluded$4),c=React.useState([]),f=_slicedToArray(c,2),p=f[0],m=f[1],g=buildVectorialBindings(i),h=u.features,b=h.filter(function(e){return"MD"!==e}),y=parseInt(interpret(b)(g)(t),10)||0,w=getInvolvedVariables(a);React.useEffect(function(){var e=w.reduce(function(e,n){var t=n.name,a=n.depth;return i[t]?y===i[t].length?e:y<=i[t].length?_objectSpread2(_objectSpread2({},e),{},_defineProperty({},t,_toConsumableArray(i[t].splice(0,y)))):_objectSpread2(_objectSpread2({},e),{},_defineProperty({},t,[].concat(_toConsumableArray(i[t]),_toConsumableArray(Array(y-i[t].length).fill(buildEmptyValue(a)))))):e},{});0!==Object.keys(e).length&&o(e)},[y]),React.useEffect(function(){if(0!==p.length){var e=p.reduce(function(e,n){var t=n.up,a=n.rowNumber,o=Object.entries(t);if(0===o.length)return e;var d=o.reduce(function(e,n){var t=_slicedToArray(n,2),o=t[0],d=t[1],r=i[o],s=r.map(function(e,n){return n===a?d:e});return _objectSpread2(_objectSpread2({},e),{},_defineProperty({},o,s))},{});return _objectSpread2(_objectSpread2({},e),d)},{});o(e),m([])}},[i,p,o]);var x=buildLoopComponents(y)(a),v=splitPage(s,l),k=v.currentIteration,E=v.currentPageWithoutAnyIteration,S={},C=x.reduce(function(e,n){var t=n.componentType,a=n.id,o=n.rowNumber,l=n.conditionFilter,c=n.page,f=n.bindingDependencies,p=void 0===f?[]:f,g=n.missingResponse,h=_objectWithoutProperties(n,_excluded2$2),y=p.map(function(e){return i[e]?[e,i[e]]:[e,null]}),w=buildLoopBindings(o)(y),x=buildLoopMissingResponse(o)(g);if(!displayLoopQuestion(p)(w))return e;var v=lunatic[t],C=l.bindingDependencies,T=void 0===C?[]:C,N=l.value,R=void 0===N?"":N,P=T.map(function(e){return i[e]?[e,i[e]]:[e,null]}),_=buildLoopBindings(o)(P),L=S[R]||function(){var e=interpret(b)(_)(R);return S["".concat(R,"-row-").concat(o)]=e,e}();return!L||d&&(E!==c||r&&o+1!==k)?e:[].concat(_toConsumableArray(e),[/*#__PURE__*/React__default["default"].createElement("div",{key:"".concat(a,"-loop-").concat(o),className:"loop-component"},/*#__PURE__*/React__default["default"].createElement(v,_extends({},u,h,{id:"".concat(a,"-loop-").concat(o),handleChange:function(e){m(function(n){return[].concat(_toConsumableArray(n),[{up:e,rowNumber:o}])})},bindings:w,fullBindings:i,bindingDependencies:p,componentType:t,pagination:d,currentPage:s,conditionFilter:l,missingResponse:x})))])},[]);return/*#__PURE__*/React__default["default"].createElement("div",{id:"loop-".concat(n),className:"lunatic-loop"},C)},Loop$1=/*#__PURE__*/React__default["default"].memo(Loop,areEqual),_excluded$3=["response"],buildContentForLoopConstructor=function(e){var n=e.components,t=e.headers,a=n.find(function(e){return e.response}).response.values[COLLECTED].length||1,i=_toConsumableArray(Array(a).keys()),o=n.map(function(e){var n=e.response,t=_objectWithoutProperties(e,_excluded$3);if(!n)return i.map(function(){return e});// Handle reponses & cells components ?
|
|
772
772
|
var a=n.name,o=n.values;return i.map(function(e){var n=Object.entries(o).reduce(function(n,t){var a=_slicedToArray(t,2),i=a[0],o=a[1];return _objectSpread2(_objectSpread2({},n),{},_defineProperty({},i,o?o[e]:null))},{});return _objectSpread2(_objectSpread2({},t),{},{response:{name:a,values:n},rowNumber:e})})},[]),d=function(e){return e[0].map(function(n,t){return e.map(function(e){return e[t]})})}(o);// Start hack to find interation number
|
|
773
773
|
// Refactor if we have to handle complex components (vector, matrix)
|
|
774
|
-
return t?[t].concat(_toConsumableArray(d)):d},_excluded$2=["componentType","mainId","headers","components","bindings","width","preferences","positioning","management","features","setTodo","logFunction"],_excluded2$1=["label","headerCell","colspan","rowspan","componentType","id","rowNumber"],_excluded3=["componentType","id","label"],BodyComponent=function(e){var n=e.componentType,t=e.mainId,a=e.headers,i=e.components,o=e.bindings,d=e.width,r=e.preferences,s=e.positioning,l=e.management,u=e.features,c=e.setTodo,f=e.logFunction,p=_objectWithoutProperties(e,_excluded$2),m=buildContentForLoopConstructor({components:i,headers:a});return"RosterForLoop"===n?/*#__PURE__*/React__default["default"].createElement("table",{id:"table-".concat(t),className:"table-lunatic"},/*#__PURE__*/React__default["default"].createElement("tbody",null,m.map(function(e,n){return/*#__PURE__*/React__default["default"].createElement("tr",{key:"table-".concat(t,"-row").concat(n)},e.map(function(e,a){var i=e.label,
|
|
774
|
+
return t?[t].concat(_toConsumableArray(d)):d},_excluded$2=["componentType","mainId","headers","components","bindings","width","preferences","positioning","management","features","setTodo","logFunction"],_excluded2$1=["label","headerCell","colspan","rowspan","componentType","id","rowNumber","conditionFilter"],_excluded3=["componentType","id","label"],BodyComponent=function(e){var n=e.componentType,t=e.mainId,a=e.headers,i=e.components,o=e.bindings,d=e.width,r=e.preferences,s=e.positioning,l=e.management,u=e.features,c=e.setTodo,f=e.logFunction,p=_objectWithoutProperties(e,_excluded$2),m=buildContentForLoopConstructor({components:i,headers:a}),g=u.filter(function(e){return"MD"!==e});return"RosterForLoop"===n?/*#__PURE__*/React__default["default"].createElement("table",{id:"table-".concat(t),className:"table-lunatic"},/*#__PURE__*/React__default["default"].createElement("tbody",null,m.map(function(e,n){return/*#__PURE__*/React__default["default"].createElement("tr",{key:"table-".concat(t,"-row").concat(n)},e.map(function(e,a){var i=e.label,h=e.headerCell,b=e.colspan,y=e.rowspan,w=e.componentType,x=e.id,v=e.rowNumber,k=e.conditionFilter,E=_objectWithoutProperties(e,_excluded2$1),S=buildBindingsForDeeperComponents(v)(o);if(k){var C=k.value,T=void 0===C?"":C;if(!interpret(g)(S)(T))return null}if(w){var N=lunatic[w];return/*#__PURE__*/React__default["default"].createElement("td",{key:"table-".concat(t,"-row-").concat(n,"-cell-").concat(a),style:{width:d}},/*#__PURE__*/React__default["default"].createElement(N,_extends({},p,E,{id:"".concat(x,"-row-").concat(n),label:i,handleChange:function(e){c({up:e,rowNumber:v})},preferences:r,positioning:s,management:l,features:u,bindings:S,fullBindings:o,missingLoopIteration:n,zIndex:m.length-n||0,logFunction:f,focused:0===n&&0===a})))}var R={key:"table-".concat(t,"-row-").concat(n,"-cell-").concat(a),style:{width:d},colSpan:b||1,rowSpan:y||1},P=interpret(u,f)(o)(i);return h?/*#__PURE__*/React__default["default"].createElement("th",R,P):/*#__PURE__*/React__default["default"].createElement("td",R,P)}))}))):/*#__PURE__*/React__default["default"].createElement("div",{className:"block-for-loop"},m.map(function(e,n){return e.map(function(e){var t=e.componentType,a=e.id,i=e.label,d=_objectWithoutProperties(e,_excluded3),m=lunatic[t],h=buildBindingsForDeeperComponents(n)(o),b=d.missingResponse,y=d.conditionFilter;if(y){var w=y.value,x=void 0===w?"":w;if(!interpret(g)(h)(x))return null}return/*#__PURE__*/React__default["default"].createElement("div",{className:"block-component",key:"".concat(a,"-row-").concat(n)},/*#__PURE__*/React__default["default"].createElement(m,_extends({},p,d,{missingResponse:b,id:"".concat(a,"-row-").concat(n),label:i,handleChange:function(e){c({up:e,rowNumber:n})},preferences:r,positioning:s,management:l,features:u,bindings:h,fullBindings:o,missingLoopIteration:n,logFunction:f,focused:0===n})))})}))},_excluded$1=["id","label","components","handleChange","lines","declarations","features","bindings","addBtnLabel","hideBtn","componentType"],LoopConstructorWrapper=function(e){var n=Math.max,t=e.id,a=e.label,i=e.components,o=e.handleChange,d=e.lines,r=e.declarations,s=e.features,l=e.bindings,u=e.addBtnLabel,c=e.hideBtn,f=e.componentType,p=_objectWithoutProperties(e,_excluded$1),m=React.useState({}),g=_slicedToArray(m,2),h=g[0],b=g[1],y=s.filter(function(e){return"MD"!==e}),w=n(parseInt(interpret(y)(l)(d.min),10)||1,getLoopConstructorInitLines(i)),x=d?parseInt(interpret(y)(l)(d.max),10):void 0,v="".concat(100/n.apply(Math,_toConsumableArray(i.map(function(e){return e.length}))),"%"),k=getInvolvedVariables(i),E=i.reduce(function(e,n){var t;return"".concat(e,"|").concat(Object.values((null===(t=n.response)||void 0===t?void 0:t.values)||{}).join("|"))},"");React.useEffect(function(){if(d.min&&d.min===d.max){var e=parseInt(interpret(y)(l)(d.min),10)||1,n=k.reduce(function(n,t){var a=t.name;if(e===l[a].length)return n;if(e<l[a].length)return _objectSpread2(_objectSpread2({},n),{},_defineProperty({},a,_toConsumableArray(l[a].slice(0,e))));var i=_toConsumableArray(Array(e-l[a].length).keys()).map(function(){return null});return _objectSpread2(_objectSpread2({},n),{},_defineProperty({},a,[].concat(_toConsumableArray(l[a]),_toConsumableArray(i))))},{});0!==Object.keys(n).length&&o(n)}// Assume to only execute this side effect at mount
|
|
775
775
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
776
776
|
},[E]),React.useEffect(function(){if(0!==Object.keys(h).length){var e=h.up,n=h.rowNumber,t=Object.entries(e),a=t.reduce(function(e,t){var a=_slicedToArray(t,2),i=a[0],o=a[1],d=l[i],r=d.map(function(e,t){return t===n?o:e});return _objectSpread2(_objectSpread2({},e),{},_defineProperty({},i,r))},{});o(a),b({})}},[l,h,o]);var S="Loop"===f&&interpret(s,null===p||void 0===p?void 0:p.logFunction)(l)(a)||u;return/*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment,null,/*#__PURE__*/React__default["default"].createElement(Declarations,{id:t,type:BEFORE_QUESTION_TEXT,declarations:r,features:s,bindings:l}),"RosterForLoop"===f&&a&&/*#__PURE__*/React__default["default"].createElement("label",{htmlFor:"loops-constructor-".concat(t),id:"loops-constructor-label-".concat(t)},interpret(s,null===p||void 0===p?void 0:p.logFunction)(l)(a)),/*#__PURE__*/React__default["default"].createElement(Declarations,{id:t,type:AFTER_QUESTION_TEXT,declarations:r,features:s,bindings:l}),/*#__PURE__*/React__default["default"].createElement(BodyComponent,_extends({mainId:t,componentType:f,components:i,bindings:l,width:v,features:s,setTodo:b},p)),!c&&Number.isInteger(w)&&w!==x&&/*#__PURE__*/React__default["default"].createElement(Button,{label:"addLine",value:S// disabled={
|
|
777
777
|
// Number.isInteger(minLines) && minLines === maxLines
|