@stokr/components-library 2.2.2 → 2.2.3

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.
@@ -0,0 +1,138 @@
1
+ "use strict";
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); }
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = exports.PaymentModal = void 0;
8
+ var _react = _interopRequireWildcard(require("react"));
9
+ var _qrcode = _interopRequireDefault(require("qrcode.react"));
10
+ var _moment = _interopRequireDefault(require("moment"));
11
+ var _Modal = require("./Modal");
12
+ var _Text = _interopRequireDefault(require("../Text/Text.styles"));
13
+ var _ComponentWrapper = _interopRequireDefault(require("../ComponentWrapper/ComponentWrapper.styles"));
14
+ var _Grid = require("../Grid/Grid.styles");
15
+ var _CryptoAddress = _interopRequireDefault(require("../CryptoAddress/CryptoAddress"));
16
+ var _Button = _interopRequireDefault(require("../Button/Button.styles"));
17
+ var _formatCurrencyValue = require("../../utils/formatCurrencyValue");
18
+ var _theme = _interopRequireDefault(require("../../styles/theme"));
19
+ var _Icon = _interopRequireWildcard(require("../Icon/Icon.style"));
20
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
21
+ var _excluded = ["data", "user", "isModalOpen", "onModalClose", "isRedemption", "noCTA", "CTAText", "additionalInfoRight", "withTimer", "error", "secondsRemaining"];
22
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
24
+ 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; }
25
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
26
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
27
+ var WarningBox = _styledComponents.default.div.withConfig({
28
+ displayName: "PaymentModal__WarningBox",
29
+ componentId: "sc-17n3hz3-0"
30
+ })(["background:", ";border-radius:4px;padding:10px;display:flex;flex-direction:column;align-items:center;position:relative;z-index:9;"], _theme.default.cWarning);
31
+ var BlurBox = _styledComponents.default.div.withConfig({
32
+ displayName: "PaymentModal__BlurBox",
33
+ componentId: "sc-17n3hz3-1"
34
+ })(["filter:blur(4px);position:absolute;top:0px;left:50%;transform:translate(-50%,0px);"]);
35
+ var PaymentModal = function PaymentModal(_ref) {
36
+ var _ref$data = _ref.data,
37
+ data = _ref$data === void 0 ? {} : _ref$data,
38
+ user = _ref.user,
39
+ isModalOpen = _ref.isModalOpen,
40
+ _ref$onModalClose = _ref.onModalClose,
41
+ onModalClose = _ref$onModalClose === void 0 ? function () {} : _ref$onModalClose,
42
+ isRedemption = _ref.isRedemption,
43
+ _ref$noCTA = _ref.noCTA,
44
+ noCTA = _ref$noCTA === void 0 ? false : _ref$noCTA,
45
+ _ref$CTAText = _ref.CTAText,
46
+ CTAText = _ref$CTAText === void 0 ? 'Done' : _ref$CTAText,
47
+ additionalInfoRight = _ref.additionalInfoRight,
48
+ _ref$withTimer = _ref.withTimer,
49
+ withTimer = _ref$withTimer === void 0 ? false : _ref$withTimer,
50
+ error = _ref.error,
51
+ secondsRemaining = _ref.secondsRemaining,
52
+ props = _objectWithoutProperties(_ref, _excluded);
53
+ var projectData = data.projectData,
54
+ currencyAmount = data.currencyAmount,
55
+ tokenAmount = data.tokenAmount,
56
+ tokenPrice = data.tokenPrice,
57
+ tokenSymbolToSend = data.tokenSymbolToSend,
58
+ tokenSymbol = data.tokenSymbol,
59
+ createdAt = data.createdAt,
60
+ GAID = data.GAID,
61
+ currencyType = data.currencyType;
62
+ var paymentlink = "liquidnetwork:".concat(projectData === null || projectData === void 0 ? void 0 : projectData.companyWallet, "?amount=").concat(tokenAmount, "&assetid=").concat(projectData === null || projectData === void 0 ? void 0 : projectData.secondaryAssetId);
63
+ var isKYCVerified = (user === null || user === void 0 ? void 0 : user.kyc_status) === 'Accepted';
64
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_Modal.Modal, {
65
+ isOpen: isModalOpen,
66
+ onClose: onModalClose
67
+ }, /*#__PURE__*/_react.default.createElement(_Modal.ModalInner, null, /*#__PURE__*/_react.default.createElement(_Text.default, null, /*#__PURE__*/_react.default.createElement("h3", null, "SEND YOUR ", tokenSymbolToSend)), /*#__PURE__*/_react.default.createElement(_ComponentWrapper.default, {
68
+ noPaddingHorizontal: true
69
+ }, /*#__PURE__*/_react.default.createElement(_Grid.Row, null, /*#__PURE__*/_react.default.createElement(_Grid.Column, {
70
+ part: 8
71
+ }, /*#__PURE__*/_react.default.createElement(_Text.default, null, /*#__PURE__*/_react.default.createElement("p", null, "Request date:", ' ', /*#__PURE__*/_react.default.createElement("strong", null, (0, _moment.default)(createdAt).format('DD MMM YYYY - hh:mm'))), /*#__PURE__*/_react.default.createElement("p", null, "Your securities: ", /*#__PURE__*/_react.default.createElement("strong", null, " ", tokenSymbol)), /*#__PURE__*/_react.default.createElement("p", null, "Your liquid address:", /*#__PURE__*/_react.default.createElement(_CryptoAddress.default, {
72
+ noHead: true,
73
+ data: {
74
+ value: GAID,
75
+ tooltip: true,
76
+ shortAddress: true
77
+ },
78
+ fontSize: 16
79
+ })), /*#__PURE__*/_react.default.createElement("p", null, "Your number of securities: ", /*#__PURE__*/_react.default.createElement("strong", null, tokenAmount)), /*#__PURE__*/_react.default.createElement("p", null, isRedemption ? 'Redemption currency' : 'Currency', ":", /*#__PURE__*/_react.default.createElement("strong", null, " ", (0, _formatCurrencyValue.getCurrencySymbol)(currencyType)))), !noCTA && /*#__PURE__*/_react.default.createElement(_ComponentWrapper.default, {
80
+ noPaddingHorizontal: true
81
+ }, /*#__PURE__*/_react.default.createElement(_Button.default, {
82
+ onClick: onModalClose
83
+ }, CTAText)), withTimer && secondsRemaining > 0 && /*#__PURE__*/_react.default.createElement(_ComponentWrapper.default, {
84
+ noPaddingHorizontal: true
85
+ }, /*#__PURE__*/_react.default.createElement(_Text.default, null, /*#__PURE__*/_react.default.createElement("p", {
86
+ style: {
87
+ color: _theme.default.cWarning
88
+ }
89
+ }, _moment.default.utc(secondsRemaining * 1000).format('mm:ss'), ' ', "Waiting for payment...")))), /*#__PURE__*/_react.default.createElement(_Grid.Column, {
90
+ part: 8
91
+ }, error ? error : /*#__PURE__*/_react.default.createElement(_Text.default, null, /*#__PURE__*/_react.default.createElement("p", null, "Send your ", tokenSymbolToSend, " to the treasury liquid address below."), /*#__PURE__*/_react.default.createElement("p", {
92
+ style: {
93
+ color: _theme.default.cWarning
94
+ }
95
+ }, "Make sure your liquid address has enough LBTC to cover the transaction fees."), isKYCVerified ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_CryptoAddress.default
96
+ //noHead
97
+ , {
98
+ title: 'Treasury liquid address:',
99
+ data: {
100
+ value: projectData === null || projectData === void 0 ? void 0 : projectData.companyWallet,
101
+ tooltip: true,
102
+ shortAddress: true
103
+ },
104
+ fontSize: 16
105
+ }), /*#__PURE__*/_react.default.createElement(_ComponentWrapper.default, {
106
+ noPaddingHorizontal: true,
107
+ noPaddingBottom: true
108
+ }, /*#__PURE__*/_react.default.createElement(_qrcode.default, {
109
+ value: paymentlink,
110
+ size: 150
111
+ }))) : /*#__PURE__*/_react.default.createElement("div", {
112
+ style: {
113
+ position: 'relative'
114
+ }
115
+ }, /*#__PURE__*/_react.default.createElement(WarningBox, null, /*#__PURE__*/_react.default.createElement(_Icon.default, {
116
+ icon: _Icon.iconsMap.warning,
117
+ size: 32,
118
+ color: 'white'
119
+ }), /*#__PURE__*/_react.default.createElement("p", {
120
+ style: {
121
+ color: _theme.default.cWhite
122
+ }
123
+ }, "Your KYC needs an update, please contact", ' ', /*#__PURE__*/_react.default.createElement("a", {
124
+ href: "mailto:compliance@stokr.io",
125
+ style: {
126
+ color: 'inherit'
127
+ }
128
+ }, "compliance@stokr.io"))), /*#__PURE__*/_react.default.createElement(BlurBox, null, /*#__PURE__*/_react.default.createElement(_ComponentWrapper.default, {
129
+ noPaddingHorizontal: true,
130
+ noPaddingBottom: true
131
+ }, /*#__PURE__*/_react.default.createElement(_qrcode.default, {
132
+ value: paymentlink,
133
+ size: 150
134
+ })))), additionalInfoRight && additionalInfoRight)))))));
135
+ };
136
+ exports.PaymentModal = PaymentModal;
137
+ var _default = PaymentModal;
138
+ exports.default = _default;
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = exports.PaymentModalOpen = void 0;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _PaymentModal = require("./PaymentModal");
9
+ var _ComponentWrapper = require("../ComponentWrapper/ComponentWrapper.styles");
10
+ var _global = _interopRequireDefault(require("../../styles/global"));
11
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
+ var _default = {
13
+ title: 'Components Library/Modal',
14
+ component: _PaymentModal.PaymentModal,
15
+ argTypes: {
16
+ data: {
17
+ type: 'object',
18
+ defaultValue: false
19
+ },
20
+ isModalOpen: {
21
+ type: 'boolean',
22
+ defaultValue: false
23
+ },
24
+ onClose: {
25
+ type: 'function',
26
+ action: 'onClose'
27
+ }
28
+ }
29
+ };
30
+ exports.default = _default;
31
+ var Template = function Template(args) {
32
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_global.default, null), /*#__PURE__*/_react.default.createElement(_ComponentWrapper.ComponentWrapper, null, /*#__PURE__*/_react.default.createElement(_PaymentModal.PaymentModal, args)));
33
+ };
34
+ var PaymentModalOpen = Template.bind({});
35
+ exports.PaymentModalOpen = PaymentModalOpen;
36
+ PaymentModalOpen.args = {
37
+ //children: 'I am the Child Element',
38
+ isModalOpen: true,
39
+ data: {
40
+ projectData: {
41
+ companyWallet: 'something'
42
+ },
43
+ currencyAmount: 32,
44
+ tokenAmount: '34',
45
+ tokenPrice: '345',
46
+ tokenSymbol: '$',
47
+ createdAt: '20.6.2024',
48
+ GAID: 'some gaid',
49
+ currencyType: 'lbtc'
50
+ }
51
+ };
52
+
53
+ // export const PaymentModalFullscreen = Template.bind({})
54
+ // ModalFullscreen.args = {
55
+ // //children: 'I am the Child Element and I am Fullscreen',
56
+ // isOpen: true,
57
+ // //fullscreen: true,
58
+
59
+ // }
package/dist/index.js CHANGED
@@ -1169,6 +1169,17 @@ Object.keys(_analytics).forEach(function (key) {
1169
1169
  }
1170
1170
  });
1171
1171
  });
1172
+ var _formatCurrencyValue = require("./utils/formatCurrencyValue");
1173
+ Object.keys(_formatCurrencyValue).forEach(function (key) {
1174
+ if (key === "default" || key === "__esModule") return;
1175
+ if (key in exports && exports[key] === _formatCurrencyValue[key]) return;
1176
+ Object.defineProperty(exports, key, {
1177
+ enumerable: true,
1178
+ get: function get() {
1179
+ return _formatCurrencyValue[key];
1180
+ }
1181
+ });
1182
+ });
1172
1183
  var _FA = require("./components/2FA");
1173
1184
  Object.keys(_FA).forEach(function (key) {
1174
1185
  if (key === "default" || key === "__esModule") return;
@@ -60,10 +60,14 @@ var useCooldown = function useCooldown(cooldownInSeconds) {
60
60
  _useState2 = _slicedToArray(_useState, 2),
61
61
  isDisabled = _useState2[0],
62
62
  setIsDisabled = _useState2[1];
63
- var _useState3 = (0, _react.useState)(0),
63
+ var _useState3 = (0, _react.useState)(false),
64
64
  _useState4 = _slicedToArray(_useState3, 2),
65
- secondsRemaining = _useState4[0],
66
- setSecondsRemaining = _useState4[1];
65
+ hasTimerFinished = _useState4[0],
66
+ sethasTimerFinished = _useState4[1];
67
+ var _useState5 = (0, _react.useState)(0),
68
+ _useState6 = _slicedToArray(_useState5, 2),
69
+ secondsRemaining = _useState6[0],
70
+ setSecondsRemaining = _useState6[1];
67
71
  var lastCalled = (0, _react.useRef)(null);
68
72
  var startCooldown = function startCooldown(actionCallback) {
69
73
  if (!isDisabled) {
@@ -80,6 +84,7 @@ var useCooldown = function useCooldown(cooldownInSeconds) {
80
84
  setSecondsRemaining(cooldownInSeconds - secondsPassed);
81
85
  if (secondsPassed >= cooldownInSeconds) {
82
86
  setIsDisabled(false);
87
+ sethasTimerFinished(true);
83
88
  }
84
89
  }, [cooldownInSeconds]);
85
90
  (0, _react.useEffect)(function () {
@@ -95,7 +100,8 @@ var useCooldown = function useCooldown(cooldownInSeconds) {
95
100
  return {
96
101
  isDisabled: isDisabled,
97
102
  secondsRemaining: secondsRemaining,
98
- startCooldown: startCooldown
103
+ startCooldown: startCooldown,
104
+ hasTimerFinished: hasTimerFinished
99
105
  };
100
106
  };
101
107
  exports.useCooldown = useCooldown;
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getCurrencySymbol = exports.formatCurrencyValue = void 0;
7
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
8
+ 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."); }
9
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
10
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
11
+ 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; } }
12
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
13
+ var formatCurrencyValue = function formatCurrencyValue(currency, value) {
14
+ var tokenDecimals = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 2;
15
+ var _ref = {
16
+ tether: ['USDT', 2],
17
+ gemini: ['GUSD', 2],
18
+ ether: ['ETH', 4],
19
+ artid: ['ARTID', 2],
20
+ bitcoin: ['BTC', 6],
21
+ lbtc: ['LBTC', 6],
22
+ 'lusdt-bfx': ['USDT', 2],
23
+ 'lbtc-bfx': ['BTC', 6],
24
+ 'btc-bfx': ['BTC', 6],
25
+ euro: ['EUR', 2],
26
+ lusdt: ['USDT', 2],
27
+ 'bitcoin-private': ['EUR', 2],
28
+ 'lbtc-private': ['BTC', 6]
29
+ }[currency] || [currency, tokenDecimals],
30
+ _ref2 = _slicedToArray(_ref, 2),
31
+ symbol = _ref2[0],
32
+ decimals = _ref2[1];
33
+ return "".concat(symbol, " ").concat(parseFloat(Math.abs(value)).toFixed(decimals));
34
+ };
35
+ exports.formatCurrencyValue = formatCurrencyValue;
36
+ var getCurrencySymbol = function getCurrencySymbol(currencySelected) {
37
+ return {
38
+ euro: '€',
39
+ ether: 'ETH',
40
+ tether: 'USDT',
41
+ bitcoin: 'BTC',
42
+ lbtc: 'LBTC',
43
+ lusdt: 'USDT',
44
+ 'lusdt-bfx': 'USDT',
45
+ 'lbtc-bfx': 'LBTC',
46
+ 'btc-bfx': 'BTC'
47
+ }[currencySelected] || currencySelected;
48
+ };
49
+ exports.getCurrencySymbol = getCurrencySymbol;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stokr/components-library",
3
- "version": "2.2.2",
3
+ "version": "2.2.3",
4
4
  "description": "STOKR - Components Library",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",
@@ -47,7 +47,9 @@
47
47
  "http-server": "^14.1.1",
48
48
  "js-cookie": "^3.0.5",
49
49
  "mobile-detect": "^1.4.5",
50
+ "moment": "^2.30.1",
50
51
  "prop-types": "^15.8.1",
52
+ "qrcode.react": "^3.1.0",
51
53
  "react": "^18.2.0",
52
54
  "react-app-rewired": "^2.2.1",
53
55
  "react-collapse": "^5.1.1",