@activecollab/components 1.0.184 → 1.0.185

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.
@@ -19,14 +19,6 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
19
19
 
20
20
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
21
21
 
22
- function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
23
-
24
- function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
25
-
26
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
27
-
28
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
29
-
30
22
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
31
23
 
32
24
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
@@ -73,12 +65,19 @@ var Wizard = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
73
65
  setActiveStep(index);
74
66
  }, [activeStep, childrenCollection]);
75
67
  var goPrevious = (0, _react.useCallback)(function () {
76
- var index = [_toConsumableArray(childrenCollection).reverse()].findIndex(function (step, index) {
77
- var _stepEl$props2;
68
+ var index = 0;
69
+
70
+ for (var i = childrenCollection.length - 1; i >= 0; i--) {
71
+ var _step$props;
72
+
73
+ var step = childrenCollection[i];
74
+
75
+ if (!(step !== null && step !== void 0 && (_step$props = step.props) !== null && _step$props !== void 0 && _step$props.skip) && i < activeStep) {
76
+ index = i;
77
+ break;
78
+ }
79
+ }
78
80
 
79
- var stepEl = step;
80
- return !(stepEl !== null && stepEl !== void 0 && (_stepEl$props2 = stepEl.props) !== null && _stepEl$props2 !== void 0 && _stepEl$props2.skip) && index < activeStep;
81
- });
82
81
  setActiveStep(index);
83
82
  }, [activeStep, childrenCollection]);
84
83
  var renderActiveStep = (0, _react.useMemo)(function () {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Wizard/Wizard.tsx"],"names":["Wizard","ref","title","open","onClose","children","childrenCollection","React","Children","toArray","activeStep","setActiveStep","changingStepInProgress","setChangingStepInProgress","goNext","index","findIndex","step","stepEl","props","skip","goPrevious","reverse","renderActiveStep","element","type","Step","cloneElement","isLast","length","onNextButtonClick","onPreviousButtonClick","close","displayName"],"mappings":";;;;;;;;;AAAA;;AAWA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;AASO,IAAMA,MAAM,gBAAG,uBACpB,gBAAqCC,GAArC,EAA6C;AAAA,MAA1CC,KAA0C,QAA1CA,KAA0C;AAAA,MAAnCC,IAAmC,QAAnCA,IAAmC;AAAA,MAA7BC,OAA6B,QAA7BA,OAA6B;AAAA,MAApBC,QAAoB,QAApBA,QAAoB;AAC3C,MAAMC,kBAAkB,GAAG,oBACzB;AAAA,WAAMC,eAAMC,QAAN,CAAeC,OAAf,CAAuBJ,QAAvB,CAAN;AAAA,GADyB,EAEzB,CAACA,QAAD,CAFyB,CAA3B;;AAKA,kBAAoC,qBAAS,CAAT,CAApC;AAAA;AAAA,MAAOK,UAAP;AAAA,MAAmBC,aAAnB;;AACA,mBAA4D,qBAAS,KAAT,CAA5D;AAAA;AAAA,MAAOC,sBAAP;AAAA,MAA+BC,yBAA/B;;AAEA,wBAAU,YAAM;AACd,QAAIV,IAAJ,EAAU;AACRQ,MAAAA,aAAa,CAAC,CAAD,CAAb;AACD;AACF,GAJD,EAIG,CAACR,IAAD,CAJH;AAMA,MAAMW,MAAM,GAAG,wBAAY,YAAM;AAC/B,QAAMC,KAAK,GAAGT,kBAAkB,CAACU,SAAnB,CACZ,UAACC,IAAD,EAAmCF,KAAnC,EAA6C;AAAA;;AAC3C,UAAMG,MAAM,GAAGD,IAAf;AACA,aAAO,EAACC,MAAD,aAACA,MAAD,gCAACA,MAAM,CAAEC,KAAT,0CAAC,cAAeC,IAAhB,KAAwBL,KAAK,GAAGL,UAAvC;AACD,KAJW,CAAd;AAMAC,IAAAA,aAAa,CAACI,KAAD,CAAb;AACD,GARc,EAQZ,CAACL,UAAD,EAAaJ,kBAAb,CARY,CAAf;AAUA,MAAMe,UAAU,GAAG,wBAAY,YAAM;AACnC,QAAMN,KAAK,GAAG,CAAC,mBAAIT,kBAAJ,EAAwBgB,OAAxB,EAAD,EAAoCN,SAApC,CACZ,UAACC,IAAD,EAAmCF,KAAnC,EAA6C;AAAA;;AAC3C,UAAMG,MAAM,GAAGD,IAAf;AACA,aAAO,EAACC,MAAD,aAACA,MAAD,iCAACA,MAAM,CAAEC,KAAT,2CAAC,eAAeC,IAAhB,KAAwBL,KAAK,GAAGL,UAAvC;AACD,KAJW,CAAd;AAMAC,IAAAA,aAAa,CAACI,KAAD,CAAb;AACD,GARkB,EAQhB,CAACL,UAAD,EAAaJ,kBAAb,CARgB,CAAnB;AAUA,MAAMiB,gBAAgB,GAAG,oBAAQ,YAAM;AACrC,QAAMC,OAAO,GAAGlB,kBAAkB,CAACI,UAAD,CAAlC;;AAEA,QAAI,CAAAc,OAAO,SAAP,IAAAA,OAAO,WAAP,YAAAA,OAAO,CAAEC,IAAT,MAAkBC,UAAtB,EAA4B;AAC1B,0BAAOnB,eAAMoB,YAAN,CAAmBH,OAAnB,EAA4B;AACjCT,QAAAA,KAAK,EAAEL,UAD0B;AAEjCkB,QAAAA,MAAM,EAAEtB,kBAAkB,CAACuB,MAAnB,GAA4B,CAA5B,KAAkCnB,UAFT;AAGjCR,QAAAA,KAAK,EAAEA,KAH0B;AAIjC4B,QAAAA,iBAAiB,EAAEhB,MAJc;AAKjCiB,QAAAA,qBAAqB,EAAEV,UALU;AAMjCjB,QAAAA,OAAO,EAAPA,OANiC;AAOjCQ,QAAAA,sBAAsB,EAAEA;AAPS,OAA5B,CAAP;AASD;;AAED,WAAO,IAAP;AACD,GAhBwB,EAgBtB,CACDF,UADC,EAEDE,sBAFC,EAGDN,kBAHC,EAIDQ,MAJC,EAKDO,UALC,EAMDjB,OANC,EAODF,KAPC,CAhBsB,CAAzB;AA0BA,sBACE,6BAAC,8BAAD;AACE,IAAA,KAAK,EAAE;AACLQ,MAAAA,UAAU,EAAVA,UADK;AAELC,MAAAA,aAAa,EAAbA,aAFK;AAGLG,MAAAA,MAAM,EAANA,MAHK;AAILO,MAAAA,UAAU,EAAVA,UAJK;AAKLW,MAAAA,KAAK,EAAE5B,OALF;AAMLS,MAAAA,yBAAyB,EAAzBA;AANK;AADT,kBAUE,6BAAC,cAAD;AAAQ,IAAA,GAAG,EAAEZ,GAAb;AAAkB,IAAA,IAAI,EAAEE,IAAxB;AAA8B,IAAA,OAAO,EAAEC;AAAvC,KACGmB,gBADH,CAVF,CADF;AAgBD,CA9EmB,CAAf;;AAiFPvB,MAAM,CAACiC,WAAP,GAAqB,QAArB","sourcesContent":["import React, {\n forwardRef,\n ReactChild,\n ReactElement,\n ReactFragment,\n ReactNode,\n useCallback,\n useEffect,\n useMemo,\n useState,\n} from \"react\";\nimport { Dialog } from \"../Dialog\";\nimport { WizardContextProvider } from \"./context\";\nimport { Step } from \"./Step\";\n\nexport interface IWizard {\n title: string;\n open: boolean;\n onClose: () => void;\n children: ReactNode;\n}\n\nexport const Wizard = forwardRef<HTMLDivElement, IWizard>(\n ({ title, open, onClose, children }, ref) => {\n const childrenCollection = useMemo(\n () => React.Children.toArray(children),\n [children]\n );\n\n const [activeStep, setActiveStep] = useState(0);\n const [changingStepInProgress, setChangingStepInProgress] = useState(false);\n\n useEffect(() => {\n if (open) {\n setActiveStep(0);\n }\n }, [open]);\n\n const goNext = useCallback(() => {\n const index = childrenCollection.findIndex(\n (step: ReactChild | ReactFragment, index) => {\n const stepEl = step as ReactElement;\n return !stepEl?.props?.skip && index > activeStep;\n }\n );\n setActiveStep(index);\n }, [activeStep, childrenCollection]);\n\n const goPrevious = useCallback(() => {\n const index = [[...childrenCollection].reverse()].findIndex(\n (step: ReactChild | ReactFragment, index) => {\n const stepEl = step as ReactElement;\n return !stepEl?.props?.skip && index < activeStep;\n }\n );\n setActiveStep(index);\n }, [activeStep, childrenCollection]);\n\n const renderActiveStep = useMemo(() => {\n const element = childrenCollection[activeStep] as ReactElement;\n\n if (element?.type === Step) {\n return React.cloneElement(element, {\n index: activeStep,\n isLast: childrenCollection.length - 1 === activeStep,\n title: title,\n onNextButtonClick: goNext,\n onPreviousButtonClick: goPrevious,\n onClose,\n changingStepInProgress: changingStepInProgress,\n });\n }\n\n return null;\n }, [\n activeStep,\n changingStepInProgress,\n childrenCollection,\n goNext,\n goPrevious,\n onClose,\n title,\n ]);\n\n return (\n <WizardContextProvider\n value={{\n activeStep,\n setActiveStep,\n goNext,\n goPrevious,\n close: onClose,\n setChangingStepInProgress,\n }}\n >\n <Dialog ref={ref} open={open} onClose={onClose}>\n {renderActiveStep}\n </Dialog>\n </WizardContextProvider>\n );\n }\n);\n\nWizard.displayName = \"Wizard\";\n"],"file":"Wizard.js"}
1
+ {"version":3,"sources":["../../../../src/components/Wizard/Wizard.tsx"],"names":["Wizard","ref","title","open","onClose","children","childrenCollection","React","Children","toArray","activeStep","setActiveStep","changingStepInProgress","setChangingStepInProgress","goNext","index","findIndex","step","stepEl","props","skip","goPrevious","i","length","renderActiveStep","element","type","Step","cloneElement","isLast","onNextButtonClick","onPreviousButtonClick","close","displayName"],"mappings":"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","sourcesContent":["import React, {\n forwardRef,\n ReactChild,\n ReactElement,\n ReactFragment,\n ReactNode,\n useCallback,\n useEffect,\n useMemo,\n useState,\n} from \"react\";\nimport { Dialog } from \"../Dialog\";\nimport { WizardContextProvider } from \"./context\";\nimport { Step } from \"./Step\";\n\nexport interface IWizard {\n title: string;\n open: boolean;\n onClose: () => void;\n children: ReactNode;\n}\n\nexport const Wizard = forwardRef<HTMLDivElement, IWizard>(\n ({ title, open, onClose, children }, ref) => {\n const childrenCollection = useMemo(\n () => React.Children.toArray(children),\n [children]\n );\n\n const [activeStep, setActiveStep] = useState(0);\n const [changingStepInProgress, setChangingStepInProgress] = useState(false);\n\n useEffect(() => {\n if (open) {\n setActiveStep(0);\n }\n }, [open]);\n\n const goNext = useCallback(() => {\n const index = childrenCollection.findIndex(\n (step: ReactChild | ReactFragment, index) => {\n const stepEl = step as ReactElement;\n return !stepEl?.props?.skip && index > activeStep;\n }\n );\n setActiveStep(index);\n }, [activeStep, childrenCollection]);\n\n const goPrevious = useCallback(() => {\n let index = 0;\n for (let i = childrenCollection.length - 1; i >= 0; i--) {\n const step = childrenCollection[i] as ReactElement;\n if (!step?.props?.skip && i < activeStep) {\n index = i;\n break;\n }\n }\n setActiveStep(index);\n }, [activeStep, childrenCollection]);\n\n const renderActiveStep = useMemo(() => {\n const element = childrenCollection[activeStep] as ReactElement;\n\n if (element?.type === Step) {\n return React.cloneElement(element, {\n index: activeStep,\n isLast: childrenCollection.length - 1 === activeStep,\n title: title,\n onNextButtonClick: goNext,\n onPreviousButtonClick: goPrevious,\n onClose,\n changingStepInProgress: changingStepInProgress,\n });\n }\n\n return null;\n }, [\n activeStep,\n changingStepInProgress,\n childrenCollection,\n goNext,\n goPrevious,\n onClose,\n title,\n ]);\n\n return (\n <WizardContextProvider\n value={{\n activeStep,\n setActiveStep,\n goNext,\n goPrevious,\n close: onClose,\n setChangingStepInProgress,\n }}\n >\n <Dialog ref={ref} open={open} onClose={onClose}>\n {renderActiveStep}\n </Dialog>\n </WizardContextProvider>\n );\n }\n);\n\nWizard.displayName = \"Wizard\";\n"],"file":"Wizard.js"}
@@ -1 +1 @@
1
- {"version":3,"file":"Wizard.d.ts","sourceRoot":"","sources":["../../../../src/components/Wizard/Wizard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAKZ,SAAS,EAKV,MAAM,OAAO,CAAC;AAKf,MAAM,WAAW,OAAO;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,eAAO,MAAM,MAAM,gFA+ElB,CAAC"}
1
+ {"version":3,"file":"Wizard.d.ts","sourceRoot":"","sources":["../../../../src/components/Wizard/Wizard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAKZ,SAAS,EAKV,MAAM,OAAO,CAAC;AAKf,MAAM,WAAW,OAAO;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,eAAO,MAAM,MAAM,gFAiFlB,CAAC"}
@@ -34,12 +34,19 @@ export var Wizard = /*#__PURE__*/forwardRef(function (_ref, ref) {
34
34
  setActiveStep(index);
35
35
  }, [activeStep, childrenCollection]);
36
36
  var goPrevious = useCallback(function () {
37
- var index = [[].concat(childrenCollection).reverse()].findIndex(function (step, index) {
38
- var _stepEl$props2;
37
+ var index = 0;
38
+
39
+ for (var i = childrenCollection.length - 1; i >= 0; i--) {
40
+ var _step$props;
41
+
42
+ var step = childrenCollection[i];
43
+
44
+ if (!(step != null && (_step$props = step.props) != null && _step$props.skip) && i < activeStep) {
45
+ index = i;
46
+ break;
47
+ }
48
+ }
39
49
 
40
- var stepEl = step;
41
- return !(stepEl != null && (_stepEl$props2 = stepEl.props) != null && _stepEl$props2.skip) && index < activeStep;
42
- });
43
50
  setActiveStep(index);
44
51
  }, [activeStep, childrenCollection]);
45
52
  var renderActiveStep = useMemo(function () {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Wizard/Wizard.tsx"],"names":["React","forwardRef","useCallback","useEffect","useMemo","useState","Dialog","WizardContextProvider","Step","Wizard","ref","title","open","onClose","children","childrenCollection","Children","toArray","activeStep","setActiveStep","changingStepInProgress","setChangingStepInProgress","goNext","index","findIndex","step","stepEl","props","skip","goPrevious","reverse","renderActiveStep","element","type","cloneElement","isLast","length","onNextButtonClick","onPreviousButtonClick","close","displayName"],"mappings":"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","sourcesContent":["import React, {\n forwardRef,\n ReactChild,\n ReactElement,\n ReactFragment,\n ReactNode,\n useCallback,\n useEffect,\n useMemo,\n useState,\n} from \"react\";\nimport { Dialog } from \"../Dialog\";\nimport { WizardContextProvider } from \"./context\";\nimport { Step } from \"./Step\";\n\nexport interface IWizard {\n title: string;\n open: boolean;\n onClose: () => void;\n children: ReactNode;\n}\n\nexport const Wizard = forwardRef<HTMLDivElement, IWizard>(\n ({ title, open, onClose, children }, ref) => {\n const childrenCollection = useMemo(\n () => React.Children.toArray(children),\n [children]\n );\n\n const [activeStep, setActiveStep] = useState(0);\n const [changingStepInProgress, setChangingStepInProgress] = useState(false);\n\n useEffect(() => {\n if (open) {\n setActiveStep(0);\n }\n }, [open]);\n\n const goNext = useCallback(() => {\n const index = childrenCollection.findIndex(\n (step: ReactChild | ReactFragment, index) => {\n const stepEl = step as ReactElement;\n return !stepEl?.props?.skip && index > activeStep;\n }\n );\n setActiveStep(index);\n }, [activeStep, childrenCollection]);\n\n const goPrevious = useCallback(() => {\n const index = [[...childrenCollection].reverse()].findIndex(\n (step: ReactChild | ReactFragment, index) => {\n const stepEl = step as ReactElement;\n return !stepEl?.props?.skip && index < activeStep;\n }\n );\n setActiveStep(index);\n }, [activeStep, childrenCollection]);\n\n const renderActiveStep = useMemo(() => {\n const element = childrenCollection[activeStep] as ReactElement;\n\n if (element?.type === Step) {\n return React.cloneElement(element, {\n index: activeStep,\n isLast: childrenCollection.length - 1 === activeStep,\n title: title,\n onNextButtonClick: goNext,\n onPreviousButtonClick: goPrevious,\n onClose,\n changingStepInProgress: changingStepInProgress,\n });\n }\n\n return null;\n }, [\n activeStep,\n changingStepInProgress,\n childrenCollection,\n goNext,\n goPrevious,\n onClose,\n title,\n ]);\n\n return (\n <WizardContextProvider\n value={{\n activeStep,\n setActiveStep,\n goNext,\n goPrevious,\n close: onClose,\n setChangingStepInProgress,\n }}\n >\n <Dialog ref={ref} open={open} onClose={onClose}>\n {renderActiveStep}\n </Dialog>\n </WizardContextProvider>\n );\n }\n);\n\nWizard.displayName = \"Wizard\";\n"],"file":"Wizard.js"}
1
+ {"version":3,"sources":["../../../../src/components/Wizard/Wizard.tsx"],"names":["React","forwardRef","useCallback","useEffect","useMemo","useState","Dialog","WizardContextProvider","Step","Wizard","ref","title","open","onClose","children","childrenCollection","Children","toArray","activeStep","setActiveStep","changingStepInProgress","setChangingStepInProgress","goNext","index","findIndex","step","stepEl","props","skip","goPrevious","i","length","renderActiveStep","element","type","cloneElement","isLast","onNextButtonClick","onPreviousButtonClick","close","displayName"],"mappings":"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","sourcesContent":["import React, {\n forwardRef,\n ReactChild,\n ReactElement,\n ReactFragment,\n ReactNode,\n useCallback,\n useEffect,\n useMemo,\n useState,\n} from \"react\";\nimport { Dialog } from \"../Dialog\";\nimport { WizardContextProvider } from \"./context\";\nimport { Step } from \"./Step\";\n\nexport interface IWizard {\n title: string;\n open: boolean;\n onClose: () => void;\n children: ReactNode;\n}\n\nexport const Wizard = forwardRef<HTMLDivElement, IWizard>(\n ({ title, open, onClose, children }, ref) => {\n const childrenCollection = useMemo(\n () => React.Children.toArray(children),\n [children]\n );\n\n const [activeStep, setActiveStep] = useState(0);\n const [changingStepInProgress, setChangingStepInProgress] = useState(false);\n\n useEffect(() => {\n if (open) {\n setActiveStep(0);\n }\n }, [open]);\n\n const goNext = useCallback(() => {\n const index = childrenCollection.findIndex(\n (step: ReactChild | ReactFragment, index) => {\n const stepEl = step as ReactElement;\n return !stepEl?.props?.skip && index > activeStep;\n }\n );\n setActiveStep(index);\n }, [activeStep, childrenCollection]);\n\n const goPrevious = useCallback(() => {\n let index = 0;\n for (let i = childrenCollection.length - 1; i >= 0; i--) {\n const step = childrenCollection[i] as ReactElement;\n if (!step?.props?.skip && i < activeStep) {\n index = i;\n break;\n }\n }\n setActiveStep(index);\n }, [activeStep, childrenCollection]);\n\n const renderActiveStep = useMemo(() => {\n const element = childrenCollection[activeStep] as ReactElement;\n\n if (element?.type === Step) {\n return React.cloneElement(element, {\n index: activeStep,\n isLast: childrenCollection.length - 1 === activeStep,\n title: title,\n onNextButtonClick: goNext,\n onPreviousButtonClick: goPrevious,\n onClose,\n changingStepInProgress: changingStepInProgress,\n });\n }\n\n return null;\n }, [\n activeStep,\n changingStepInProgress,\n childrenCollection,\n goNext,\n goPrevious,\n onClose,\n title,\n ]);\n\n return (\n <WizardContextProvider\n value={{\n activeStep,\n setActiveStep,\n goNext,\n goPrevious,\n close: onClose,\n setChangingStepInProgress,\n }}\n >\n <Dialog ref={ref} open={open} onClose={onClose}>\n {renderActiveStep}\n </Dialog>\n </WizardContextProvider>\n );\n }\n);\n\nWizard.displayName = \"Wizard\";\n"],"file":"Wizard.js"}
package/dist/index.js CHANGED
@@ -12685,12 +12685,19 @@
12685
12685
  setActiveStep(index);
12686
12686
  }, [activeStep, childrenCollection]);
12687
12687
  var goPrevious = React.useCallback(function () {
12688
- var index = [_toConsumableArray(childrenCollection).reverse()].findIndex(function (step, index) {
12689
- var _stepEl$props2;
12688
+ var index = 0;
12689
+
12690
+ for (var i = childrenCollection.length - 1; i >= 0; i--) {
12691
+ var _step$props;
12692
+
12693
+ var step = childrenCollection[i];
12694
+
12695
+ if (!(step !== null && step !== void 0 && (_step$props = step.props) !== null && _step$props !== void 0 && _step$props.skip) && i < activeStep) {
12696
+ index = i;
12697
+ break;
12698
+ }
12699
+ }
12690
12700
 
12691
- var stepEl = step;
12692
- return !(stepEl !== null && stepEl !== void 0 && (_stepEl$props2 = stepEl.props) !== null && _stepEl$props2 !== void 0 && _stepEl$props2.skip) && index < activeStep;
12693
- });
12694
12701
  setActiveStep(index);
12695
12702
  }, [activeStep, childrenCollection]);
12696
12703
  var renderActiveStep = React.useMemo(function () {