tabler-react-2 0.1.28 → 0.1.30

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.
@@ -4,7 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  var _exportNames = {
7
- Modal: true
7
+ Modal: true,
8
+ useModal: true
8
9
  };
9
10
  Object.defineProperty(exports, "Modal", {
10
11
  enumerable: true,
@@ -12,6 +13,12 @@ Object.defineProperty(exports, "Modal", {
12
13
  return _modal.Modal;
13
14
  }
14
15
  });
16
+ Object.defineProperty(exports, "useModal", {
17
+ enumerable: true,
18
+ get: function get() {
19
+ return _modal.useModal;
20
+ }
21
+ });
15
22
  var _modal = require("./modal");
16
23
  var _confirm = require("./confirm");
17
24
  Object.keys(_confirm).forEach(function (key) {
@@ -4,13 +4,24 @@ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" ==
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.Modal = void 0;
7
+ exports.useModal = exports.Modal = void 0;
8
8
  var _react = _interopRequireWildcard(require("react"));
9
9
  var _propTypes = _interopRequireDefault(require("prop-types"));
10
10
  var _button = require("../button");
11
11
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
12
12
  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); }
13
13
  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 && {}.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; }
14
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
15
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
16
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
17
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
18
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
19
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
20
+ 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."); }
21
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
22
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
23
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
24
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
14
25
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
15
26
  var Modal = exports.Modal = function Modal(_ref) {
16
27
  var open = _ref.open,
@@ -91,4 +102,64 @@ Modal.propTypes = {
91
102
  })),
92
103
  children: _propTypes["default"].node.isRequired,
93
104
  modalId: _propTypes["default"].string.isRequired
105
+ };
106
+ var useModal = exports.useModal = function useModal(options) {
107
+ var _modalState$buttons;
108
+ var _useState = (0, _react.useState)({
109
+ open: false,
110
+ resolve: null,
111
+ title: options === null || options === void 0 ? void 0 : options.title,
112
+ text: options === null || options === void 0 ? void 0 : options.text,
113
+ buttons: options === null || options === void 0 ? void 0 : options.buttons
114
+ }),
115
+ _useState2 = _slicedToArray(_useState, 2),
116
+ modalState = _useState2[0],
117
+ setModalState = _useState2[1];
118
+ var modal = (0, _react.useCallback)(function () {
119
+ var newOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
120
+ return new Promise(function (resolve) {
121
+ setModalState(function (prevState) {
122
+ return _objectSpread(_objectSpread({}, prevState), {}, {
123
+ open: true,
124
+ resolve: resolve,
125
+ // Overwrite title and other options if provided
126
+ title: newOptions.title || prevState.title,
127
+ text: newOptions.text || prevState.text,
128
+ buttons: newOptions.buttons || prevState.buttons
129
+ });
130
+ });
131
+ });
132
+ }, []);
133
+ var handleDecision = function handleDecision(decision) {
134
+ if (modalState.resolve) {
135
+ modalState.resolve(decision);
136
+ setModalState(function (prevState) {
137
+ return _objectSpread(_objectSpread({}, prevState), {}, {
138
+ open: false,
139
+ resolve: null
140
+ });
141
+ });
142
+ }
143
+ };
144
+ var ModalElement = /*#__PURE__*/_react["default"].createElement(Modal, {
145
+ open: modalState.open,
146
+ onClose: function onClose() {
147
+ return handleDecision(false);
148
+ },
149
+ title: modalState.title // Use dynamic title
150
+ ,
151
+ buttons: (_modalState$buttons = modalState.buttons) === null || _modalState$buttons === void 0 ? void 0 : _modalState$buttons.map(function (button) {
152
+ return {
153
+ text: button.text,
154
+ variant: button.variant,
155
+ onClick: function onClick() {
156
+ return handleDecision(button.value);
157
+ } // Fix onClick behavior
158
+ };
159
+ })
160
+ }, modalState.text);
161
+ return {
162
+ modal: modal,
163
+ ModalElement: ModalElement
164
+ };
94
165
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tabler-react-2",
3
- "version": "0.1.28",
3
+ "version": "0.1.30",
4
4
  "description": "A react implementation of Tabler ui",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {