ywana-core8 0.0.654 → 0.0.656

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/dist/index.umd.js CHANGED
@@ -9619,40 +9619,48 @@
9619
9619
  };
9620
9620
 
9621
9621
  var Wizard = function Wizard(props) {
9622
- var _props$steps = props.steps,
9623
- steps = _props$steps === void 0 ? [] : _props$steps,
9624
- _props$init = props.init,
9622
+ var finish = function finish() {
9623
+ try {
9624
+ return Promise.resolve(stepRef.current.onNext(function () {
9625
+ if (onClose) onClose();
9626
+ })).then(function () {});
9627
+ } catch (e) {
9628
+ return Promise.reject(e);
9629
+ }
9630
+ };
9631
+
9632
+ var next = function next() {
9633
+ try {
9634
+ return Promise.resolve(stepRef.current.onNext(function () {
9635
+ setCurrent(current + 1);
9636
+ })).then(function () {});
9637
+ } catch (e) {
9638
+ return Promise.reject(e);
9639
+ }
9640
+ };
9641
+
9642
+ var _props$init = props.init,
9625
9643
  init = _props$init === void 0 ? 0 : _props$init,
9626
- onClose = props.onClose;
9644
+ onClose = props.onClose,
9645
+ children = props.children;
9627
9646
 
9628
9647
  var _useState = React.useState(init),
9629
9648
  _useState$ = _useState[0],
9630
9649
  current = _useState$ === void 0 ? 0 : _useState$,
9631
9650
  setCurrent = _useState[1];
9632
9651
 
9652
+ var steps = React__default["default"].Children.toArray(children);
9653
+ var stepRef = React.useRef();
9654
+
9633
9655
  function prev() {
9634
9656
  if (current > 0) setCurrent(current - 1);
9635
9657
  }
9636
9658
 
9637
- function next() {
9638
- var step = steps[current];
9639
-
9640
- if (step.onComplete) {
9641
- step.onComplete(function () {
9642
- setCurrent(current + 1);
9643
- });
9644
- } else {
9645
- setCurrent(current + 1);
9646
- }
9647
- }
9648
-
9649
- function finish() {
9650
- var step = steps[current];
9651
- if (step.onComplete) step.onComplete(function () {
9652
- if (onClose) onClose();
9659
+ var currentStep = React.useMemo(function () {
9660
+ return React__default["default"].cloneElement(steps[current], {
9661
+ ref: stepRef
9653
9662
  });
9654
- }
9655
-
9663
+ }, [current]);
9656
9664
  return /*#__PURE__*/React__default["default"].createElement("div", {
9657
9665
  className: "wizard"
9658
9666
  }, /*#__PURE__*/React__default["default"].createElement("div", {
@@ -9671,10 +9679,10 @@
9671
9679
  icon: "play_arrow"
9672
9680
  })), /*#__PURE__*/React__default["default"].createElement("div", {
9673
9681
  className: "wizard-step-label"
9674
- }, step.label));
9682
+ }, step.props.label));
9675
9683
  })), /*#__PURE__*/React__default["default"].createElement("div", {
9676
9684
  className: "wizard-content"
9677
- }, steps[current].content), /*#__PURE__*/React__default["default"].createElement("div", {
9685
+ }, currentStep), /*#__PURE__*/React__default["default"].createElement("div", {
9678
9686
  className: "wizard-actions"
9679
9687
  }, /*#__PURE__*/React__default["default"].createElement(Button, {
9680
9688
  label: "Anterior",
@@ -9682,10 +9690,11 @@
9682
9690
  action: prev
9683
9691
  }), current < steps.length - 1 ? /*#__PURE__*/React__default["default"].createElement(Button, {
9684
9692
  label: "Siguiente",
9685
- disabled: current === steps.length - 1,
9693
+ disabled: stepRef.current.isValid(),
9686
9694
  action: next
9687
9695
  }) : /*#__PURE__*/React__default["default"].createElement(Button, {
9688
9696
  label: "Finalizar",
9697
+ disabled: stepRef.current.isValid(),
9689
9698
  action: finish,
9690
9699
  raised: true
9691
9700
  })));