powr-sdk-web 5.7.1 → 5.8.0

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.
@@ -7,6 +7,9 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports["default"] = void 0;
8
8
  var _react = _interopRequireWildcard(require("react"));
9
9
  var _firebase = require("../utils/firebase");
10
+ var _phone = require("../utils/phone");
11
+ var _PhoneInput = _interopRequireDefault(require("../components/PhoneInput"));
12
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
10
13
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t5 in e) "default" !== _t5 && {}.hasOwnProperty.call(e, _t5) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t5)) && (i.get || i.set) ? o(f, _t5, i) : f[_t5] = e[_t5]); return f; })(e, t); }
11
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; }
12
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; }
@@ -25,52 +28,63 @@ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" !=
25
28
  function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
26
29
  var PowrVerify = function PowrVerify(_ref) {
27
30
  var onVerified = _ref.onVerified,
31
+ _ref$defaultCountry = _ref.defaultCountry,
32
+ defaultCountry = _ref$defaultCountry === void 0 ? _phone.DEFAULT_COUNTRY : _ref$defaultCountry,
28
33
  _ref$defaultCountryCo = _ref.defaultCountryCode,
29
- defaultCountryCode = _ref$defaultCountryCo === void 0 ? '91' : _ref$defaultCountryCo,
34
+ defaultCountryCode = _ref$defaultCountryCo === void 0 ? _phone.DEFAULT_COUNTRY_CODE : _ref$defaultCountryCo,
35
+ _ref$international = _ref.international,
36
+ international = _ref$international === void 0 ? false : _ref$international,
37
+ _ref$allowedCountries = _ref.allowedCountries,
38
+ allowedCountries = _ref$allowedCountries === void 0 ? null : _ref$allowedCountries,
30
39
  _ref$appName = _ref.appName,
31
40
  appName = _ref$appName === void 0 ? 'App' : _ref$appName,
32
41
  _ref$projectId = _ref.projectId,
33
42
  projectId = _ref$projectId === void 0 ? undefined : _ref$projectId;
34
- var _useState = (0, _react.useState)(''),
43
+ var resolvedCountry = (0, _phone.resolveCountry)(defaultCountry, defaultCountryCode);
44
+ var _useState = (0, _react.useState)(resolvedCountry),
35
45
  _useState2 = _slicedToArray(_useState, 2),
36
- phone = _useState2[0],
37
- setPhone = _useState2[1];
46
+ phoneCountry = _useState2[0],
47
+ setPhoneCountry = _useState2[1];
38
48
  var _useState3 = (0, _react.useState)(''),
39
49
  _useState4 = _slicedToArray(_useState3, 2),
40
- otp = _useState4[0],
41
- setOtp = _useState4[1];
50
+ localNumber = _useState4[0],
51
+ setLocalNumber = _useState4[1];
42
52
  var _useState5 = (0, _react.useState)(false),
43
53
  _useState6 = _slicedToArray(_useState5, 2),
44
- loading = _useState6[0],
45
- setLoading = _useState6[1];
46
- var _useState7 = (0, _react.useState)(false),
54
+ phoneValid = _useState6[0],
55
+ setPhoneValid = _useState6[1];
56
+ var _useState7 = (0, _react.useState)(''),
47
57
  _useState8 = _slicedToArray(_useState7, 2),
48
- otpSent = _useState8[0],
49
- setOtpSent = _useState8[1];
50
- var _useState9 = (0, _react.useState)(null),
58
+ e164 = _useState8[0],
59
+ setE164 = _useState8[1];
60
+ var _useState9 = (0, _react.useState)(''),
51
61
  _useState0 = _slicedToArray(_useState9, 2),
52
- confirmationResult = _useState0[0],
53
- setConfirmationResult = _useState0[1];
54
- var _useState1 = (0, _react.useState)(''),
62
+ otp = _useState0[0],
63
+ setOtp = _useState0[1];
64
+ var _useState1 = (0, _react.useState)(false),
55
65
  _useState10 = _slicedToArray(_useState1, 2),
56
- error = _useState10[0],
57
- setError = _useState10[1];
58
- var _useState11 = (0, _react.useState)(''),
66
+ loading = _useState10[0],
67
+ setLoading = _useState10[1];
68
+ var _useState11 = (0, _react.useState)(false),
59
69
  _useState12 = _slicedToArray(_useState11, 2),
60
- success = _useState12[0],
61
- setSuccess = _useState12[1];
62
- var _useState13 = (0, _react.useState)(0),
70
+ otpSent = _useState12[0],
71
+ setOtpSent = _useState12[1];
72
+ var _useState13 = (0, _react.useState)(null),
63
73
  _useState14 = _slicedToArray(_useState13, 2),
64
- resendTimer = _useState14[0],
65
- setResendTimer = _useState14[1];
66
- var formatPhone = function formatPhone(p) {
67
- var clean = (p || '').replace(/\D/g, '');
68
- if (!clean) return '';
69
- if (!clean.startsWith(defaultCountryCode)) {
70
- clean = defaultCountryCode + clean;
71
- }
72
- return '+' + clean;
73
- };
74
+ confirmationResult = _useState14[0],
75
+ setConfirmationResult = _useState14[1];
76
+ var _useState15 = (0, _react.useState)(''),
77
+ _useState16 = _slicedToArray(_useState15, 2),
78
+ error = _useState16[0],
79
+ setError = _useState16[1];
80
+ var _useState17 = (0, _react.useState)(''),
81
+ _useState18 = _slicedToArray(_useState17, 2),
82
+ success = _useState18[0],
83
+ setSuccess = _useState18[1];
84
+ var _useState19 = (0, _react.useState)(0),
85
+ _useState20 = _slicedToArray(_useState19, 2),
86
+ resendTimer = _useState20[0],
87
+ setResendTimer = _useState20[1];
74
88
  var clearRecaptcha = function clearRecaptcha() {
75
89
  if (window.recaptchaVerifier) {
76
90
  try {
@@ -81,8 +95,18 @@ var PowrVerify = function PowrVerify(_ref) {
81
95
  window.recaptchaVerifier = null;
82
96
  }
83
97
  };
98
+ var handlePhoneChange = function handlePhoneChange(_ref2) {
99
+ var country = _ref2.country,
100
+ local = _ref2.localNumber,
101
+ formatted = _ref2.e164,
102
+ isValid = _ref2.isValid;
103
+ setPhoneCountry(country);
104
+ setLocalNumber(local);
105
+ setE164(formatted);
106
+ setPhoneValid(isValid);
107
+ };
84
108
  var sendOtp = /*#__PURE__*/function () {
85
- var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
109
+ var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
86
110
  var phoneNumber, appVerifier, confirmation, _t, _t2;
87
111
  return _regenerator().w(function (_context) {
88
112
  while (1) switch (_context.p = _context.n) {
@@ -91,8 +115,8 @@ var PowrVerify = function PowrVerify(_ref) {
91
115
  setError('');
92
116
  setSuccess('');
93
117
  _context.p = 1;
94
- phoneNumber = formatPhone(phone);
95
- if (phoneNumber) {
118
+ phoneNumber = e164 || (0, _phone.formatPhoneForSms)(localNumber, phoneCountry);
119
+ if (!(!phoneValid || !phoneNumber)) {
96
120
  _context.n = 2;
97
121
  break;
98
122
  }
@@ -100,7 +124,6 @@ var PowrVerify = function PowrVerify(_ref) {
100
124
  setLoading(false);
101
125
  return _context.a(2);
102
126
  case 2:
103
- // clear existing
104
127
  clearRecaptcha();
105
128
  window.recaptchaVerifier = new _firebase.RecaptchaVerifier(_firebase.auth, 'recaptcha-container-powrbase', {
106
129
  size: 'invisible',
@@ -143,11 +166,11 @@ var PowrVerify = function PowrVerify(_ref) {
143
166
  }, _callee, null, [[3, 5], [1, 8, 9, 10]]);
144
167
  }));
145
168
  return function sendOtp() {
146
- return _ref2.apply(this, arguments);
169
+ return _ref3.apply(this, arguments);
147
170
  };
148
171
  }();
149
172
  var verifyOtp = /*#__PURE__*/function () {
150
- var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
173
+ var _ref4 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
151
174
  var result, token, _t3, _t4;
152
175
  return _regenerator().w(function (_context2) {
153
176
  while (1) switch (_context2.p = _context2.n) {
@@ -189,8 +212,6 @@ var PowrVerify = function PowrVerify(_ref) {
189
212
  clearRecaptcha();
190
213
  setResendTimer(0);
191
214
  if (typeof onVerified === 'function') {
192
- // Pass token and projectId. Keep backward compatibility by
193
- // allowing consumers to accept a single token arg.
194
215
  try {
195
216
  onVerified(token, projectId);
196
217
  } catch (e) {
@@ -216,11 +237,11 @@ var PowrVerify = function PowrVerify(_ref) {
216
237
  }, _callee2, null, [[5, 7], [1, 9, 10, 11]]);
217
238
  }));
218
239
  return function verifyOtp() {
219
- return _ref3.apply(this, arguments);
240
+ return _ref4.apply(this, arguments);
220
241
  };
221
242
  }();
222
243
  (0, _react.useEffect)(function () {
223
- if (resendTimer <= 0) return;
244
+ if (resendTimer <= 0) return undefined;
224
245
  var id = setInterval(function () {
225
246
  setResendTimer(function (t) {
226
247
  if (t <= 1) {
@@ -254,23 +275,19 @@ var PowrVerify = function PowrVerify(_ref) {
254
275
  }
255
276
  }, "Tell us your phone and we'll send a one-time code."), /*#__PURE__*/_react["default"].createElement("label", {
256
277
  style: labelStyle
257
- }, "Phone number"), /*#__PURE__*/_react["default"].createElement("div", {
258
- style: phoneRowStyle
259
- }, /*#__PURE__*/_react["default"].createElement("div", {
260
- style: prefixBox
261
- }, defaultCountryCode), /*#__PURE__*/_react["default"].createElement("input", {
262
- type: "text",
263
- value: phone,
264
- onChange: function onChange(e) {
265
- return setPhone((e.target.value || '').replace(/\D/g, '').slice(0, 10));
266
- },
267
- placeholder: "0000000000",
268
- style: inputFlexStyle,
269
- disabled: otpSent
270
- })), !otpSent && /*#__PURE__*/_react["default"].createElement("button", {
278
+ }, "Phone number"), /*#__PURE__*/_react["default"].createElement(_PhoneInput["default"], {
279
+ value: localNumber,
280
+ country: phoneCountry,
281
+ onChange: handlePhoneChange,
282
+ international: international,
283
+ allowedCountries: allowedCountries,
284
+ defaultCountry: resolvedCountry,
285
+ disabled: otpSent,
286
+ placeholder: international ? 'Phone number' : 'Mobile number'
287
+ }), !otpSent && /*#__PURE__*/_react["default"].createElement("button", {
271
288
  onClick: sendOtp,
272
289
  style: buttonStyle,
273
- disabled: loading || phone.replace(/\D/g, '').length < 10
290
+ disabled: loading || !phoneValid
274
291
  }, loading ? 'Sending...' : 'Send OTP'), otpSent && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("label", {
275
292
  style: _objectSpread(_objectSpread({}, labelStyle), {}, {
276
293
  marginTop: 12
@@ -352,14 +369,6 @@ var phoneRowStyle = {
352
369
  alignItems: 'center',
353
370
  width: '100%'
354
371
  };
355
- var prefixBox = {
356
- background: '#fff7ed',
357
- color: '#7c2d12',
358
- padding: '10px 12px',
359
- borderRadius: 8,
360
- fontWeight: 700,
361
- border: '1px solid #ffedd5'
362
- };
363
372
  var inputFlexStyle = {
364
373
  flex: 1,
365
374
  padding: 10,
@@ -372,14 +381,6 @@ var labelStyle = {
372
381
  fontWeight: 600,
373
382
  marginBottom: 6
374
383
  };
375
- var inputStyle = {
376
- width: '100%',
377
- padding: 10,
378
- borderRadius: 8,
379
- border: '1px solid #e5e7eb',
380
- marginBottom: 12,
381
- boxSizing: 'border-box'
382
- };
383
384
  var buttonStyle = {
384
385
  width: '100%',
385
386
  padding: 12,
@@ -0,0 +1,151 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.PRIORITY_COUNTRIES = exports.DEFAULT_COUNTRY_CODE = exports.DEFAULT_COUNTRY = void 0;
7
+ exports.buildPhoneFromParts = buildPhoneFromParts;
8
+ exports.digitsOnly = digitsOnly;
9
+ exports.formatPhoneForSms = formatPhoneForSms;
10
+ exports.getCountryOptions = getCountryOptions;
11
+ exports.getLocalPhoneNumber = getLocalPhoneNumber;
12
+ exports.getPhoneLookupVariants = getPhoneLookupVariants;
13
+ exports.hasValidPhone = hasValidPhone;
14
+ exports.isValidPhone = isValidPhone;
15
+ exports.normalizePhone = normalizePhone;
16
+ exports.parsePhone = parsePhone;
17
+ exports.resolveCountry = resolveCountry;
18
+ var _libphonenumberJs = require("libphonenumber-js");
19
+ function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
20
+ 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."); }
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 _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
23
+ function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
24
+ 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; }
25
+ var DEFAULT_COUNTRY = exports.DEFAULT_COUNTRY = 'IN';
26
+ /** @deprecated Use DEFAULT_COUNTRY ('IN') or defaultCountry prop */
27
+ var DEFAULT_COUNTRY_CODE = exports.DEFAULT_COUNTRY_CODE = '91';
28
+ var CALLING_CODE_TO_COUNTRY = {
29
+ '91': 'IN',
30
+ '1': 'US',
31
+ '44': 'GB',
32
+ '971': 'AE',
33
+ '65': 'SG',
34
+ '61': 'AU',
35
+ '49': 'DE',
36
+ '33': 'FR',
37
+ '81': 'JP'
38
+ };
39
+ var PRIORITY_COUNTRIES = exports.PRIORITY_COUNTRIES = ['US', 'IN', 'GB', 'CA', 'AU', 'AE', 'SG', 'DE', 'FR', 'NL', 'NZ', 'JP'];
40
+ function resolveCountry(defaultCountry, defaultCountryCode) {
41
+ if (defaultCountry) return defaultCountry;
42
+ if (defaultCountryCode) {
43
+ return CALLING_CODE_TO_COUNTRY[String(defaultCountryCode)] || DEFAULT_COUNTRY;
44
+ }
45
+ return DEFAULT_COUNTRY;
46
+ }
47
+ function digitsOnly(value) {
48
+ return (value || '').replace(/\D/g, '');
49
+ }
50
+ function parsePhone(input) {
51
+ var _parsed, _parsed2, _parsed3;
52
+ var defaultCountry = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : DEFAULT_COUNTRY;
53
+ if (!input || typeof input !== 'string' || input.includes('@')) return null;
54
+ var trimmed = input.trim();
55
+ if (!trimmed) return null;
56
+ var parsed = (0, _libphonenumberJs.parsePhoneNumberFromString)(trimmed);
57
+ if (!((_parsed = parsed) !== null && _parsed !== void 0 && _parsed.isValid())) {
58
+ parsed = (0, _libphonenumberJs.parsePhoneNumberFromString)(trimmed, defaultCountry);
59
+ }
60
+ if (!((_parsed2 = parsed) !== null && _parsed2 !== void 0 && _parsed2.isValid()) && !trimmed.startsWith('+')) {
61
+ parsed = (0, _libphonenumberJs.parsePhoneNumberFromString)("+".concat(digitsOnly(trimmed)));
62
+ }
63
+ return (_parsed3 = parsed) !== null && _parsed3 !== void 0 && _parsed3.isValid() ? parsed : null;
64
+ }
65
+ function normalizePhone(input) {
66
+ var defaultCountry = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : DEFAULT_COUNTRY;
67
+ if (!input || typeof input !== 'string') return '';
68
+ if (input.includes('@')) return input.trim();
69
+ var parsed = parsePhone(input, defaultCountry);
70
+ return parsed ? parsed.format('E.164') : '';
71
+ }
72
+ function isValidPhone(input) {
73
+ var defaultCountry = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : DEFAULT_COUNTRY;
74
+ if (!input || typeof input !== 'string' || input.includes('@')) return false;
75
+ return !!parsePhone(input, defaultCountry);
76
+ }
77
+ function hasValidPhone(phone) {
78
+ var defaultCountry = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : DEFAULT_COUNTRY;
79
+ return isValidPhone(phone, defaultCountry);
80
+ }
81
+ function getLocalPhoneNumber(input) {
82
+ var defaultCountry = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : DEFAULT_COUNTRY;
83
+ var parsed = parsePhone(input, defaultCountry);
84
+ return parsed ? parsed.nationalNumber : digitsOnly(input).slice(-15);
85
+ }
86
+ function formatPhoneForSms(input) {
87
+ var defaultCountry = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : DEFAULT_COUNTRY;
88
+ return normalizePhone(input, defaultCountry);
89
+ }
90
+ function legacyIndiaVariants(input) {
91
+ var digits = digitsOnly(input);
92
+ if (!digits) return [];
93
+ var variants = new Set();
94
+ if (digits.length === 10) {
95
+ variants.add(digits);
96
+ variants.add("91".concat(digits));
97
+ variants.add("+91".concat(digits));
98
+ variants.add("0".concat(digits));
99
+ }
100
+ if (digits.length === 12 && digits.startsWith('91')) {
101
+ var local = digits.slice(2);
102
+ variants.add(local);
103
+ variants.add("+".concat(digits));
104
+ variants.add(digits);
105
+ variants.add("0".concat(local));
106
+ }
107
+ return _toConsumableArray(variants);
108
+ }
109
+ function getPhoneLookupVariants(input) {
110
+ var defaultCountry = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : DEFAULT_COUNTRY;
111
+ if (!input || typeof input !== 'string') return [];
112
+ if (input.includes('@')) return [input.trim()];
113
+ var variants = new Set([input.trim()]);
114
+ var parsed = parsePhone(input, defaultCountry);
115
+ if (parsed) {
116
+ var e164 = parsed.format('E.164');
117
+ variants.add(e164);
118
+ variants.add(e164.replace(/^\+/, ''));
119
+ variants.add(parsed.nationalNumber);
120
+ variants.add("+".concat(parsed.countryCallingCode).concat(parsed.nationalNumber));
121
+ variants.add("".concat(parsed.countryCallingCode).concat(parsed.nationalNumber));
122
+ }
123
+ legacyIndiaVariants(input).forEach(function (v) {
124
+ return variants.add(v);
125
+ });
126
+ return _toConsumableArray(variants).filter(Boolean);
127
+ }
128
+ function getCountryOptions() {
129
+ var allowedCountries = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
130
+ var pool = allowedCountries && allowedCountries.length > 0 ? allowedCountries.filter(function (c) {
131
+ return (0, _libphonenumberJs.getCountries)().includes(c);
132
+ }) : (0, _libphonenumberJs.getCountries)();
133
+ var ordered = [].concat(_toConsumableArray(PRIORITY_COUNTRIES.filter(function (c) {
134
+ return pool.includes(c);
135
+ })), _toConsumableArray(pool.filter(function (c) {
136
+ return !PRIORITY_COUNTRIES.includes(c);
137
+ }).sort()));
138
+ return ordered.map(function (code) {
139
+ return {
140
+ code: code,
141
+ callingCode: (0, _libphonenumberJs.getCountryCallingCode)(code),
142
+ label: "".concat(code, " (+").concat((0, _libphonenumberJs.getCountryCallingCode)(code), ")")
143
+ };
144
+ });
145
+ }
146
+ function buildPhoneFromParts(localNumber) {
147
+ var country = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : DEFAULT_COUNTRY;
148
+ var digits = digitsOnly(localNumber);
149
+ if (!digits) return '';
150
+ return normalizePhone(digits, country);
151
+ }
package/package.json CHANGED
@@ -1,43 +1,44 @@
1
- {
2
- "name": "powr-sdk-web",
3
- "version": "5.7.1",
4
- "main": "dist/index.js",
5
- "scripts": {
6
- "build": "babel src -d dist --copy-files",
7
- "prepublishOnly": "npm run build"
8
- },
9
- "keywords": [
10
- "react",
11
- "component",
12
- "npm",
13
- "file-upload",
14
- "powrbase",
15
- "comments"
16
- ],
17
- "author": "Lawazia Tech",
18
- "license": "MIT",
19
- "repository": {
20
- "type": "git",
21
- "url": "git+https://github.com/lawaziatech/powr-sdk-web.git"
22
- },
23
- "peerDependencies": {
24
- "filepond": "*",
25
- "react": "*",
26
- "react-dom": "*",
27
- "react-toastify": "*"
28
- },
29
- "dependencies": {
30
- "axios": "^1.7.7",
31
- "filepond": "*",
32
- "firebase": "^12.2.1",
33
- "react-filepond": "^7.1.2",
34
- "react-hook-form": "^7.58.0"
35
- },
36
- "devDependencies": {
37
- "@babel/cli": "^7.24.1",
38
- "@babel/core": "^7.24.4",
39
- "@babel/preset-env": "^7.24.4",
40
- "@babel/preset-react": "^7.24.1",
41
- "prop-types": "^15.8.1"
42
- }
43
- }
1
+ {
2
+ "name": "powr-sdk-web",
3
+ "version": "5.8.0",
4
+ "main": "dist/index.js",
5
+ "scripts": {
6
+ "build": "babel src -d dist --copy-files",
7
+ "prepublishOnly": "npm run build"
8
+ },
9
+ "keywords": [
10
+ "react",
11
+ "component",
12
+ "npm",
13
+ "file-upload",
14
+ "powrbase",
15
+ "comments"
16
+ ],
17
+ "author": "Lawazia Tech",
18
+ "license": "MIT",
19
+ "repository": {
20
+ "type": "git",
21
+ "url": "git+https://github.com/lawaziatech/powr-sdk-web.git"
22
+ },
23
+ "peerDependencies": {
24
+ "filepond": "*",
25
+ "react": "*",
26
+ "react-dom": "*",
27
+ "react-toastify": "*"
28
+ },
29
+ "dependencies": {
30
+ "axios": "^1.7.7",
31
+ "filepond": "*",
32
+ "firebase": "^12.2.1",
33
+ "libphonenumber-js": "^1.12.9",
34
+ "react-filepond": "^7.1.2",
35
+ "react-hook-form": "^7.58.0"
36
+ },
37
+ "devDependencies": {
38
+ "@babel/cli": "^7.24.1",
39
+ "@babel/core": "^7.24.4",
40
+ "@babel/preset-env": "^7.24.4",
41
+ "@babel/preset-react": "^7.24.1",
42
+ "prop-types": "^15.8.1"
43
+ }
44
+ }