use-frontbacked 5.1.4 → 5.1.6

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.
Files changed (101) hide show
  1. package/dist/cjs/index.js +396 -200
  2. package/dist/cjs/index.js.map +1 -1
  3. package/dist/cjs/types/components/DownloadType/index.d.ts +12 -12
  4. package/dist/cjs/types/components/Firebase/AccessTokenDoor.d.ts +12 -12
  5. package/dist/cjs/types/components/Firebase/AuthView.d.ts +15 -15
  6. package/dist/cjs/types/components/Firebase/SignInView.d.ts +11 -11
  7. package/dist/cjs/types/components/Firebase/SignUpView.d.ts +10 -10
  8. package/dist/cjs/types/components/Firebase/data.type.d.ts +23 -23
  9. package/dist/cjs/types/components/Firebase/index.d.ts +14 -14
  10. package/dist/cjs/types/components/FrontbackedProvider/index.d.ts +55 -55
  11. package/dist/cjs/types/components/hooks/useReferralId.d.ts +5 -5
  12. package/dist/cjs/types/components/hooks/useSdkConfig.d.ts +10 -10
  13. package/dist/cjs/types/components/hooks/useTools/index.d.ts +14 -14
  14. package/dist/cjs/types/components/hooks/useTools/types.d.ts +62 -62
  15. package/dist/cjs/types/components/hooks/useTools/utils.d.ts +23 -23
  16. package/dist/cjs/types/components/index.d.ts +2 -2
  17. package/dist/cjs/types/components/types.d.ts +214 -214
  18. package/dist/cjs/types/components/widgets/AppButton.d.ts +17 -17
  19. package/dist/cjs/types/components/widgets/CopyView.d.ts +24 -24
  20. package/dist/cjs/types/components/widgets/DrawerPop/index.d.ts +25 -25
  21. package/dist/cjs/types/components/widgets/InfoLabel.d.ts +11 -11
  22. package/dist/cjs/types/components/widgets/InputBox/index.d.ts +94 -94
  23. package/dist/cjs/types/components/widgets/InputBox/utils.d.ts +1 -1
  24. package/dist/cjs/types/components/widgets/Link.d.ts +9 -9
  25. package/dist/cjs/types/components/widgets/Loading.d.ts +27 -27
  26. package/dist/cjs/types/components/widgets/ModalPop/index.d.ts +26 -26
  27. package/dist/cjs/types/components/widgets/PleaseWaitForX.d.ts +3 -3
  28. package/dist/cjs/types/index.d.ts +1 -1
  29. package/dist/cjs/types/theme.d.ts +3 -3
  30. package/dist/cjs/types/theme.type.d.ts +19 -19
  31. package/dist/cjs/types/utils/CustomError.d.ts +5 -5
  32. package/dist/cjs/types/utils/base64Images.d.ts +4 -4
  33. package/dist/cjs/types/utils/c.d.ts +33 -33
  34. package/dist/cjs/types/utils/f.d.ts +23 -23
  35. package/dist/components/DownloadType/index.d.ts +12 -12
  36. package/dist/components/Firebase/AccessTokenDoor.d.ts +12 -12
  37. package/dist/components/Firebase/AuthView.d.ts +15 -15
  38. package/dist/components/Firebase/SignInView.d.ts +11 -11
  39. package/dist/components/Firebase/SignUpView.d.ts +10 -10
  40. package/dist/components/Firebase/data.type.d.ts +23 -23
  41. package/dist/components/Firebase/index.d.ts +14 -14
  42. package/dist/components/FrontbackedProvider/index.d.ts +55 -55
  43. package/dist/components/hooks/useReferralId.d.ts +5 -5
  44. package/dist/components/hooks/useSdkConfig.d.ts +10 -10
  45. package/dist/components/hooks/useTools/index.d.ts +14 -14
  46. package/dist/components/hooks/useTools/types.d.ts +62 -62
  47. package/dist/components/hooks/useTools/utils.d.ts +23 -23
  48. package/dist/components/index.d.ts +2 -2
  49. package/dist/components/types.d.ts +214 -214
  50. package/dist/components/widgets/AppButton.d.ts +17 -17
  51. package/dist/components/widgets/CopyView.d.ts +24 -24
  52. package/dist/components/widgets/DrawerPop/index.d.ts +25 -25
  53. package/dist/components/widgets/InfoLabel.d.ts +11 -11
  54. package/dist/components/widgets/InputBox/index.d.ts +94 -94
  55. package/dist/components/widgets/InputBox/utils.d.ts +1 -1
  56. package/dist/components/widgets/Link.d.ts +9 -9
  57. package/dist/components/widgets/Loading.d.ts +27 -27
  58. package/dist/components/widgets/ModalPop/index.d.ts +26 -26
  59. package/dist/components/widgets/PleaseWaitForX.d.ts +3 -3
  60. package/dist/esm/index.es.js +396 -200
  61. package/dist/esm/index.es.js.map +1 -1
  62. package/dist/esm/types/components/DownloadType/index.d.ts +12 -12
  63. package/dist/esm/types/components/Firebase/AccessTokenDoor.d.ts +12 -12
  64. package/dist/esm/types/components/Firebase/AuthView.d.ts +15 -15
  65. package/dist/esm/types/components/Firebase/SignInView.d.ts +11 -11
  66. package/dist/esm/types/components/Firebase/SignUpView.d.ts +10 -10
  67. package/dist/esm/types/components/Firebase/data.type.d.ts +23 -23
  68. package/dist/esm/types/components/Firebase/index.d.ts +14 -14
  69. package/dist/esm/types/components/FrontbackedProvider/index.d.ts +55 -55
  70. package/dist/esm/types/components/hooks/useReferralId.d.ts +5 -5
  71. package/dist/esm/types/components/hooks/useSdkConfig.d.ts +10 -10
  72. package/dist/esm/types/components/hooks/useTools/index.d.ts +14 -14
  73. package/dist/esm/types/components/hooks/useTools/types.d.ts +62 -62
  74. package/dist/esm/types/components/hooks/useTools/utils.d.ts +23 -23
  75. package/dist/esm/types/components/index.d.ts +2 -2
  76. package/dist/esm/types/components/types.d.ts +214 -214
  77. package/dist/esm/types/components/widgets/AppButton.d.ts +17 -17
  78. package/dist/esm/types/components/widgets/CopyView.d.ts +24 -24
  79. package/dist/esm/types/components/widgets/DrawerPop/index.d.ts +25 -25
  80. package/dist/esm/types/components/widgets/InfoLabel.d.ts +11 -11
  81. package/dist/esm/types/components/widgets/InputBox/index.d.ts +94 -94
  82. package/dist/esm/types/components/widgets/InputBox/utils.d.ts +1 -1
  83. package/dist/esm/types/components/widgets/Link.d.ts +9 -9
  84. package/dist/esm/types/components/widgets/Loading.d.ts +27 -27
  85. package/dist/esm/types/components/widgets/ModalPop/index.d.ts +26 -26
  86. package/dist/esm/types/components/widgets/PleaseWaitForX.d.ts +3 -3
  87. package/dist/esm/types/index.d.ts +1 -1
  88. package/dist/esm/types/theme.d.ts +3 -3
  89. package/dist/esm/types/theme.type.d.ts +19 -19
  90. package/dist/esm/types/utils/CustomError.d.ts +5 -5
  91. package/dist/esm/types/utils/base64Images.d.ts +4 -4
  92. package/dist/esm/types/utils/c.d.ts +33 -33
  93. package/dist/esm/types/utils/f.d.ts +23 -23
  94. package/dist/index.d.ts +1 -1
  95. package/dist/theme.d.ts +3 -3
  96. package/dist/theme.type.d.ts +19 -19
  97. package/dist/utils/CustomError.d.ts +5 -5
  98. package/dist/utils/base64Images.d.ts +4 -4
  99. package/dist/utils/c.d.ts +33 -33
  100. package/dist/utils/f.d.ts +23 -23
  101. package/package.json +83 -83
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../node_modules/tslib/tslib.es6.mjs","../../src/theme.ts","../../src/utils/base64Images.ts","../../src/utils/c.ts","../../src/utils/CustomError.ts","../../src/utils/f.ts","../../src/components/widgets/DrawerPop/index.tsx","../../src/components/widgets/AppButton.tsx","../../src/components/widgets/InfoLabel.tsx","../../src/components/widgets/InputBox/utils.ts","../../src/components/widgets/InputBox/index.tsx","../../src/components/widgets/Link.tsx","../../src/components/Firebase/index.ts","../../src/components/Firebase/SignInView.tsx","../../src/components/Firebase/SignUpView.tsx","../../src/components/Firebase/AuthView.tsx","../../src/components/widgets/ModalPop/index.tsx","../../src/components/Firebase/AccessTokenDoor.tsx","../../src/components/hooks/useSdkConfig.ts","../../src/components/types.ts","../../src/components/widgets/Loading.tsx","../../src/components/widgets/PleaseWaitForX.tsx","../../src/components/DownloadType/index.tsx","../../src/components/hooks/useTools/utils.ts","../../src/components/hooks/useTools/index.ts","../../src/components/hooks/useReferralId.ts","../../src/components/FrontbackedProvider/index.tsx"],"sourcesContent":["/******************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\n/* global Reflect, Promise, SuppressedError, Symbol */\n\nvar extendStatics = function(d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n};\n\nexport function __extends(d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n}\n\nexport var __assign = function() {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n }\n return __assign.apply(this, arguments);\n}\n\nexport function __rest(s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n}\n\nexport function __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\n\nexport function __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n}\n\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for (var i = decorators.length - 1; i >= 0; i--) {\n var context = {};\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\n if (kind === \"accessor\") {\n if (result === void 0) continue;\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n }\n else if (_ = accept(result)) {\n if (kind === \"field\") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n};\n\nexport function __runInitializers(thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for (var i = 0; i < initializers.length; i++) {\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n }\n return useValue ? value : void 0;\n};\n\nexport function __propKey(x) {\n return typeof x === \"symbol\" ? x : \"\".concat(x);\n};\n\nexport function __setFunctionName(f, name, prefix) {\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\n};\n\nexport function __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\n}\n\nexport function __awaiter(thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n}\n\nexport function __generator(thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n}\n\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\n\nexport function __exportStar(m, o) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\n}\n\nexport function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n}\n\nexport function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n}\n\n/** @deprecated */\nexport function __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n}\n\n/** @deprecated */\nexport function __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n}\n\nexport function __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\n\nexport function __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n}\n\nexport function __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n}\n\nexport function __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\n}\n\nexport function __asyncValues(o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n}\n\nexport function __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n};\n\nvar __setModuleDefault = Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n};\n\nexport function __importStar(mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n}\n\nexport function __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n}\n\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n}\n\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n}\n\nexport function __classPrivateFieldIn(state, receiver) {\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\n}\n\nexport function __addDisposableResource(env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\n var dispose;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\n dispose = value[Symbol.dispose];\n }\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\n env.stack.push({ value: value, dispose: dispose, async: async });\n }\n else if (async) {\n env.stack.push({ async: true });\n }\n return value;\n}\n\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\n\nexport function __disposeResources(env) {\n function fail(e) {\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\n env.hasError = true;\n }\n function next() {\n while (env.stack.length) {\n var rec = env.stack.pop();\n try {\n var result = rec.dispose && rec.dispose.call(rec.value);\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\n }\n catch (e) {\n fail(e);\n }\n }\n if (env.hasError) throw env.error;\n }\n return next();\n}\n\nexport default {\n __extends,\n __assign,\n __rest,\n __decorate,\n __param,\n __metadata,\n __awaiter,\n __generator,\n __createBinding,\n __exportStar,\n __values,\n __read,\n __spread,\n __spreadArrays,\n __spreadArray,\n __await,\n __asyncGenerator,\n __asyncDelegator,\n __asyncValues,\n __makeTemplateObject,\n __importStar,\n __importDefault,\n __classPrivateFieldGet,\n __classPrivateFieldSet,\n __classPrivateFieldIn,\n __addDisposableResource,\n __disposeResources,\n};\n","export var theme = {\r\n navbarShadow: {\r\n light: \"0px 5px 21px -5px #CDD1E1\",\r\n dark: \"0px 5px 21px -5px #0D1121\"\r\n },\r\n overlayBg: {\r\n light: \"rgba(0, 0, 0, 0.5)\",\r\n dark: \"rgba(35, 35, 55, 0.5)\"\r\n },\r\n selectCoinBg: {\r\n light: \"#f9f9f9\",\r\n dark: \"#292929\"\r\n },\r\n transferWarningBg: {\r\n light: \"#FFFBEB\",\r\n dark: \"#6F4B3B\"\r\n },\r\n cardBg: {\r\n light: \"rgb(255, 255, 255)\",\r\n dark: \"rgb(24, 26, 32)\"\r\n },\r\n cardBgShadow: {\r\n light: \"rgb(255, 255, 255)\",\r\n dark: \"rgb(24, 26, 32)\"\r\n },\r\n cardBgInverse: {\r\n light: \"rgb(24, 26, 32)\",\r\n dark: \"rgb(255, 255, 255)\"\r\n },\r\n cardBgHover: {\r\n light: \"rgb(245, 245, 245)\",\r\n dark: \"rgb(34, 36, 42)\"\r\n },\r\n dividerColor: {\r\n light: \"gray.200\",\r\n dark: \"gray.800\"\r\n },\r\n loadingColor: {\r\n light: \"#1A202C\",\r\n dark: \"#E2E8F0\"\r\n },\r\n error: {\r\n light: \"#800\",\r\n dark: \"#800\"\r\n },\r\n};\r\nexport default theme;\r\n","export var LIB_LOGO = \"data:image/png;base64,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\";\r\nexport var BNB_LOGO = \"data:image/png;base64,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\";\r\nexport var ETH_LOGO = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEYAAABGCAYAAABxLuKEAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAA1kSURBVHja3JxrbFvlGccfKmCwAWudJmlj4pimdnw5Pj4XH5+brSQFAYJAVdqSpNGgGa1AZVJFJdppiMFoSNP63H23c6FF7MM0qdPQGGJo0hjSJARDmoYmNtjYYNoEH9i4jNKivfuA36OTEyexU+Ym+fCXc/MH//R/nvN/3vOcAEIImpWqqpDL5SCbzdaVZVlQLBYhl8vZr6VSCXK5HBQKBchkMnDy5Elbp06dgomJib3pdHo4mUwCz/PA8zwIggAsy0JfXx/EYjEIh8MQi8UgFApBNBq1X8PhsP0aiUTmvRIEASv5jNBKMNlsFnK5HJTLZSiVSrYqlco3Tp48+SeO497u7e29JhAIANb27dshEomsXzDFYtH+2jRNsCwLLMsC0zRBVdXvT05OIkmSEE3TjxMEAU5FIhH7g69Lx2iaBrquz5NpmmFd1z/GYBiG+YSm6QhN0+AUwzAQCoXWF5hsNgvlchnm5uZgenra1szMDGiadlZVVTQ5OYlEUUQsyyKGYc4Gg0Ho6+uzFQgE1p9jCoUCmKYJhmGAaZq2dF3fpaoqcoNJJBKIoqjdsVgM3HICWfNgDMNY8Pf5fP4aTdP+oChKXTAMw7xJEMS1bjA0Ta8PMJVKBarVKhQKBbsBF4tFUFX1iUwmgxYDw3EcYhhmIhKJgFO4tNY0mHw+b7vFqXw+T2ia9omiKIuCqbnmU4IgiGg0Ck7hK9WaBZPNZqFUKkE+n7dVKBRA07SfYrcsBYbjOERR1LN9fX0QCoVsOQPfmgNTqVTsposzi2VZoCjKHgxkOTBYLMsOx+NxwKIoCgiCsEtqzYDJZrNgmiZUKhUol8u2qtXqdaZpvul0y3JgOI5DNE3/MRQKfTMcDoNTuKTWBBjLsuxAZ1mW/fNcLgeKojzphtKIY2oldcJdUoFAYO04JpfLgWEYC1Kupmmkqqr/cUNpBExNnzEMQ7rTcDwen9eEVyUYDKVQKMxruLUs82w9tzQKhuM4FI/HfxYIBOYl4mAwaAe/VQsGX3XcCVdRlJHFoDThGNxv9uEPjofLvr6+BUBWDZhcLoeHwnmyLGujrutvLQalGTCJRALRNP02SZKb3FcpiqIgFAqtPjDOtOsIcqDr+tRSbmkWTK2kTtYbMqPR6OoCk8/nwbIsUFV1XsNVFIVSFOXcUlCaBVPTuXg8TjvPbGKxmA1j1YAxDAPy+fw8t9TC3XPLuWUlYGqueR6XjrPfkCS5esAUi8V5CTebzYKqqmONQFmhY1AymUQURX3L2YgjkYh9bnNJweCG684shmF4NE37SyNQVgqmNmS+E4vFPM5jCZIk7TnqkoExTRNKpRIUCgVbtcyiNOqWiwHDcRwiSVIJBoMLhkyCIC4NGBzeag6xpaoqk8lkPm8UysWAqcE5T9N0wu0aDKmlYDRNs0E4J+daI36hGSgYzIkTJ5AkSSsBg+Lx+C/cvSYajdqJuKVgyuWyHewcmeWeZkpIURSkaRqyLAtNTEwgnucRx3FNgcGNmCTJ8cWGzJaByWQyC26DaJq2WVXVd5oBYpomOnHiBHrggQfQjTfeiLq6ulAgEEAMw6BkMtkUJJZl/xqPxzeTJAlYOBm3DIxzQMTzkWVZWiNu0XUdmaaJnnjiCTQ+Po4GBgZsAO3t7WjTpk2os7MT9fb2IoqiGgbEcRyKxWKGOxH39fW1Dox7HlJVlctkMueXAmIYBjIMAz366KNodHQUpVIplEgkEM/zSJIkxPM86ujoQG1tbaitrQ15PB7U3t6O/H4/IkkScRyHksnkcnAuxONx3t1vLgkYy7LAMIwXF2uqpmkiTdPQ0aNH0V133YVEUUSJRAIJgoBEUUSiKC4As3nzZlsejwdt3rwZ+Xw+FI1GlwVEUdQv8YiA1TIwzoZrmua4u4Rw/8hkMujw4cNoaGjIbqxOII2AcQJqa2tDXq8XhcNhxLJsXUAcxyGCIO4LBAIQDAYhGAy2DgxuuKqqtiuK8u5iDfXmm29GHMchjuMWwGgWjBOQx+NBW7duRcFgcLFG/TeSJDvwgNlSx9QmatPZUI8fP47Gx8fR4OCgfRldCshKwGDhPlSvUdcacTYUCkE4HG4dmFqQ4zVNu+BsqOl02m6ojQC5GDBuQO5GzfP8FyRJii0FY1nWRsMwXjp27NiiDbVVYJZq1CzLvsyyrKdlYB566KF7h4aGbNuuFMhXDcbdh66//nq0bdu2/S0Ds3fv3g133nnnwMDAwCs8z686MG1tbaijo+NVr9e7w+v1bmgZmIMHD8LY2BiMjo5ePjQ0dEiW5feb7Sv/DzBtbW2ovb39A6/X+2BPT8/lfr8fent7WztEPvbYY3DgwAEYHh6Gu+++u/OWW24piaJ4YSWALhZM7T0XtmzZUu7u7t7i8/kgEAgARVEgCHxLc8xGwzCuVhQFHn74YbjnnntgdHQUdu/enRwcHHyp2fK62KtSZ2fnr7u7u3mfzwd+vx8IggBBEEAUhasFQdjYMjClUqlX0zRNURTKMAzIZDJw+PBhGBsbg5GRkcvuuOOO/el0+r1G3bPSHNPe3v6e1+sd7+np2eD3+yEUCgHHJUAQBJAkkRRFQWdZNtgyMJVKBfL5/B21k7pJ0zSvy+VyMDExAQcPHoSRkREYHh723HrrraooiueWA9QMmNrvz23dulXr7u729PT0QCCwHRiGAUEQQBCEa0RRPJ5KyedZlr2rpbPS6dOn4cyZM1AsFo/X5qQ/G4YxnMvlwLIseOSRR2D//v0wOjoKe/bsie3YseP5pcqrETB46u7s7HzB5/ORPT09cMMNN0AsFgOe50GSRBBFYa8sS2+l0ynEcdwUPuZsGZinnnoK63Jd13/l2KV7wTTNeD6fB1VV4ciRIzA2NgbDw8Owc+fOvel0+q167lkOTK1s3vZ6vXfjPhIOhyGZ5EAURRAEPibL0s9TKRml0zKSZelliqKuwLduW35QVdtqCCuK8qFjuv5c13U9m8225fN5mJqagvvvvx/27dsHIyMj1952220/kCTpEyegxcDUvv60q6vruM/nuxZfbViWBVEUQBCETZIkqqmUfC6VklEqJSNZlj6iqHjskpzguZcNDcO4z3n0kMlkkKqqfzcM49uFQmEDLq/x8XHYt28f7N69O3DTTTedFQQBCYJQF0ytbH7i8/kCfr8ftm3bBiRJgiAkQZLEDaIo3ivL0nsYyJduSSGO4+7HJYTVMjB4qdl1L+kZ97lMJpNBmqa9rOu6YJomZDIZOHLkCHYP7Nq167b+/v43eJ5HyWQSdXR0II/Hgzo6Ot7wer2347KJRCLA80lcNklZll5yAsFQeD75I6dT4vF4a8GYprngXnU2m+1QFOXtRc59v1BVtapp2lZd1+HJJ5+EQ4cO4fR81e23335UFMWPOjs7P+7q6vpuT0/P1bhsEgkWZ5ItkiSVUyn5ghtKTe/QNN3phBKPx4FhmNYmX/fiYW1L89ZlDsM/UBTlO6ZpXmFZFjz++ONw4MABGBkZgT179gT8fn/A5/NBb28vUBSFXXKFJImHUin5/UWAoFRKRolEYohhGHAqkUiAKIqtBVOtVhfAKZfLYJpmI/swr+m6vgPf5j127BiMjY1Bb28vRKNRSCY5kCQRBEEYkGXp1aWAfFlCvOJercfnvoIgtN4xzidJHLpS1/XfNHIrRdO0H1qW5S8UCjAxMYGvNCAIfI8sS8+kUvJ/l4KSSslIFIVXGIa+yukUlmUhkUjUmvUlBFOpVGxVq1UoFouUoigfN3jz7V+GYRzTNO1r/f39V4qicFSW5Q+XA/KlUp/SNM247wpEo1FgGObSgpmZmYEzZ87A3NycHfxOnz4NxWLxwWb2Y6ampl4fHBz4rSxLqDEoMuL55GHsDiyO4+yme8nAVKtVmJubg5mZmQVPlxSLRdB1/cfNbDsMDg6gRsCk0ykkisJZZ1YhSRIIgrAXFVcFmOnp6brrrZZleVVVfbexbYfGwciy9B5F0ddjCE7RNL36wLiDX6FQgGw2u/OrBJNOpxDLsrvcfcX5oNeqA+OYn+bNU7quG8stQDcKJpnksiQ5P8RhGKsaDP65S1/XNO21pVbmGwTzOk3T1+CScQKJx+NrA0ydVMwpivLZRYD5LJFgeXe65TjO3oVZ9WCcjw9jzc7OQj6fP3Lq1KmmwdSm5qPuqZkgCKBp2i6pVQ9mZmYGKpWK80DLzjeWZT1b70GupcCIovCcM6tg4XJaM2CwW55++mnbLbOzszA3NweVSsWnKMo/mgDzT4qi/PVmoTUJZnZ2FqrVat1nmkzTHG4UTDLJDbvTLZ6D1iyY6enpBec2jg3PkvO5azeY2tRcqecUiqLsy/S6AlNLydeqqvq7emDS6RSSJOn3JEl+0x37SZJcH2BwAsZhz3kcmsvlZEVRztdxzHmaptP10u26A1MoFOb9M51SqQTlchksy/qeoijzwCST3CPOJ9dwoFt3jsEzFA57Ll1mGMYLk5OTaMeOQcTz/IuRSGSDcx0V/3sU/GTJunMMfo/71K9SqWyfmpr6sL+//98URQXcTnG6ZV2DKZfL885tyuUyqKp6QBTFgwRBLEi3zu9bBeZ/AwDVbQ0OUNi43AAAAABJRU5ErkJggg==\";\r\nexport var TOOL_FALLBACK_IMAGE = \"data:image/png;base64,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\";\r\n","import { LIB_LOGO, } from \"./base64Images\";\r\nexport var FIREBASE_CONFIG = {\r\n apiKey: \"AIzaSyBykIOPWfKmDrAC6jly4p1Hl_NsaRSntFo\",\r\n authDomain: \"my-project-223a2.firebaseapp.com\",\r\n projectId: \"my-project-223a2\",\r\n storageBucket: \"my-project-223a2.appspot.com\",\r\n messagingSenderId: \"121945247533\",\r\n appId: \"1:121945247533:web:408269d255291ea70b8da4\",\r\n measurementId: \"G-2L4CPV9S32\"\r\n};\r\nexport var PROMISE_ID = {\r\n signIn: \"signIn\",\r\n getAccessToken: \"getAccessToken\",\r\n deposit: \"deposit\",\r\n downloadType: \"downloadType\",\r\n requestPayment: \"requestPayment\",\r\n creditTransfer: \"creditTransfer\"\r\n};\r\nexport var IS_TEST = false;\r\n//export const SERVER_BASE_URL_TEST = \"https://server.frontbacked.com\"//\"http://localhost:3001\"\r\n//export const SERVER_BASE_URL_LIVE = \"https://server.frontbacked.com\"\r\nexport var PRECISION = 5;\r\nexport var SDK_RETRY_INTERVAL_MINS = 0.2;\r\nexport var PRICE_FETCH_INTERVAL_MINS = 10;\r\nexport var MIN_BLOCK_CHECK_INTERVAL_SECONDS = 5;\r\nexport var MIN_REFERAAL_WITHDRAWAL = 20;\r\nexport var SDK_NAME = \"APP\";\r\nexport var SDK_SITE = \"https://frontbacked.com\";\r\nexport var STORE_FRAME_ID = \"\".concat(SDK_NAME, \"_storeframe\");\r\nexport var STORAGE_KEYS = {\r\n ENABLED_LOG: \"\".concat(SDK_NAME, \"_ENABLED_LOG\"),\r\n SDK_CONFIG: \"\".concat(SDK_NAME, \"_SDK_CONFIG\"),\r\n DOC_RULES: \"\".concat(SDK_NAME, \"_DOC_RULES\"),\r\n LAST_DEPOSIT_BLOCK_NUMBER: \"\".concat(SDK_NAME, \"_LAST_DEPOSIT_BLOCK_NUMBER\"),\r\n LAST_LOGIN_MILLI: \"\".concat(SDK_NAME, \"_LAST_LOGIN_MILLI\"),\r\n LAST_USD_BALANCE: \"\".concat(SDK_NAME, \"_LAST_USD_BALANCE\"),\r\n USER: \"\".concat(SDK_NAME, \"_USER\")\r\n};\r\nexport var LOGO_PATH = LIB_LOGO;\r\nexport var MAX_RISKY_OPERATION_LOGIN_AGE_IN_SECONDS = 300;\r\nexport var REF_PCT = 20;\r\nexport var ERROR_X = \"An error occurred. Please try again later.\";\r\n","import { __extends } from \"tslib\";\r\nvar CustomError = /** @class */ (function (_super) {\r\n __extends(CustomError, _super);\r\n function CustomError(message, code) {\r\n var _newTarget = this.constructor;\r\n var _this = _super.call(this, message) || this;\r\n _this.name = 'CustomError';\r\n _this.code = code;\r\n // Ensure the correct prototype chain\r\n Object.setPrototypeOf(_this, _newTarget.prototype);\r\n return _this;\r\n }\r\n return CustomError;\r\n}(Error));\r\nexport default CustomError;\r\n","import theme from \"../theme\";\r\nimport { ERROR_X, STORAGE_KEYS } from \"./c\";\r\nimport CustomError from \"./CustomError\";\r\nexport var nullOrEmpty = function (d) {\r\n return !d || d.length == 0;\r\n};\r\nexport var isVoid = function (value) {\r\n return value === undefined || value === null;\r\n};\r\nexport var isValidEmail = function (email) {\r\n return /^(([^<>()[\\]\\\\.,;:\\s@\\\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/.test(email);\r\n};\r\nexport var isValidPhone = function (phone) {\r\n return /^[\\+]?[(]?[0-9]{3}[)]?[-\\s\\.]?[0-9]{3}[-\\s\\.]?[0-9]{4,6}$/.test(phone);\r\n};\r\nexport var USE_SOFT_BAKER_RESOLVE_PREFIX = \"USE_SOFT_BAKER_RESOLVE_\";\r\nexport var USE_SOFT_BAKER_REJECT_PREFIX = \"USE_SOFT_BAKER_REJECT_\";\r\nexport var promiseResolvePending = function (promiseId) {\r\n return window[\"\".concat(USE_SOFT_BAKER_RESOLVE_PREFIX).concat(promiseId)] != undefined;\r\n};\r\nexport var promiseRejectPending = function (promiseId) {\r\n return window[\"\".concat(USE_SOFT_BAKER_REJECT_PREFIX).concat(promiseId)] != undefined;\r\n};\r\nexport var savePromise = function (promiseId, resolve, reject, pollInterval) {\r\n if (pollInterval === void 0) { pollInterval = 200; }\r\n window[\"\".concat(USE_SOFT_BAKER_RESOLVE_PREFIX).concat(promiseId)] = resolve;\r\n window[\"\".concat(USE_SOFT_BAKER_REJECT_PREFIX).concat(promiseId)] = reject;\r\n};\r\nexport var resolvePromise = function (promiseId, data) {\r\n if (window[\"\".concat(USE_SOFT_BAKER_RESOLVE_PREFIX).concat(promiseId)]) {\r\n window[\"\".concat(USE_SOFT_BAKER_RESOLVE_PREFIX).concat(promiseId)](data);\r\n delete window[\"\".concat(USE_SOFT_BAKER_RESOLVE_PREFIX).concat(promiseId)];\r\n delete window[\"\".concat(USE_SOFT_BAKER_REJECT_PREFIX).concat(promiseId)];\r\n }\r\n};\r\nexport var rejectPromise = function (promiseId, error) {\r\n if (window[\"\".concat(USE_SOFT_BAKER_REJECT_PREFIX).concat(promiseId)]) {\r\n window[\"\".concat(USE_SOFT_BAKER_REJECT_PREFIX).concat(promiseId)](error);\r\n delete window[\"\".concat(USE_SOFT_BAKER_RESOLVE_PREFIX).concat(promiseId)];\r\n delete window[\"\".concat(USE_SOFT_BAKER_REJECT_PREFIX).concat(promiseId)];\r\n }\r\n};\r\nexport var updateLogSettings = function (enableLog) {\r\n if (enableLog) {\r\n localStorage.setItem(STORAGE_KEYS.ENABLED_LOG, \"true\");\r\n }\r\n else {\r\n localStorage.setItem(STORAGE_KEYS.ENABLED_LOG, \"false\");\r\n }\r\n};\r\nexport var consoleLog = function () {\r\n var args = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n args[_i] = arguments[_i];\r\n }\r\n // Check if the environment is not Windows\r\n if (typeof window === 'undefined') {\r\n console.log.apply(console, args);\r\n return;\r\n }\r\n // Check if logging has been disabled\r\n var isEnabled = localStorage.getItem(STORAGE_KEYS.ENABLED_LOG) === \"true\";\r\n // If not disabled and not in a Windows environment, call the normal console.log\r\n if (isEnabled) {\r\n console.log.apply(console, args);\r\n }\r\n};\r\nexport var whatsappLink = function (phoneNumber, message, isWeb) {\r\n if (message) {\r\n //message = `?text=${message.replaceAll(\"\\n\", \"%0A\")}`.replaceAll(\" \", \"%20\")/*\r\n try {\r\n message = \"\".concat(message.replace(/\\n/g, \"%0A\")).replace(/[ ]/g, \"%20\");\r\n }\r\n catch (e) { }\r\n }\r\n return isWeb ? \"https://web.whatsapp.com/send/?phone=\".concat(phoneNumber || \"\", \"&text=\").concat(message || \"\", \"&type=phone_number&app_absent=0\")\r\n :\r\n \"https://wa.me/\".concat(phoneNumber || \"\", \"?text=\").concat(message || \"\");\r\n};\r\nexport var downloadSvgAsImage = function (svgString, format, fileName) {\r\n if (format === void 0) { format = 'png'; }\r\n if (fileName === void 0) { fileName = 'downloadedImage'; }\r\n return new Promise(function (resolve, reject) {\r\n var svgBlob = new Blob([svgString], { type: 'image/svg+xml' });\r\n var svgUrl = URL.createObjectURL(svgBlob);\r\n var img = new Image();\r\n img.onload = function () {\r\n var canvas = document.createElement('canvas');\r\n canvas.width = img.width;\r\n canvas.height = img.height;\r\n var context = canvas.getContext('2d');\r\n if (context) {\r\n context.drawImage(img, 0, 0);\r\n var dataUrl = canvas.toDataURL(\"image/\".concat(format));\r\n var imageBlob = dataURLToBlob(dataUrl);\r\n if (isiPhone()) {\r\n // Workaround for iPhone browsers\r\n var binaryData = [imageBlob];\r\n var iphoneBlob = new Blob(binaryData, { type: \"image/\".concat(format) });\r\n var iphoneUrl = URL.createObjectURL(iphoneBlob);\r\n var downloadLink = document.createElement('a');\r\n downloadLink.href = iphoneUrl;\r\n downloadLink.download = \"\".concat(fileName, \".\").concat(format);\r\n downloadLink.click();\r\n URL.revokeObjectURL(iphoneUrl);\r\n resolve(iphoneUrl);\r\n }\r\n else {\r\n // For other browsers\r\n var downloadLink = document.createElement('a');\r\n downloadLink.href = dataUrl;\r\n downloadLink.download = \"\".concat(fileName, \".\").concat(format);\r\n downloadLink.click();\r\n resolve(dataUrl);\r\n }\r\n }\r\n else {\r\n reject(new Error(\"Unsupported Browser. Please try to download from another browser.\"));\r\n }\r\n };\r\n img.src = svgUrl;\r\n });\r\n};\r\nfunction dataURLToBlob(dataURL) {\r\n var arr = dataURL.split(',');\r\n var mime = arr[0].match(/:(.*?);/)[1];\r\n var bstr = atob(arr[1]);\r\n var n = bstr.length;\r\n var u8arr = new Uint8Array(n);\r\n while (n--) {\r\n u8arr[n] = bstr.charCodeAt(n);\r\n }\r\n return new Blob([u8arr], { type: mime });\r\n}\r\nfunction isiPhone() {\r\n return /iPhone/i.test(navigator.userAgent);\r\n}\r\nexport function extractNumberFromString(text) {\r\n if (!text)\r\n return null;\r\n text = \"\".concat(text);\r\n // Define a regular expression to match numbers with decimals and optional commas as thousands separators\r\n var numberRegex = /\\D+/g;\r\n var numParts = text.split(\".\");\r\n var mantissa = numParts[0].replace(numberRegex, '');\r\n var decimals = numParts.length > 1 ? numParts[1].replace(numberRegex, '') : null;\r\n if (mantissa && mantissa.length > 0) {\r\n var result = mantissa;\r\n if (decimals)\r\n result += \".\".concat(decimals);\r\n return Number(result);\r\n }\r\n return null;\r\n}\r\nexport var getColor = function (isDarkMode, colorName) {\r\n var color = theme[colorName];\r\n if (color) {\r\n return isDarkMode === true ? color.dark : color.light;\r\n }\r\n else {\r\n return \"\";\r\n }\r\n};\r\nexport var decimalsText = function (d) {\r\n // Check if the input is a non-negative integer\r\n if (Number.isInteger(d) && d >= 0) {\r\n // Use string concatenation to create the string representation\r\n return '1' + '0'.repeat(d);\r\n }\r\n else {\r\n // Handle invalid input, you might want to throw an error or handle it differently\r\n throw new Error('Input must be a non-negative integer.');\r\n }\r\n};\r\nexport var getError = function (error, defaultMessage) {\r\n var _a, _b;\r\n var message = defaultMessage, code = \"none\";\r\n if (error.response) {\r\n // The request was made and the server responded with a status code\r\n // that falls out of the range of 2xx\r\n message = ((_b = (_a = error.response) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.error) || defaultMessage || ERROR_X;\r\n code = error.response.data.code || \"none\";\r\n }\r\n else if (error.request) {\r\n // The request was made but no response was received\r\n message = \"No response received from the server. Try again later\";\r\n }\r\n else if (error.message) {\r\n // Something happened in setting up the request that triggered an Error\r\n message = error.message;\r\n }\r\n return message ? new CustomError(message, code) : null;\r\n};\r\nexport var emptyNumber = function (n) {\r\n return isNaN(n) || n == 0;\r\n};\r\nexport var amountFormatDefault = function (v, minFD, maxFD, noZeroDecimals) {\r\n if (isNaN(v))\r\n return \"0.00\";\r\n var resolvedMaxFD = maxFD !== null && maxFD !== void 0 ? maxFD : 2;\r\n var resolvedMinFD = noZeroDecimals ? 0 : (minFD !== null && minFD !== void 0 ? minFD : 2);\r\n var factor = Math.pow(10, resolvedMaxFD);\r\n var roundedValue = Math.floor(v * factor) / factor;\r\n // Format first\r\n var formatted = roundedValue.toLocaleString(\"en\", {\r\n minimumFractionDigits: resolvedMinFD,\r\n maximumFractionDigits: resolvedMaxFD\r\n });\r\n // Remove trailing `.0`, `.00`, etc. if noZeroDecimals is true\r\n if (noZeroDecimals) {\r\n if (formatted.includes('.')) {\r\n // Remove only if all decimal digits are zero\r\n var _a = formatted.split('.'), intPart = _a[0], decimalPart = _a[1];\r\n if (/^0+$/.test(decimalPart)) {\r\n formatted = intPart;\r\n }\r\n }\r\n }\r\n return formatted;\r\n};\r\nexport var isBrowser = function () {\r\n return typeof window !== \"undefined\";\r\n};\r\n","import { __assign, __rest } from \"tslib\";\r\nimport React, { useEffect, useState } from 'react';\r\nimport { Box, HStack, Drawer, DrawerBody, DrawerContent, DrawerFooter, DrawerHeader, DrawerOverlay, Text } from \"@chakra-ui/react\";\r\nimport { FaTimes } from \"react-icons/fa\";\r\nimport { isVoid } from '../../../utils/f';\r\nvar DrawerPop = function (_a) {\r\n var bg = _a.bg, color = _a.color, children = _a.children, placement = _a.placement, onClose = _a.onClose, isOpen = _a.isOpen, isClosable = _a.isClosable, closeOnOverlayClick = _a.closeOnOverlayClick, title = _a.title, footer = _a.footer, hideModeSwitch = _a.hideModeSwitch, h = _a.h, height = _a.height, maxH = _a.maxH, maxHeight = _a.maxHeight, w = _a.w, width = _a.width, maxW = _a.maxW, maxWidth = _a.maxWidth, props = __rest(_a, [\"bg\", \"color\", \"children\", \"placement\", \"onClose\", \"isOpen\", \"isClosable\", \"closeOnOverlayClick\", \"title\", \"footer\", \"hideModeSwitch\", \"h\", \"height\", \"maxH\", \"maxHeight\", \"w\", \"width\", \"maxW\", \"maxWidth\"]);\r\n var _b = useState(), height2 = _b[0], setHeight = _b[1];\r\n var _c = useState(), width2 = _c[0], setWidth = _c[1];\r\n var _d = useState({}), borderTopLeftRadius = _d[0], setBorderTopLeftRadius = _d[1];\r\n var _e = useState({}), borderTopRightRadius = _e[0], setBorderTopRightRadius = _e[1];\r\n var _f = useState({}), borderBottomLeftRadius = _f[0], setBorderBottomLeftRadius = _f[1];\r\n var _g = useState({}), borderBottomRightRadius = _g[0], setBorderBottomRightRadius = _g[1];\r\n useEffect(function () {\r\n if (placement === \"left\") {\r\n setBorderTopLeftRadius(\"0px\");\r\n setBorderTopRightRadius(\"32px\");\r\n setBorderBottomLeftRadius(\"0px\");\r\n setBorderBottomRightRadius(\"32px\");\r\n setHeight(height || h);\r\n setWidth(width || w);\r\n }\r\n else if (placement === \"right\") {\r\n setBorderTopLeftRadius(\"32px\");\r\n setBorderTopRightRadius(\"0px\");\r\n setBorderBottomLeftRadius(\"32px\");\r\n setBorderBottomRightRadius(\"0px\");\r\n setHeight(height || h);\r\n setWidth(width || w);\r\n }\r\n else if (placement === \"top\") {\r\n setBorderTopLeftRadius(\"0px\");\r\n setBorderTopRightRadius(\"0px\");\r\n setBorderBottomLeftRadius(\"32px\");\r\n setBorderBottomRightRadius(\"32px\");\r\n setHeight(height || h || \"50vh\");\r\n setWidth(width || w);\r\n }\r\n else if (placement === \"bottom\") {\r\n setBorderTopLeftRadius(\"32px\");\r\n setBorderTopRightRadius(\"32px\");\r\n setBorderBottomLeftRadius(\"0px\");\r\n setBorderBottomRightRadius(\"0px\");\r\n setHeight(height || h || \"60vh\");\r\n setWidth(width || w);\r\n }\r\n }, [placement, height, width]);\r\n // Prevent the default behavior of the browser's back button only when the drawer is open\r\n useEffect(function () {\r\n var handleBackButton = function (event) {\r\n event.preventDefault();\r\n if (isOpen && onClose) {\r\n onClose();\r\n }\r\n };\r\n window.addEventListener('popstate', handleBackButton);\r\n return function () {\r\n window.removeEventListener('popstate', handleBackButton);\r\n };\r\n }, []);\r\n return (React.createElement(Drawer, { placement: placement, onClose: onClose ? onClose : function () { }, isOpen: isOpen, closeOnOverlayClick: isVoid(closeOnOverlayClick) ? true : closeOnOverlayClick },\r\n React.createElement(DrawerOverlay, null),\r\n React.createElement(DrawerContent, __assign({ bg: bg, color: color, h: height2, w: width2, maxH: maxH || maxHeight || height2, maxW: maxW || maxWidth || width2, borderTopLeftRadius: borderTopLeftRadius, borderTopRightRadius: borderTopRightRadius, borderBottomLeftRadius: borderBottomLeftRadius, borderBottomRightRadius: borderBottomRightRadius }, props),\r\n React.createElement(DrawerHeader, { borderBottomWidth: '1px', w: \"100%\", display: \"flex\", justifyContent: \"space-between\", alignItems: \"center\" },\r\n React.createElement(Text, { as: \"div\", fontSize: { base: \"1.1rem\", md: \"1.3rem\" }, textTransform: \"capitalize\" }, title),\r\n React.createElement(HStack, null, onClose && (isClosable || isClosable === undefined) ?\r\n React.createElement(Box, { onClick: onClose, cursor: \"pointer\", display: \"block\" },\r\n React.createElement(FaTimes, { size: \"24px\" }))\r\n :\r\n null)),\r\n React.createElement(DrawerBody, __assign({}, props), children),\r\n footer ?\r\n React.createElement(DrawerFooter, null, footer)\r\n : null)));\r\n};\r\nexport default DrawerPop;\r\n","import { __assign, __rest } from \"tslib\";\r\nimport React from 'react';\r\nimport { Box, Button, HStack, Text } from \"@chakra-ui/react\";\r\nimport { ThreeDots } from \"react-loader-spinner\";\r\nvar AppButton = function (_a) {\r\n var as = _a.as, onClick = _a.onClick, children = _a.children, variant = _a.variant, bgColor = _a.bgColor, outlineColor = _a.outlineColor, leftIcon = _a.leftIcon, rightIcon = _a.rightIcon, loading = _a.loading, disabled = _a.disabled, props = __rest(_a, [\"as\", \"onClick\", \"children\", \"variant\", \"bgColor\", \"outlineColor\", \"leftIcon\", \"rightIcon\", \"loading\", \"disabled\"]);\r\n var bg = \"green.500\"; //bgColor || useColorModeValue('colorAccent.light', 'colorAccent.dark')\r\n var outline = \"green.500\"; //outlineColor || useColorModeValue(\"colorAccentDestination.light\", \"colorAccentDestination.dark\")\r\n return (React.createElement(Button, __assign({ as: as || \"button\", cursor: disabled ? \"not-allowed\" : loading ? \"progress\" : \"pointer\", disabled: disabled || loading, onClick: function (e) {\r\n if (onClick && !(disabled || loading))\r\n onClick(e);\r\n }, display: \"inline-flex\", justifyContent: \"center\", alignItems: \"center\", p: \"0px 24px\", h: \"48px\", letterSpacing: \"0.03em\", textAlign: \"center\", borderRadius: \"16px\", bg: variant == \"outline\" ? \"transparent\" : bg, border: variant == \"outline\" ? \"2px solid\" : \"none\", borderColor: variant == \"outline\" ? outline : \"transparent\", color: variant == \"outline\" ? outline : \"#fff\", boxShadow: (variant == \"ghost\" || variant == \"outline\") ? \"none\" : \"rgb(14 14 44 / 40%) 0px -1px 0px 0px inset\", opacity: disabled || loading ? \"0.65\" : variant == \"ghost\" ? \"0.8\" : \"1\", transition: \"background-color 0.2s ease 0s, opacity 0.2s ease 0s\", _hover: {\r\n opacity: \"0.65\",\r\n border: \"none !important\"\r\n }, _disabled: {\r\n opacity: \"0.65\",\r\n cursor: \"not-allowed\"\r\n } }, props),\r\n React.createElement(HStack, { justifyContent: \"center\", alignItems: \"center\" },\r\n leftIcon ? React.createElement(Box, { mr: \"7px\" }, leftIcon) : null,\r\n React.createElement(Text, { as: \"div\" }, children),\r\n loading ?\r\n React.createElement(Box, { as: ThreeDots, display: \"inline\", width: \"20%\", height: \"20%\", color: \"#fff\" })\r\n :\r\n rightIcon ? React.createElement(Box, { ml: \"7px\" }, rightIcon) : null)));\r\n};\r\nexport default AppButton;\r\n","import { __assign, __rest } from \"tslib\";\r\nimport React from 'react';\r\nimport { FaInfoCircle } from \"react-icons/fa\";\r\nimport { Box, HStack, Text } from \"@chakra-ui/react\";\r\nimport Swal from 'sweetalert2';\r\nvar InfoLabel = function (_a) {\r\n var children = _a.children, as = _a.as, info = _a.info, textTransform = _a.textTransform, props = __rest(_a, [\"children\", \"as\", \"info\", \"textTransform\"]);\r\n var onInfo = function (i) {\r\n Swal.fire({\r\n icon: \"info\",\r\n title: children || \"\",\r\n text: i,\r\n confirmButtonText: \"Ok\",\r\n showCancelButton: false\r\n });\r\n };\r\n return (React.createElement(HStack, __assign({ flexWrap: \"wrap\", justifyContent: \"flex-start\", alignItems: \"center\" }, props),\r\n React.createElement(Text, { mx: \"0px !important\", mb: \"0px !important\", as: as || \"div\", textTransform: textTransform || \"capitalize\" }, children),\r\n !info ? null :\r\n React.createElement(Box, { cursor: \"pointer\", marginInlineStart: \"0px !important\", marginInlineEnd: \"0px !important\", p: \"3px\", onClick: function () { return onInfo(info); } },\r\n React.createElement(FaInfoCircle, null))));\r\n};\r\nexport default InfoLabel;\r\n","export var arraysEqual = function (array1, array2) {\r\n // if the other array is a falsy value, return\r\n if (!array1 || !array2 || array1.length != array2.length)\r\n return false;\r\n // if the argument is the same array, we can be sure the contents are same as well\r\n if (array1 === array2)\r\n return true;\r\n for (var i = 0, l = array1.length; i < l; i++) {\r\n // Check if we have nested arrays\r\n if (array1[i] instanceof Array && array2[i] instanceof Array) {\r\n // recurse into the nested arrays\r\n if (!arraysEqual(array1[i], array2[i]))\r\n return false;\r\n }\r\n else if (array1[i] != array2[i]) {\r\n // Warning - two different object instances will never be equal: {x:20} != {x:20}\r\n return false;\r\n }\r\n }\r\n return true;\r\n};\r\n","import { __assign, __rest, __spreadArray } from \"tslib\";\r\nimport React, { useCallback, useMemo } from 'react';\r\nimport { HStack, FormControl, FormLabel, Input, FormErrorMessage, FormHelperText, Text, Select, InputGroup, InputLeftElement, InputRightElement, Box, Textarea, Checkbox, RadioGroup, Stack, Radio, Flex, VStack } from '@chakra-ui/react';\r\nimport { nullOrEmpty } from \"../../../utils/f\";\r\n//import 'react-phone-number-input/style.css'\r\nimport PhoneInput, { parsePhoneNumber } from 'react-phone-number-input';\r\nimport { useEffect, useState } from 'react';\r\nimport { FaEye, FaEyeSlash, FaMinus, FaPlus } from 'react-icons/fa';\r\nimport InfoLabel from '../InfoLabel';\r\n//import LocationPicker from '../LocationPicker';\r\nimport { arraysEqual } from './utils';\r\n//import SelectTree, { SelectTreeEvent, SelectTreeOptionWithChildren } from './inputs/SelectTree';\r\nvar countryCodes = require('country-codes-list');\r\nexport var TYPES = {\r\n text: \"text\",\r\n email: \"email\",\r\n number: \"number\",\r\n range: \"range\",\r\n date: \"date\",\r\n phone: \"phone\",\r\n password: \"password\",\r\n select: \"select\",\r\n select_tree: \"select_tree\",\r\n textarea: \"textarea\",\r\n checkbox: \"checkbox\",\r\n checklist: \"checklist\",\r\n radio: \"radio\",\r\n none: \"none\",\r\n location: \"location\",\r\n price: \"price\"\r\n};\r\nfunction extractNumberFromString(text) {\r\n if (!text)\r\n return null;\r\n text = \"\".concat(text);\r\n // Define a regular expression to match numbers with decimals and optional commas as thousands separators\r\n var numberRegex = /\\D+/g;\r\n var numParts = text.split(\".\");\r\n var mantissa = numParts[0].replace(numberRegex, '');\r\n var decimals = numParts.length > 1 ? numParts[1].replace(numberRegex, '') : null;\r\n if (mantissa && mantissa.length > 0) {\r\n var result = mantissa;\r\n if (decimals)\r\n result += \".\".concat(decimals);\r\n return Number(result);\r\n }\r\n return null;\r\n}\r\nvar InputBox = function (_a) {\r\n var id = _a.id, key = _a.key, title = _a.title, name = _a.name, type = _a.type, locale = _a.locale, value = _a.value, onChange = _a.onChange, onFocus = _a.onFocus, onCheckInfo = _a.onCheckInfo, onKeyDown = _a.onKeyDown, errorMessage = _a.errorMessage, helperText = _a.helperText, info = _a.info, placeholder = _a.placeholder, textTransform = _a.textTransform, options = _a.options, onOptionValue = _a.onOptionValue, onOptionName = _a.onOptionName, defaultCountry = _a.defaultCountry, phoneSelectBg = _a.phoneSelectBg, phoneSelectColor = _a.phoneSelectColor, _b = _a.numberDecimals, numberDecimals = _b === void 0 ? 2 : _b, hasNegOverflow = _a.hasNegOverflow, numberUnit = _a.numberUnit, rangeMinPlaceholder = _a.rangeMinPlaceholder, minTitle = _a.minTitle, rangeMaxPlaceholder = _a.rangeMaxPlaceholder, maxTitle = _a.maxTitle, disabled = _a.disabled, maxTextLimit = _a.maxTextLimit, direction = _a.direction, resize = _a.resize, disableCalendar = _a.disableCalendar, disableClock = _a.disableClock, dateFormat = _a.dateFormat, iconLeft = _a.iconLeft, iconRight = _a.iconRight, apiKey = _a.apiKey, mapToSearchRatio = _a.mapToSearchRatio, twoDigitCountryCode = _a.twoDigitCountryCode, inputRef = _a.inputRef, defaultLatlng = _a.defaultLatlng, geotype = _a.geotype, props = __rest(_a, [\"id\", \"key\", \"title\", \"name\", \"type\", \"locale\", \"value\", \"onChange\", \"onFocus\", \"onCheckInfo\", \"onKeyDown\", \"errorMessage\", \"helperText\", \"info\", \"placeholder\", \"textTransform\", \"options\", \"onOptionValue\", \"onOptionName\", \"defaultCountry\", \"phoneSelectBg\", \"phoneSelectColor\", \"numberDecimals\", \"hasNegOverflow\", \"numberUnit\", \"rangeMinPlaceholder\", \"minTitle\", \"rangeMaxPlaceholder\", \"maxTitle\", \"disabled\", \"maxTextLimit\", \"direction\", \"resize\", \"disableCalendar\", \"disableClock\", \"dateFormat\", \"iconLeft\", \"iconRight\", \"apiKey\", \"mapToSearchRatio\", \"twoDigitCountryCode\", \"inputRef\", \"defaultLatlng\", \"geotype\"]);\r\n var _c = useState(), showPassword = _c[0], setShowPassword = _c[1];\r\n var _d = useState([]), decimalsSet = _d[0], setDecimalsSet = _d[1];\r\n var parseNum = function (value) {\r\n var num = extractNumberFromString(value);\r\n if (num) {\r\n return num;\r\n }\r\n else {\r\n return 0;\r\n }\r\n };\r\n useEffect(function () {\r\n if (type == TYPES.number && value && title && !decimalsSet.includes(title)) {\r\n setDecimalsSet(__spreadArray(__spreadArray([], decimalsSet, true), [title], false));\r\n var v = parseNum(value);\r\n if (!disabled && onChange) {\r\n onChange(v);\r\n }\r\n }\r\n }, [value, name]);\r\n var changeNumber = function (e) {\r\n var value = e.target.value;\r\n console.log(\"changeNumber:\", value);\r\n var v = parseNum(value);\r\n console.log(\"changeNumber:2\", v);\r\n if (!disabled && onChange) {\r\n onChange(v);\r\n }\r\n };\r\n var increaseNumber = function () {\r\n var numberSteps = (1 / Math.pow(10, numberDecimals || 0));\r\n var v = (parseNum(value) + numberSteps);\r\n if (!disabled && onChange) {\r\n onChange(v);\r\n }\r\n };\r\n var decreaseNumber = function () {\r\n var numberSteps = (1 / Math.pow(10, numberDecimals || 0));\r\n var result = parseNum(value) - numberSteps;\r\n if (result < 0 && !hasNegOverflow)\r\n result = 0;\r\n var v = result;\r\n if (!disabled && onChange)\r\n onChange(v);\r\n };\r\n var updateRangeValue = useCallback(function (min, max) {\r\n if (!isNaN(min)) {\r\n var result = parseFloat(\"\".concat(min));\r\n if (result < 0 && !hasNegOverflow)\r\n result = 0;\r\n var v = { min: result, max: (value === null || value === void 0 ? void 0 : value.max) || 0 };\r\n if (!disabled && onChange)\r\n onChange(v);\r\n }\r\n else if (!isNaN(max)) {\r\n var result = parseFloat(\"\".concat(max));\r\n if (result < 0 && !hasNegOverflow)\r\n result = 0;\r\n var v = { min: (value === null || value === void 0 ? void 0 : value.min) || 0, max: result };\r\n if (!disabled && onChange)\r\n onChange(v);\r\n }\r\n }, [hasNegOverflow, disabled]);\r\n var _e = useState({}), countryCodesMap = _e[0], setCountryCodesMap = _e[1];\r\n useEffect(function () {\r\n if (type == TYPES.phone) {\r\n var countruesToCurrency = countryCodes.customList('countryCode', '{currencyCode}');\r\n setCountryCodesMap(countruesToCurrency);\r\n }\r\n }, [type]);\r\n var _f = useState([]), checklist = _f[0], setChecklist = _f[1];\r\n useEffect(function () {\r\n if (Array.isArray(options) && checklist.length == 0) {\r\n setChecklist(options);\r\n }\r\n }, [options, value]);\r\n var _g = useState(false), searchActive = _g[0], setSearchActive = _g[1];\r\n var handleInputCheck = useCallback(function (getLatestValue, onValueIsLatest, checker, waitTime) {\r\n if (checker) {\r\n if (!searchActive) {\r\n setSearchActive(true);\r\n setTimeout(function () {\r\n var check = function () {\r\n var checkedValue = getLatestValue();\r\n checker(checkedValue)\r\n .then(function () {\r\n //If the input has changed after the check was done, check the new input\r\n if (!onValueIsLatest(checkedValue)) {\r\n check();\r\n }\r\n else {\r\n setSearchActive(false);\r\n }\r\n })\r\n .catch(function (e) {\r\n setSearchActive(false);\r\n });\r\n };\r\n check();\r\n }, waitTime || 0);\r\n }\r\n }\r\n }, [searchActive]);\r\n var memoizedOptions = useMemo(function () {\r\n // Compute and memoize the options array here\r\n return (options || []).map(function (v, i) {\r\n if (onOptionValue && onOptionName) {\r\n return React.createElement(\"option\", { key: i, value: onOptionValue(v, i) }, onOptionName(v, i));\r\n }\r\n else {\r\n return null;\r\n }\r\n });\r\n }, [options, onOptionValue, onOptionName]);\r\n return (React.createElement(FormControl, __assign({ isInvalid: !nullOrEmpty(errorMessage) && type != TYPES.location, opacity: disabled ? \"0.3\" : \"1\" }, props),\r\n !title || type == TYPES.checkbox ? null :\r\n nullOrEmpty(info) ?\r\n React.createElement(FormLabel, { textTransform: textTransform || \"capitalize\" }, title)\r\n :\r\n React.createElement(InfoLabel, { as: FormLabel, info: info, textTransform: textTransform || \"capitalize\" }, title),\r\n type == TYPES.date ?\r\n null\r\n :\r\n type == TYPES.select ?\r\n React.createElement(InputGroup, null,\r\n iconLeft ? React.createElement(InputLeftElement, { children: iconLeft }) : null,\r\n React.createElement(Select, { id: id, key: key, onFocus: onFocus, disabled: disabled, ref: inputRef, name: name, value: value, placeholder: placeholder || \"\", onChange: function (e) {\r\n if (!disabled && onChange)\r\n onChange(e.target.value);\r\n }, errorBorderColor: 'red.300', isInvalid: !nullOrEmpty(errorMessage) }, memoizedOptions),\r\n iconRight ? React.createElement(InputRightElement, { children: iconRight }) : null)\r\n :\r\n type == TYPES.phone ?\r\n React.createElement(InputGroup, null,\r\n iconLeft ? React.createElement(InputLeftElement, { children: iconLeft }) : null,\r\n React.createElement(Input, { id: id, key: key, onFocus: onFocus, disabled: disabled, ref: inputRef, as: PhoneInput, defaultCountry: defaultCountry || \"US\", background: \"transparent !important\", _focusVisible: {\r\n outline: \"none !important\",\r\n border: \"none !important\"\r\n }, placeholder: placeholder || \"\", value: value === null || value === void 0 ? void 0 : value.number, onKeyDown: onKeyDown, onChange: function (v) {\r\n var getNumberInfo = function () {\r\n var codes = parsePhoneNumber(\"\".concat(v));\r\n return {\r\n number: \"\".concat(v),\r\n countryCode: codes === null || codes === void 0 ? void 0 : codes.country,\r\n currencyCode: (codes === null || codes === void 0 ? void 0 : codes.country) ? countryCodesMap[(codes === null || codes === void 0 ? void 0 : codes.country) || \"\"] : null,\r\n dialingCode: codes === null || codes === void 0 ? void 0 : codes.countryCallingCode,\r\n };\r\n };\r\n var inflatedValue = getNumberInfo();\r\n if (!disabled && onChange) {\r\n onChange(inflatedValue);\r\n }\r\n if (!disabled && onCheckInfo) {\r\n var _a = onCheckInfo(getNumberInfo()), checker = _a.checker, waitTime = _a.waitTime;\r\n //only check input in \"onChange\" if waitTime is greater than zero.\r\n // This is good in searching a text results as a user types in a search bar, \r\n // or saving an article on a server as the user types\r\n if (waitTime > 0) {\r\n handleInputCheck(getNumberInfo, function (checkedValue) {\r\n return checkedValue.number === v.target.value;\r\n }, checker, waitTime);\r\n }\r\n }\r\n }, onBlur: function (v) {\r\n var getNumberInfo = function () {\r\n var codes = parsePhoneNumber(\"\".concat(v));\r\n return {\r\n number: \"\".concat(v),\r\n countryCode: codes === null || codes === void 0 ? void 0 : codes.country,\r\n currencyCode: (codes === null || codes === void 0 ? void 0 : codes.country) ? countryCodesMap[(codes === null || codes === void 0 ? void 0 : codes.country) || \"\"] : null,\r\n dialingCode: codes === null || codes === void 0 ? void 0 : codes.countryCallingCode,\r\n };\r\n };\r\n if (!disabled && onCheckInfo) {\r\n var _a = onCheckInfo(v.target.value), checker = _a.checker, waitTime = _a.waitTime;\r\n //only check input in \"onBlur\" if waitTime is not set or equal to zero.\r\n // This is good in validating an input as it looses focus when the user moves to another,\r\n // input field\r\n if (!waitTime) {\r\n handleInputCheck(getNumberInfo, function (checkedValue) {\r\n return checkedValue.number === v.target.value;\r\n }, checker, waitTime);\r\n }\r\n }\r\n } }),\r\n React.createElement(\"style\", null, \"\\n .PhoneInputCountrySelect {\\n background: \".concat(phoneSelectBg || \"#000\", \" !important;\\n color: \").concat(phoneSelectColor || \"#fff\", \"\\n }\\n .PhoneInputInput {\\n background: transparent !important;\\n border-radius: 3px !important;\\n }\")),\r\n iconRight ? React.createElement(InputRightElement, { children: iconRight }) : null)\r\n :\r\n type == TYPES.password ?\r\n React.createElement(InputGroup, null,\r\n iconLeft ? React.createElement(InputLeftElement, { cursor: \"pointer\", children: iconLeft }) : null,\r\n React.createElement(Input, { id: id, key: key, onFocus: onFocus, disabled: disabled, ref: inputRef, name: name, type: showPassword ? \"text\" : \"password\", placeholder: placeholder || \"\", value: value, onKeyDown: onKeyDown, onChange: function (v) {\r\n if (!disabled && onChange)\r\n onChange(v.target.value);\r\n if (!disabled && onCheckInfo) {\r\n var _a = onCheckInfo(v.target.value), checker = _a.checker, waitTime = _a.waitTime;\r\n //only check input in \"onChange\" if waitTime is greater than zero.\r\n // This is good in searching a text results as a user types in a search bar, \r\n // or saving an article on a server as the user types\r\n if (waitTime > 0) {\r\n handleInputCheck(function () { return \"\".concat(v.target.value); }, function (checkedValue) {\r\n return checkedValue === v.target.value;\r\n }, checker, waitTime);\r\n }\r\n }\r\n }, onBlur: function (v) {\r\n if (!disabled && onCheckInfo) {\r\n var _a = onCheckInfo(v.target.value), checker = _a.checker, waitTime = _a.waitTime;\r\n //only check input in \"onBlur\" if waitTime is not set or equal to zero.\r\n // This is good in validating an input as it looses focus when the user moves to another,\r\n // input field\r\n if (!waitTime) {\r\n handleInputCheck(function () { return \"\".concat(v.target.value); }, function (checkedValue) {\r\n return checkedValue === v.target.value;\r\n }, checker, waitTime);\r\n }\r\n }\r\n }, errorBorderColor: 'red.300', isInvalid: !nullOrEmpty(errorMessage) }),\r\n React.createElement(InputRightElement, { width: \"auto\", px: \"0.5rem\", children: React.createElement(HStack, { justifyContent: \"flex-start\", alignItems: \"center\", m: \"0px !important\", p: \"0px !important\" },\r\n iconRight,\r\n React.createElement(Box, { cursor: \"pointer\", onClick: function () {\r\n setShowPassword(!showPassword);\r\n } }, !showPassword ?\r\n React.createElement(FaEyeSlash, null)\r\n :\r\n React.createElement(FaEye, null))) }))\r\n :\r\n type == TYPES.number ?\r\n React.createElement(InputGroup, null,\r\n React.createElement(InputLeftElement, { width: \"auto\", px: \"0.2rem\", cursor: \"pointer\", children: React.createElement(HStack, { justifyContent: \"flex-start\", alignItems: \"center\" },\r\n React.createElement(Box, { cursor: \"pointer\", onClick: decreaseNumber, border: { base: \"0px\", md: \"1px\" }, borderRadius: { base: \"0px\", md: \"3px\" }, p: { base: \"0px\", md: \"0.5rem\" } },\r\n React.createElement(FaMinus, null)),\r\n iconLeft) }),\r\n React.createElement(Input, { id: id, key: key, onFocus: onFocus, disabled: disabled, ref: inputRef, name: name, type: \"text\", placeholder: placeholder || \"\", value: parseNum(\"\".concat(value)).toLocaleString(locale, {\r\n minimumFractionDigits: numberDecimals,\r\n maximumFractionDigits: numberDecimals\r\n }), onKeyDown: onKeyDown, onChange: function (v) {\r\n changeNumber(v);\r\n if (!disabled && onCheckInfo) {\r\n var _a = onCheckInfo(v.target.value), checker = _a.checker, waitTime = _a.waitTime;\r\n //only check input in \"onChange\" if waitTime is greater than zero.\r\n // This is good in searching a text results as a user types in a search bar, \r\n // or saving an article on a server as the user types\r\n if (waitTime > 0) {\r\n handleInputCheck(function () { return \"\".concat(v.target.value); }, function (checkedValue) {\r\n return checkedValue === v.target.value;\r\n }, checker, waitTime);\r\n }\r\n }\r\n }, onBlur: function (v) {\r\n if (!disabled && onCheckInfo) {\r\n var _a = onCheckInfo(v.target.value), checker = _a.checker, waitTime = _a.waitTime;\r\n //only check input in \"onBlur\" if waitTime is not set or equal to zero.\r\n // This is good in validating an input as it looses focus when the user moves to another,\r\n // input field\r\n if (!waitTime) {\r\n handleInputCheck(function () { return \"\".concat(v.target.value); }, function (checkedValue) {\r\n return checkedValue === v.target.value;\r\n }, checker, waitTime);\r\n }\r\n }\r\n }, errorBorderColor: 'red.300', isInvalid: !nullOrEmpty(errorMessage) }),\r\n React.createElement(InputRightElement, { width: \"auto\", px: \"0.2rem\", cursor: \"pointer\", children: React.createElement(HStack, { justifyContent: \"flex-start\", alignItems: \"center\", m: \"0px !important\", p: \"0px !important\" },\r\n iconRight,\r\n typeof numberUnit === \"string\" ?\r\n React.createElement(Text, { as: \"div\", textAlign: \"center\", display: \"flex\", justifyContent: \"flex-start\", alignItems: \"center\" }, numberUnit)\r\n :\r\n numberUnit,\r\n React.createElement(Box, { cursor: \"pointer\", onClick: increaseNumber, border: { base: \"0px\", md: \"1px\" }, borderRadius: { base: \"0px\", md: \"3px\" }, p: { base: \"0px\", md: \"0.5rem\" } },\r\n React.createElement(FaPlus, null))) }))\r\n :\r\n type == TYPES.range ?\r\n React.createElement(HStack, { ref: inputRef, justifyContent: \"space-between\", alignItems: \"center\" },\r\n React.createElement(InputBox, { id: id, key: key, onFocus: onFocus, title: minTitle, w: \"100%\", type: TYPES.number, placeholder: rangeMinPlaceholder, value: (value === null || value === void 0 ? void 0 : value.min) || 0, onChange: function (number) {\r\n updateRangeValue(number, \"\");\r\n }, numberUnit: numberUnit }),\r\n React.createElement(Text, { as: \"div\", alignSelf: \"flex-end\", pb: \"0.5rem\" }, \" ~ \"),\r\n React.createElement(InputBox, { id: id ? \"\".concat(id, \"_2\") : undefined, key: key ? \"\".concat(key, \"_2\") : undefined, onFocus: onFocus, title: maxTitle, w: \"100%\", type: TYPES.number, placeholder: rangeMinPlaceholder, value: (value === null || value === void 0 ? void 0 : value.max) || 0, onChange: function (number) {\r\n updateRangeValue(\"\", number);\r\n }, numberUnit: numberUnit }))\r\n :\r\n type == TYPES.textarea ?\r\n React.createElement(InputGroup, { w: \"100%\", h: \"100%\" },\r\n iconLeft ? React.createElement(InputLeftElement, { children: iconRight }) : null,\r\n React.createElement(Textarea, { id: id, key: key, onFocus: onFocus, disabled: disabled, ref: inputRef, w: \"100%\", h: \"100%\", placeholder: placeholder, isDisabled: disabled, isInvalid: (errorMessage && errorMessage.length > 0) ? true : false, value: value, resize: resize, onKeyDown: onKeyDown, onChange: function (v) {\r\n if (onChange && !disabled && (!maxTextLimit || isNaN(maxTextLimit) || v.target.value.length < maxTextLimit)) {\r\n onChange(v.target.value);\r\n }\r\n if (!disabled && onCheckInfo && (!maxTextLimit || isNaN(maxTextLimit) || v.target.value.length < maxTextLimit)) {\r\n var _a = onCheckInfo(v.target.value), checker = _a.checker, waitTime = _a.waitTime;\r\n //only check input in \"onChange\" if waitTime is greater than zero.\r\n // This is good in searching a text results as a user types in a search bar, \r\n // or saving an article on a server as the user types\r\n if (waitTime > 0) {\r\n handleInputCheck(function () { return \"\".concat(v.target.value); }, function (checkedValue) {\r\n return checkedValue === v.target.value;\r\n }, checker, waitTime);\r\n }\r\n }\r\n }, onBlur: function (v) {\r\n if (!disabled && onCheckInfo && (!maxTextLimit || isNaN(maxTextLimit) || v.target.value.length < maxTextLimit)) {\r\n var _a = onCheckInfo(v.target.value), checker = _a.checker, waitTime = _a.waitTime;\r\n //only check input in \"onBlur\" if waitTime is not set or equal to zero.\r\n // This is good in validating an input as it looses focus when the user moves to another,\r\n // input field\r\n if (!waitTime) {\r\n handleInputCheck(function () { return \"\".concat(v.target.value); }, function (checkedValue) {\r\n return checkedValue === v.target.value;\r\n }, checker, waitTime);\r\n }\r\n }\r\n } }),\r\n maxTextLimit ?\r\n React.createElement(InputRightElement, { width: \"auto\", height: \"100%\", alignItems: \"flex-end\", px: \"0.2rem\", cursor: \"pointer\", children: React.createElement(HStack, { justifyContent: \"flex-start\", alignItems: \"center\", m: \"0px !important\", p: \"0px !important\" },\r\n iconRight,\r\n React.createElement(Text, { as: \"div\", opacity: \"0.4\" },\r\n ((value || \"\").length).toLocaleString(locale || \"en\", { maximumFractionDigits: 0 }).replace(new RegExp(\"[,\\.]*\", \"g\"), \"\"),\r\n \"\\u00A0/\\u00A0\",\r\n maxTextLimit.toLocaleString(locale || \"en\", { maximumFractionDigits: 0 }).replace(new RegExp(\"[,\\.]*\", \"g\"), \"\"))) })\r\n :\r\n iconRight ? React.createElement(InputRightElement, { height: \"100%\", alignItems: \"flex-end\", children: iconRight }) : null)\r\n :\r\n type == TYPES.checkbox ?\r\n React.createElement(Checkbox, { id: id, key: key, onFocus: onFocus, disabled: disabled, ref: inputRef, isChecked: value, onChange: function (e) {\r\n if (!disabled && onChange)\r\n onChange(e.target.checked);\r\n if (!disabled && onCheckInfo) {\r\n var _a = onCheckInfo(e.target.checked), checker = _a.checker, waitTime = _a.waitTime;\r\n //only check input in \"onChange\" if waitTime is greater than zero.\r\n // This is good in searching a text results as a user types in a search bar, \r\n // or saving an article on a server as the user types\r\n if (waitTime > 0) {\r\n handleInputCheck(function () { return e.target.checked; }, function (checkedValue) {\r\n return checkedValue === e.target.checked;\r\n }, checker, waitTime);\r\n }\r\n }\r\n }, onBlur: function (e) {\r\n if (!disabled && onCheckInfo) {\r\n var _a = onCheckInfo(e.target.checked), checker = _a.checker, waitTime = _a.waitTime;\r\n //only check input in \"onBlur\" if waitTime is not set or equal to zero.\r\n // This is good in validating an input as it looses focus when the user moves to another,\r\n // input field\r\n if (!waitTime) {\r\n handleInputCheck(function () { return e.target.checked; }, function (checkedValue) {\r\n return checkedValue === e.target.checked;\r\n }, checker, waitTime);\r\n }\r\n }\r\n } }, title)\r\n :\r\n type == TYPES.checklist ?\r\n React.createElement(Flex, { w: \"100%\", flexDirection: \"row\", flexWrap: \"wrap\" }, checklist.map(function (check, index) { return (React.createElement(Checkbox, { id: id ? \"\".concat(id, \"_\").concat(index) : \"\".concat(index), key: key ? \"\".concat(key, \"_\").concat(index) : index, onFocus: onFocus, disabled: disabled, ref: inputRef, w: { base: \"100%\", sm: \"50%\", md: \"33.33%\" }, mb: \"0.5rem\", isChecked: check.selected, onChange: function (e) {\r\n var all = __spreadArray([], checklist, true);\r\n all[index].selected = e.target.checked;\r\n if (!disabled && onChange) {\r\n var onlySelected = [];\r\n for (var _i = 0, all_1 = all; _i < all_1.length; _i++) {\r\n var selectedService = all_1[_i];\r\n if (selectedService.selected) {\r\n onlySelected.push(selectedService);\r\n }\r\n }\r\n setChecklist(all);\r\n onChange(onlySelected);\r\n }\r\n else {\r\n setChecklist(all);\r\n }\r\n if (!disabled && onCheckInfo) {\r\n var _a = onCheckInfo(all), checker = _a.checker, waitTime = _a.waitTime;\r\n //only check input in \"onChange\" if waitTime is greater than zero.\r\n // This is good in searching a text results as a user types in a search bar, \r\n // or saving an article on a server as the user types\r\n if (waitTime > 0) {\r\n handleInputCheck(function () { return all; }, function (checkedValue) {\r\n return arraysEqual(checkedValue, all);\r\n }, checker, waitTime);\r\n }\r\n }\r\n }, onBlur: function (e) {\r\n var all = __spreadArray([], checklist, true);\r\n all[index].selected = e.target.checked;\r\n if (!disabled && onCheckInfo) {\r\n var _a = onCheckInfo(all), checker = _a.checker, waitTime = _a.waitTime;\r\n //only check input in \"onBlur\" if waitTime is not set or equal to zero.\r\n // This is good in validating an input as it looses focus when the user moves to another,\r\n // input field\r\n if (!waitTime) {\r\n handleInputCheck(function () { return all; }, function (checkedValue) {\r\n return arraysEqual(checkedValue, all);\r\n }, checker, waitTime);\r\n }\r\n }\r\n } }, onOptionName ? onOptionName(check, index) : \"\")); }))\r\n :\r\n type == TYPES.radio ?\r\n React.createElement(RadioGroup, { id: id, key: key, onFocus: onFocus, ref: inputRef, value: value, onChange: function (v) {\r\n if (!disabled && onChange)\r\n onChange(v);\r\n if (!disabled && onCheckInfo) {\r\n var _a = onCheckInfo(v), checker = _a.checker, waitTime = _a.waitTime;\r\n //only check input in \"onChange\" if waitTime is greater than zero.\r\n // This is good in searching a text results as a user types in a search bar, \r\n // or saving an article on a server as the user types\r\n if (waitTime > 0) {\r\n handleInputCheck(function () { return v; }, function (checkedValue) {\r\n return checkedValue === v;\r\n }, checker, waitTime);\r\n }\r\n }\r\n }, onBlur: function (v) {\r\n if (!disabled && onCheckInfo) {\r\n var _a = onCheckInfo(v), checker = _a.checker, waitTime = _a.waitTime;\r\n //only check input in \"onBlur\" if waitTime is not set or equal to zero.\r\n // This is good in validating an input as it looses focus when the user moves to another,\r\n // input field\r\n if (!waitTime) {\r\n handleInputCheck(function () { return v; }, function (checkedValue) {\r\n return checkedValue === v;\r\n }, checker, waitTime);\r\n }\r\n }\r\n } },\r\n React.createElement(Stack, { direction: direction || \"row\" }, (options || []).map(function (v, i) {\r\n if (onOptionValue && onOptionName) {\r\n return (React.createElement(Radio, { disabled: disabled, key: i, value: onOptionValue(v, i) }, onOptionName(v, i)));\r\n }\r\n else {\r\n return null;\r\n }\r\n })))\r\n : /*\r\n type == TYPES.location?\r\n <LocationPicker disabled={disabled} ref={inputRef} w=\"100%\" h=\"100%\"\r\n apiKey={apiKey || \"\"} defaultLatlng={defaultLatlng} geotype={geotype}\r\n mapToSearchRatio={mapToSearchRatio}\r\n twoDigitCountryCode={twoDigitCountryCode}\r\n searchPlaceholder={placeholder as string}\r\n value={value? {\r\n name: value.name,\r\n formatted_address: value.address,\r\n geometry: {\r\n location: {lat: () => value.position.lat, lng: () => value.position.lng},\r\n viewport: {}\r\n }\r\n } : null}\r\n onChange={(l) => {\r\n const v = {\r\n name: l.name,\r\n address: l.formatted_address,\r\n position: {\r\n lat: l.geometry.location.lat(),\r\n lng: l.geometry.location.lng()\r\n }\r\n }\r\n if(!disabled && onChange) {\r\n onChange(v)\r\n }\r\n if(!disabled && onCheckInfo) {\r\n const { checker, waitTime } = onCheckInfo(v)\r\n //only check input in \"onChange\" if waitTime is greater than zero.\r\n // This is good in searching a text results as a user types in a search bar,\r\n // or saving an article on a server as the user types\r\n if(waitTime > 0) {\r\n handleInputCheck(() => v, (checkedValue) => {\r\n return JSON.stringify(checkedValue) === JSON.stringify(v)\r\n }, checker, waitTime)\r\n }\r\n }\r\n \r\n }}\r\n onBlur={(l) => {\r\n if(!disabled && onCheckInfo) {\r\n const v = {\r\n name: l.name,\r\n address: l.formatted_address,\r\n position: {\r\n lat: l.geometry.location.lat(),\r\n lng: l.geometry.location.lng()\r\n }\r\n }\r\n \r\n const { checker, waitTime } = onCheckInfo(v)\r\n //only check input in \"onBlur\" if waitTime is not set or equal to zero.\r\n // This is good in validating an input as it looses focus when the user moves to another,\r\n // input field\r\n if(!waitTime) {\r\n handleInputCheck(() => v, (checkedValue) => {\r\n return JSON.stringify(checkedValue) === JSON.stringify(v)\r\n }, checker, waitTime)\r\n }\r\n }\r\n }}\r\n errorMessage={errorMessage}\r\n />\r\n :*/\r\n type == TYPES.price ?\r\n React.createElement(VStack, { w: \"100%\", justifyContent: \"flex-start\", alignItems: \"center\" },\r\n React.createElement(InputGroup, null,\r\n React.createElement(InputLeftElement, { width: \"auto\", px: \"0.2rem\", cursor: \"pointer\", children: React.createElement(HStack, { justifyContent: \"flex-start\", alignItems: \"center\" },\r\n React.createElement(Box, { cursor: \"pointer\", onClick: decreaseNumber, border: { base: \"0px\", md: \"1px\" }, borderRadius: { base: \"0px\", md: \"3px\" }, p: { base: \"0px\", md: \"0.5rem\" } },\r\n React.createElement(FaMinus, null)),\r\n iconLeft) }),\r\n React.createElement(Input, { id: id, key: key, onFocus: onFocus, disabled: disabled, ref: inputRef, name: name, type: \"text\", placeholder: placeholder || \"\", value: value, onKeyDown: onKeyDown, onChange: function (v) {\r\n changeNumber(v);\r\n if (!disabled && onCheckInfo) {\r\n var _a = onCheckInfo(v.target.value), checker = _a.checker, waitTime = _a.waitTime;\r\n //only check input in \"onChange\" if waitTime is greater than zero.\r\n // This is good in searching a text results as a user types in a search bar, \r\n // or saving an article on a server as the user types\r\n if (waitTime > 0) {\r\n handleInputCheck(function () { return \"\".concat(v.target.value); }, function (checkedValue) {\r\n return checkedValue === v.target.value;\r\n }, checker, waitTime);\r\n }\r\n }\r\n }, onBlur: function (v) {\r\n if (!disabled && onCheckInfo) {\r\n var _a = onCheckInfo(v.target.value), checker = _a.checker, waitTime = _a.waitTime;\r\n //only check input in \"onBlur\" if waitTime is not set or equal to zero.\r\n // This is good in validating an input as it looses focus when the user moves to another,\r\n // input field\r\n if (!waitTime) {\r\n handleInputCheck(function () { return \"\".concat(v.target.value); }, function (checkedValue) {\r\n return checkedValue === v.target.value;\r\n }, checker, waitTime);\r\n }\r\n }\r\n }, errorBorderColor: 'red.300', isInvalid: !nullOrEmpty(errorMessage) }),\r\n React.createElement(InputRightElement, { width: \"auto\", px: \"0.2rem\", cursor: \"pointer\", children: React.createElement(HStack, { justifyContent: \"flex-start\", alignItems: \"center\", m: \"0px !important\", p: \"0px !important\" },\r\n iconRight,\r\n typeof numberUnit === \"string\" ?\r\n React.createElement(Text, { as: \"div\", textAlign: \"center\", display: \"flex\", justifyContent: \"flex-start\", alignItems: \"center\" }, numberUnit)\r\n :\r\n numberUnit,\r\n React.createElement(Box, { cursor: \"pointer\", onClick: increaseNumber, border: { base: \"0px\", md: \"1px\" }, borderRadius: { base: \"0px\", md: \"3px\" }, p: { base: \"0px\", md: \"0.5rem\" } },\r\n React.createElement(FaPlus, null))) })))\r\n : /*\r\n type == TYPES.select_tree?\r\n <SelectTree disabled={disabled} options={options as SelectTreeOptionWithChildren[]}\r\n onChange={onChange}\r\n onBlur={(e: SelectTreeEvent) => {\r\n const { currentNode, selectedNodes } = e\r\n if(!disabled && onCheckInfo) {\r\n const v = \"currentNode\"\r\n \r\n const { checker, waitTime } = onCheckInfo(v)\r\n //only check input in \"onBlur\" if waitTime is not set or equal to zero.\r\n // This is good in validating an input as it looses focus when the user moves to another,\r\n // input field\r\n if(!waitTime) {\r\n handleInputCheck(() => v, (checkedValue) => {\r\n return JSON.stringify(checkedValue) === JSON.stringify(v)\r\n }, checker, waitTime)\r\n }\r\n }\r\n }}\r\n />\r\n :*/\r\n type == TYPES.none ?\r\n null\r\n :\r\n React.createElement(InputGroup, null,\r\n iconLeft ? React.createElement(InputLeftElement, { children: iconLeft }) : null,\r\n React.createElement(Input, { id: id, key: key, onFocus: onFocus, disabled: disabled, ref: inputRef, name: name, type: type, placeholder: placeholder || \"\", value: value, onChange: function (v) {\r\n if (!disabled && onChange)\r\n onChange(v.target.value);\r\n if (!disabled && onCheckInfo) {\r\n var _a = onCheckInfo(v.target.value), checker = _a.checker, waitTime = _a.waitTime;\r\n //only check input in \"onChange\" if waitTime is greater than zero.\r\n // This is good in searching a text results as a user types in a search bar, \r\n // or saving an article on a server as the user types\r\n if (waitTime > 0) {\r\n handleInputCheck(function () { return \"\".concat(v.target.value); }, function (checkedValue) {\r\n return checkedValue === v.target.value;\r\n }, checker, waitTime);\r\n }\r\n }\r\n }, onBlur: function (v) {\r\n if (!disabled && onCheckInfo) {\r\n var _a = onCheckInfo(v.target.value), checker = _a.checker, waitTime = _a.waitTime;\r\n //only check input in \"onBlur\" if waitTime is not set or equal to zero.\r\n // This is good in validating an input as it looses focus when the user moves to another,\r\n // input field\r\n if (!waitTime) {\r\n handleInputCheck(function () { return \"\".concat(v.target.value); }, function (checkedValue) {\r\n return checkedValue === v.target.value;\r\n }, checker, waitTime);\r\n }\r\n }\r\n }, errorBorderColor: 'red.300', isInvalid: !nullOrEmpty(errorMessage) }),\r\n iconRight ? React.createElement(InputRightElement, { children: iconRight }) : null),\r\n nullOrEmpty(errorMessage) || type == TYPES.location ? null :\r\n React.createElement(FormErrorMessage, null, errorMessage),\r\n nullOrEmpty(helperText) || type == TYPES.location ? null :\r\n React.createElement(FormHelperText, null, helperText),\r\n React.createElement(\"style\", null, \"\\n .cursor-not-allowed-deep {\\n cursor: not-allowed !important;\\n }\\n .cursor-not-allowed-deep * {\\n cursor: not-allowed;\\n }\\n \")));\r\n};\r\nInputBox.TYPES = TYPES;\r\nexport default React.memo(InputBox);\r\n","import { __assign, __rest } from \"tslib\";\r\nimport React from 'react';\r\nimport { Text } from \"@chakra-ui/react\";\r\nvar Link = function (_a) {\r\n var children = _a.children, disabled = _a.disabled, onClick = _a.onClick, props = __rest(_a, [\"children\", \"disabled\", \"onClick\"]);\r\n return (React.createElement(Text, __assign({ cursor: disabled ? \"not-allowed\" : \"pointer\", _hover: {\r\n opacity: \"0.3\"\r\n }, onClick: function (e) {\r\n if (onClick)\r\n onClick(e);\r\n } }, props), children));\r\n};\r\nexport default Link;\r\n","import { useEffect, useState } from 'react';\r\n// Import the functions you need from the SDKs you need\r\nimport { initializeApp } from \"firebase/app\";\r\n//Analytics for web\r\nimport { getAnalytics } from \"firebase/analytics\";\r\n//Authentication for Web\r\nimport { getAuth, onAuthStateChanged } from \"firebase/auth\";\r\n//Cloud Firestore for Web\r\nimport { getFirestore, doc, onSnapshot, collection } from \"firebase/firestore\"; // Updated import\r\nimport { getStorage, getDownloadURL, ref as storageRef, uploadBytes, } from \"firebase/storage\";\r\nimport { consoleLog } from '../../utils/f';\r\nvar useFirebase = function (config) {\r\n var _a = useState(), app = _a[0], setApp = _a[1];\r\n var _b = useState(), analytics = _b[0], setAnalytics = _b[1];\r\n var _c = useState(), auth = _c[0], setAuth = _c[1];\r\n var _d = useState(), db = _d[0], setDb = _d[1];\r\n var _e = useState(), user = _e[0], setUser = _e[1];\r\n var _f = useState(), adminInfo = _f[0], setAdminInfo = _f[1];\r\n var _g = useState(true), authLoading = _g[0], setAuthLoading = _g[1];\r\n var _h = useState(), storage = _h[0], setStorage = _h[1]; // Add storage state\r\n useEffect(function () {\r\n if (!(config === null || config === void 0 ? void 0 : config.firebaseConfig))\r\n return;\r\n // Initialize Firebase\r\n var theApp = initializeApp(config.firebaseConfig);\r\n var theDb = getFirestore(theApp);\r\n var theAuth = getAuth(theApp);\r\n var theAnalytics = getAnalytics(theApp);\r\n var theStorage = getStorage(theApp);\r\n setApp(theApp);\r\n setDb(theDb);\r\n setAuth(theAuth);\r\n setAnalytics(theAnalytics);\r\n setStorage(theStorage);\r\n setUser(null);\r\n var unsubscribe = onAuthStateChanged(theAuth, function (user) {\r\n setUser(user);\r\n setAuthLoading(false);\r\n });\r\n return function () {\r\n if (unsubscribe)\r\n unsubscribe();\r\n };\r\n }, [config === null || config === void 0 ? void 0 : config.firebaseConfig]);\r\n useEffect(function () {\r\n var unsubscribe;\r\n if (user && db) {\r\n consoleLog(\"Firebase.AdminInfo: will listen to admin doc\");\r\n // Listen to document changes at admins/{user.uid}\r\n unsubscribe = onSnapshot(doc(collection(db, \"admins\"), user.uid), function (docSnapshot) {\r\n try {\r\n if (docSnapshot.exists()) {\r\n var data = docSnapshot.data();\r\n setAdminInfo(data);\r\n consoleLog(\"Firebase.AdminInfo: admin \", data);\r\n }\r\n else {\r\n setAdminInfo(null); // Clear adminInfo if the document does not exist\r\n consoleLog(\"Firebase.AdminInfo: noAdmin \");\r\n }\r\n }\r\n catch (e) {\r\n consoleLog(\"Firebase.AdminInfo: Error listening to admin document:1 \", e);\r\n setAdminInfo(null); // Clear adminInfo on error\r\n }\r\n }, function (error) {\r\n consoleLog(\"Firebase.AdminInfo: Error listening to admin document:2 \", error);\r\n setAdminInfo(null); // Clear adminInfo on error\r\n });\r\n }\r\n else {\r\n setAdminInfo(null); // Clear adminInfo if user is not authenticated\r\n }\r\n return function () {\r\n if (unsubscribe)\r\n unsubscribe();\r\n };\r\n }, [user, db]);\r\n var uploadFile = function (file, pathToFile) {\r\n return new Promise(function (resolve, reject) {\r\n if (!storage) {\r\n reject(\"File storage not initialized yet.\");\r\n }\r\n else if (!file) {\r\n reject(\"Please provide the file to upload.\");\r\n }\r\n else if (!pathToFile) {\r\n reject(\"Please provide the location to upload the file to.\");\r\n }\r\n else {\r\n var fileRef = storageRef(storage, pathToFile);\r\n uploadBytes(fileRef, file)\r\n .then(function (snapshot) {\r\n getDownloadURL(snapshot.ref)\r\n .then(function (url) {\r\n resolve(url);\r\n })\r\n .catch(function (error) {\r\n reject(error);\r\n });\r\n })\r\n .catch(function (error) {\r\n reject(error);\r\n });\r\n }\r\n });\r\n };\r\n return {\r\n auth: auth,\r\n db: db,\r\n user: user,\r\n setUser: setUser,\r\n adminInfo: adminInfo,\r\n authLoading: authLoading,\r\n uploadFile: uploadFile,\r\n };\r\n};\r\nexport default useFirebase;\r\n","import { __rest } from \"tslib\";\r\nimport React, { useState } from \"react\";\r\nimport { Text, VStack } from \"@chakra-ui/react\";\r\nimport AppButton from \"../widgets/AppButton\";\r\nimport InputBox, { TYPES } from \"../widgets/InputBox\";\r\nimport Link from \"../widgets/Link\";\r\nimport { isValidEmail, nullOrEmpty } from \"../../utils/f\";\r\nimport Swal from 'sweetalert2';\r\nimport { sendPasswordResetEmail, signInWithEmailAndPassword } from \"firebase/auth\";\r\nimport useFirebase from \".\";\r\nvar SignInView = function (_a) {\r\n var onAuthDone = _a.onAuthDone, setUser = _a.setUser, config = _a.config, props = __rest(_a, [\"onAuthDone\", \"setUser\", \"config\"]);\r\n var auth = useFirebase(config).auth;\r\n var _b = useState(\"\"), email = _b[0], setEmail = _b[1];\r\n var _c = useState(), emailError = _c[0], setEmailError = _c[1];\r\n var _d = useState(\"\"), password = _d[0], setPassword = _d[1];\r\n var _e = useState(), passwordError = _e[0], setPasswordError = _e[1];\r\n var _f = useState(), requesting = _f[0], setRequesting = _f[1];\r\n var clearErrors = function () {\r\n setEmailError(\"\");\r\n setPasswordError(\"\");\r\n };\r\n var forgotPass = function (e) {\r\n var _a;\r\n e.preventDefault();\r\n clearErrors();\r\n if (nullOrEmpty(email)) {\r\n setEmailError('Please enter your email address, then click \"Forgot password\".');\r\n }\r\n else if (!isValidEmail(email)) {\r\n setEmailError(\"Please enter a valid email address.\");\r\n }\r\n else if (auth) {\r\n var pass_1 = password;\r\n setPassword(\"\");\r\n setRequesting(true);\r\n var codeSettings = {\r\n url: (_a = window === null || window === void 0 ? void 0 : window.location) === null || _a === void 0 ? void 0 : _a.href\r\n };\r\n sendPasswordResetEmail(auth, email, codeSettings)\r\n .then(function () {\r\n Swal.fire({\r\n icon: \"info\",\r\n text: isValidEmail(email) ?\r\n \"A password reset email has been sent to \".concat(email, \". Check your inbox or spam folder for the email sent.\")\r\n :\r\n \"A password reset code has been sent to \".concat(email, \". Check your messages for the code sent.\")\r\n });\r\n setRequesting(false);\r\n setPassword(pass_1);\r\n })\r\n .catch(function (e) {\r\n var msg;\r\n if (e.code == 'auth/user-not-found') {\r\n msg = \"The account is invalid.\";\r\n }\r\n else {\r\n msg = e.message;\r\n }\r\n Swal.fire({\r\n icon: \"error\",\r\n text: msg\r\n });\r\n setRequesting(false);\r\n setPassword(pass_1);\r\n });\r\n }\r\n };\r\n var sendRequest = function (maxRetries, triedTimes) {\r\n if (!auth)\r\n return;\r\n signInWithEmailAndPassword(auth, email, password)\r\n .then(function (userCredential) {\r\n setRequesting(false);\r\n if (userCredential) {\r\n setUser(userCredential.user);\r\n if (onAuthDone)\r\n onAuthDone(userCredential.user);\r\n }\r\n })\r\n .catch(function (e) {\r\n var msg;\r\n if (e.code == \"auth/wrong-password\") {\r\n msg = \"Wrong email address or password. Check your email address and password, then try again.\";\r\n }\r\n else if (e.code == 'auth/user-not-found') {\r\n msg = \"Wrong email address or password. Check your email address and password, then try again.\";\r\n }\r\n else if (e.code == \"auth/network-request-failed\") {\r\n if (triedTimes + 1 < maxRetries) {\r\n setTimeout(function () {\r\n sendRequest(maxRetries, triedTimes + 1);\r\n }, 2000);\r\n return;\r\n }\r\n else {\r\n msg = \"Failed to reach the server. Make sure your internet connection is stable and try again.\";\r\n }\r\n }\r\n else {\r\n msg = e.message;\r\n }\r\n Swal.fire({\r\n icon: \"error\",\r\n text: msg\r\n });\r\n setRequesting(false);\r\n });\r\n };\r\n var handleSubmit = function (e) {\r\n try {\r\n e.preventDefault();\r\n }\r\n catch (e) { }\r\n if (requesting)\r\n return;\r\n clearErrors();\r\n var hasError = false;\r\n //Check email\r\n if (nullOrEmpty(email)) {\r\n hasError = true;\r\n setEmailError(\"Please enter your email address.\");\r\n }\r\n else if (!isValidEmail(email)) {\r\n hasError = true;\r\n setEmailError(\"Please enter a valid email address.\");\r\n }\r\n //Check password\r\n if (nullOrEmpty(password)) {\r\n hasError = true;\r\n setPasswordError(\"Please enter your password.\");\r\n }\r\n if (!hasError && auth) {\r\n setRequesting(true);\r\n sendRequest(3, 0);\r\n }\r\n };\r\n return (React.createElement(VStack, null,\r\n React.createElement(InputBox, { type: TYPES.email, title: \"Email\", placeholder: \"Enter your email address.\", mb: 2, value: email, onChange: function (e) { return setEmail(e); }, errorMessage: emailError }),\r\n React.createElement(InputBox, { type: TYPES.password, title: \"Password\", placeholder: \"Enter your password\", mb: 2, value: password, onChange: function (e) { setPassword(e); }, errorMessage: passwordError }),\r\n React.createElement(Text, { as: \"div\", alignSelf: \"flex-end\" },\r\n React.createElement(Link, { onClick: forgotPass, disabled: requesting, fontStyle: requesting && !password ? \"italic\" : \"normal\" }, requesting && nullOrEmpty(password) ? \"Please wait...\" : \"Forgot password?\")),\r\n React.createElement(AppButton, { w: \"100%\", alignSelf: \"flex-start\", id: \"recaptcha-container\", type: \"submit\", onClick: handleSubmit, disabled: requesting, fontStyle: requesting && password ? \"italic\" : \"normal\", mt: \"1rem !important\", mb: \"1.5rem !important\" }, requesting && !nullOrEmpty(password) ? \"Please wait...\" : \"Sign in\")));\r\n};\r\nexport default SignInView;\r\n","import { __awaiter, __generator, __rest } from \"tslib\";\r\nimport React, { useState } from \"react\";\r\nimport { VStack } from \"@chakra-ui/react\";\r\nimport AppButton from \"../widgets/AppButton\";\r\nimport InputBox, { TYPES } from \"../widgets/InputBox\";\r\nimport { isValidEmail, nullOrEmpty } from \"../../utils/f\";\r\nimport Swal from 'sweetalert2';\r\nimport { createUserWithEmailAndPassword, sendEmailVerification, signInWithEmailAndPassword, updateProfile } from \"firebase/auth\";\r\nimport useFirebase from \".\";\r\nvar SignUpView = function (_a) {\r\n var onAuthDone = _a.onAuthDone, setUser = _a.setUser, config = _a.config, props = __rest(_a, [\"onAuthDone\", \"setUser\", \"config\"]);\r\n var _b = useFirebase(config), auth = _b.auth, user = _b.user, db = _b.db;\r\n var _c = useState(\"\"), fullname = _c[0], setFullname = _c[1];\r\n var _d = useState(\"\"), email = _d[0], setEmail = _d[1];\r\n var _e = useState(\"\"), password = _e[0], setPassword = _e[1];\r\n var _f = useState(), password2 = _f[0], setPassword2 = _f[1];\r\n var _g = useState(\"\"), fullnameError = _g[0], setFullnameError = _g[1];\r\n var _h = useState(), emailError = _h[0], setEmailError = _h[1];\r\n var _j = useState(), passwordError = _j[0], setPasswordError = _j[1];\r\n var _k = useState(), passwordError2 = _k[0], setPasswordError2 = _k[1];\r\n var _l = useState(), requesting = _l[0], setRequesting = _l[1];\r\n var clearErrors = function () {\r\n setFullnameError(\"\");\r\n setEmailError(\"\");\r\n setPasswordError(\"\");\r\n setPasswordError2(\"\");\r\n };\r\n var sendRequest = function (maxRetries, triedTimes) {\r\n if (!auth)\r\n return;\r\n createUserWithEmailAndPassword(auth, email, password)\r\n .then(function (userCredential) {\r\n if (userCredential) {\r\n updateProfile(userCredential.user, { displayName: fullname })\r\n .then(function () {\r\n sendVerification(userCredential.user);\r\n })\r\n .catch(function (error) {\r\n sendVerification(userCredential.user);\r\n });\r\n }\r\n else {\r\n throw new Error(\"No user credentials.\");\r\n }\r\n })\r\n .catch(function (e) { return __awaiter(void 0, void 0, void 0, function () {\r\n var msg, e_1;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if (!(e.code == \"auth/email-already-in-use\")) return [3 /*break*/, 1];\r\n msg = \"Email already in use. Please sign in.\";\r\n return [3 /*break*/, 10];\r\n case 1:\r\n if (!(e.code == \"auth/invalid-verification-code\")) return [3 /*break*/, 2];\r\n msg = \"The verification code is invalid.\";\r\n return [3 /*break*/, 10];\r\n case 2:\r\n if (!(e.code == \"auth/popup-closed-by-user\")) return [3 /*break*/, 3];\r\n msg = \"Authentication cancelled.\";\r\n return [3 /*break*/, 10];\r\n case 3:\r\n if (!(e.code == \"auth/network-request-failed\")) return [3 /*break*/, 9];\r\n if (!user) return [3 /*break*/, 8];\r\n _a.label = 4;\r\n case 4:\r\n _a.trys.push([4, 6, , 7]);\r\n return [4 /*yield*/, updateProfile(user, { displayName: fullname })];\r\n case 5:\r\n _a.sent();\r\n sendVerification(user);\r\n return [3 /*break*/, 7];\r\n case 6:\r\n e_1 = _a.sent();\r\n sendVerification(user);\r\n return [3 /*break*/, 7];\r\n case 7: return [2 /*return*/];\r\n case 8:\r\n if (triedTimes + 1 < maxRetries) {\r\n setTimeout(function () {\r\n //Try to sign in first. Maybe the sign up was successful\r\n signInWithEmailAndPassword(auth, email, password)\r\n .then(function (userCredential) { return __awaiter(void 0, void 0, void 0, function () {\r\n var e_2;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n _a.trys.push([0, 2, , 3]);\r\n return [4 /*yield*/, updateProfile(userCredential.user, { displayName: fullname })];\r\n case 1:\r\n _a.sent();\r\n sendVerification(userCredential.user);\r\n return [3 /*break*/, 3];\r\n case 2:\r\n e_2 = _a.sent();\r\n sendVerification(userCredential.user);\r\n return [3 /*break*/, 3];\r\n case 3: return [2 /*return*/];\r\n }\r\n });\r\n }); })\r\n .catch(function (e) {\r\n sendRequest(maxRetries, triedTimes + 1);\r\n });\r\n }, 2000);\r\n return [2 /*return*/];\r\n }\r\n else {\r\n msg = \"Failed to reach the server. Make sure your internet connection is stable and try again.\";\r\n }\r\n return [3 /*break*/, 10];\r\n case 9:\r\n msg = e.message;\r\n _a.label = 10;\r\n case 10:\r\n Swal.fire({\r\n icon: \"error\",\r\n text: msg\r\n });\r\n setRequesting(false);\r\n return [2 /*return*/];\r\n }\r\n });\r\n }); });\r\n };\r\n var handleSubmit = function (e) {\r\n try {\r\n e.preventDefault();\r\n }\r\n catch (e) { }\r\n if (requesting)\r\n return;\r\n clearErrors();\r\n var hasError = false;\r\n //Check fullname\r\n if (nullOrEmpty(fullname)) {\r\n hasError = true;\r\n setFullnameError(\"Please enter your fullname.\");\r\n }\r\n //Check email\r\n if (nullOrEmpty(email)) {\r\n hasError = true;\r\n setEmailError(\"Please enter your email address.\");\r\n }\r\n else if (!isValidEmail(email)) {\r\n hasError = true;\r\n setEmailError('Please enter a valid email address.');\r\n }\r\n //Check password and password confirmation\r\n if (nullOrEmpty(password)) {\r\n hasError = true;\r\n setPasswordError(\"Please enter your password.\");\r\n }\r\n else if (!/.{6,}/.test(password)) {\r\n hasError = true;\r\n setPasswordError(\"Your password cannot be less than 6 characters.\");\r\n }\r\n else if (nullOrEmpty(password2)) {\r\n hasError = true;\r\n setPasswordError2(\"Re-enter password\");\r\n }\r\n else if (password != password2) {\r\n hasError = true;\r\n setPasswordError2(\"Password does not match\");\r\n }\r\n if (!hasError && auth) {\r\n setRequesting(true);\r\n sendRequest(3, 0);\r\n }\r\n };\r\n var sendVerification = function (user) {\r\n sendEmailVerification(user, { url: location.href })\r\n .then(function () {\r\n Swal.fire({\r\n icon: \"success\",\r\n title: \"Registration successful\",\r\n text: \"Your registration was successful. An email to verify your email address has been sent. Please check your email inbox or spam folder for the email sent.\"\r\n })\r\n .then(function () {\r\n setUser(user);\r\n setRequesting(false);\r\n if (onAuthDone)\r\n onAuthDone(user);\r\n })\r\n .catch(function (e) {\r\n setUser(user);\r\n setRequesting(false);\r\n if (onAuthDone)\r\n onAuthDone(user);\r\n });\r\n })\r\n .catch(function (e) {\r\n Swal.fire({\r\n icon: \"success\",\r\n title: \"Registration successful\",\r\n text: \"Your registration was successful.\"\r\n })\r\n .then(function () {\r\n setUser(user);\r\n setRequesting(false);\r\n if (onAuthDone)\r\n onAuthDone(user);\r\n })\r\n .catch(function (e) {\r\n setUser(user);\r\n setRequesting(false);\r\n if (onAuthDone)\r\n onAuthDone(user);\r\n });\r\n });\r\n };\r\n return (React.createElement(VStack, null,\r\n React.createElement(InputBox, { type: TYPES.text, title: \"Fullname\", placeholder: \"Enter your fullname\", mb: \"1rem !important\", value: fullname, onChange: function (e) { return setFullname(e); }, errorMessage: fullnameError }),\r\n React.createElement(InputBox, { type: TYPES.email, title: \"Email\", placeholder: \"Enter your email\", mb: \"1rem !important\", value: email, onChange: function (e) { return setEmail(e); }, errorMessage: emailError }),\r\n React.createElement(InputBox, { type: \"password\", title: \"Password\", placeholder: \"Enter your password\", mb: \"1rem !important\", value: password, onChange: function (e) { setPassword(e); }, errorMessage: passwordError }),\r\n React.createElement(InputBox, { type: \"password\", title: \"Confirm password\", placeholder: \"Re-enter password\", mb: \"1rem !important\", value: password2, onChange: function (e) { setPassword2(e); }, errorMessage: passwordError2 }),\r\n React.createElement(AppButton, { w: \"100%\", alignSelf: \"flex-start\", type: \"submit\", onClick: handleSubmit, disabled: requesting, fontStyle: requesting ? \"italic\" : \"normal\", mt: \"1rem !important\", mb: \"1.5rem !important\" }, requesting && !nullOrEmpty(password) ? \"Please wait...\" : \"Sign up\")));\r\n};\r\nexport default SignUpView;\r\n","import React, { useState } from 'react';\r\nimport DrawerPop from '../widgets/DrawerPop';\r\nimport { Box, Image, Text, VStack } from \"@chakra-ui/react\";\r\nimport SignInView from \"./SignInView\";\r\nimport SignUpView from \"./SignUpView\";\r\nimport { LOGO_PATH } from '../../utils/c';\r\nimport Link from '../widgets/Link';\r\nvar AuthView = function (_a) {\r\n var show = _a.show, signInTitle = _a.signInTitle, signUpTitle = _a.signUpTitle, onSuccess = _a.onSuccess, onError = _a.onError, isDarkMode = _a.isDarkMode, setUser = _a.setUser, config = _a.config;\r\n var _b = useState(true), showSignIn = _b[0], setShowSignIn = _b[1];\r\n var handleAuthLinkClick = function (e) {\r\n e.preventDefault();\r\n setShowSignIn(!showSignIn);\r\n };\r\n if (!show)\r\n return null;\r\n return (React.createElement(DrawerPop, { title: \"\".concat(config === null || config === void 0 ? void 0 : config.appName, \" Authentication\"), isOpen: true, onClose: function () {\r\n onError(new Error(\"\"));\r\n }, placement: \"bottom\", height: \"95vh\", bg: \"#012 !important\", color: \"#fff !important\" },\r\n React.createElement(Box, { minH: \"60vh\", w: \"100%\", maxW: \"700px\", p: { base: \"15px 15px\", md: \"50px 80px\" }, m: \"15px auto\" },\r\n showSignIn ?\r\n React.createElement(React.Fragment, null,\r\n React.createElement(VStack, { w: \"100%\", justifyContent: \"flex-start\", alignItems: \"center\" },\r\n React.createElement(Image, { src: LOGO_PATH, h: \"48px\", w: \"auto\" }),\r\n React.createElement(Text, { as: \"div\", fontSize: \"14px\", mb: \"0.1rem !important\", textAlign: \"center\" }, signInTitle),\r\n React.createElement(Text, { as: \"div\", fontSize: \"14px\", mb: \"1.5rem !important\", textAlign: \"center\" },\r\n \"If you don't have an account yet, \",\r\n React.createElement(Link, { color: \"green.500\", textDecoration: \"underline\", onClick: handleAuthLinkClick, fontWeight: \"bold\" }, \"Sign up here.\"))),\r\n React.createElement(SignInView, { onAuthDone: onSuccess, setUser: setUser, config: config }))\r\n :\r\n React.createElement(React.Fragment, null,\r\n React.createElement(VStack, { w: \"100%\", justifyContent: \"flex-start\", alignItems: \"center\" },\r\n React.createElement(Image, { src: LOGO_PATH, h: \"48px\", w: \"auto\" }),\r\n React.createElement(Text, { as: \"div\", fontSize: \"14px\", mb: \"0.1rem !important\", textAlign: \"center\" }, signUpTitle),\r\n React.createElement(Text, { as: \"div\", fontSize: \"14px\", mb: \"1.5rem !important\", textAlign: \"center\" },\r\n \"If you already have an account, \",\r\n React.createElement(Link, { color: \"green.500\", textDecoration: \"underline\", onClick: handleAuthLinkClick, fontWeight: \"bold\" }, \"Sign in here.\"))),\r\n React.createElement(SignUpView, { onAuthDone: onSuccess, setUser: setUser, config: config })),\r\n React.createElement(Text, { as: \"div\", textAlign: \"center\", fontSize: \"14px\" }, showSignIn ?\r\n React.createElement(React.Fragment, null,\r\n \"Don't have an account yet? \",\r\n React.createElement(Link, { color: \"green.500\", textDecoration: \"underline\", onClick: handleAuthLinkClick }, \"Sign up here.\"))\r\n :\r\n React.createElement(React.Fragment, null,\r\n \"Already have an account? \",\r\n React.createElement(Link, { color: \"green.500\", textDecoration: \"underline\", onClick: handleAuthLinkClick }, \"Log in here.\"))))));\r\n};\r\nexport default AuthView;\r\n","import { __assign, __rest } from \"tslib\";\r\nimport React from \"react\";\r\nimport { Box, HStack, Modal, ModalBody, ModalContent, ModalFooter, ModalHeader, ModalOverlay, Text, VStack } from \"@chakra-ui/react\";\r\nimport { FaTimes } from \"react-icons/fa\";\r\nvar ModalPop = function (_a) {\r\n var bg = _a.bg, color = _a.color, children = _a.children, placement = _a.placement, onClose = _a.onClose, isOpen = _a.isOpen, isClosable = _a.isClosable, title = _a.title, subtitle = _a.subtitle, footer = _a.footer, hideModeSwitch = _a.hideModeSwitch, noHeader = _a.noHeader, w = _a.w, width = _a.width, maxW = _a.maxW, maxWidth = _a.maxWidth, h = _a.h, height = _a.height, maxH = _a.maxH, maxHeight = _a.maxHeight, props = __rest(_a, [\"bg\", \"color\", \"children\", \"placement\", \"onClose\", \"isOpen\", \"isClosable\", \"title\", \"subtitle\", \"footer\", \"hideModeSwitch\", \"noHeader\", \"w\", \"width\", \"maxW\", \"maxWidth\", \"h\", \"height\", \"maxH\", \"maxHeight\"]);\r\n return (React.createElement(Modal, { onClose: onClose ? onClose : function () { }, isOpen: isOpen, isCentered: true },\r\n React.createElement(ModalOverlay, null),\r\n React.createElement(ModalContent, { bg: bg, color: color, minH: h || height || \"50vh\", maxH: maxH || maxHeight || \"100vh\", w: w || width || { base: \"95%\", md: \"650px\" }, maxW: maxW || maxWidth, borderRadius: \"16px !important\" },\r\n noHeader ? null :\r\n React.createElement(ModalHeader, { borderBottomWidth: '1px', w: \"100%\", display: \"flex\", justifyContent: \"space-between\", alignItems: \"center\" },\r\n React.createElement(VStack, { justifyContent: \"flex-start\", alignItems: \"flex-start\" },\r\n React.createElement(Text, { as: \"div\", fontSize: { base: \"1.1rem\", md: \"1.3rem\" }, textTransform: \"capitalize\" }, title),\r\n subtitle ?\r\n React.createElement(Text, { as: \"div\", fontSize: { base: \"11px\" } }, subtitle)\r\n : null),\r\n React.createElement(HStack, null, onClose && (isClosable || isClosable === undefined) ?\r\n React.createElement(Box, { onClick: onClose, cursor: \"pointer\", display: \"block\" },\r\n React.createElement(FaTimes, { size: \"24px\" }))\r\n :\r\n null)),\r\n React.createElement(ModalBody, __assign({}, props), children),\r\n footer ?\r\n React.createElement(ModalFooter, null, footer)\r\n : null)));\r\n};\r\nexport default ModalPop;\r\n","import React, { useState } from 'react';\r\nimport { consoleLog, getColor } from '../../utils/f';\r\nimport { SDK_NAME, STORAGE_KEYS } from '../../utils/c';\r\nimport { signInWithEmailAndPassword } from 'firebase/auth';\r\nimport useFirebase from '.';\r\nimport ModalPop from '../widgets/ModalPop';\r\nimport { VStack } from '@chakra-ui/react';\r\nimport InputBox, { TYPES } from '../widgets/InputBox';\r\nimport AppButton from '../widgets/AppButton';\r\nimport { FaSignInAlt } from 'react-icons/fa';\r\nvar AccessTokenDoor = function (_a) {\r\n var show = _a.show, onSuccess = _a.onSuccess, onError = _a.onError, isDarkMode = _a.isDarkMode, config = _a.config;\r\n var _b = useFirebase(config), auth = _b.auth, user = _b.user, setUser = _b.setUser;\r\n var _c = useState(), password = _c[0], setPassword = _c[1];\r\n var _d = useState(), e = _d[0], setE = _d[1];\r\n var _e = useState(false), authenticating = _e[0], setAuthenticating = _e[1];\r\n var handleSubmit = function () {\r\n setE(\"\");\r\n if (!password) {\r\n setE(\"Please enter your password\");\r\n }\r\n else if (auth && user && user.email && password && password.length > 0) {\r\n setAuthenticating(true);\r\n signInWithEmailAndPassword(auth, user.email, password)\r\n .then(function (auntentication) {\r\n var user = auntentication.user;\r\n if (user) {\r\n setUser(user);\r\n user.getIdToken()\r\n .then(function (token) {\r\n localStorage.setItem(STORAGE_KEYS.LAST_LOGIN_MILLI, \"\".concat(Date.now()));\r\n onSuccess(token, user);\r\n })\r\n .catch(function (e) {\r\n onError(e);\r\n });\r\n }\r\n else {\r\n setE(\"Failed to sign in. Please try again later.\");\r\n setAuthenticating(false);\r\n }\r\n })\r\n .catch(function (e) {\r\n var msg;\r\n if (e.code == \"auth/wrong-password\") {\r\n msg = \"Wrong email address or password. Check your email address and password, then try again.\";\r\n }\r\n else if (e.code == 'auth/user-not-found') {\r\n msg = \"Wrong email address or password. Check your email address and password, then try again.\";\r\n }\r\n else {\r\n msg = e.message;\r\n }\r\n setE(msg);\r\n setAuthenticating(false);\r\n });\r\n }\r\n else {\r\n consoleLog(\"AccessTokenDoor.handleSubmit => \", \"auth:\", auth, \" | user:\", user, \" | userEmail:\", user === null || user === void 0 ? void 0 : user.email, \" | password:\", password, \" | config\", config);\r\n }\r\n };\r\n if (!show)\r\n return null;\r\n return (React.createElement(ModalPop, { bg: getColor(isDarkMode, \"cardBg\"), title: \"Confirm Operation\", isOpen: true, onClose: function () {\r\n onError(new Error(\"Failed to confirm that it's you.\"));\r\n } },\r\n React.createElement(VStack, { p: \"1rem !important\", w: \"100%\", h: \"68vh\", justifyContent: \"flex-start\", alignItems: \"center\" },\r\n React.createElement(InputBox, { zIndex: \"10\", id: \"\".concat(SDK_NAME, \"_pass_confirm\"), key: \"\".concat(SDK_NAME, \"_pass_confirm\"), name: \"pass_confirm\", title: \"Enter Password\", helperText: \"Enter your password to confirm that it's you.\", value: password, type: TYPES.password, mb: 4, onChange: function (password) {\r\n setPassword(password);\r\n }, errorMessage: e }),\r\n React.createElement(AppButton, { alignSelf: \"flex-start\", onClick: handleSubmit, rightIcon: React.createElement(FaSignInAlt, null), disabled: authenticating, fontStyle: authenticating ? \"italic\" : \"normal\" }, authenticating ? \"Please wait...\" : \"Confirm Operation\"))));\r\n};\r\nexport default AccessTokenDoor;\r\n","import { __awaiter, __generator } from \"tslib\";\r\nimport { useEffect, useState } from 'react';\r\nimport axios from 'axios';\r\nimport { consoleLog, isBrowser } from '../../utils/f';\r\nvar MAX_RETRIES = 5;\r\nvar CACHE_KEY = \"sdk_config-metadata\";\r\n// let sdkConfigCache: SdkConfig | null = null;\r\n// let fetchPromise: Promise<SdkConfig | null> | null = null;\r\nvar defaultFactoryData = '{\"etag\":\"W/\\\\\"cfb2c25c60051f77c56bc81c008b2d80\\\\\"\",\"lastModified\":\"Thu, 15 May 2025 01:41:21 GMT\",\"cachedData\":{\"aff_pct\":10,\"app_version_code\":19,\"contact_link\":\"https://t.me/frontbacked\",\"group_link\":\"https://t.me/frontbacked\",\"group_links\":[\"https://t.me/frontbacked\"],\"min_deposit\":7,\"min_vendor_deposit\":7,\"parent_site_home\":\"https://hackbaker.com\",\"ttl_days\":2,\"vendors\":[{\"name\":\"JinmiEx\",\"number\":\"+2348130729216\",\"freq\":1}]}}';\r\nvar useSdkConfig = function (appConfig) {\r\n var _a = useState(isBrowser() ? window.sdkConfigCache : null), sdkConfig = _a[0], setSdkConfig = _a[1];\r\n function parseVendors(vendorsAsTexts) {\r\n return vendorsAsTexts.map(function (text) {\r\n var _a = text.split(','), name = _a[0], number = _a[1], freq = _a[2];\r\n return {\r\n name: name,\r\n number: number,\r\n freq: parseInt(freq),\r\n };\r\n });\r\n }\r\n useEffect(function () {\r\n if (!(appConfig === null || appConfig === void 0 ? void 0 : appConfig.r2Domain))\r\n return;\r\n if (window.sdkConfigCache) {\r\n setSdkConfig(window.sdkConfigCache);\r\n return;\r\n }\r\n if (!window.fetchPromise) {\r\n window.fetchPromise = (function () { return __awaiter(void 0, void 0, void 0, function () {\r\n var attempts, headers, cachedMetadata, _a, etag, lastModified, cachedData, response, config, err_1;\r\n var _b;\r\n return __generator(this, function (_c) {\r\n switch (_c.label) {\r\n case 0:\r\n attempts = 0;\r\n headers = {};\r\n cachedMetadata = localStorage.getItem(CACHE_KEY) || defaultFactoryData;\r\n if (cachedMetadata) {\r\n _a = JSON.parse(cachedMetadata), etag = _a.etag, lastModified = _a.lastModified, cachedData = _a.cachedData;\r\n if (cachedData) {\r\n window.sdkConfigCache = cachedData;\r\n setSdkConfig(cachedData);\r\n //return cachedData;\r\n }\r\n if (etag)\r\n headers[\"If-None-Match\"] = etag;\r\n if (lastModified)\r\n headers[\"If-Modified-Since\"] = lastModified;\r\n }\r\n consoleLog(\"useSdkConfig.headers: \", headers);\r\n _c.label = 1;\r\n case 1:\r\n if (!(attempts < MAX_RETRIES)) return [3 /*break*/, 6];\r\n _c.label = 2;\r\n case 2:\r\n _c.trys.push([2, 4, , 5]);\r\n return [4 /*yield*/, axios.get(\"https://\".concat(appConfig.r2Domain, \"/sdk_config.json\"), {\r\n headers: headers,\r\n validateStatus: function (status) { return status < 500; } // Accept 304 Not Modified\r\n })];\r\n case 3:\r\n response = _c.sent();\r\n if (response.status === 304) {\r\n consoleLog(\"useSdkConfig.notModied: \", response.status);\r\n return [2 /*return*/, window.sdkConfigCache];\r\n }\r\n config = response.data;\r\n config.vendors = parseVendors(response.data.vendors);\r\n window.sdkConfigCache = config;\r\n setSdkConfig(config);\r\n // Save cache metadata\r\n localStorage.setItem(CACHE_KEY, JSON.stringify({\r\n etag: response.headers[\"etag\"],\r\n lastModified: response.headers[\"last-modified\"],\r\n cachedData: config\r\n }));\r\n consoleLog(\"useSdkConfig.refreshed: \", response.data, \" at \".concat(response.headers[\"last-modified\"], \", with etag, \").concat(response.headers[\"etag\"]));\r\n return [2 /*return*/, config];\r\n case 4:\r\n err_1 = _c.sent();\r\n if (((_b = err_1.response) === null || _b === void 0 ? void 0 : _b.status) === 404) {\r\n consoleLog(\"Error fetching SDK config: Resource not found (404): \", err_1);\r\n return [3 /*break*/, 6];\r\n }\r\n attempts++;\r\n if (attempts === MAX_RETRIES) {\r\n consoleLog(\"Error fetching SDK config: \", err_1);\r\n }\r\n return [3 /*break*/, 5];\r\n case 5: return [3 /*break*/, 1];\r\n case 6: return [2 /*return*/, null];\r\n }\r\n });\r\n }); })();\r\n }\r\n window.fetchPromise.then(function (config) {\r\n if (config)\r\n setSdkConfig(config);\r\n });\r\n }, [appConfig === null || appConfig === void 0 ? void 0 : appConfig.r2Domain]);\r\n return sdkConfig;\r\n};\r\nexport default useSdkConfig;\r\n","export var SUSCRIPTION_TYPES = {\r\n monthly: \"monthly\",\r\n quarterly: \"quarterly\",\r\n yearly: \"yearly\"\r\n};\r\n","import { __assign, __rest } from \"tslib\";\r\nimport React from \"react\";\r\nimport { Audio, BallTriangle, Bars, Blocks, Circles, CirclesWithBar, ColorRing, Comment, Discuss, Dna, Grid, FallingLines, FidgetSpinner, Hearts, InfinitySpin, LineWave, MagnifyingGlass, MutatingDots, Oval, ProgressBar, Puff, Radio, RevolvingDot, RotatingSquare, RotatingLines, Rings, TailSpin, ThreeDots, ThreeCircles, Triangle, RotatingTriangles, Watch, Vortex } from \"react-loader-spinner\";\r\nvar loadersMap = {\r\n Audio: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(Audio, __assign({}, props));\r\n },\r\n BallTriangle: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(BallTriangle, __assign({}, props));\r\n },\r\n Bars: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(Bars, __assign({}, props));\r\n },\r\n Blocks: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(Blocks, __assign({}, props));\r\n },\r\n Circles: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(Circles, __assign({}, props));\r\n },\r\n CirclesWithBar: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(CirclesWithBar, __assign({}, props));\r\n },\r\n ColorRing: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(ColorRing, __assign({}, props));\r\n },\r\n Comment: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(Comment, __assign({}, props));\r\n },\r\n Discuss: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(Discuss, __assign({}, props));\r\n },\r\n Dna: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(Dna, __assign({}, props));\r\n },\r\n Grid: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(Grid, __assign({}, props));\r\n },\r\n FallingLines: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(FallingLines, __assign({}, props));\r\n },\r\n FidgetSpinner: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(FidgetSpinner, __assign({}, props));\r\n },\r\n Hearts: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(Hearts, __assign({}, props));\r\n },\r\n InfinitySpin: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(InfinitySpin, __assign({}, props));\r\n },\r\n LineWave: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(LineWave, __assign({}, props));\r\n },\r\n MagnifyingGlass: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(MagnifyingGlass, __assign({}, props));\r\n },\r\n MutatingDots: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(MutatingDots, __assign({}, props));\r\n },\r\n Oval: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(Oval, __assign({}, props));\r\n },\r\n ProgressBar: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(ProgressBar, __assign({}, props));\r\n },\r\n Puff: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(Puff, __assign({}, props));\r\n },\r\n Radio: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(Radio, __assign({}, props));\r\n },\r\n RevolvingDot: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(RevolvingDot, __assign({}, props));\r\n },\r\n RotatingSquare: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(RotatingSquare, __assign({}, props));\r\n },\r\n RotatingLines: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(RotatingLines, __assign({}, props));\r\n },\r\n Rings: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(Rings, __assign({}, props));\r\n },\r\n TailSpin: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(TailSpin, __assign({}, props));\r\n },\r\n ThreeDots: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(ThreeDots, __assign({}, props));\r\n },\r\n ThreeCircles: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(ThreeCircles, __assign({}, props));\r\n },\r\n Triangle: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(Triangle, __assign({}, props));\r\n },\r\n RotatingTriangles: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(RotatingTriangles, __assign({}, props));\r\n },\r\n Watch: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(Watch, __assign({}, props));\r\n },\r\n Vortex: function (_a) {\r\n var props = __rest(_a, []);\r\n return React.createElement(Vortex, __assign({}, props));\r\n }\r\n};\r\nvar Loading = function (_a) {\r\n var type = _a.type, props = __rest(_a, [\"type\"]);\r\n return type != undefined ? (loadersMap[type](__assign({}, props))) : null;\r\n};\r\nLoading.TYPES = {\r\n audio: \"Audio\",\r\n bars: \"Bars\",\r\n ballTrinagle: \"BallTriangle\",\r\n circles: 'Circles',\r\n grid: \"Grid\",\r\n hearts: \"Hearts\",\r\n oval: \"Oval\",\r\n puff: \"Puff\",\r\n rings: 'Rings',\r\n tailSpin: 'TailSpin',\r\n threeDots: \"ThreeDots\",\r\n RotatingLines: \"RotatingLines\",\r\n Dna: \"Dna\"\r\n};\r\nexport default Loading;\r\n","import { HStack } from '@chakra-ui/react';\r\nimport React from 'react';\r\nimport Loading from './Loading';\r\nvar PleaseWaitForX = function () {\r\n return (React.createElement(HStack, { display: \"flex\", w: \"100%\", h: \"120px\", justifyContent: \"center\", alignItems: \"center\", pos: \"relative\", p: \"2rem\" },\r\n React.createElement(Loading, { color: \"green.500\", type: Loading.TYPES.RotatingLines })));\r\n};\r\nexport default PleaseWaitForX;\r\n","import { __assign, __spreadArray } from \"tslib\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { SUSCRIPTION_TYPES } from \"../types\";\r\nimport InputBox, { TYPES } from \"../widgets/InputBox\";\r\nimport { Text, VStack } from \"@chakra-ui/react\";\r\nimport PleaseWaitForX from \"../widgets/PleaseWaitForX\";\r\nimport AppButton from \"../widgets/AppButton\";\r\nimport { amountFormatDefault, consoleLog, getColor } from \"../../utils/f\";\r\nimport { useFrontbacked } from \"../FrontbackedProvider\";\r\nimport DrawerPop from \"../widgets/DrawerPop\";\r\nvar ADMIN_PERMISSIONS = {\r\n canCreateTools: \"can_create_tools\",\r\n canEditTools: \"can_edit_tools\"\r\n};\r\nvar defaultAdminInfoPermissions = {\r\n uid: null,\r\n isAdmin: false,\r\n isToolsEditor: false,\r\n canCreateTools: false,\r\n canEditTools: false\r\n};\r\nvar DownloadType = function (_a) {\r\n var title = _a.title, config = _a.config, removeFreemiumBeforeUpdate = _a.removeFreemiumBeforeUpdate, toolId = _a.toolId, onGetTool = _a.onGetTool, freeTitle = _a.freeTitle, freeMessage = _a.freeMessage, paidTitle = _a.paidTitle, paidMessage = _a.paidMessage, updateMessage = _a.updateMessage, onSuccess = _a.onSuccess, onError = _a.onError, isDarkMode = _a.isDarkMode, renewSubscription = _a.renewSubscription, isFreemium = _a.isFreemium;\r\n var _b = useState(), downloadType = _b[0], setDownloadType = _b[1];\r\n var _c = useState(), downloadTypeError = _c[0], setDownloadTypeError = _c[1];\r\n var _d = useState(), docRules = _d[0], setDocRules = _d[1];\r\n var adminInfo = useFrontbacked().adminInfo;\r\n var _e = useState(true), autoProcessOn = _e[0], setAutoProcessOn = _e[1];\r\n var _f = useState(JSON.parse(JSON.stringify(defaultAdminInfoPermissions))), permission = _f[0], setPermission = _f[1];\r\n useEffect(function () {\r\n if (!(adminInfo === null || adminInfo === void 0 ? void 0 : adminInfo.permissions)) {\r\n setPermission({});\r\n }\r\n else {\r\n var perms = JSON.parse(JSON.stringify(defaultAdminInfoPermissions));\r\n perms.uid = adminInfo.uid;\r\n perms.isAdmin = true;\r\n perms.canCreateTools = adminInfo.permissions.includes(ADMIN_PERMISSIONS.canCreateTools);\r\n perms.canEditTools = adminInfo.permissions.includes(ADMIN_PERMISSIONS.canEditTools);\r\n perms.isToolsEditor = perms.canCreateTools || perms.canEditTools;\r\n setPermission(perms);\r\n }\r\n }, [adminInfo]);\r\n useEffect(function () {\r\n if (onGetTool && toolId) {\r\n var tool = onGetTool(toolId);\r\n consoleLog(\"DownloadType.setDocRules\", tool);\r\n setDocRules(!tool ? null : __assign(__assign({}, (docRules || {})), { allow_freemium: (tool === null || tool === void 0 ? void 0 : tool.allow_freemium) || true, create_price: (tool === null || tool === void 0 ? void 0 : tool.create_price) || 0, update_price: (tool === null || tool === void 0 ? void 0 : tool.update_price) || 0, create_price_is_monthly: (tool === null || tool === void 0 ? void 0 : tool.create_price_is_monthly) || false, yearly_price: tool === null || tool === void 0 ? void 0 : tool.yearly_price, quarterly_price: tool === null || tool === void 0 ? void 0 : tool.quarterly_price }));\r\n }\r\n }, [onGetTool, toolId]);\r\n var download = function () {\r\n setDownloadTypeError(\"\");\r\n if (permission.isToolsEditor && toolId == \"other_tools\") {\r\n onSuccess({\r\n allow_freemium: true,\r\n create_price: 0,\r\n update_price: 0,\r\n is_create: updateMessage ? false : true,\r\n is_freemium: true,\r\n cost: 0\r\n });\r\n }\r\n else if (docRules && downloadType === \"clean\") {\r\n var okResult = {\r\n allow_freemium: docRules.allow_freemium,\r\n create_price: docRules.create_price,\r\n update_price: docRules.update_price,\r\n is_create: updateMessage ? false : true,\r\n is_freemium: false,\r\n cost: docRules.create_price\r\n };\r\n if (docRules.create_price_is_monthly)\r\n okResult.subscription_type = SUSCRIPTION_TYPES.monthly;\r\n onSuccess(okResult);\r\n }\r\n else if (docRules && downloadType === \"clean_quarterly\") {\r\n onSuccess({\r\n allow_freemium: docRules.allow_freemium,\r\n create_price: docRules.quarterly_price || 0,\r\n update_price: docRules.update_price,\r\n is_create: updateMessage ? false : true,\r\n is_freemium: false,\r\n subscription_type: SUSCRIPTION_TYPES.quarterly,\r\n cost: docRules.quarterly_price || 0\r\n });\r\n }\r\n else if (docRules && downloadType === \"clean_yearly\") {\r\n onSuccess({\r\n allow_freemium: docRules.allow_freemium,\r\n create_price: docRules.yearly_price || 0,\r\n update_price: docRules.update_price,\r\n is_create: updateMessage ? false : true,\r\n is_freemium: false,\r\n subscription_type: SUSCRIPTION_TYPES.yearly,\r\n cost: docRules.yearly_price || 0\r\n });\r\n }\r\n else if (docRules && downloadType === \"free\") {\r\n onSuccess({\r\n allow_freemium: docRules.allow_freemium,\r\n create_price: docRules.create_price,\r\n update_price: docRules.update_price,\r\n is_create: true,\r\n is_freemium: true,\r\n cost: 0\r\n });\r\n }\r\n else if (docRules && updateMessage) {\r\n var updatePrice = docRules.create_price_is_monthly && renewSubscription ? docRules.create_price\r\n :\r\n docRules.allow_freemium && isFreemium ? 0 : docRules.update_price;\r\n consoleLog(\"DownloadType.updatePrice.1\", updatePrice, \"isMonth: \", docRules.create_price_is_monthly, \"isRenew\", renewSubscription);\r\n onSuccess({\r\n allow_freemium: docRules.allow_freemium,\r\n create_price: docRules.create_price,\r\n update_price: updatePrice,\r\n is_create: false,\r\n is_freemium: false,\r\n cost: updatePrice\r\n });\r\n }\r\n else {\r\n setDownloadTypeError(\"Please select a type.\");\r\n }\r\n };\r\n useEffect(function () {\r\n consoleLog(\"parsedSvg:templatesUrl.docRules\", permission.isToolsEditor, toolId, docRules);\r\n setAutoProcessOn(true);\r\n if (docRules) {\r\n if (permission.isToolsEditor && toolId == \"other_tools\") {\r\n onSuccess({\r\n allow_freemium: true,\r\n create_price: 0,\r\n update_price: 0,\r\n is_create: updateMessage ? false : true,\r\n is_freemium: true,\r\n cost: 0\r\n });\r\n } //If the type is to determine creation price and freemium is not allowed, \r\n // return result without presenting the freemium option and the item is not subscription modeled\r\n else if (updateMessage && removeFreemiumBeforeUpdate && docRules.create_price > 0 && !docRules.yearly_price && !docRules.quarterly_price) {\r\n consoleLog(\"DownloadType.setDocRules.2\", docRules);\r\n onSuccess({\r\n allow_freemium: docRules.allow_freemium,\r\n create_price: docRules.create_price,\r\n update_price: docRules.update_price,\r\n is_create: false,\r\n is_freemium: false,\r\n cost: docRules.create_price\r\n });\r\n }\r\n //If the type is to determine creation price and freemium is not allowed, \r\n // return result without presenting the freemium option and the item is not subscription modeled\r\n else if (!updateMessage && !docRules.allow_freemium && !docRules.yearly_price && !docRules.quarterly_price) {\r\n consoleLog(\"DownloadType.setDocRules.3\", docRules);\r\n onSuccess({\r\n allow_freemium: docRules.allow_freemium,\r\n create_price: docRules.create_price,\r\n update_price: docRules.update_price,\r\n is_create: true,\r\n is_freemium: false,\r\n cost: docRules.create_price\r\n });\r\n }\r\n //If the type is to determine the creation price and the create price is 0, \r\n // return result without presenting the update price's message\r\n else if (!updateMessage && docRules.create_price == 0) {\r\n consoleLog(\"DownloadType.setDocRules.4\", docRules);\r\n onSuccess({\r\n allow_freemium: docRules.allow_freemium,\r\n create_price: docRules.create_price,\r\n update_price: docRules.update_price,\r\n is_create: true,\r\n is_freemium: false,\r\n cost: docRules.create_price\r\n });\r\n }\r\n //If the type is to determine the update price and the update price is > 0, \r\n // return result without presenting the update price's message\r\n else if (updateMessage && docRules.update_price >= 0 && !removeFreemiumBeforeUpdate && (!renewSubscription || (renewSubscription && !docRules.yearly_price && !docRules.quarterly_price))) {\r\n consoleLog(\"DownloadType.setDocRules.5\", docRules);\r\n var updatePrice = docRules.create_price_is_monthly && renewSubscription ? docRules.create_price\r\n :\r\n docRules.allow_freemium && isFreemium ? 0 : docRules.update_price;\r\n consoleLog(\"DownloadType.updatePrice.2\", updatePrice, \"isMonth: \", docRules.create_price_is_monthly, \"isRenew\", renewSubscription);\r\n onSuccess({\r\n allow_freemium: docRules.allow_freemium,\r\n create_price: docRules.create_price,\r\n update_price: updatePrice,\r\n is_create: false,\r\n is_freemium: false,\r\n cost: updatePrice\r\n });\r\n }\r\n else {\r\n setAutoProcessOn(false);\r\n }\r\n }\r\n }, [docRules]);\r\n if ((permission.isToolsEditor && toolId == \"other_tools\") ||\r\n !toolId || !onGetTool ||\r\n !freeTitle ||\r\n !freeMessage ||\r\n !paidTitle ||\r\n !paidMessage)\r\n return null;\r\n return (React.createElement(DrawerPop, { placement: \"bottom\", bg: getColor(isDarkMode, \"cardBg\"), height: \"75vh\", isOpen: true, title: title, onClose: function () {\r\n onError(new Error(\"\"));\r\n }, footer: autoProcessOn || !docRules ? null :\r\n React.createElement(VStack, { w: \"100%\", mt: \"1rem\", justifyContent: \"flex-start\", alignItems: \"flex-start\" },\r\n downloadTypeError ?\r\n React.createElement(Text, { as: \"div\", color: \"rgb(246, 70, 93)\", mb: 2 }, downloadTypeError)\r\n : null,\r\n React.createElement(AppButton, { onClick: download }, \"Continue\")) }, \r\n //If docRuls has not been loaded\r\n //Or it's an update that needs freemium to be replaced with premium/paid and create price > 0\r\n //Or it's not an update(it's a create) but freemium is not allowed\r\n //Or it's not an update(it's a create) but create price is 0\r\n //Or it's an update but update price is 0\r\n //Or it's an update for subscription renewal\r\n /*!docRules ||*/ /*\r\n (updateMessage && removeFreemiumBeforeUpdate && docRules.create_price > 0) ||\r\n (!updateMessage && !docRules.allow_freemium) ||\r\n (!updateMessage && docRules.create_price == 0) ||\r\n (updateMessage && docRules.update_price == 0) ||\r\n (updateMessage && renewSubscription) ||\r\n (updateMessage && renewSubscription)*/\r\n //(!updateMessage && docRules.create_price == 0) || (updateMessage && !docRules.yearly_price && !docRules.quarterly_price)?\r\n autoProcessOn || !docRules ?\r\n React.createElement(PleaseWaitForX, null)\r\n :\r\n React.createElement(React.Fragment, null, updateMessage && !docRules.yearly_price && !docRules.quarterly_price ?\r\n React.createElement(Text, { mb: \"1rem\", as: \"div\" }, paidMessage.replace(\"{PRICE}\", \"$\".concat(docRules.update_price)))\r\n :\r\n React.createElement(React.Fragment, null,\r\n React.createElement(InputBox, { type: TYPES.radio, value: downloadType, direction: \"column\", errorMessage: downloadTypeError, options: __spreadArray(__spreadArray(__spreadArray(__spreadArray([], (!updateMessage ?\r\n [\r\n {\r\n value: \"free\",\r\n title: freeTitle.replace(\"{PRICE}\", \"\".concat(amountFormatDefault(docRules.create_price, 2, 2, true))),\r\n desc: freeMessage.replace(\"{PRICE}\", \"\".concat(amountFormatDefault(docRules.create_price, 2, 2, true)))\r\n }\r\n ]\r\n :\r\n []), true), [\r\n {\r\n value: \"clean\",\r\n title: paidTitle.replace(\"{PRICE}\", \"\".concat(amountFormatDefault(docRules.create_price, 2, 2, true)).concat(docRules.create_price_is_monthly ? \" for 1 month\" : \"\")),\r\n desc: paidMessage.replace(\"{PRICE}\", \"\".concat(amountFormatDefault(docRules.create_price, 2, 2, true)).concat(docRules.create_price_is_monthly ? \" for 1 month\" : \"\")) + (docRules.create_price_is_monthly ? \" It can be renewed after it expires in 1 month.\" : \"\")\r\n }\r\n ], false), (docRules.create_price_is_monthly && docRules.quarterly_price && docRules.quarterly_price > 0 ?\r\n [\r\n {\r\n value: \"clean_quarterly\",\r\n title: paidTitle.replace(\"{PRICE}\", \"\".concat(amountFormatDefault(docRules.quarterly_price, 2, 2, true), \" for 3 months\")),\r\n desc: paidMessage.replace(\"{PRICE}\", \"\".concat(amountFormatDefault(docRules.quarterly_price, 2, 2, true), \" for 3 months\")) + \" It can be renewed after it expires in 3 months.\"\r\n }\r\n ]\r\n :\r\n []), true), (docRules.create_price_is_monthly && docRules.yearly_price && docRules.yearly_price > 0 ?\r\n [\r\n {\r\n value: \"clean_yearly\",\r\n title: paidTitle.replace(\"{PRICE}\", \"\".concat(amountFormatDefault(docRules.yearly_price, 2, 2, true), \" for 1 year\")),\r\n desc: paidMessage.replace(\"{PRICE}\", \"\".concat(amountFormatDefault(docRules.yearly_price, 2, 2, true), \" for 1 year\")) + \" It can be renewed after it expires in 1 year.\"\r\n }\r\n ]\r\n :\r\n []), true), onOptionName: function (v) {\r\n return React.createElement(VStack, { justifyContent: \"flex-start\", alignItems: \"flex-start\", mb: \"1rem\" },\r\n React.createElement(Text, { as: \"div\", fontSize: \"1.2rem\", fontWeight: \"bold\" }, v.title),\r\n React.createElement(Text, { as: \"div\" }, v.desc));\r\n }, onOptionValue: function (v) { return v.value; }, onChange: function (v) {\r\n setDownloadType(v);\r\n } })))));\r\n};\r\nexport default DownloadType;\r\n","/**\r\n * Removes a specific query string parameter from a URL.\r\n * @param {string} url - The original URL.\r\n * @param {string} queryString - The query string parameter to remove.\r\n * @returns {string} - The updated URL without the specified query string parameter.\r\n */\r\nexport function removeQueryString(url, queryString) {\r\n try {\r\n // Create a URL object\r\n var urlObj = new URL(url);\r\n // Remove the specified query string parameter\r\n urlObj.searchParams.delete(queryString);\r\n // Return the updated URL as a string\r\n return urlObj.toString();\r\n }\r\n catch (error) {\r\n console.error('Invalid URL:', error, url);\r\n return url; // Return the original URL if there's an error\r\n }\r\n}\r\n/**\r\n * Converts an array of objects to a map using a specified attribute as the key.\r\n *\r\n * @param {Array<Object>} arr - The array of objects to be converted.\r\n * @param {string} attr - The attribute to use as the key for the mapping.\r\n * @returns {Object} - An object mapping each unique attribute value to its corresponding item.\r\n */\r\nexport function arrayToMap(attr, arr, keyParser) {\r\n return arr.reduce(function (map, item) {\r\n var key = item[attr];\r\n if (keyParser)\r\n key = keyParser(key);\r\n if (key !== undefined) {\r\n map[key] = item;\r\n }\r\n return map;\r\n }, {});\r\n}\r\nexport function removeUpdateQueryString(url) {\r\n return removeQueryString(url, 'updates');\r\n}\r\nexport var rmUpdates = function (url) {\r\n if (!url)\r\n return null;\r\n try {\r\n return removeUpdateQueryString(url);\r\n }\r\n catch (e) {\r\n return null;\r\n }\r\n};\r\n","import { __awaiter, __generator } from \"tslib\";\r\nimport { useEffect, useState } from \"react\";\r\nimport axios from \"axios\";\r\nimport { arrayToMap, rmUpdates } from \"./utils\";\r\nimport { consoleLog, isBrowser } from \"../../../utils/f\";\r\nvar MAX_RETRIES = 5;\r\nvar CACHE_KEY = \"tools-cache-metadata\";\r\n// let toolsCache: ToolsData | null = null;\r\n// let toolsFetchPromise: Promise<ToolsData | null> | null = null;\r\nvar defaultFactoryData = '{\"etag\":\"W/\\\\\"97cce03e8c6f6c8092dfac11069679e7\\\\\"\",\"lastModified\":\"Fri, 23 May 2025 17:24:27 GMT\",\"cachedData\":{\"totalUpdates\":1,\"lastUpdatedOn\":\"Fri, 23 May 2025 17:24:18 GMT\",\"tools\":[{\"id\":\"U8SL1BvlIb1nxj4JNCNX\",\"siteUrl\":\"/bank\",\"mobileVideoUrl\":null,\"is_static\":true,\"desktopVideoUrl\":null,\"isActive\":true,\"isHidden\":false,\"update_price\":0.1,\"allow_freemium\":true,\"create_price_is_monthly\":true,\"rank\":1,\"icon\":\"Building\",\"siteLogoUrl\":\"/templates/tool-U8SL1BvlIb1nxj4JNCNX.jpg\",\"authorId\":\"f6dcBr3nBJQNLeRwN1ZeHYTZqGC2\",\"youtube\":null,\"name\":\"Online Banking Website\",\"chat_supported\":true,\"create_price\":20000,\"quarterly_price\":50000,\"yearly_price\":150000,\"create_price_discount\":0,\"description\":\"Create an online banking website for your content. No more building a custom online banking website from scratch every time you need to film a banking scene.\",\"x\":[\"authorId,uid,0,0,false,true,false\",\"createdAt,current_time,0,0,false,true,false\",\"updatedAt,current_time,0,0,true,true,true\",\"profilePhoto,string,0,300,true,true,false\",\"email,string,0,64,true,true,false\",\"phone,string,0,32,true,true,false\",\"accountType,string,0,64,true,true,false\",\"gender,string,0,64,true,true,false\",\"maritalStatus,string,0,64,true,true,false\",\"dob,string,0,16,true,true,false\",\"password,string,6,16,true,true,false\",\"pin,number,1000,9999,true,true,false\",\"address,string,0,128,true,true,false\",\"occupation,string,0,64,true,true,false\",\"accountNumber_username,number,9000000000,9999999999,false,true,false\",\"fullname,string,0,64,true,true,false\",\"currencySymbol,string,0,64,true,true,false\",\"disableAccount,boolean,0,8,true,true,false\",\"accountBalance,number,0,999999999999999,true,false,false\",\"autoRenewSubscription,boolean,0,8,true,true,false\",\"credits,array:string:1:200,0,10,true,false,false\",\"debits,array:string:1:200,0,10,true,false,false\",\"totalCredits,number,0,999999999999999,true,false,false\",\"totalDebits,number,0,999999999999999,true,false,false\",\"disableAccountError,string,1,500,true,false,false\",\"noTxGeneration,boolean,0,8,false,false,false\",\"isHidden,boolean,1,8,true,false,false\",\"isActive,boolean,1,8,true,false,false\",\"txProcessingDuration,string,1,64,true,true,false\",\"isInActive,boolean,0,8,true,false,false\"],\"tool_version_code\":7},{\"id\":\"0QZLQQKVTRV3Q6SFAIEA\",\"authorId\":\"f6dcBr3nBJQNLeRwN1ZeHYTZqGC2\",\"createdAt\":{\"_seconds\":1733770038,\"_nanoseconds\":796000000},\"is_static\":false,\"isActive\":true,\"is_freemium\":true,\"icon\":\"ShippingFast\",\"isHidden\":false,\"editables\":\"Shipping_Status@small.select, error_message.textarea, expected_arrival_date.date\",\"templates_url\":\"/templates/templates-awsuv5ba.json?updates=23\",\"youtube\":null,\"mobileVideoUrl\":null,\"desktopVideoUrl\":null,\"allow_freemium\":true,\"chat_supported\":true,\"create_price\":10000,\"message\":\"ID_TITLE == Tracking ID\\\\nLINK == zendcargo.com\\\\nCONTENT == Track your shipment using the tracking ID above at the tracking website: {LINK}.\",\"description\":\"Create a shipping invoice with a tracking website for your content. No more building a custom shipping site from scratch every time you need to film a shipping scene.\",\"update_price\":200,\"updatedAt\":{\"_seconds\":1746816982,\"_nanoseconds\":404000000},\"rank\":2,\"name\":\"Shipping\",\"parent\":\"\",\"x\":[\"authorId,uid,0,0,false,true,false\",\"createdAt,current_time,0,0,false,true,false\",\"expectedArrivalDate,time,0,0,true,true,false\",\"invoiceNumber,string,1,16,false,true,false\",\"packageContent,string,1,64,false,true,false\",\"packageDestinationAddress,string,1,64,false,true,false\",\"packageDestinationEmail,string,1,256,false,true,false\",\"packageDestinationPhone,string,1,16,false,true,false\",\"packageRecipientName,string,1,128,false,true,false\",\"packageWeight,string,1,32,false,true,false\",\"senderEmail,string,1,256,false,true,false\",\"senderName,string,1,128,false,true,false\",\"shipmentDate,time,0,0,false,true,false\",\"shipmentFee,string,0,32,false,true,false\",\"shippingStatus,string,1,32,true,true,false\",\"updatedAt,current_time,0,0,true,true,true\",\"costCurrency,string,0,64,false,false,false\",\"errorMessage,string,1,500,true,false,false\"],\"tool_version_code\":7,\"freemiumDownloadMessage\":\"The shipping invoice will have watermark. The tracking website will also have a \\\\\"fake tracking\\\\\" message.\",\"premiumDownloadMessage\":\"The shipping invoice will be clean with no watermark. The tracking website will also be clean with no \\\\\"fake tracking\\\\\" message.\",\"templates\":[{\"id\":\"hwd7x6ou\",\"name\":\"Shipping Invoice with Tracking Website\",\"logo\":\"https://r2.softbaker.com/templates/templates-awsuv5ba-hwd7x6ou-logo.jpeg\",\"data_url\":\"https://r2.frontbacked.com/templates/templates-awsuv5ba-hwd7x6ou-data.json?updates=1\",\"is_default\":true,\"split_on_download\":false,\"thumbnail\":\"https://r2.frontbacked.com/templates/tools-awsuv5ba-hwd7x6ou-thumbnail.jpg?updates=1&tct=1748021058263\"}]},{\"id\":\"5vCsgJJVsFYhV4dZYQdI\",\"mobileVideoUrl\":null,\"is_static\":true,\"desktopVideoUrl\":null,\"name\":\"Invoice\",\"isActive\":true,\"isHidden\":false,\"allow_freemium\":true,\"siteUrl\":\"/invoice\",\"siteLogoUrl\":\"/templates/tool-5vCsgJJVsFYhV4dZYQdI.jpg\",\"authorId\":\"f6dcBr3nBJQNLeRwN1ZeHYTZqGC2\",\"youtube\":null,\"description\":\"Create a payment invoice easily.\",\"rank\":3,\"update_price\":200,\"create_price\":5000,\"x\":[\"authorId,uid,0,0,false,true,false\",\"createdAt,current_time,0,0,false,true,false\",\"updatedAt,current_time,0,0,true,true,true\",\"companyName,string,2,64,false,true,false\",\"companyAddress,string,2,64,false,true,false\",\"customerName,string,2,64,false,true,false\",\"customerAddress,string,2,64,false,true,false\",\"invoiceNumber,string,2,64,false,true,false\",\"date,time,0,0,false,true,false\",\"currency,string,2,64,false,true,false\",\"items,object_array:{description@string_1_90|quantity@number_1_1000000000000000|price@number_1_1000000000000000},1,6,false,true,false\",\"paymentDetails,string,2,256,false,false,false\",\"vat,number,0,99,false,true,false\",\"logo,string,0,64,false,false,false\",\"waterMarkWithLogo,boolean,0,64,false,true,false\",\"grayScaleWaterMark,boolean,0,64,false,true,false\"],\"tool_version_code\":2},{\"id\":\"tDYsSHDnF58hFCf3nUTk\",\"mobileVideoUrl\":null,\"is_static\":true,\"desktopVideoUrl\":null,\"icon\":\"Coins\",\"authorId\":\"f6dcBr3nBJQNLeRwN1ZeHYTZqGC2\",\"youtube\":null,\"name\":\"Face Swap Video Call\",\"siteUrl\":\"/face-swap-video-call\",\"isActive\":false,\"siteLogoUrl\":\"/templates/tool-tDYsSHDnF58hFCf3nUTk.jpg?v=2\",\"rank\":4,\"isHidden\":false},{\"id\":\"XFXW1s8LlhiJnZKPbdWX\",\"siteUrl\":\"/invest\",\"mobileVideoUrl\":null,\"is_static\":true,\"desktopVideoUrl\":null,\"isActive\":false,\"icon\":\"MoneyBillAlt\",\"siteLogoUrl\":\"/templates/tool-XFXW1s8LlhiJnZKPbdWX.jpg\",\"authorId\":\"f6dcBr3nBJQNLeRwN1ZeHYTZqGC2\",\"youtube\":null,\"name\":\"Investment Website\",\"rank\":5,\"isHidden\":false}]}}';\r\nvar setR2Host = function (url, r2Domain) {\r\n if (!url)\r\n return url;\r\n if (url.startsWith('/')) {\r\n return \"https://\".concat(r2Domain).concat(url);\r\n }\r\n try {\r\n var parsedUrl = new URL(url);\r\n parsedUrl.host = r2Domain;\r\n parsedUrl.protocol = 'https:'; // force https\r\n return parsedUrl.toString();\r\n }\r\n catch (err) {\r\n console.error('Invalid URL:', url);\r\n return url; // fallback\r\n }\r\n};\r\nvar useTools = function (config) {\r\n var _a = useState(isBrowser() ? window.toolsCache : null), data = _a[0], setData = _a[1];\r\n var _b = useState(!isBrowser() || !window.toolsCache), loading = _b[0], setLoading = _b[1];\r\n var _c = useState(null), error = _c[0], setError = _c[1];\r\n var _d = useState(null), toolsById = _d[0], setToolsById = _d[1];\r\n var _e = useState(null), toolsByTemplatesUrl = _e[0], setToolsByTemplatesUrl = _e[1];\r\n useEffect(function () {\r\n if (!(config === null || config === void 0 ? void 0 : config.r2Domain))\r\n return;\r\n if (window.toolsCache) {\r\n setData(window.toolsCache);\r\n setLoading(false);\r\n consoleLog(\"useTools.returns as toolsCache already exist: \", window.toolsCache);\r\n return;\r\n }\r\n if (!window.toolsFetchPromise) {\r\n window.toolsFetchPromise = (function () { return __awaiter(void 0, void 0, void 0, function () {\r\n var attempts, headers, cachedMetadata, _a, etag, lastModified, cachedData, response, err_1;\r\n var _b;\r\n return __generator(this, function (_c) {\r\n switch (_c.label) {\r\n case 0:\r\n attempts = 0;\r\n headers = {};\r\n cachedMetadata = localStorage.getItem(CACHE_KEY) || defaultFactoryData;\r\n if (cachedMetadata) {\r\n _a = JSON.parse(cachedMetadata), etag = _a.etag, lastModified = _a.lastModified, cachedData = _a.cachedData;\r\n if (cachedData) {\r\n window.toolsCache = cachedData;\r\n setData(cachedData);\r\n setLoading(false);\r\n //return cachedData;\r\n }\r\n if (etag)\r\n headers[\"If-None-Match\"] = etag;\r\n if (lastModified)\r\n headers[\"If-Modified-Since\"] = lastModified;\r\n }\r\n consoleLog(\"useTools.headers: \", headers);\r\n _c.label = 1;\r\n case 1:\r\n if (!(attempts < MAX_RETRIES)) return [3 /*break*/, 6];\r\n _c.label = 2;\r\n case 2:\r\n _c.trys.push([2, 4, , 5]);\r\n return [4 /*yield*/, axios.get(\"https://\".concat(config.r2Domain, \"/templates/tools.json\"), {\r\n headers: headers,\r\n validateStatus: function (status) { return status < 500; }, // Accept 304 Not Modified\r\n })];\r\n case 3:\r\n response = _c.sent();\r\n if (response.status === 304) {\r\n setLoading(false);\r\n consoleLog(\"useTools.notModied: \", response.status);\r\n return [2 /*return*/, window.toolsCache];\r\n }\r\n window.toolsCache = response.data;\r\n setData(response.data);\r\n setError(null);\r\n // Save cache metadata\r\n localStorage.setItem(CACHE_KEY, JSON.stringify({\r\n etag: response.headers[\"etag\"],\r\n lastModified: response.headers[\"last-modified\"],\r\n cachedData: response.data,\r\n }));\r\n consoleLog(\"useTools.refreshed: \", response.data, \" at \".concat(response.headers[\"last-modified\"], \", with etag, \").concat(response.headers[\"etag\"]));\r\n return [2 /*return*/, response.data];\r\n case 4:\r\n err_1 = _c.sent();\r\n if (((_b = err_1.response) === null || _b === void 0 ? void 0 : _b.status) === 404) {\r\n setError(\"Resource not found (404)\");\r\n return [3 /*break*/, 6];\r\n }\r\n attempts++;\r\n if (attempts === MAX_RETRIES) {\r\n setError(\"Failed to fetch data after multiple attempts\");\r\n }\r\n return [3 /*break*/, 5];\r\n case 5: return [3 /*break*/, 1];\r\n case 6:\r\n setLoading(false);\r\n return [2 /*return*/, null];\r\n }\r\n });\r\n }); })();\r\n }\r\n window.toolsFetchPromise.then(function (result) {\r\n if (result)\r\n setData(result);\r\n });\r\n }, [config === null || config === void 0 ? void 0 : config.r2Domain]);\r\n useEffect(function () {\r\n if ((data === null || data === void 0 ? void 0 : data.tools) && !loading && !error) {\r\n setToolsById(arrayToMap(\"id\", data.tools || []));\r\n setToolsByTemplatesUrl(arrayToMap(\"templates_url\", data.tools || [], function (url) { return rmUpdates(setR2Host(url, config.r2Domain)); }));\r\n }\r\n }, [data, loading, error]);\r\n var getTool = function (toolId) {\r\n if (!toolsById)\r\n return null;\r\n if (toolId === \"other_tools\") {\r\n return {\r\n id: toolId,\r\n name: \"Tool Editor\",\r\n description: \"Create tools for other users\",\r\n isActive: true,\r\n isHidden: true,\r\n siteLogoUrl: \"\",\r\n siteUrl: \"/tool-editor\",\r\n allow_freemium: true,\r\n create_price: 0,\r\n update_price: 0,\r\n desktopVideoUrl: \"\",\r\n mobileVideoUrl: \"\",\r\n };\r\n }\r\n return toolsById[toolId];\r\n };\r\n return {\r\n loading: loading,\r\n error: error,\r\n totalUpdates: data === null || data === void 0 ? void 0 : data.totalUpdates,\r\n lastUpdatedOn: data === null || data === void 0 ? void 0 : data.lastUpdatedOn,\r\n previouslyUpdatedOn: data === null || data === void 0 ? void 0 : data.previouslyUpdatedOn,\r\n tools: data === null || data === void 0 ? void 0 : data.tools,\r\n toolsById: toolsById,\r\n toolsByTemplatesUrl: toolsByTemplatesUrl,\r\n getTool: getTool,\r\n };\r\n};\r\nexport default useTools;\r\n","import { useEffect, useState } from \"react\";\r\n// Function to get the value of a query parameter from the URL\r\nvar getQueryParamValue = function (param) {\r\n var urlSearchParams = new URLSearchParams(window.location.search);\r\n return urlSearchParams.get(param);\r\n};\r\nvar useReferralId = function () {\r\n var _a = useState(), referralId = _a[0], setReferralId = _a[1];\r\n var getReferralId = function () { return localStorage.getItem('referral_id'); };\r\n useEffect(function () {\r\n // Get the referral_id from the URL query\r\n var refId = getQueryParamValue('ref');\r\n // Check if referral_id is present in the URL\r\n if (refId) {\r\n // Save referral_id to local storage\r\n localStorage.setItem('referral_id', refId);\r\n setReferralId(refId);\r\n }\r\n else {\r\n refId = getReferralId();\r\n if (refId) {\r\n setReferralId(refId);\r\n }\r\n }\r\n }, []); // Run the effect only once on mount\r\n return {\r\n referralId: referralId,\r\n getReferralId: getReferralId\r\n };\r\n};\r\nexport default useReferralId;\r\n","import { __assign } from \"tslib\";\r\nimport React, { useEffect, useState, createContext, useContext } from 'react';\r\n//import \"./FrontbackedProvider.scss\";\r\nimport AuthView from '../Firebase/AuthView';\r\nimport useFirebase from '../Firebase';\r\nimport { consoleLog, downloadSvgAsImage, rejectPromise, resolvePromise, savePromise, updateLogSettings } from '../../utils/f';\r\nimport { PROMISE_ID, SDK_NAME, STORAGE_KEYS, IS_TEST } from '../../utils/c';\r\nimport AccessTokenDoor from '../Firebase/AccessTokenDoor';\r\nimport axios from 'axios';\r\nimport useSdkConfig from '../hooks/useSdkConfig';\r\nimport DownloadType from '../DownloadType';\r\nimport useTools from '../hooks/useTools';\r\nimport { rmUpdates } from '../hooks/useTools/utils';\r\nimport useReferralId from '../hooks/useReferralId';\r\nvar SoftBakerContext = createContext({});\r\nexport { rmUpdates };\r\nvar FrontbackedProvider = function (_a) {\r\n var enableLog = _a.enableLog, children = _a.children, isDarkMode = _a.isDarkMode, disableBlockchainPoll = _a.disableBlockchainPoll, config = _a.config;\r\n var _b = useFirebase(config), auth = _b.auth, db = _b.db, user = _b.user, authLoading = _b.authLoading, setUser = _b.setUser, uploadFile = _b.uploadFile, adminInfo = _b.adminInfo;\r\n var _c = useState(), showAuth = _c[0], setShowAuth = _c[1];\r\n var _d = useState(), signInTitle = _d[0], setSignInTitle = _d[1];\r\n var _e = useState(), signUpTitle = _e[0], setSignUpTitle = _e[1];\r\n var _f = useState(), showAccessTokenDoor = _f[0], setShowAccessTokenDoor = _f[1];\r\n var _g = useState(0), walletTrackerDefaultDepositAmount = _g[0], setWalletTrackerDefaultDepositAmount = _g[1];\r\n var _h = useState(), dowloadTypeProps = _h[0], setDowloadTypeProps = _h[1];\r\n var _j = useState(false), showCreditTransfer = _j[0], setShowCreditTransfer = _j[1];\r\n var sdkConfig = useSdkConfig(config);\r\n var getTool = useTools(config).getTool;\r\n useEffect(function () {\r\n updateLogSettings(enableLog);\r\n }, [enableLog]);\r\n useEffect(function () {\r\n consoleLog(\"\".concat(SDK_NAME, \": sdkConfig/currentTool\"), sdkConfig);\r\n }, [sdkConfig]);\r\n var signIn = function (signInTitle, signUpTitle) {\r\n return new Promise(function (resolve, reject) {\r\n savePromise(PROMISE_ID.signIn, resolve, reject);\r\n setSignInTitle(signInTitle);\r\n setSignUpTitle(signUpTitle);\r\n setShowAuth(true);\r\n });\r\n };\r\n var signOut = function () {\r\n if (auth)\r\n return auth.signOut();\r\n return new Promise(function (resolve, reject) {\r\n resolve(null);\r\n });\r\n };\r\n var getAccessToken = function (maxAgeMilli) {\r\n return new Promise(function (resolve, reject) {\r\n if (!user) {\r\n reject(new Error(\"signed-out\"));\r\n }\r\n else {\r\n var now = new Date();\r\n var lastLoginDate = new Date();\r\n lastLoginDate.setTime(user.metadata.lastLoginAt);\r\n var timeDiff = now.getTime() - lastLoginDate.getTime();\r\n if (!maxAgeMilli || timeDiff <= maxAgeMilli) {\r\n user.getIdToken()\r\n .then(function (token) {\r\n resolve(token);\r\n })\r\n .catch(function (e) {\r\n reject(e);\r\n });\r\n }\r\n else {\r\n savePromise(PROMISE_ID.getAccessToken, resolve, reject);\r\n setShowAccessTokenDoor(true);\r\n }\r\n }\r\n });\r\n };\r\n var createDoc = function (docId, doc, user, staticToolCollection, dynamicToolId) {\r\n return new Promise(function (resolve, reject) {\r\n if (!user) {\r\n reject(new Error(\"Sign In required\"));\r\n }\r\n else {\r\n user.getIdToken().then(function (authToken) {\r\n axios.post(\"\".concat(IS_TEST ? config === null || config === void 0 ? void 0 : config.serverBaseUrlTest : config === null || config === void 0 ? void 0 : config.serverBaseUrlLive, \"/create_doc\"), {\r\n collection: staticToolCollection,\r\n docId: docId,\r\n doc: doc,\r\n dynamicToolId: dynamicToolId\r\n }, {\r\n headers: {\r\n Authorization: authToken,\r\n },\r\n })\r\n .then(function (result) {\r\n resolve(result.data);\r\n })\r\n .catch(function (error) {\r\n var _a;\r\n reject(((_a = error === null || error === void 0 ? void 0 : error.response) === null || _a === void 0 ? void 0 : _a.data) || { error: error === null || error === void 0 ? void 0 : error.message });\r\n });\r\n });\r\n }\r\n });\r\n };\r\n var updateDoc = function (docId, doc, staticToolCollection, dynamicToolId) {\r\n return new Promise(function (resolve, reject) {\r\n if (!user) {\r\n reject(new Error(\"Sign In required\"));\r\n }\r\n else {\r\n user.getIdToken().then(function (authToken) {\r\n axios.post(\"\".concat(IS_TEST ? config === null || config === void 0 ? void 0 : config.serverBaseUrlTest : config === null || config === void 0 ? void 0 : config.serverBaseUrlLive, \"/update_doc\"), {\r\n collection: staticToolCollection,\r\n docId: docId,\r\n doc: doc,\r\n dynamicToolId: dynamicToolId\r\n }, {\r\n headers: {\r\n Authorization: authToken,\r\n },\r\n })\r\n .then(function (result) {\r\n resolve(result.data);\r\n })\r\n .catch(function (error) {\r\n var _a;\r\n reject(((_a = error === null || error === void 0 ? void 0 : error.response) === null || _a === void 0 ? void 0 : _a.data) || { error: error === null || error === void 0 ? void 0 : error.message });\r\n });\r\n });\r\n }\r\n });\r\n };\r\n var showWallet = function (amount) {\r\n setWalletTrackerDefaultDepositAmount(amount);\r\n };\r\n var getDownloadType = function (downloadTypeProps) {\r\n return new Promise(function (resolve, reject) {\r\n savePromise(PROMISE_ID.downloadType, resolve, reject);\r\n setDowloadTypeProps(downloadTypeProps);\r\n });\r\n };\r\n var resources = {\r\n auth: auth,\r\n db: db,\r\n user: user,\r\n authLoading: authLoading,\r\n uploadFile: uploadFile,\r\n adminInfo: adminInfo,\r\n signIn: signIn,\r\n signOut: signOut,\r\n createDoc: createDoc,\r\n updateDoc: updateDoc,\r\n showWallet: showWallet,\r\n sdkConfig: sdkConfig,\r\n contact_link: sdkConfig === null || sdkConfig === void 0 ? void 0 : sdkConfig.contact_link,\r\n group_link: sdkConfig === null || sdkConfig === void 0 ? void 0 : sdkConfig.group_link,\r\n group_links: sdkConfig === null || sdkConfig === void 0 ? void 0 : sdkConfig.group_links,\r\n parent_site_home: sdkConfig === null || sdkConfig === void 0 ? void 0 : sdkConfig.parent_site_home,\r\n aff_pct: sdkConfig === null || sdkConfig === void 0 ? void 0 : sdkConfig.aff_pct,\r\n balanceInUsd: 0,\r\n balancePendingInUsd: 0,\r\n unconfirmedDepositsCount: 0,\r\n downloadSvgAsImage: downloadSvgAsImage,\r\n getDownloadType: getDownloadType\r\n };\r\n return (React.createElement(SoftBakerContext.Provider, { value: resources },\r\n children,\r\n !showAuth ? null :\r\n React.createElement(AuthView, { config: config, isDarkMode: isDarkMode, show: showAuth, setUser: setUser, signInTitle: signInTitle, signUpTitle: signUpTitle, onSuccess: function (user) {\r\n setShowAuth(false);\r\n localStorage.setItem(STORAGE_KEYS.LAST_LOGIN_MILLI, \"\".concat(Date.now()));\r\n resolvePromise(PROMISE_ID.signIn, user);\r\n }, onError: function (error) {\r\n setShowAuth(false);\r\n rejectPromise(PROMISE_ID.signIn, error);\r\n } }),\r\n !showAccessTokenDoor ? null :\r\n React.createElement(AccessTokenDoor, { config: config, isDarkMode: isDarkMode, show: showAccessTokenDoor, onSuccess: function (token) {\r\n setShowAccessTokenDoor(false);\r\n resolvePromise(PROMISE_ID.getAccessToken, token);\r\n }, onError: function (error) {\r\n setShowAccessTokenDoor(false);\r\n rejectPromise(PROMISE_ID.getAccessToken, error);\r\n } }),\r\n React.createElement(DownloadType, __assign({ config: config, isDarkMode: isDarkMode }, (dowloadTypeProps ? dowloadTypeProps : {}), { onGetTool: function (id) {\r\n return getTool(id);\r\n }, onSuccess: function (result) {\r\n setDowloadTypeProps(null);\r\n consoleLog(\"parsedSvg:templatesUrl.<DownloadType\", result, \"dowloadTypeProps: \", dowloadTypeProps);\r\n resolvePromise(PROMISE_ID.downloadType, result);\r\n }, onError: function (error) {\r\n setDowloadTypeProps(null);\r\n consoleLog(\"parsedSvg:templatesUrl.<DownloadType.error\", error, \"dowloadTypeProps: \", dowloadTypeProps);\r\n setDowloadTypeProps(null);\r\n rejectPromise(PROMISE_ID.downloadType, error);\r\n } }))));\r\n};\r\nfunction useFrontbacked() {\r\n return useContext(SoftBakerContext);\r\n}\r\nexport { FrontbackedProvider, useFrontbacked, useSdkConfig, useTools, useReferralId };\r\n"],"names":["theme","navbarShadow","light","dark","overlayBg","selectCoinBg","transferWarningBg","cardBg","cardBgShadow","cardBgInverse","cardBgHover","dividerColor","loadingColor","error","LIB_LOGO","PROMISE_ID","signIn","getAccessToken","deposit","downloadType","requestPayment","creditTransfer","SDK_NAME","STORAGE_KEYS","ENABLED_LOG","concat","SDK_CONFIG","DOC_RULES","LAST_DEPOSIT_BLOCK_NUMBER","LAST_LOGIN_MILLI","LAST_USD_BALANCE","USER","LOGO_PATH","_super","__extends","CustomError","message","code","_newTarget","constructor","_this","call","name","Object","setPrototypeOf","prototype","Error","nullOrEmpty","d","length","isVoid","value","undefined","isValidEmail","email","test","USE_SOFT_BAKER_RESOLVE_PREFIX","USE_SOFT_BAKER_REJECT_PREFIX","savePromise","promiseId","resolve","reject","pollInterval","window","resolvePromise","data","rejectPromise","updateLogSettings","enableLog","localStorage","setItem","consoleLog","args","_i","arguments","console","log","apply","isEnabled","getItem","downloadSvgAsImage","svgString","format","fileName","Promise","svgBlob","Blob","type","svgUrl","URL","createObjectURL","img","Image","onload","canvas","document","createElement","width","height","context","getContext","drawImage","dataUrl","toDataURL","imageBlob","dataURLToBlob","isiPhone","binaryData","iphoneBlob","iphoneUrl","downloadLink","href","download","click","revokeObjectURL","src","dataURL","arr","split","mime","match","bstr","atob","n","u8arr","Uint8Array","charCodeAt","navigator","userAgent","getColor","isDarkMode","colorName","color","amountFormatDefault","v","minFD","maxFD","noZeroDecimals","isNaN","resolvedMaxFD","resolvedMinFD","factor","Math","pow","roundedValue","floor","formatted","toLocaleString","minimumFractionDigits","maximumFractionDigits","includes","_a","intPart","decimalPart","isBrowser","DrawerPop","bg","children","placement","onClose","isOpen","isClosable","closeOnOverlayClick","title","footer","hideModeSwitch","h","maxH","maxHeight","w","maxW","maxWidth","props","__rest","_b","useState","height2","setHeight","_c","width2","setWidth","_d","borderTopLeftRadius","setBorderTopLeftRadius","_e","borderTopRightRadius","setBorderTopRightRadius","_f","borderBottomLeftRadius","setBorderBottomLeftRadius","_g","borderBottomRightRadius","setBorderBottomRightRadius","useEffect","handleBackButton","event","preventDefault","addEventListener","removeEventListener","React","Drawer","DrawerOverlay","DrawerContent","__assign","DrawerHeader","borderBottomWidth","display","justifyContent","alignItems","Text","as","fontSize","base","md","textTransform","HStack","Box","onClick","cursor","FaTimes","size","DrawerBody","DrawerFooter","AppButton","variant","bgColor","outlineColor","leftIcon","rightIcon","loading","disabled","outline","Button","e","p","letterSpacing","textAlign","borderRadius","border","borderColor","boxShadow","opacity","transition","_hover","_disabled","mr","ThreeDots","ml","InfoLabel","info","onInfo","i","Swal","fire","icon","text","confirmButtonText","showCancelButton","flexWrap","mx","mb","marginInlineStart","marginInlineEnd","FaInfoCircle","arraysEqual","array1","array2","l","Array","countryCodes","require","TYPES","number","range","date","phone","password","select","select_tree","textarea","checkbox","checklist","radio","none","location","price","extractNumberFromString","numberRegex","numParts","mantissa","replace","decimals","result","Number","InputBox","id","key","locale","onChange","onFocus","onCheckInfo","onKeyDown","errorMessage","helperText","placeholder","options","onOptionValue","onOptionName","defaultCountry","phoneSelectBg","phoneSelectColor","numberDecimals","hasNegOverflow","numberUnit","rangeMinPlaceholder","minTitle","rangeMaxPlaceholder","maxTitle","maxTextLimit","direction","resize","disableCalendar","disableClock","dateFormat","iconLeft","iconRight","apiKey","mapToSearchRatio","twoDigitCountryCode","inputRef","defaultLatlng","geotype","showPassword","setShowPassword","decimalsSet","setDecimalsSet","parseNum","num","__spreadArray","changeNumber","target","increaseNumber","numberSteps","decreaseNumber","updateRangeValue","useCallback","min","max","parseFloat","countryCodesMap","setCountryCodesMap","countruesToCurrency","customList","setChecklist","isArray","searchActive","setSearchActive","handleInputCheck","getLatestValue","onValueIsLatest","checker","waitTime","setTimeout","check","checkedValue","then","memoizedOptions","useMemo","map","FormControl","isInvalid","FormLabel","InputGroup","InputLeftElement","Select","ref","errorBorderColor","InputRightElement","Input","PhoneInput","background","_focusVisible","getNumberInfo","codes","parsePhoneNumber","countryCode","country","currencyCode","dialingCode","countryCallingCode","inflatedValue","onBlur","px","m","FaEyeSlash","FaEye","FaMinus","FaPlus","alignSelf","pb","Textarea","isDisabled","RegExp","Checkbox","isChecked","checked","Flex","flexDirection","index","sm","selected","all","onlySelected","all_1","selectedService","push","RadioGroup","Stack","Radio","VStack","FormErrorMessage","FormHelperText","memo","Link","useFirebase","config","app","setApp","analytics","setAnalytics","auth","setAuth","db","setDb","user","setUser","adminInfo","setAdminInfo","authLoading","setAuthLoading","_h","storage","setStorage","firebaseConfig","theApp","initializeApp","theDb","getFirestore","theAuth","getAuth","theAnalytics","getAnalytics","theStorage","getStorage","unsubscribe","onAuthStateChanged","onSnapshot","doc","collection","uid","docSnapshot","exists","uploadFile","file","pathToFile","fileRef","storageRef","uploadBytes","snapshot","getDownloadURL","url","SignInView","onAuthDone","setEmail","emailError","setEmailError","setPassword","passwordError","setPasswordError","requesting","setRequesting","clearErrors","forgotPass","pass_1","codeSettings","sendPasswordResetEmail","msg","sendRequest","maxRetries","triedTimes","signInWithEmailAndPassword","userCredential","handleSubmit","hasError","fontStyle","mt","SignUpView","fullname","setFullname","password2","setPassword2","fullnameError","setFullnameError","_j","_k","passwordError2","setPasswordError2","_l","createUserWithEmailAndPassword","updateProfile","displayName","sendVerification","__awaiter","__generator","label","trys","sent","e_1","e_2","sendEmailVerification","AuthView","show","signInTitle","signUpTitle","onSuccess","onError","showSignIn","setShowSignIn","handleAuthLinkClick","appName","minH","Fragment","textDecoration","fontWeight","ModalPop","subtitle","noHeader","Modal","isCentered","ModalOverlay","ModalContent","ModalHeader","ModalBody","ModalFooter","AccessTokenDoor","setE","authenticating","setAuthenticating","auntentication","getIdToken","token","Date","now","zIndex","FaSignInAlt","MAX_RETRIES","CACHE_KEY","defaultFactoryData","useSdkConfig","appConfig","sdkConfigCache","sdkConfig","setSdkConfig","parseVendors","vendorsAsTexts","freq","parseInt","r2Domain","fetchPromise","attempts","headers","cachedMetadata","etag","lastModified","cachedData","response","err_1","JSON","parse","axios","get","validateStatus","status","vendors","stringify","SUSCRIPTION_TYPES","monthly","quarterly","yearly","loadersMap","Audio","BallTriangle","Bars","Blocks","Circles","CirclesWithBar","ColorRing","Comment","Discuss","Dna","Grid","FallingLines","FidgetSpinner","Hearts","InfinitySpin","LineWave","MagnifyingGlass","MutatingDots","Oval","ProgressBar","Puff","RevolvingDot","RotatingSquare","RotatingLines","Rings","TailSpin","ThreeCircles","Triangle","RotatingTriangles","Watch","Vortex","Loading","audio","bars","ballTrinagle","circles","grid","hearts","oval","puff","rings","tailSpin","threeDots","PleaseWaitForX","pos","ADMIN_PERMISSIONS","canCreateTools","canEditTools","defaultAdminInfoPermissions","isAdmin","isToolsEditor","DownloadType","removeFreemiumBeforeUpdate","toolId","onGetTool","freeTitle","freeMessage","paidTitle","paidMessage","updateMessage","renewSubscription","isFreemium","setDownloadType","downloadTypeError","setDownloadTypeError","docRules","setDocRules","useFrontbacked","autoProcessOn","setAutoProcessOn","permission","setPermission","permissions","perms","tool","allow_freemium","create_price","update_price","create_price_is_monthly","yearly_price","quarterly_price","is_create","is_freemium","cost","okResult","subscription_type","updatePrice","desc","removeQueryString","queryString","urlObj","searchParams","toString","arrayToMap","attr","keyParser","reduce","item","removeUpdateQueryString","rmUpdates","setR2Host","startsWith","parsedUrl","host","protocol","err","useTools","toolsCache","setData","setLoading","setError","toolsById","setToolsById","toolsByTemplatesUrl","setToolsByTemplatesUrl","toolsFetchPromise","tools","getTool","description","isActive","isHidden","siteLogoUrl","siteUrl","desktopVideoUrl","mobileVideoUrl","totalUpdates","lastUpdatedOn","previouslyUpdatedOn","getQueryParamValue","param","urlSearchParams","URLSearchParams","search","useReferralId","referralId","setReferralId","getReferralId","refId","SoftBakerContext","createContext","FrontbackedProvider","disableBlockchainPoll","showAuth","setShowAuth","setSignInTitle","setSignUpTitle","showAccessTokenDoor","setShowAccessTokenDoor","walletTrackerDefaultDepositAmount","setWalletTrackerDefaultDepositAmount","dowloadTypeProps","setDowloadTypeProps","showCreditTransfer","setShowCreditTransfer","signOut","createDoc","docId","staticToolCollection","dynamicToolId","authToken","post","serverBaseUrlLive","Authorization","updateDoc","showWallet","amount","getDownloadType","downloadTypeProps","resources","contact_link","group_link","group_links","parent_site_home","aff_pct","balanceInUsd","balancePendingInUsd","unconfirmedDepositsCount","Provider","useContext"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../node_modules/tslib/tslib.es6.mjs","../../src/theme.ts","../../src/utils/base64Images.ts","../../src/utils/c.ts","../../src/utils/CustomError.ts","../../src/utils/f.ts","../../src/components/widgets/DrawerPop/index.tsx","../../src/components/widgets/AppButton.tsx","../../src/components/widgets/InfoLabel.tsx","../../src/components/widgets/InputBox/utils.ts","../../src/components/widgets/InputBox/index.tsx","../../src/components/widgets/Link.tsx","../../src/components/Firebase/index.ts","../../src/components/Firebase/SignInView.tsx","../../src/components/Firebase/SignUpView.tsx","../../src/components/Firebase/AuthView.tsx","../../src/components/widgets/ModalPop/index.tsx","../../src/components/Firebase/AccessTokenDoor.tsx","../../src/components/hooks/useSdkConfig.ts","../../src/components/types.ts","../../src/components/widgets/Loading.tsx","../../src/components/widgets/PleaseWaitForX.tsx","../../src/components/DownloadType/index.tsx","../../src/components/hooks/useTools/utils.ts","../../src/components/hooks/useTools/index.ts","../../src/components/hooks/useReferralId.ts","../../src/components/FrontbackedProvider/index.tsx"],"sourcesContent":["/******************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\n/* global Reflect, Promise, SuppressedError, Symbol */\n\nvar extendStatics = function(d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n};\n\nexport function __extends(d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n}\n\nexport var __assign = function() {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n }\n return __assign.apply(this, arguments);\n}\n\nexport function __rest(s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n}\n\nexport function __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\n\nexport function __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n}\n\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for (var i = decorators.length - 1; i >= 0; i--) {\n var context = {};\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\n if (kind === \"accessor\") {\n if (result === void 0) continue;\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n }\n else if (_ = accept(result)) {\n if (kind === \"field\") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n};\n\nexport function __runInitializers(thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for (var i = 0; i < initializers.length; i++) {\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n }\n return useValue ? value : void 0;\n};\n\nexport function __propKey(x) {\n return typeof x === \"symbol\" ? x : \"\".concat(x);\n};\n\nexport function __setFunctionName(f, name, prefix) {\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\n};\n\nexport function __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\n}\n\nexport function __awaiter(thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n}\n\nexport function __generator(thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n}\n\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\n\nexport function __exportStar(m, o) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\n}\n\nexport function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n}\n\nexport function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n}\n\n/** @deprecated */\nexport function __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n}\n\n/** @deprecated */\nexport function __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n}\n\nexport function __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\n\nexport function __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n}\n\nexport function __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n}\n\nexport function __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\n}\n\nexport function __asyncValues(o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n}\n\nexport function __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n};\n\nvar __setModuleDefault = Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n};\n\nexport function __importStar(mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n}\n\nexport function __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n}\n\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n}\n\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n}\n\nexport function __classPrivateFieldIn(state, receiver) {\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\n}\n\nexport function __addDisposableResource(env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\n var dispose;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\n dispose = value[Symbol.dispose];\n }\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\n env.stack.push({ value: value, dispose: dispose, async: async });\n }\n else if (async) {\n env.stack.push({ async: true });\n }\n return value;\n}\n\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\n\nexport function __disposeResources(env) {\n function fail(e) {\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\n env.hasError = true;\n }\n function next() {\n while (env.stack.length) {\n var rec = env.stack.pop();\n try {\n var result = rec.dispose && rec.dispose.call(rec.value);\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\n }\n catch (e) {\n fail(e);\n }\n }\n if (env.hasError) throw env.error;\n }\n return next();\n}\n\nexport default {\n __extends,\n __assign,\n __rest,\n __decorate,\n __param,\n __metadata,\n __awaiter,\n __generator,\n __createBinding,\n __exportStar,\n __values,\n __read,\n __spread,\n __spreadArrays,\n __spreadArray,\n __await,\n __asyncGenerator,\n __asyncDelegator,\n __asyncValues,\n __makeTemplateObject,\n __importStar,\n __importDefault,\n __classPrivateFieldGet,\n __classPrivateFieldSet,\n __classPrivateFieldIn,\n __addDisposableResource,\n __disposeResources,\n};\n","export var theme = {\n navbarShadow: {\n light: \"0px 5px 21px -5px #CDD1E1\",\n dark: \"0px 5px 21px -5px #0D1121\"\n },\n overlayBg: {\n light: \"rgba(0, 0, 0, 0.5)\",\n dark: \"rgba(35, 35, 55, 0.5)\"\n },\n selectCoinBg: {\n light: \"#f9f9f9\",\n dark: \"#292929\"\n },\n transferWarningBg: {\n light: \"#FFFBEB\",\n dark: \"#6F4B3B\"\n },\n cardBg: {\n light: \"rgb(255, 255, 255)\",\n dark: \"rgb(24, 26, 32)\"\n },\n cardBgShadow: {\n light: \"rgb(255, 255, 255)\",\n dark: \"rgb(24, 26, 32)\"\n },\n cardBgInverse: {\n light: \"rgb(24, 26, 32)\",\n dark: \"rgb(255, 255, 255)\"\n },\n cardBgHover: {\n light: \"rgb(245, 245, 245)\",\n dark: \"rgb(34, 36, 42)\"\n },\n dividerColor: {\n light: \"gray.200\",\n dark: \"gray.800\"\n },\n loadingColor: {\n light: \"#1A202C\",\n dark: \"#E2E8F0\"\n },\n error: {\n light: \"#800\",\n dark: \"#800\"\n },\n};\nexport default theme;\n","export var LIB_LOGO = \"data:image/png;base64,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\";\nexport var BNB_LOGO = \"data:image/png;base64,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\";\nexport var ETH_LOGO = \"data:image/png;base64,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\";\nexport var TOOL_FALLBACK_IMAGE = \"data:image/png;base64,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\";\n","import { LIB_LOGO, } from \"./base64Images\";\nexport var FIREBASE_CONFIG = {\n apiKey: \"AIzaSyBykIOPWfKmDrAC6jly4p1Hl_NsaRSntFo\",\n authDomain: \"my-project-223a2.firebaseapp.com\",\n projectId: \"my-project-223a2\",\n storageBucket: \"my-project-223a2.appspot.com\",\n messagingSenderId: \"121945247533\",\n appId: \"1:121945247533:web:408269d255291ea70b8da4\",\n measurementId: \"G-2L4CPV9S32\"\n};\nexport var PROMISE_ID = {\n signIn: \"signIn\",\n getAccessToken: \"getAccessToken\",\n deposit: \"deposit\",\n downloadType: \"downloadType\",\n requestPayment: \"requestPayment\",\n creditTransfer: \"creditTransfer\"\n};\nexport var IS_TEST = false;\n//export const SERVER_BASE_URL_TEST = \"https://server.frontbacked.com\"//\"http://localhost:3001\"\n//export const SERVER_BASE_URL_LIVE = \"https://server.frontbacked.com\"\nexport var PRECISION = 5;\nexport var SDK_RETRY_INTERVAL_MINS = 0.2;\nexport var PRICE_FETCH_INTERVAL_MINS = 10;\nexport var MIN_BLOCK_CHECK_INTERVAL_SECONDS = 5;\nexport var MIN_REFERAAL_WITHDRAWAL = 20;\nexport var SDK_NAME = \"APP\";\nexport var SDK_SITE = \"https://frontbacked.com\";\nexport var STORE_FRAME_ID = \"\".concat(SDK_NAME, \"_storeframe\");\nexport var STORAGE_KEYS = {\n ENABLED_LOG: \"\".concat(SDK_NAME, \"_ENABLED_LOG\"),\n SDK_CONFIG: \"\".concat(SDK_NAME, \"_SDK_CONFIG\"),\n DOC_RULES: \"\".concat(SDK_NAME, \"_DOC_RULES\"),\n LAST_DEPOSIT_BLOCK_NUMBER: \"\".concat(SDK_NAME, \"_LAST_DEPOSIT_BLOCK_NUMBER\"),\n LAST_LOGIN_MILLI: \"\".concat(SDK_NAME, \"_LAST_LOGIN_MILLI\"),\n LAST_USD_BALANCE: \"\".concat(SDK_NAME, \"_LAST_USD_BALANCE\"),\n USER: \"\".concat(SDK_NAME, \"_USER\")\n};\nexport var LOGO_PATH = LIB_LOGO;\nexport var MAX_RISKY_OPERATION_LOGIN_AGE_IN_SECONDS = 300;\nexport var REF_PCT = 20;\nexport var ERROR_X = \"An error occurred. Please try again later.\";\n","import { __extends } from \"tslib\";\nvar CustomError = /** @class */ (function (_super) {\n __extends(CustomError, _super);\n function CustomError(message, code) {\n var _newTarget = this.constructor;\n var _this = _super.call(this, message) || this;\n _this.name = 'CustomError';\n _this.code = code;\n // Ensure the correct prototype chain\n Object.setPrototypeOf(_this, _newTarget.prototype);\n return _this;\n }\n return CustomError;\n}(Error));\nexport default CustomError;\n","import { __awaiter, __generator } from \"tslib\";\nimport theme from \"../theme\";\nimport { ERROR_X, STORAGE_KEYS } from \"./c\";\nimport CustomError from \"./CustomError\";\nexport var nullOrEmpty = function (d) {\n return !d || d.length == 0;\n};\nexport var isVoid = function (value) {\n return value === undefined || value === null;\n};\nexport var isValidEmail = function (email) {\n return /^(([^<>()[\\]\\\\.,;:\\s@\\\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/.test(email);\n};\nexport var isValidPhone = function (phone) {\n return /^[\\+]?[(]?[0-9]{3}[)]?[-\\s\\.]?[0-9]{3}[-\\s\\.]?[0-9]{4,6}$/.test(phone);\n};\nexport var USE_SOFT_BAKER_RESOLVE_PREFIX = \"USE_SOFT_BAKER_RESOLVE_\";\nexport var USE_SOFT_BAKER_REJECT_PREFIX = \"USE_SOFT_BAKER_REJECT_\";\nexport var promiseResolvePending = function (promiseId) {\n return window[\"\".concat(USE_SOFT_BAKER_RESOLVE_PREFIX).concat(promiseId)] != undefined;\n};\nexport var promiseRejectPending = function (promiseId) {\n return window[\"\".concat(USE_SOFT_BAKER_REJECT_PREFIX).concat(promiseId)] != undefined;\n};\nexport var savePromise = function (promiseId, resolve, reject, pollInterval) {\n if (pollInterval === void 0) { pollInterval = 200; }\n window[\"\".concat(USE_SOFT_BAKER_RESOLVE_PREFIX).concat(promiseId)] = resolve;\n window[\"\".concat(USE_SOFT_BAKER_REJECT_PREFIX).concat(promiseId)] = reject;\n};\nexport var resolvePromise = function (promiseId, data) {\n if (window[\"\".concat(USE_SOFT_BAKER_RESOLVE_PREFIX).concat(promiseId)]) {\n window[\"\".concat(USE_SOFT_BAKER_RESOLVE_PREFIX).concat(promiseId)](data);\n delete window[\"\".concat(USE_SOFT_BAKER_RESOLVE_PREFIX).concat(promiseId)];\n delete window[\"\".concat(USE_SOFT_BAKER_REJECT_PREFIX).concat(promiseId)];\n }\n};\nexport var rejectPromise = function (promiseId, error) {\n if (window[\"\".concat(USE_SOFT_BAKER_REJECT_PREFIX).concat(promiseId)]) {\n window[\"\".concat(USE_SOFT_BAKER_REJECT_PREFIX).concat(promiseId)](error);\n delete window[\"\".concat(USE_SOFT_BAKER_RESOLVE_PREFIX).concat(promiseId)];\n delete window[\"\".concat(USE_SOFT_BAKER_REJECT_PREFIX).concat(promiseId)];\n }\n};\nexport var updateLogSettings = function (enableLog) {\n if (enableLog) {\n localStorage.setItem(STORAGE_KEYS.ENABLED_LOG, \"true\");\n }\n else {\n localStorage.setItem(STORAGE_KEYS.ENABLED_LOG, \"false\");\n }\n};\nexport var consoleLog = function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n // Check if the environment is not Windows\n if (typeof window === 'undefined') {\n console.log.apply(console, args);\n return;\n }\n // Check if logging has been disabled\n var isEnabled = localStorage.getItem(STORAGE_KEYS.ENABLED_LOG) === \"true\";\n // If not disabled and not in a Windows environment, call the normal console.log\n if (isEnabled) {\n console.log.apply(console, args);\n }\n};\nexport var whatsappLink = function (phoneNumber, message, isWeb) {\n if (message) {\n //message = `?text=${message.replaceAll(\"\\n\", \"%0A\")}`.replaceAll(\" \", \"%20\")/*\n try {\n message = \"\".concat(message.replace(/\\n/g, \"%0A\")).replace(/[ ]/g, \"%20\");\n }\n catch (e) { }\n }\n return isWeb ? \"https://web.whatsapp.com/send/?phone=\".concat(phoneNumber || \"\", \"&text=\").concat(message || \"\", \"&type=phone_number&app_absent=0\")\n :\n \"https://wa.me/\".concat(phoneNumber || \"\", \"?text=\").concat(message || \"\");\n};\nvar isAppleMobileDevice = function () {\n if (typeof navigator === \"undefined\")\n return false;\n var userAgent = navigator.userAgent || \"\";\n var platform = navigator.platform || \"\";\n var maxTouchPoints = navigator.maxTouchPoints || 0;\n return /iPad|iPhone|iPod/i.test(userAgent) || (platform === \"MacIntel\" && maxTouchPoints > 1);\n};\nvar openBlobInBrowser = function (blob, fileName, openInNewTab) {\n if (openInNewTab === void 0) { openInNewTab = false; }\n var objectUrl = URL.createObjectURL(blob);\n var downloadLink = document.createElement(\"a\");\n downloadLink.href = objectUrl;\n downloadLink.rel = \"noopener\";\n downloadLink.style.display = \"none\";\n if (openInNewTab) {\n downloadLink.target = \"_blank\";\n }\n else {\n downloadLink.download = fileName;\n }\n document.body.appendChild(downloadLink);\n downloadLink.click();\n document.body.removeChild(downloadLink);\n setTimeout(function () { return URL.revokeObjectURL(objectUrl); }, 30000);\n};\nvar shareBlob = function (blob, fileName) { return __awaiter(void 0, void 0, void 0, function () {\n var shareApi, canShare, file, shareData;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n shareApi = typeof navigator !== \"undefined\" ? navigator.share : null;\n canShare = typeof navigator !== \"undefined\" ? navigator.canShare : null;\n if (!shareApi || typeof File === \"undefined\")\n return [2 /*return*/, false];\n file = new File([blob], fileName, { type: blob.type || \"application/octet-stream\" });\n shareData = { files: [file], title: fileName };\n if (canShare && !canShare.call(navigator, shareData))\n return [2 /*return*/, false];\n return [4 /*yield*/, shareApi.call(navigator, shareData)];\n case 1:\n _a.sent();\n return [2 /*return*/, true];\n }\n });\n}); };\nvar promptAppleMobileSave = function (blob, fileName) {\n return new Promise(function (resolve, reject) {\n var overlay = document.createElement(\"div\");\n overlay.setAttribute(\"role\", \"dialog\");\n overlay.setAttribute(\"aria-modal\", \"true\");\n overlay.style.cssText = [\n \"position:fixed\",\n \"inset:0\",\n \"z-index:2147483647\",\n \"display:flex\",\n \"align-items:center\",\n \"justify-content:center\",\n \"padding:24px\",\n \"background:rgba(15,23,42,0.58)\",\n \"font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif\",\n ].join(\";\");\n var dialog = document.createElement(\"div\");\n dialog.style.cssText = [\n \"width:min(360px,100%)\",\n \"border-radius:12px\",\n \"background:#fff\",\n \"box-shadow:0 20px 60px rgba(15,23,42,0.3)\",\n \"padding:18px\",\n \"color:#111827\",\n \"text-align:left\",\n ].join(\";\");\n var title = document.createElement(\"div\");\n title.textContent = \"File ready\";\n title.style.cssText = \"font-size:17px;font-weight:700;margin-bottom:8px;\";\n var body = document.createElement(\"div\");\n body.textContent = \"Choose where to save this file.\";\n body.style.cssText = \"font-size:14px;line-height:1.45;color:#4b5563;margin-bottom:16px;\";\n var actions = document.createElement(\"div\");\n actions.style.cssText = \"display:flex;gap:10px;justify-content:flex-end;\";\n var cancelButton = document.createElement(\"button\");\n cancelButton.type = \"button\";\n cancelButton.textContent = \"Cancel\";\n cancelButton.style.cssText = [\n \"border:0\",\n \"border-radius:8px\",\n \"padding:10px 14px\",\n \"background:#f3f4f6\",\n \"color:#111827\",\n \"font-size:14px\",\n \"font-weight:600\",\n ].join(\";\");\n var saveButton = document.createElement(\"button\");\n saveButton.type = \"button\";\n saveButton.textContent = \"Save File\";\n saveButton.style.cssText = [\n \"border:0\",\n \"border-radius:8px\",\n \"padding:10px 14px\",\n \"background:#2563eb\",\n \"color:#fff\",\n \"font-size:14px\",\n \"font-weight:700\",\n ].join(\";\");\n var cleanup = function () {\n document.body.removeChild(overlay);\n };\n cancelButton.onclick = function () {\n cleanup();\n reject(new Error(\"File save was cancelled.\"));\n };\n saveButton.onclick = function () { return __awaiter(void 0, void 0, void 0, function () {\n var shared, error_1;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n saveButton.setAttribute(\"disabled\", \"true\");\n _a.label = 1;\n case 1:\n _a.trys.push([1, 3, , 4]);\n return [4 /*yield*/, shareBlob(blob, fileName)];\n case 2:\n shared = _a.sent();\n if (!shared)\n openBlobInBrowser(blob, fileName, true);\n cleanup();\n resolve();\n return [3 /*break*/, 4];\n case 3:\n error_1 = _a.sent();\n cleanup();\n if ((error_1 === null || error_1 === void 0 ? void 0 : error_1.name) === \"AbortError\") {\n reject(new Error(\"File save was cancelled.\"));\n return [2 /*return*/];\n }\n openBlobInBrowser(blob, fileName, true);\n resolve();\n return [3 /*break*/, 4];\n case 4: return [2 /*return*/];\n }\n });\n }); };\n actions.appendChild(cancelButton);\n actions.appendChild(saveButton);\n dialog.appendChild(title);\n dialog.appendChild(body);\n dialog.appendChild(actions);\n overlay.appendChild(dialog);\n document.body.appendChild(overlay);\n });\n};\nvar downloadBlob = function (blob, fileName) { return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!isAppleMobileDevice()) return [3 /*break*/, 2];\n return [4 /*yield*/, promptAppleMobileSave(blob, fileName)];\n case 1:\n _a.sent();\n return [2 /*return*/];\n case 2:\n openBlobInBrowser(blob, fileName);\n return [2 /*return*/];\n }\n });\n}); };\nexport var downloadSvgAsImage = function (svgString, format, fileName) {\n if (format === void 0) { format = 'png'; }\n if (fileName === void 0) { fileName = 'downloadedImage'; }\n return new Promise(function (resolve, reject) {\n var svgBlob = new Blob([svgString], { type: 'image/svg+xml' });\n var svgUrl = URL.createObjectURL(svgBlob);\n var img = new Image();\n img.crossOrigin = \"anonymous\";\n img.onload = function () {\n return __awaiter(this, void 0, void 0, function () {\n var canvas, context, dataUrl, imageBlob, error_2;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n _a.trys.push([0, 4, , 5]);\n canvas = document.createElement('canvas');\n canvas.width = img.width;\n canvas.height = img.height;\n context = canvas.getContext('2d');\n if (!context) return [3 /*break*/, 2];\n context.drawImage(img, 0, 0);\n dataUrl = canvas.toDataURL(\"image/\".concat(format));\n imageBlob = dataURLToBlob(dataUrl);\n URL.revokeObjectURL(svgUrl);\n return [4 /*yield*/, downloadBlob(imageBlob, \"\".concat(fileName, \".\").concat(format))];\n case 1:\n _a.sent();\n resolve(dataUrl);\n return [3 /*break*/, 3];\n case 2:\n reject(new Error(\"Unsupported Browser. Please try to download from another browser.\"));\n _a.label = 3;\n case 3: return [3 /*break*/, 5];\n case 4:\n error_2 = _a.sent();\n URL.revokeObjectURL(svgUrl);\n reject(error_2);\n return [3 /*break*/, 5];\n case 5: return [2 /*return*/];\n }\n });\n });\n };\n img.onerror = function () {\n URL.revokeObjectURL(svgUrl);\n reject(new Error(\"Failed to render the SVG for download.\"));\n };\n img.src = svgUrl;\n });\n};\nfunction dataURLToBlob(dataURL) {\n var arr = dataURL.split(',');\n var mime = arr[0].match(/:(.*?);/)[1];\n var bstr = atob(arr[1]);\n var n = bstr.length;\n var u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new Blob([u8arr], { type: mime });\n}\nexport function extractNumberFromString(text) {\n if (!text)\n return null;\n text = \"\".concat(text);\n // Define a regular expression to match numbers with decimals and optional commas as thousands separators\n var numberRegex = /\\D+/g;\n var numParts = text.split(\".\");\n var mantissa = numParts[0].replace(numberRegex, '');\n var decimals = numParts.length > 1 ? numParts[1].replace(numberRegex, '') : null;\n if (mantissa && mantissa.length > 0) {\n var result = mantissa;\n if (decimals)\n result += \".\".concat(decimals);\n return Number(result);\n }\n return null;\n}\nexport var getColor = function (isDarkMode, colorName) {\n var color = theme[colorName];\n if (color) {\n return isDarkMode === true ? color.dark : color.light;\n }\n else {\n return \"\";\n }\n};\nexport var decimalsText = function (d) {\n // Check if the input is a non-negative integer\n if (Number.isInteger(d) && d >= 0) {\n // Use string concatenation to create the string representation\n return '1' + '0'.repeat(d);\n }\n else {\n // Handle invalid input, you might want to throw an error or handle it differently\n throw new Error('Input must be a non-negative integer.');\n }\n};\nexport var getError = function (error, defaultMessage) {\n var _a, _b;\n var message = defaultMessage, code = \"none\";\n if (error.response) {\n // The request was made and the server responded with a status code\n // that falls out of the range of 2xx\n message = ((_b = (_a = error.response) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.error) || defaultMessage || ERROR_X;\n code = error.response.data.code || \"none\";\n }\n else if (error.request) {\n // The request was made but no response was received\n message = \"No response received from the server. Try again later\";\n }\n else if (error.message) {\n // Something happened in setting up the request that triggered an Error\n message = error.message;\n }\n return message ? new CustomError(message, code) : null;\n};\nexport var emptyNumber = function (n) {\n return isNaN(n) || n == 0;\n};\nexport var amountFormatDefault = function (v, minFD, maxFD, noZeroDecimals) {\n if (isNaN(v))\n return \"0.00\";\n var resolvedMaxFD = maxFD !== null && maxFD !== void 0 ? maxFD : 2;\n var resolvedMinFD = noZeroDecimals ? 0 : (minFD !== null && minFD !== void 0 ? minFD : 2);\n var factor = Math.pow(10, resolvedMaxFD);\n var roundedValue = Math.floor(v * factor) / factor;\n // Format first\n var formatted = roundedValue.toLocaleString(\"en\", {\n minimumFractionDigits: resolvedMinFD,\n maximumFractionDigits: resolvedMaxFD\n });\n // Remove trailing `.0`, `.00`, etc. if noZeroDecimals is true\n if (noZeroDecimals) {\n if (formatted.includes('.')) {\n // Remove only if all decimal digits are zero\n var _a = formatted.split('.'), intPart = _a[0], decimalPart = _a[1];\n if (/^0+$/.test(decimalPart)) {\n formatted = intPart;\n }\n }\n }\n return formatted;\n};\nexport var isBrowser = function () {\n return typeof window !== \"undefined\";\n};\n","import { __assign, __rest } from \"tslib\";\nimport React, { useEffect, useState } from 'react';\nimport { Box, HStack, Drawer, DrawerBody, DrawerContent, DrawerFooter, DrawerHeader, DrawerOverlay, Text } from \"@chakra-ui/react\";\nimport { FaTimes } from \"react-icons/fa\";\nimport { isVoid } from '../../../utils/f';\nvar DrawerPop = function (_a) {\n var bg = _a.bg, color = _a.color, children = _a.children, placement = _a.placement, onClose = _a.onClose, isOpen = _a.isOpen, isClosable = _a.isClosable, closeOnOverlayClick = _a.closeOnOverlayClick, title = _a.title, footer = _a.footer, hideModeSwitch = _a.hideModeSwitch, h = _a.h, height = _a.height, maxH = _a.maxH, maxHeight = _a.maxHeight, w = _a.w, width = _a.width, maxW = _a.maxW, maxWidth = _a.maxWidth, props = __rest(_a, [\"bg\", \"color\", \"children\", \"placement\", \"onClose\", \"isOpen\", \"isClosable\", \"closeOnOverlayClick\", \"title\", \"footer\", \"hideModeSwitch\", \"h\", \"height\", \"maxH\", \"maxHeight\", \"w\", \"width\", \"maxW\", \"maxWidth\"]);\n var _b = useState(), height2 = _b[0], setHeight = _b[1];\n var _c = useState(), width2 = _c[0], setWidth = _c[1];\n var _d = useState({}), borderTopLeftRadius = _d[0], setBorderTopLeftRadius = _d[1];\n var _e = useState({}), borderTopRightRadius = _e[0], setBorderTopRightRadius = _e[1];\n var _f = useState({}), borderBottomLeftRadius = _f[0], setBorderBottomLeftRadius = _f[1];\n var _g = useState({}), borderBottomRightRadius = _g[0], setBorderBottomRightRadius = _g[1];\n useEffect(function () {\n if (placement === \"left\") {\n setBorderTopLeftRadius(\"0px\");\n setBorderTopRightRadius(\"32px\");\n setBorderBottomLeftRadius(\"0px\");\n setBorderBottomRightRadius(\"32px\");\n setHeight(height || h);\n setWidth(width || w);\n }\n else if (placement === \"right\") {\n setBorderTopLeftRadius(\"32px\");\n setBorderTopRightRadius(\"0px\");\n setBorderBottomLeftRadius(\"32px\");\n setBorderBottomRightRadius(\"0px\");\n setHeight(height || h);\n setWidth(width || w);\n }\n else if (placement === \"top\") {\n setBorderTopLeftRadius(\"0px\");\n setBorderTopRightRadius(\"0px\");\n setBorderBottomLeftRadius(\"32px\");\n setBorderBottomRightRadius(\"32px\");\n setHeight(height || h || \"50vh\");\n setWidth(width || w);\n }\n else if (placement === \"bottom\") {\n setBorderTopLeftRadius(\"32px\");\n setBorderTopRightRadius(\"32px\");\n setBorderBottomLeftRadius(\"0px\");\n setBorderBottomRightRadius(\"0px\");\n setHeight(height || h || \"60vh\");\n setWidth(width || w);\n }\n }, [placement, height, width]);\n // Prevent the default behavior of the browser's back button only when the drawer is open\n useEffect(function () {\n var handleBackButton = function (event) {\n event.preventDefault();\n if (isOpen && onClose) {\n onClose();\n }\n };\n window.addEventListener('popstate', handleBackButton);\n return function () {\n window.removeEventListener('popstate', handleBackButton);\n };\n }, []);\n return (React.createElement(Drawer, { placement: placement, onClose: onClose ? onClose : function () { }, isOpen: isOpen, closeOnOverlayClick: isVoid(closeOnOverlayClick) ? true : closeOnOverlayClick },\n React.createElement(DrawerOverlay, null),\n React.createElement(DrawerContent, __assign({ bg: bg, color: color, h: height2, w: width2, maxH: maxH || maxHeight || height2, maxW: maxW || maxWidth || width2, borderTopLeftRadius: borderTopLeftRadius, borderTopRightRadius: borderTopRightRadius, borderBottomLeftRadius: borderBottomLeftRadius, borderBottomRightRadius: borderBottomRightRadius }, props),\n React.createElement(DrawerHeader, { borderBottomWidth: '1px', w: \"100%\", display: \"flex\", justifyContent: \"space-between\", alignItems: \"center\" },\n React.createElement(Text, { as: \"div\", fontSize: { base: \"1.1rem\", md: \"1.3rem\" }, textTransform: \"capitalize\" }, title),\n React.createElement(HStack, null, onClose && (isClosable || isClosable === undefined) ?\n React.createElement(Box, { onClick: onClose, cursor: \"pointer\", display: \"block\" },\n React.createElement(FaTimes, { size: \"24px\" }))\n :\n null)),\n React.createElement(DrawerBody, __assign({}, props), children),\n footer ?\n React.createElement(DrawerFooter, null, footer)\n : null)));\n};\nexport default DrawerPop;\n","import { __assign, __rest } from \"tslib\";\nimport React from 'react';\nimport { Box, Button, HStack, Text } from \"@chakra-ui/react\";\nimport { ThreeDots } from \"react-loader-spinner\";\nvar AppButton = function (_a) {\n var as = _a.as, onClick = _a.onClick, children = _a.children, variant = _a.variant, bgColor = _a.bgColor, outlineColor = _a.outlineColor, leftIcon = _a.leftIcon, rightIcon = _a.rightIcon, loading = _a.loading, disabled = _a.disabled, props = __rest(_a, [\"as\", \"onClick\", \"children\", \"variant\", \"bgColor\", \"outlineColor\", \"leftIcon\", \"rightIcon\", \"loading\", \"disabled\"]);\n var bg = \"green.500\"; //bgColor || useColorModeValue('colorAccent.light', 'colorAccent.dark')\n var outline = \"green.500\"; //outlineColor || useColorModeValue(\"colorAccentDestination.light\", \"colorAccentDestination.dark\")\n return (React.createElement(Button, __assign({ as: as || \"button\", cursor: disabled ? \"not-allowed\" : loading ? \"progress\" : \"pointer\", disabled: disabled || loading, onClick: function (e) {\n if (onClick && !(disabled || loading))\n onClick(e);\n }, display: \"inline-flex\", justifyContent: \"center\", alignItems: \"center\", p: \"0px 24px\", h: \"48px\", letterSpacing: \"0.03em\", textAlign: \"center\", borderRadius: \"16px\", bg: variant == \"outline\" ? \"transparent\" : bg, border: variant == \"outline\" ? \"2px solid\" : \"none\", borderColor: variant == \"outline\" ? outline : \"transparent\", color: variant == \"outline\" ? outline : \"#fff\", boxShadow: (variant == \"ghost\" || variant == \"outline\") ? \"none\" : \"rgb(14 14 44 / 40%) 0px -1px 0px 0px inset\", opacity: disabled || loading ? \"0.65\" : variant == \"ghost\" ? \"0.8\" : \"1\", transition: \"background-color 0.2s ease 0s, opacity 0.2s ease 0s\", _hover: {\n opacity: \"0.65\",\n border: \"none !important\"\n }, _disabled: {\n opacity: \"0.65\",\n cursor: \"not-allowed\"\n } }, props),\n React.createElement(HStack, { justifyContent: \"center\", alignItems: \"center\" },\n leftIcon ? React.createElement(Box, { mr: \"7px\" }, leftIcon) : null,\n React.createElement(Text, { as: \"div\" }, children),\n loading ?\n React.createElement(Box, { as: ThreeDots, display: \"inline\", width: \"20%\", height: \"20%\", color: \"#fff\" })\n :\n rightIcon ? React.createElement(Box, { ml: \"7px\" }, rightIcon) : null)));\n};\nexport default AppButton;\n","import { __assign, __rest } from \"tslib\";\nimport React from 'react';\nimport { FaInfoCircle } from \"react-icons/fa\";\nimport { Box, HStack, Text } from \"@chakra-ui/react\";\nimport Swal from 'sweetalert2';\nvar InfoLabel = function (_a) {\n var children = _a.children, as = _a.as, info = _a.info, textTransform = _a.textTransform, props = __rest(_a, [\"children\", \"as\", \"info\", \"textTransform\"]);\n var onInfo = function (i) {\n Swal.fire({\n icon: \"info\",\n title: children || \"\",\n text: i,\n confirmButtonText: \"Ok\",\n showCancelButton: false\n });\n };\n return (React.createElement(HStack, __assign({ flexWrap: \"wrap\", justifyContent: \"flex-start\", alignItems: \"center\" }, props),\n React.createElement(Text, { mx: \"0px !important\", mb: \"0px !important\", as: as || \"div\", textTransform: textTransform || \"capitalize\" }, children),\n !info ? null :\n React.createElement(Box, { cursor: \"pointer\", marginInlineStart: \"0px !important\", marginInlineEnd: \"0px !important\", p: \"3px\", onClick: function () { return onInfo(info); } },\n React.createElement(FaInfoCircle, null))));\n};\nexport default InfoLabel;\n","export var arraysEqual = function (array1, array2) {\n // if the other array is a falsy value, return\n if (!array1 || !array2 || array1.length != array2.length)\n return false;\n // if the argument is the same array, we can be sure the contents are same as well\n if (array1 === array2)\n return true;\n for (var i = 0, l = array1.length; i < l; i++) {\n // Check if we have nested arrays\n if (array1[i] instanceof Array && array2[i] instanceof Array) {\n // recurse into the nested arrays\n if (!arraysEqual(array1[i], array2[i]))\n return false;\n }\n else if (array1[i] != array2[i]) {\n // Warning - two different object instances will never be equal: {x:20} != {x:20}\n return false;\n }\n }\n return true;\n};\n","import { __assign, __rest, __spreadArray } from \"tslib\";\nimport React, { useCallback, useMemo } from 'react';\nimport { HStack, FormControl, FormLabel, Input, FormErrorMessage, FormHelperText, Text, Select, InputGroup, InputLeftElement, InputRightElement, Box, Textarea, Checkbox, RadioGroup, Stack, Radio, Flex, VStack } from '@chakra-ui/react';\nimport { nullOrEmpty } from \"../../../utils/f\";\n//import 'react-phone-number-input/style.css'\nimport PhoneInput, { parsePhoneNumber } from 'react-phone-number-input';\nimport { useEffect, useState } from 'react';\nimport { FaEye, FaEyeSlash, FaMinus, FaPlus } from 'react-icons/fa';\nimport InfoLabel from '../InfoLabel';\n//import LocationPicker from '../LocationPicker';\nimport { arraysEqual } from './utils';\n//import SelectTree, { SelectTreeEvent, SelectTreeOptionWithChildren } from './inputs/SelectTree';\nvar countryCodes = require('country-codes-list');\nexport var TYPES = {\n text: \"text\",\n email: \"email\",\n number: \"number\",\n range: \"range\",\n date: \"date\",\n phone: \"phone\",\n password: \"password\",\n select: \"select\",\n select_tree: \"select_tree\",\n textarea: \"textarea\",\n checkbox: \"checkbox\",\n checklist: \"checklist\",\n radio: \"radio\",\n none: \"none\",\n location: \"location\",\n price: \"price\"\n};\nfunction extractNumberFromString(text) {\n if (!text)\n return null;\n text = \"\".concat(text);\n // Define a regular expression to match numbers with decimals and optional commas as thousands separators\n var numberRegex = /\\D+/g;\n var numParts = text.split(\".\");\n var mantissa = numParts[0].replace(numberRegex, '');\n var decimals = numParts.length > 1 ? numParts[1].replace(numberRegex, '') : null;\n if (mantissa && mantissa.length > 0) {\n var result = mantissa;\n if (decimals)\n result += \".\".concat(decimals);\n return Number(result);\n }\n return null;\n}\nvar InputBox = function (_a) {\n var id = _a.id, key = _a.key, title = _a.title, name = _a.name, type = _a.type, locale = _a.locale, value = _a.value, onChange = _a.onChange, onFocus = _a.onFocus, onCheckInfo = _a.onCheckInfo, onKeyDown = _a.onKeyDown, errorMessage = _a.errorMessage, helperText = _a.helperText, info = _a.info, placeholder = _a.placeholder, textTransform = _a.textTransform, options = _a.options, onOptionValue = _a.onOptionValue, onOptionName = _a.onOptionName, defaultCountry = _a.defaultCountry, phoneSelectBg = _a.phoneSelectBg, phoneSelectColor = _a.phoneSelectColor, _b = _a.numberDecimals, numberDecimals = _b === void 0 ? 2 : _b, hasNegOverflow = _a.hasNegOverflow, numberUnit = _a.numberUnit, rangeMinPlaceholder = _a.rangeMinPlaceholder, minTitle = _a.minTitle, rangeMaxPlaceholder = _a.rangeMaxPlaceholder, maxTitle = _a.maxTitle, disabled = _a.disabled, maxTextLimit = _a.maxTextLimit, direction = _a.direction, resize = _a.resize, disableCalendar = _a.disableCalendar, disableClock = _a.disableClock, dateFormat = _a.dateFormat, iconLeft = _a.iconLeft, iconRight = _a.iconRight, apiKey = _a.apiKey, mapToSearchRatio = _a.mapToSearchRatio, twoDigitCountryCode = _a.twoDigitCountryCode, inputRef = _a.inputRef, defaultLatlng = _a.defaultLatlng, geotype = _a.geotype, props = __rest(_a, [\"id\", \"key\", \"title\", \"name\", \"type\", \"locale\", \"value\", \"onChange\", \"onFocus\", \"onCheckInfo\", \"onKeyDown\", \"errorMessage\", \"helperText\", \"info\", \"placeholder\", \"textTransform\", \"options\", \"onOptionValue\", \"onOptionName\", \"defaultCountry\", \"phoneSelectBg\", \"phoneSelectColor\", \"numberDecimals\", \"hasNegOverflow\", \"numberUnit\", \"rangeMinPlaceholder\", \"minTitle\", \"rangeMaxPlaceholder\", \"maxTitle\", \"disabled\", \"maxTextLimit\", \"direction\", \"resize\", \"disableCalendar\", \"disableClock\", \"dateFormat\", \"iconLeft\", \"iconRight\", \"apiKey\", \"mapToSearchRatio\", \"twoDigitCountryCode\", \"inputRef\", \"defaultLatlng\", \"geotype\"]);\n var _c = useState(), showPassword = _c[0], setShowPassword = _c[1];\n var _d = useState([]), decimalsSet = _d[0], setDecimalsSet = _d[1];\n var parseNum = function (value) {\n var num = extractNumberFromString(value);\n if (num) {\n return num;\n }\n else {\n return 0;\n }\n };\n useEffect(function () {\n if (type == TYPES.number && value && title && !decimalsSet.includes(title)) {\n setDecimalsSet(__spreadArray(__spreadArray([], decimalsSet, true), [title], false));\n var v = parseNum(value);\n if (!disabled && onChange) {\n onChange(v);\n }\n }\n }, [value, name]);\n var changeNumber = function (e) {\n var value = e.target.value;\n console.log(\"changeNumber:\", value);\n var v = parseNum(value);\n console.log(\"changeNumber:2\", v);\n if (!disabled && onChange) {\n onChange(v);\n }\n };\n var increaseNumber = function () {\n var numberSteps = (1 / Math.pow(10, numberDecimals || 0));\n var v = (parseNum(value) + numberSteps);\n if (!disabled && onChange) {\n onChange(v);\n }\n };\n var decreaseNumber = function () {\n var numberSteps = (1 / Math.pow(10, numberDecimals || 0));\n var result = parseNum(value) - numberSteps;\n if (result < 0 && !hasNegOverflow)\n result = 0;\n var v = result;\n if (!disabled && onChange)\n onChange(v);\n };\n var updateRangeValue = useCallback(function (min, max) {\n if (!isNaN(min)) {\n var result = parseFloat(\"\".concat(min));\n if (result < 0 && !hasNegOverflow)\n result = 0;\n var v = { min: result, max: (value === null || value === void 0 ? void 0 : value.max) || 0 };\n if (!disabled && onChange)\n onChange(v);\n }\n else if (!isNaN(max)) {\n var result = parseFloat(\"\".concat(max));\n if (result < 0 && !hasNegOverflow)\n result = 0;\n var v = { min: (value === null || value === void 0 ? void 0 : value.min) || 0, max: result };\n if (!disabled && onChange)\n onChange(v);\n }\n }, [hasNegOverflow, disabled]);\n var _e = useState({}), countryCodesMap = _e[0], setCountryCodesMap = _e[1];\n useEffect(function () {\n if (type == TYPES.phone) {\n var countruesToCurrency = countryCodes.customList('countryCode', '{currencyCode}');\n setCountryCodesMap(countruesToCurrency);\n }\n }, [type]);\n var _f = useState([]), checklist = _f[0], setChecklist = _f[1];\n useEffect(function () {\n if (Array.isArray(options) && checklist.length == 0) {\n setChecklist(options);\n }\n }, [options, value]);\n var _g = useState(false), searchActive = _g[0], setSearchActive = _g[1];\n var handleInputCheck = useCallback(function (getLatestValue, onValueIsLatest, checker, waitTime) {\n if (checker) {\n if (!searchActive) {\n setSearchActive(true);\n setTimeout(function () {\n var check = function () {\n var checkedValue = getLatestValue();\n checker(checkedValue)\n .then(function () {\n //If the input has changed after the check was done, check the new input\n if (!onValueIsLatest(checkedValue)) {\n check();\n }\n else {\n setSearchActive(false);\n }\n })\n .catch(function (e) {\n setSearchActive(false);\n });\n };\n check();\n }, waitTime || 0);\n }\n }\n }, [searchActive]);\n var memoizedOptions = useMemo(function () {\n // Compute and memoize the options array here\n return (options || []).map(function (v, i) {\n if (onOptionValue && onOptionName) {\n return React.createElement(\"option\", { key: i, value: onOptionValue(v, i) }, onOptionName(v, i));\n }\n else {\n return null;\n }\n });\n }, [options, onOptionValue, onOptionName]);\n return (React.createElement(FormControl, __assign({ isInvalid: !nullOrEmpty(errorMessage) && type != TYPES.location, opacity: disabled ? \"0.3\" : \"1\" }, props),\n !title || type == TYPES.checkbox ? null :\n nullOrEmpty(info) ?\n React.createElement(FormLabel, { textTransform: textTransform || \"capitalize\" }, title)\n :\n React.createElement(InfoLabel, { as: FormLabel, info: info, textTransform: textTransform || \"capitalize\" }, title),\n type == TYPES.date ?\n null\n :\n type == TYPES.select ?\n React.createElement(InputGroup, null,\n iconLeft ? React.createElement(InputLeftElement, { children: iconLeft }) : null,\n React.createElement(Select, { id: id, key: key, onFocus: onFocus, disabled: disabled, ref: inputRef, name: name, value: value, placeholder: placeholder || \"\", onChange: function (e) {\n if (!disabled && onChange)\n onChange(e.target.value);\n }, errorBorderColor: 'red.300', isInvalid: !nullOrEmpty(errorMessage) }, memoizedOptions),\n iconRight ? React.createElement(InputRightElement, { children: iconRight }) : null)\n :\n type == TYPES.phone ?\n React.createElement(InputGroup, null,\n iconLeft ? React.createElement(InputLeftElement, { children: iconLeft }) : null,\n React.createElement(Input, { id: id, key: key, onFocus: onFocus, disabled: disabled, ref: inputRef, as: PhoneInput, defaultCountry: defaultCountry || \"US\", background: \"transparent !important\", _focusVisible: {\n outline: \"none !important\",\n border: \"none !important\"\n }, placeholder: placeholder || \"\", value: value === null || value === void 0 ? void 0 : value.number, onKeyDown: onKeyDown, onChange: function (v) {\n var getNumberInfo = function () {\n var codes = parsePhoneNumber(\"\".concat(v));\n return {\n number: \"\".concat(v),\n countryCode: codes === null || codes === void 0 ? void 0 : codes.country,\n currencyCode: (codes === null || codes === void 0 ? void 0 : codes.country) ? countryCodesMap[(codes === null || codes === void 0 ? void 0 : codes.country) || \"\"] : null,\n dialingCode: codes === null || codes === void 0 ? void 0 : codes.countryCallingCode,\n };\n };\n var inflatedValue = getNumberInfo();\n if (!disabled && onChange) {\n onChange(inflatedValue);\n }\n if (!disabled && onCheckInfo) {\n var _a = onCheckInfo(getNumberInfo()), checker = _a.checker, waitTime = _a.waitTime;\n //only check input in \"onChange\" if waitTime is greater than zero.\n // This is good in searching a text results as a user types in a search bar, \n // or saving an article on a server as the user types\n if (waitTime > 0) {\n handleInputCheck(getNumberInfo, function (checkedValue) {\n return checkedValue.number === v.target.value;\n }, checker, waitTime);\n }\n }\n }, onBlur: function (v) {\n var getNumberInfo = function () {\n var codes = parsePhoneNumber(\"\".concat(v));\n return {\n number: \"\".concat(v),\n countryCode: codes === null || codes === void 0 ? void 0 : codes.country,\n currencyCode: (codes === null || codes === void 0 ? void 0 : codes.country) ? countryCodesMap[(codes === null || codes === void 0 ? void 0 : codes.country) || \"\"] : null,\n dialingCode: codes === null || codes === void 0 ? void 0 : codes.countryCallingCode,\n };\n };\n if (!disabled && onCheckInfo) {\n var _a = onCheckInfo(v.target.value), checker = _a.checker, waitTime = _a.waitTime;\n //only check input in \"onBlur\" if waitTime is not set or equal to zero.\n // This is good in validating an input as it looses focus when the user moves to another,\n // input field\n if (!waitTime) {\n handleInputCheck(getNumberInfo, function (checkedValue) {\n return checkedValue.number === v.target.value;\n }, checker, waitTime);\n }\n }\n } }),\n React.createElement(\"style\", null, \"\\n .PhoneInputCountrySelect {\\n background: \".concat(phoneSelectBg || \"#000\", \" !important;\\n color: \").concat(phoneSelectColor || \"#fff\", \"\\n }\\n .PhoneInputInput {\\n background: transparent !important;\\n border-radius: 3px !important;\\n }\")),\n iconRight ? React.createElement(InputRightElement, { children: iconRight }) : null)\n :\n type == TYPES.password ?\n React.createElement(InputGroup, null,\n iconLeft ? React.createElement(InputLeftElement, { cursor: \"pointer\", children: iconLeft }) : null,\n React.createElement(Input, { id: id, key: key, onFocus: onFocus, disabled: disabled, ref: inputRef, name: name, type: showPassword ? \"text\" : \"password\", placeholder: placeholder || \"\", value: value, onKeyDown: onKeyDown, onChange: function (v) {\n if (!disabled && onChange)\n onChange(v.target.value);\n if (!disabled && onCheckInfo) {\n var _a = onCheckInfo(v.target.value), checker = _a.checker, waitTime = _a.waitTime;\n //only check input in \"onChange\" if waitTime is greater than zero.\n // This is good in searching a text results as a user types in a search bar, \n // or saving an article on a server as the user types\n if (waitTime > 0) {\n handleInputCheck(function () { return \"\".concat(v.target.value); }, function (checkedValue) {\n return checkedValue === v.target.value;\n }, checker, waitTime);\n }\n }\n }, onBlur: function (v) {\n if (!disabled && onCheckInfo) {\n var _a = onCheckInfo(v.target.value), checker = _a.checker, waitTime = _a.waitTime;\n //only check input in \"onBlur\" if waitTime is not set or equal to zero.\n // This is good in validating an input as it looses focus when the user moves to another,\n // input field\n if (!waitTime) {\n handleInputCheck(function () { return \"\".concat(v.target.value); }, function (checkedValue) {\n return checkedValue === v.target.value;\n }, checker, waitTime);\n }\n }\n }, errorBorderColor: 'red.300', isInvalid: !nullOrEmpty(errorMessage) }),\n React.createElement(InputRightElement, { width: \"auto\", px: \"0.5rem\", children: React.createElement(HStack, { justifyContent: \"flex-start\", alignItems: \"center\", m: \"0px !important\", p: \"0px !important\" },\n iconRight,\n React.createElement(Box, { cursor: \"pointer\", onClick: function () {\n setShowPassword(!showPassword);\n } }, !showPassword ?\n React.createElement(FaEyeSlash, null)\n :\n React.createElement(FaEye, null))) }))\n :\n type == TYPES.number ?\n React.createElement(InputGroup, null,\n React.createElement(InputLeftElement, { width: \"auto\", px: \"0.2rem\", cursor: \"pointer\", children: React.createElement(HStack, { justifyContent: \"flex-start\", alignItems: \"center\" },\n React.createElement(Box, { cursor: \"pointer\", onClick: decreaseNumber, border: { base: \"0px\", md: \"1px\" }, borderRadius: { base: \"0px\", md: \"3px\" }, p: { base: \"0px\", md: \"0.5rem\" } },\n React.createElement(FaMinus, null)),\n iconLeft) }),\n React.createElement(Input, { id: id, key: key, onFocus: onFocus, disabled: disabled, ref: inputRef, name: name, type: \"text\", placeholder: placeholder || \"\", value: parseNum(\"\".concat(value)).toLocaleString(locale, {\n minimumFractionDigits: numberDecimals,\n maximumFractionDigits: numberDecimals\n }), onKeyDown: onKeyDown, onChange: function (v) {\n changeNumber(v);\n if (!disabled && onCheckInfo) {\n var _a = onCheckInfo(v.target.value), checker = _a.checker, waitTime = _a.waitTime;\n //only check input in \"onChange\" if waitTime is greater than zero.\n // This is good in searching a text results as a user types in a search bar, \n // or saving an article on a server as the user types\n if (waitTime > 0) {\n handleInputCheck(function () { return \"\".concat(v.target.value); }, function (checkedValue) {\n return checkedValue === v.target.value;\n }, checker, waitTime);\n }\n }\n }, onBlur: function (v) {\n if (!disabled && onCheckInfo) {\n var _a = onCheckInfo(v.target.value), checker = _a.checker, waitTime = _a.waitTime;\n //only check input in \"onBlur\" if waitTime is not set or equal to zero.\n // This is good in validating an input as it looses focus when the user moves to another,\n // input field\n if (!waitTime) {\n handleInputCheck(function () { return \"\".concat(v.target.value); }, function (checkedValue) {\n return checkedValue === v.target.value;\n }, checker, waitTime);\n }\n }\n }, errorBorderColor: 'red.300', isInvalid: !nullOrEmpty(errorMessage) }),\n React.createElement(InputRightElement, { width: \"auto\", px: \"0.2rem\", cursor: \"pointer\", children: React.createElement(HStack, { justifyContent: \"flex-start\", alignItems: \"center\", m: \"0px !important\", p: \"0px !important\" },\n iconRight,\n typeof numberUnit === \"string\" ?\n React.createElement(Text, { as: \"div\", textAlign: \"center\", display: \"flex\", justifyContent: \"flex-start\", alignItems: \"center\" }, numberUnit)\n :\n numberUnit,\n React.createElement(Box, { cursor: \"pointer\", onClick: increaseNumber, border: { base: \"0px\", md: \"1px\" }, borderRadius: { base: \"0px\", md: \"3px\" }, p: { base: \"0px\", md: \"0.5rem\" } },\n React.createElement(FaPlus, null))) }))\n :\n type == TYPES.range ?\n React.createElement(HStack, { ref: inputRef, justifyContent: \"space-between\", alignItems: \"center\" },\n React.createElement(InputBox, { id: id, key: key, onFocus: onFocus, title: minTitle, w: \"100%\", type: TYPES.number, placeholder: rangeMinPlaceholder, value: (value === null || value === void 0 ? void 0 : value.min) || 0, onChange: function (number) {\n updateRangeValue(number, \"\");\n }, numberUnit: numberUnit }),\n React.createElement(Text, { as: \"div\", alignSelf: \"flex-end\", pb: \"0.5rem\" }, \" ~ \"),\n React.createElement(InputBox, { id: id ? \"\".concat(id, \"_2\") : undefined, key: key ? \"\".concat(key, \"_2\") : undefined, onFocus: onFocus, title: maxTitle, w: \"100%\", type: TYPES.number, placeholder: rangeMinPlaceholder, value: (value === null || value === void 0 ? void 0 : value.max) || 0, onChange: function (number) {\n updateRangeValue(\"\", number);\n }, numberUnit: numberUnit }))\n :\n type == TYPES.textarea ?\n React.createElement(InputGroup, { w: \"100%\", h: \"100%\" },\n iconLeft ? React.createElement(InputLeftElement, { children: iconRight }) : null,\n React.createElement(Textarea, { id: id, key: key, onFocus: onFocus, disabled: disabled, ref: inputRef, w: \"100%\", h: \"100%\", placeholder: placeholder, isDisabled: disabled, isInvalid: (errorMessage && errorMessage.length > 0) ? true : false, value: value, resize: resize, onKeyDown: onKeyDown, onChange: function (v) {\n if (onChange && !disabled && (!maxTextLimit || isNaN(maxTextLimit) || v.target.value.length < maxTextLimit)) {\n onChange(v.target.value);\n }\n if (!disabled && onCheckInfo && (!maxTextLimit || isNaN(maxTextLimit) || v.target.value.length < maxTextLimit)) {\n var _a = onCheckInfo(v.target.value), checker = _a.checker, waitTime = _a.waitTime;\n //only check input in \"onChange\" if waitTime is greater than zero.\n // This is good in searching a text results as a user types in a search bar, \n // or saving an article on a server as the user types\n if (waitTime > 0) {\n handleInputCheck(function () { return \"\".concat(v.target.value); }, function (checkedValue) {\n return checkedValue === v.target.value;\n }, checker, waitTime);\n }\n }\n }, onBlur: function (v) {\n if (!disabled && onCheckInfo && (!maxTextLimit || isNaN(maxTextLimit) || v.target.value.length < maxTextLimit)) {\n var _a = onCheckInfo(v.target.value), checker = _a.checker, waitTime = _a.waitTime;\n //only check input in \"onBlur\" if waitTime is not set or equal to zero.\n // This is good in validating an input as it looses focus when the user moves to another,\n // input field\n if (!waitTime) {\n handleInputCheck(function () { return \"\".concat(v.target.value); }, function (checkedValue) {\n return checkedValue === v.target.value;\n }, checker, waitTime);\n }\n }\n } }),\n maxTextLimit ?\n React.createElement(InputRightElement, { width: \"auto\", height: \"100%\", alignItems: \"flex-end\", px: \"0.2rem\", cursor: \"pointer\", children: React.createElement(HStack, { justifyContent: \"flex-start\", alignItems: \"center\", m: \"0px !important\", p: \"0px !important\" },\n iconRight,\n React.createElement(Text, { as: \"div\", opacity: \"0.4\" },\n ((value || \"\").length).toLocaleString(locale || \"en\", { maximumFractionDigits: 0 }).replace(new RegExp(\"[,\\.]*\", \"g\"), \"\"),\n \"\\u00A0/\\u00A0\",\n maxTextLimit.toLocaleString(locale || \"en\", { maximumFractionDigits: 0 }).replace(new RegExp(\"[,\\.]*\", \"g\"), \"\"))) })\n :\n iconRight ? React.createElement(InputRightElement, { height: \"100%\", alignItems: \"flex-end\", children: iconRight }) : null)\n :\n type == TYPES.checkbox ?\n React.createElement(Checkbox, { id: id, key: key, onFocus: onFocus, disabled: disabled, ref: inputRef, isChecked: value, onChange: function (e) {\n if (!disabled && onChange)\n onChange(e.target.checked);\n if (!disabled && onCheckInfo) {\n var _a = onCheckInfo(e.target.checked), checker = _a.checker, waitTime = _a.waitTime;\n //only check input in \"onChange\" if waitTime is greater than zero.\n // This is good in searching a text results as a user types in a search bar, \n // or saving an article on a server as the user types\n if (waitTime > 0) {\n handleInputCheck(function () { return e.target.checked; }, function (checkedValue) {\n return checkedValue === e.target.checked;\n }, checker, waitTime);\n }\n }\n }, onBlur: function (e) {\n if (!disabled && onCheckInfo) {\n var _a = onCheckInfo(e.target.checked), checker = _a.checker, waitTime = _a.waitTime;\n //only check input in \"onBlur\" if waitTime is not set or equal to zero.\n // This is good in validating an input as it looses focus when the user moves to another,\n // input field\n if (!waitTime) {\n handleInputCheck(function () { return e.target.checked; }, function (checkedValue) {\n return checkedValue === e.target.checked;\n }, checker, waitTime);\n }\n }\n } }, title)\n :\n type == TYPES.checklist ?\n React.createElement(Flex, { w: \"100%\", flexDirection: \"row\", flexWrap: \"wrap\" }, checklist.map(function (check, index) { return (React.createElement(Checkbox, { id: id ? \"\".concat(id, \"_\").concat(index) : \"\".concat(index), key: key ? \"\".concat(key, \"_\").concat(index) : index, onFocus: onFocus, disabled: disabled, ref: inputRef, w: { base: \"100%\", sm: \"50%\", md: \"33.33%\" }, mb: \"0.5rem\", isChecked: check.selected, onChange: function (e) {\n var all = __spreadArray([], checklist, true);\n all[index].selected = e.target.checked;\n if (!disabled && onChange) {\n var onlySelected = [];\n for (var _i = 0, all_1 = all; _i < all_1.length; _i++) {\n var selectedService = all_1[_i];\n if (selectedService.selected) {\n onlySelected.push(selectedService);\n }\n }\n setChecklist(all);\n onChange(onlySelected);\n }\n else {\n setChecklist(all);\n }\n if (!disabled && onCheckInfo) {\n var _a = onCheckInfo(all), checker = _a.checker, waitTime = _a.waitTime;\n //only check input in \"onChange\" if waitTime is greater than zero.\n // This is good in searching a text results as a user types in a search bar, \n // or saving an article on a server as the user types\n if (waitTime > 0) {\n handleInputCheck(function () { return all; }, function (checkedValue) {\n return arraysEqual(checkedValue, all);\n }, checker, waitTime);\n }\n }\n }, onBlur: function (e) {\n var all = __spreadArray([], checklist, true);\n all[index].selected = e.target.checked;\n if (!disabled && onCheckInfo) {\n var _a = onCheckInfo(all), checker = _a.checker, waitTime = _a.waitTime;\n //only check input in \"onBlur\" if waitTime is not set or equal to zero.\n // This is good in validating an input as it looses focus when the user moves to another,\n // input field\n if (!waitTime) {\n handleInputCheck(function () { return all; }, function (checkedValue) {\n return arraysEqual(checkedValue, all);\n }, checker, waitTime);\n }\n }\n } }, onOptionName ? onOptionName(check, index) : \"\")); }))\n :\n type == TYPES.radio ?\n React.createElement(RadioGroup, { id: id, key: key, onFocus: onFocus, ref: inputRef, value: value, onChange: function (v) {\n if (!disabled && onChange)\n onChange(v);\n if (!disabled && onCheckInfo) {\n var _a = onCheckInfo(v), checker = _a.checker, waitTime = _a.waitTime;\n //only check input in \"onChange\" if waitTime is greater than zero.\n // This is good in searching a text results as a user types in a search bar, \n // or saving an article on a server as the user types\n if (waitTime > 0) {\n handleInputCheck(function () { return v; }, function (checkedValue) {\n return checkedValue === v;\n }, checker, waitTime);\n }\n }\n }, onBlur: function (v) {\n if (!disabled && onCheckInfo) {\n var _a = onCheckInfo(v), checker = _a.checker, waitTime = _a.waitTime;\n //only check input in \"onBlur\" if waitTime is not set or equal to zero.\n // This is good in validating an input as it looses focus when the user moves to another,\n // input field\n if (!waitTime) {\n handleInputCheck(function () { return v; }, function (checkedValue) {\n return checkedValue === v;\n }, checker, waitTime);\n }\n }\n } },\n React.createElement(Stack, { direction: direction || \"row\" }, (options || []).map(function (v, i) {\n if (onOptionValue && onOptionName) {\n return (React.createElement(Radio, { disabled: disabled, key: i, value: onOptionValue(v, i) }, onOptionName(v, i)));\n }\n else {\n return null;\n }\n })))\n : /*\n type == TYPES.location?\n <LocationPicker disabled={disabled} ref={inputRef} w=\"100%\" h=\"100%\"\n apiKey={apiKey || \"\"} defaultLatlng={defaultLatlng} geotype={geotype}\n mapToSearchRatio={mapToSearchRatio}\n twoDigitCountryCode={twoDigitCountryCode}\n searchPlaceholder={placeholder as string}\n value={value? {\n name: value.name,\n formatted_address: value.address,\n geometry: {\n location: {lat: () => value.position.lat, lng: () => value.position.lng},\n viewport: {}\n }\n } : null}\n onChange={(l) => {\n const v = {\n name: l.name,\n address: l.formatted_address,\n position: {\n lat: l.geometry.location.lat(),\n lng: l.geometry.location.lng()\n }\n }\n if(!disabled && onChange) {\n onChange(v)\n }\n if(!disabled && onCheckInfo) {\n const { checker, waitTime } = onCheckInfo(v)\n //only check input in \"onChange\" if waitTime is greater than zero.\n // This is good in searching a text results as a user types in a search bar,\n // or saving an article on a server as the user types\n if(waitTime > 0) {\n handleInputCheck(() => v, (checkedValue) => {\n return JSON.stringify(checkedValue) === JSON.stringify(v)\n }, checker, waitTime)\n }\n }\n \n }}\n onBlur={(l) => {\n if(!disabled && onCheckInfo) {\n const v = {\n name: l.name,\n address: l.formatted_address,\n position: {\n lat: l.geometry.location.lat(),\n lng: l.geometry.location.lng()\n }\n }\n \n const { checker, waitTime } = onCheckInfo(v)\n //only check input in \"onBlur\" if waitTime is not set or equal to zero.\n // This is good in validating an input as it looses focus when the user moves to another,\n // input field\n if(!waitTime) {\n handleInputCheck(() => v, (checkedValue) => {\n return JSON.stringify(checkedValue) === JSON.stringify(v)\n }, checker, waitTime)\n }\n }\n }}\n errorMessage={errorMessage}\n />\n :*/\n type == TYPES.price ?\n React.createElement(VStack, { w: \"100%\", justifyContent: \"flex-start\", alignItems: \"center\" },\n React.createElement(InputGroup, null,\n React.createElement(InputLeftElement, { width: \"auto\", px: \"0.2rem\", cursor: \"pointer\", children: React.createElement(HStack, { justifyContent: \"flex-start\", alignItems: \"center\" },\n React.createElement(Box, { cursor: \"pointer\", onClick: decreaseNumber, border: { base: \"0px\", md: \"1px\" }, borderRadius: { base: \"0px\", md: \"3px\" }, p: { base: \"0px\", md: \"0.5rem\" } },\n React.createElement(FaMinus, null)),\n iconLeft) }),\n React.createElement(Input, { id: id, key: key, onFocus: onFocus, disabled: disabled, ref: inputRef, name: name, type: \"text\", placeholder: placeholder || \"\", value: value, onKeyDown: onKeyDown, onChange: function (v) {\n changeNumber(v);\n if (!disabled && onCheckInfo) {\n var _a = onCheckInfo(v.target.value), checker = _a.checker, waitTime = _a.waitTime;\n //only check input in \"onChange\" if waitTime is greater than zero.\n // This is good in searching a text results as a user types in a search bar, \n // or saving an article on a server as the user types\n if (waitTime > 0) {\n handleInputCheck(function () { return \"\".concat(v.target.value); }, function (checkedValue) {\n return checkedValue === v.target.value;\n }, checker, waitTime);\n }\n }\n }, onBlur: function (v) {\n if (!disabled && onCheckInfo) {\n var _a = onCheckInfo(v.target.value), checker = _a.checker, waitTime = _a.waitTime;\n //only check input in \"onBlur\" if waitTime is not set or equal to zero.\n // This is good in validating an input as it looses focus when the user moves to another,\n // input field\n if (!waitTime) {\n handleInputCheck(function () { return \"\".concat(v.target.value); }, function (checkedValue) {\n return checkedValue === v.target.value;\n }, checker, waitTime);\n }\n }\n }, errorBorderColor: 'red.300', isInvalid: !nullOrEmpty(errorMessage) }),\n React.createElement(InputRightElement, { width: \"auto\", px: \"0.2rem\", cursor: \"pointer\", children: React.createElement(HStack, { justifyContent: \"flex-start\", alignItems: \"center\", m: \"0px !important\", p: \"0px !important\" },\n iconRight,\n typeof numberUnit === \"string\" ?\n React.createElement(Text, { as: \"div\", textAlign: \"center\", display: \"flex\", justifyContent: \"flex-start\", alignItems: \"center\" }, numberUnit)\n :\n numberUnit,\n React.createElement(Box, { cursor: \"pointer\", onClick: increaseNumber, border: { base: \"0px\", md: \"1px\" }, borderRadius: { base: \"0px\", md: \"3px\" }, p: { base: \"0px\", md: \"0.5rem\" } },\n React.createElement(FaPlus, null))) })))\n : /*\n type == TYPES.select_tree?\n <SelectTree disabled={disabled} options={options as SelectTreeOptionWithChildren[]}\n onChange={onChange}\n onBlur={(e: SelectTreeEvent) => {\n const { currentNode, selectedNodes } = e\n if(!disabled && onCheckInfo) {\n const v = \"currentNode\"\n \n const { checker, waitTime } = onCheckInfo(v)\n //only check input in \"onBlur\" if waitTime is not set or equal to zero.\n // This is good in validating an input as it looses focus when the user moves to another,\n // input field\n if(!waitTime) {\n handleInputCheck(() => v, (checkedValue) => {\n return JSON.stringify(checkedValue) === JSON.stringify(v)\n }, checker, waitTime)\n }\n }\n }}\n />\n :*/\n type == TYPES.none ?\n null\n :\n React.createElement(InputGroup, null,\n iconLeft ? React.createElement(InputLeftElement, { children: iconLeft }) : null,\n React.createElement(Input, { id: id, key: key, onFocus: onFocus, disabled: disabled, ref: inputRef, name: name, type: type, placeholder: placeholder || \"\", value: value, onChange: function (v) {\n if (!disabled && onChange)\n onChange(v.target.value);\n if (!disabled && onCheckInfo) {\n var _a = onCheckInfo(v.target.value), checker = _a.checker, waitTime = _a.waitTime;\n //only check input in \"onChange\" if waitTime is greater than zero.\n // This is good in searching a text results as a user types in a search bar, \n // or saving an article on a server as the user types\n if (waitTime > 0) {\n handleInputCheck(function () { return \"\".concat(v.target.value); }, function (checkedValue) {\n return checkedValue === v.target.value;\n }, checker, waitTime);\n }\n }\n }, onBlur: function (v) {\n if (!disabled && onCheckInfo) {\n var _a = onCheckInfo(v.target.value), checker = _a.checker, waitTime = _a.waitTime;\n //only check input in \"onBlur\" if waitTime is not set or equal to zero.\n // This is good in validating an input as it looses focus when the user moves to another,\n // input field\n if (!waitTime) {\n handleInputCheck(function () { return \"\".concat(v.target.value); }, function (checkedValue) {\n return checkedValue === v.target.value;\n }, checker, waitTime);\n }\n }\n }, errorBorderColor: 'red.300', isInvalid: !nullOrEmpty(errorMessage) }),\n iconRight ? React.createElement(InputRightElement, { children: iconRight }) : null),\n nullOrEmpty(errorMessage) || type == TYPES.location ? null :\n React.createElement(FormErrorMessage, null, errorMessage),\n nullOrEmpty(helperText) || type == TYPES.location ? null :\n React.createElement(FormHelperText, null, helperText),\n React.createElement(\"style\", null, \"\\n .cursor-not-allowed-deep {\\n cursor: not-allowed !important;\\n }\\n .cursor-not-allowed-deep * {\\n cursor: not-allowed;\\n }\\n \")));\n};\nInputBox.TYPES = TYPES;\nexport default React.memo(InputBox);\n","import { __assign, __rest } from \"tslib\";\nimport React from 'react';\nimport { Text } from \"@chakra-ui/react\";\nvar Link = function (_a) {\n var children = _a.children, disabled = _a.disabled, onClick = _a.onClick, props = __rest(_a, [\"children\", \"disabled\", \"onClick\"]);\n return (React.createElement(Text, __assign({ cursor: disabled ? \"not-allowed\" : \"pointer\", _hover: {\n opacity: \"0.3\"\n }, onClick: function (e) {\n if (onClick)\n onClick(e);\n } }, props), children));\n};\nexport default Link;\n","import { useEffect, useState } from 'react';\n// Import the functions you need from the SDKs you need\nimport { initializeApp } from \"firebase/app\";\n//Analytics for web\nimport { getAnalytics } from \"firebase/analytics\";\n//Authentication for Web\nimport { getAuth, onAuthStateChanged } from \"firebase/auth\";\n//Cloud Firestore for Web\nimport { getFirestore, doc, onSnapshot, collection } from \"firebase/firestore\"; // Updated import\nimport { getStorage, getDownloadURL, ref as storageRef, uploadBytes, } from \"firebase/storage\";\nimport { consoleLog } from '../../utils/f';\nvar useFirebase = function (config) {\n var _a = useState(), app = _a[0], setApp = _a[1];\n var _b = useState(), analytics = _b[0], setAnalytics = _b[1];\n var _c = useState(), auth = _c[0], setAuth = _c[1];\n var _d = useState(), db = _d[0], setDb = _d[1];\n var _e = useState(), user = _e[0], setUser = _e[1];\n var _f = useState(), adminInfo = _f[0], setAdminInfo = _f[1];\n var _g = useState(true), authLoading = _g[0], setAuthLoading = _g[1];\n var _h = useState(), storage = _h[0], setStorage = _h[1]; // Add storage state\n useEffect(function () {\n if (!(config === null || config === void 0 ? void 0 : config.firebaseConfig))\n return;\n // Initialize Firebase\n var theApp = initializeApp(config.firebaseConfig);\n var theDb = getFirestore(theApp);\n var theAuth = getAuth(theApp);\n var theAnalytics = getAnalytics(theApp);\n var theStorage = getStorage(theApp);\n setApp(theApp);\n setDb(theDb);\n setAuth(theAuth);\n setAnalytics(theAnalytics);\n setStorage(theStorage);\n setUser(null);\n var unsubscribe = onAuthStateChanged(theAuth, function (user) {\n setUser(user);\n setAuthLoading(false);\n });\n return function () {\n if (unsubscribe)\n unsubscribe();\n };\n }, [config === null || config === void 0 ? void 0 : config.firebaseConfig]);\n useEffect(function () {\n var unsubscribe;\n if (user && db) {\n consoleLog(\"Firebase.AdminInfo: will listen to admin doc\");\n // Listen to document changes at admins/{user.uid}\n unsubscribe = onSnapshot(doc(collection(db, \"admins\"), user.uid), function (docSnapshot) {\n try {\n if (docSnapshot.exists()) {\n var data = docSnapshot.data();\n setAdminInfo(data);\n consoleLog(\"Firebase.AdminInfo: admin \", data);\n }\n else {\n setAdminInfo(null); // Clear adminInfo if the document does not exist\n consoleLog(\"Firebase.AdminInfo: noAdmin \");\n }\n }\n catch (e) {\n consoleLog(\"Firebase.AdminInfo: Error listening to admin document:1 \", e);\n setAdminInfo(null); // Clear adminInfo on error\n }\n }, function (error) {\n consoleLog(\"Firebase.AdminInfo: Error listening to admin document:2 \", error);\n setAdminInfo(null); // Clear adminInfo on error\n });\n }\n else {\n setAdminInfo(null); // Clear adminInfo if user is not authenticated\n }\n return function () {\n if (unsubscribe)\n unsubscribe();\n };\n }, [user, db]);\n var uploadFile = function (file, pathToFile) {\n return new Promise(function (resolve, reject) {\n if (!storage) {\n reject(\"File storage not initialized yet.\");\n }\n else if (!file) {\n reject(\"Please provide the file to upload.\");\n }\n else if (!pathToFile) {\n reject(\"Please provide the location to upload the file to.\");\n }\n else {\n var fileRef = storageRef(storage, pathToFile);\n uploadBytes(fileRef, file)\n .then(function (snapshot) {\n getDownloadURL(snapshot.ref)\n .then(function (url) {\n resolve(url);\n })\n .catch(function (error) {\n reject(error);\n });\n })\n .catch(function (error) {\n reject(error);\n });\n }\n });\n };\n return {\n auth: auth,\n db: db,\n user: user,\n setUser: setUser,\n adminInfo: adminInfo,\n authLoading: authLoading,\n uploadFile: uploadFile,\n };\n};\nexport default useFirebase;\n","import { __rest } from \"tslib\";\nimport React, { useState } from \"react\";\nimport { Text, VStack } from \"@chakra-ui/react\";\nimport AppButton from \"../widgets/AppButton\";\nimport InputBox, { TYPES } from \"../widgets/InputBox\";\nimport Link from \"../widgets/Link\";\nimport { isValidEmail, nullOrEmpty } from \"../../utils/f\";\nimport Swal from 'sweetalert2';\nimport { sendPasswordResetEmail, signInWithEmailAndPassword } from \"firebase/auth\";\nimport useFirebase from \".\";\nvar SignInView = function (_a) {\n var onAuthDone = _a.onAuthDone, setUser = _a.setUser, config = _a.config, props = __rest(_a, [\"onAuthDone\", \"setUser\", \"config\"]);\n var auth = useFirebase(config).auth;\n var _b = useState(\"\"), email = _b[0], setEmail = _b[1];\n var _c = useState(), emailError = _c[0], setEmailError = _c[1];\n var _d = useState(\"\"), password = _d[0], setPassword = _d[1];\n var _e = useState(), passwordError = _e[0], setPasswordError = _e[1];\n var _f = useState(), requesting = _f[0], setRequesting = _f[1];\n var clearErrors = function () {\n setEmailError(\"\");\n setPasswordError(\"\");\n };\n var forgotPass = function (e) {\n var _a;\n e.preventDefault();\n clearErrors();\n if (nullOrEmpty(email)) {\n setEmailError('Please enter your email address, then click \"Forgot password\".');\n }\n else if (!isValidEmail(email)) {\n setEmailError(\"Please enter a valid email address.\");\n }\n else if (auth) {\n var pass_1 = password;\n setPassword(\"\");\n setRequesting(true);\n var codeSettings = {\n url: (_a = window === null || window === void 0 ? void 0 : window.location) === null || _a === void 0 ? void 0 : _a.href\n };\n sendPasswordResetEmail(auth, email, codeSettings)\n .then(function () {\n Swal.fire({\n icon: \"info\",\n text: isValidEmail(email) ?\n \"A password reset email has been sent to \".concat(email, \". Check your inbox or spam folder for the email sent.\")\n :\n \"A password reset code has been sent to \".concat(email, \". Check your messages for the code sent.\")\n });\n setRequesting(false);\n setPassword(pass_1);\n })\n .catch(function (e) {\n var msg;\n if (e.code == 'auth/user-not-found') {\n msg = \"The account is invalid.\";\n }\n else {\n msg = e.message;\n }\n Swal.fire({\n icon: \"error\",\n text: msg\n });\n setRequesting(false);\n setPassword(pass_1);\n });\n }\n };\n var sendRequest = function (maxRetries, triedTimes) {\n if (!auth)\n return;\n signInWithEmailAndPassword(auth, email, password)\n .then(function (userCredential) {\n setRequesting(false);\n if (userCredential) {\n setUser(userCredential.user);\n if (onAuthDone)\n onAuthDone(userCredential.user);\n }\n })\n .catch(function (e) {\n var msg;\n if (e.code == \"auth/wrong-password\") {\n msg = \"Wrong email address or password. Check your email address and password, then try again.\";\n }\n else if (e.code == 'auth/user-not-found') {\n msg = \"Wrong email address or password. Check your email address and password, then try again.\";\n }\n else if (e.code == \"auth/network-request-failed\") {\n if (triedTimes + 1 < maxRetries) {\n setTimeout(function () {\n sendRequest(maxRetries, triedTimes + 1);\n }, 2000);\n return;\n }\n else {\n msg = \"Failed to reach the server. Make sure your internet connection is stable and try again.\";\n }\n }\n else {\n msg = e.message;\n }\n Swal.fire({\n icon: \"error\",\n text: msg\n });\n setRequesting(false);\n });\n };\n var handleSubmit = function (e) {\n try {\n e.preventDefault();\n }\n catch (e) { }\n if (requesting)\n return;\n clearErrors();\n var hasError = false;\n //Check email\n if (nullOrEmpty(email)) {\n hasError = true;\n setEmailError(\"Please enter your email address.\");\n }\n else if (!isValidEmail(email)) {\n hasError = true;\n setEmailError(\"Please enter a valid email address.\");\n }\n //Check password\n if (nullOrEmpty(password)) {\n hasError = true;\n setPasswordError(\"Please enter your password.\");\n }\n if (!hasError && auth) {\n setRequesting(true);\n sendRequest(3, 0);\n }\n };\n return (React.createElement(VStack, null,\n React.createElement(InputBox, { type: TYPES.email, title: \"Email\", placeholder: \"Enter your email address.\", mb: 2, value: email, onChange: function (e) { return setEmail(e); }, errorMessage: emailError }),\n React.createElement(InputBox, { type: TYPES.password, title: \"Password\", placeholder: \"Enter your password\", mb: 2, value: password, onChange: function (e) { setPassword(e); }, errorMessage: passwordError }),\n React.createElement(Text, { as: \"div\", alignSelf: \"flex-end\" },\n React.createElement(Link, { onClick: forgotPass, disabled: requesting, fontStyle: requesting && !password ? \"italic\" : \"normal\" }, requesting && nullOrEmpty(password) ? \"Please wait...\" : \"Forgot password?\")),\n React.createElement(AppButton, { w: \"100%\", alignSelf: \"flex-start\", id: \"recaptcha-container\", type: \"submit\", onClick: handleSubmit, disabled: requesting, fontStyle: requesting && password ? \"italic\" : \"normal\", mt: \"1rem !important\", mb: \"1.5rem !important\" }, requesting && !nullOrEmpty(password) ? \"Please wait...\" : \"Sign in\")));\n};\nexport default SignInView;\n","import { __awaiter, __generator, __rest } from \"tslib\";\nimport React, { useState } from \"react\";\nimport { VStack } from \"@chakra-ui/react\";\nimport AppButton from \"../widgets/AppButton\";\nimport InputBox, { TYPES } from \"../widgets/InputBox\";\nimport { isValidEmail, nullOrEmpty } from \"../../utils/f\";\nimport Swal from 'sweetalert2';\nimport { createUserWithEmailAndPassword, sendEmailVerification, signInWithEmailAndPassword, updateProfile } from \"firebase/auth\";\nimport useFirebase from \".\";\nvar SignUpView = function (_a) {\n var onAuthDone = _a.onAuthDone, setUser = _a.setUser, config = _a.config, props = __rest(_a, [\"onAuthDone\", \"setUser\", \"config\"]);\n var _b = useFirebase(config), auth = _b.auth, user = _b.user, db = _b.db;\n var _c = useState(\"\"), fullname = _c[0], setFullname = _c[1];\n var _d = useState(\"\"), email = _d[0], setEmail = _d[1];\n var _e = useState(\"\"), password = _e[0], setPassword = _e[1];\n var _f = useState(), password2 = _f[0], setPassword2 = _f[1];\n var _g = useState(\"\"), fullnameError = _g[0], setFullnameError = _g[1];\n var _h = useState(), emailError = _h[0], setEmailError = _h[1];\n var _j = useState(), passwordError = _j[0], setPasswordError = _j[1];\n var _k = useState(), passwordError2 = _k[0], setPasswordError2 = _k[1];\n var _l = useState(), requesting = _l[0], setRequesting = _l[1];\n var clearErrors = function () {\n setFullnameError(\"\");\n setEmailError(\"\");\n setPasswordError(\"\");\n setPasswordError2(\"\");\n };\n var sendRequest = function (maxRetries, triedTimes) {\n if (!auth)\n return;\n createUserWithEmailAndPassword(auth, email, password)\n .then(function (userCredential) {\n if (userCredential) {\n updateProfile(userCredential.user, { displayName: fullname })\n .then(function () {\n sendVerification(userCredential.user);\n })\n .catch(function (error) {\n sendVerification(userCredential.user);\n });\n }\n else {\n throw new Error(\"No user credentials.\");\n }\n })\n .catch(function (e) { return __awaiter(void 0, void 0, void 0, function () {\n var msg, e_1;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!(e.code == \"auth/email-already-in-use\")) return [3 /*break*/, 1];\n msg = \"Email already in use. Please sign in.\";\n return [3 /*break*/, 10];\n case 1:\n if (!(e.code == \"auth/invalid-verification-code\")) return [3 /*break*/, 2];\n msg = \"The verification code is invalid.\";\n return [3 /*break*/, 10];\n case 2:\n if (!(e.code == \"auth/popup-closed-by-user\")) return [3 /*break*/, 3];\n msg = \"Authentication cancelled.\";\n return [3 /*break*/, 10];\n case 3:\n if (!(e.code == \"auth/network-request-failed\")) return [3 /*break*/, 9];\n if (!user) return [3 /*break*/, 8];\n _a.label = 4;\n case 4:\n _a.trys.push([4, 6, , 7]);\n return [4 /*yield*/, updateProfile(user, { displayName: fullname })];\n case 5:\n _a.sent();\n sendVerification(user);\n return [3 /*break*/, 7];\n case 6:\n e_1 = _a.sent();\n sendVerification(user);\n return [3 /*break*/, 7];\n case 7: return [2 /*return*/];\n case 8:\n if (triedTimes + 1 < maxRetries) {\n setTimeout(function () {\n //Try to sign in first. Maybe the sign up was successful\n signInWithEmailAndPassword(auth, email, password)\n .then(function (userCredential) { return __awaiter(void 0, void 0, void 0, function () {\n var e_2;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n _a.trys.push([0, 2, , 3]);\n return [4 /*yield*/, updateProfile(userCredential.user, { displayName: fullname })];\n case 1:\n _a.sent();\n sendVerification(userCredential.user);\n return [3 /*break*/, 3];\n case 2:\n e_2 = _a.sent();\n sendVerification(userCredential.user);\n return [3 /*break*/, 3];\n case 3: return [2 /*return*/];\n }\n });\n }); })\n .catch(function (e) {\n sendRequest(maxRetries, triedTimes + 1);\n });\n }, 2000);\n return [2 /*return*/];\n }\n else {\n msg = \"Failed to reach the server. Make sure your internet connection is stable and try again.\";\n }\n return [3 /*break*/, 10];\n case 9:\n msg = e.message;\n _a.label = 10;\n case 10:\n Swal.fire({\n icon: \"error\",\n text: msg\n });\n setRequesting(false);\n return [2 /*return*/];\n }\n });\n }); });\n };\n var handleSubmit = function (e) {\n try {\n e.preventDefault();\n }\n catch (e) { }\n if (requesting)\n return;\n clearErrors();\n var hasError = false;\n //Check fullname\n if (nullOrEmpty(fullname)) {\n hasError = true;\n setFullnameError(\"Please enter your fullname.\");\n }\n //Check email\n if (nullOrEmpty(email)) {\n hasError = true;\n setEmailError(\"Please enter your email address.\");\n }\n else if (!isValidEmail(email)) {\n hasError = true;\n setEmailError('Please enter a valid email address.');\n }\n //Check password and password confirmation\n if (nullOrEmpty(password)) {\n hasError = true;\n setPasswordError(\"Please enter your password.\");\n }\n else if (!/.{6,}/.test(password)) {\n hasError = true;\n setPasswordError(\"Your password cannot be less than 6 characters.\");\n }\n else if (nullOrEmpty(password2)) {\n hasError = true;\n setPasswordError2(\"Re-enter password\");\n }\n else if (password != password2) {\n hasError = true;\n setPasswordError2(\"Password does not match\");\n }\n if (!hasError && auth) {\n setRequesting(true);\n sendRequest(3, 0);\n }\n };\n var sendVerification = function (user) {\n sendEmailVerification(user, { url: location.href })\n .then(function () {\n Swal.fire({\n icon: \"success\",\n title: \"Registration successful\",\n text: \"Your registration was successful. An email to verify your email address has been sent. Please check your email inbox or spam folder for the email sent.\"\n })\n .then(function () {\n setUser(user);\n setRequesting(false);\n if (onAuthDone)\n onAuthDone(user);\n })\n .catch(function (e) {\n setUser(user);\n setRequesting(false);\n if (onAuthDone)\n onAuthDone(user);\n });\n })\n .catch(function (e) {\n Swal.fire({\n icon: \"success\",\n title: \"Registration successful\",\n text: \"Your registration was successful.\"\n })\n .then(function () {\n setUser(user);\n setRequesting(false);\n if (onAuthDone)\n onAuthDone(user);\n })\n .catch(function (e) {\n setUser(user);\n setRequesting(false);\n if (onAuthDone)\n onAuthDone(user);\n });\n });\n };\n return (React.createElement(VStack, null,\n React.createElement(InputBox, { type: TYPES.text, title: \"Fullname\", placeholder: \"Enter your fullname\", mb: \"1rem !important\", value: fullname, onChange: function (e) { return setFullname(e); }, errorMessage: fullnameError }),\n React.createElement(InputBox, { type: TYPES.email, title: \"Email\", placeholder: \"Enter your email\", mb: \"1rem !important\", value: email, onChange: function (e) { return setEmail(e); }, errorMessage: emailError }),\n React.createElement(InputBox, { type: \"password\", title: \"Password\", placeholder: \"Enter your password\", mb: \"1rem !important\", value: password, onChange: function (e) { setPassword(e); }, errorMessage: passwordError }),\n React.createElement(InputBox, { type: \"password\", title: \"Confirm password\", placeholder: \"Re-enter password\", mb: \"1rem !important\", value: password2, onChange: function (e) { setPassword2(e); }, errorMessage: passwordError2 }),\n React.createElement(AppButton, { w: \"100%\", alignSelf: \"flex-start\", type: \"submit\", onClick: handleSubmit, disabled: requesting, fontStyle: requesting ? \"italic\" : \"normal\", mt: \"1rem !important\", mb: \"1.5rem !important\" }, requesting && !nullOrEmpty(password) ? \"Please wait...\" : \"Sign up\")));\n};\nexport default SignUpView;\n","import React, { useState } from 'react';\nimport DrawerPop from '../widgets/DrawerPop';\nimport { Box, Image, Text, VStack } from \"@chakra-ui/react\";\nimport SignInView from \"./SignInView\";\nimport SignUpView from \"./SignUpView\";\nimport { LOGO_PATH } from '../../utils/c';\nimport Link from '../widgets/Link';\nvar AuthView = function (_a) {\n var show = _a.show, signInTitle = _a.signInTitle, signUpTitle = _a.signUpTitle, onSuccess = _a.onSuccess, onError = _a.onError, isDarkMode = _a.isDarkMode, setUser = _a.setUser, config = _a.config;\n var _b = useState(false), showSignIn = _b[0], setShowSignIn = _b[1];\n var handleAuthLinkClick = function (e) {\n e.preventDefault();\n setShowSignIn(!showSignIn);\n };\n if (!show)\n return null;\n return (React.createElement(DrawerPop, { title: \"\".concat(config === null || config === void 0 ? void 0 : config.appName, \" Authentication\"), isOpen: true, onClose: function () {\n onError(new Error(\"\"));\n }, placement: \"bottom\", height: \"95vh\", bg: \"#012 !important\", color: \"#fff !important\" },\n React.createElement(Box, { minH: \"60vh\", w: \"100%\", maxW: \"700px\", p: { base: \"15px 15px\", md: \"50px 80px\" }, m: \"15px auto\" },\n showSignIn ?\n React.createElement(React.Fragment, null,\n React.createElement(VStack, { w: \"100%\", justifyContent: \"flex-start\", alignItems: \"center\" },\n React.createElement(Image, { src: LOGO_PATH, h: \"48px\", w: \"auto\" }),\n React.createElement(Text, { as: \"div\", fontSize: \"1.2rem\", mb: \"0.1rem !important\", textAlign: \"center\" }, signInTitle),\n React.createElement(Text, { as: \"div\", fontSize: \"14px\", mb: \"1.5rem !important\", textAlign: \"center\" },\n \"If you have not registered, \",\n React.createElement(Link, { color: \"green.500\", textDecoration: \"underline\", onClick: handleAuthLinkClick, fontWeight: \"bold\" }, \"click this link to Sign Up.\"))),\n React.createElement(SignInView, { onAuthDone: onSuccess, setUser: setUser, config: config }))\n :\n React.createElement(React.Fragment, null,\n React.createElement(VStack, { w: \"100%\", justifyContent: \"flex-start\", alignItems: \"center\" },\n React.createElement(Image, { src: LOGO_PATH, h: \"48px\", w: \"auto\" }),\n React.createElement(Text, { as: \"div\", fontSize: \"1.2rem\", mb: \"0.1rem !important\", textAlign: \"center\" }, signUpTitle),\n React.createElement(Text, { as: \"div\", fontSize: \"14px\", mb: \"1.5rem !important\", textAlign: \"center\" },\n \"If you already have an account, \",\n React.createElement(Link, { color: \"green.500\", textDecoration: \"underline\", onClick: handleAuthLinkClick, fontWeight: \"bold\" }, \"click this link to Sign In.\"))),\n React.createElement(SignUpView, { onAuthDone: onSuccess, setUser: setUser, config: config })),\n React.createElement(Text, { as: \"div\", textAlign: \"center\", fontSize: \"14px\" }, showSignIn ?\n React.createElement(React.Fragment, null,\n \"If you have not registered, \",\n React.createElement(Link, { color: \"green.500\", textDecoration: \"underline\", onClick: handleAuthLinkClick }, \"click this link to Sign Up.\"))\n :\n React.createElement(React.Fragment, null,\n \"If you already have an account, \",\n React.createElement(Link, { color: \"green.500\", textDecoration: \"underline\", onClick: handleAuthLinkClick }, \"click this link to Sign In.\"))))));\n};\nexport default AuthView;\n","import { __assign, __rest } from \"tslib\";\nimport React from \"react\";\nimport { Box, HStack, Modal, ModalBody, ModalContent, ModalFooter, ModalHeader, ModalOverlay, Text, VStack } from \"@chakra-ui/react\";\nimport { FaTimes } from \"react-icons/fa\";\nvar ModalPop = function (_a) {\n var bg = _a.bg, color = _a.color, children = _a.children, placement = _a.placement, onClose = _a.onClose, isOpen = _a.isOpen, isClosable = _a.isClosable, title = _a.title, subtitle = _a.subtitle, footer = _a.footer, hideModeSwitch = _a.hideModeSwitch, noHeader = _a.noHeader, w = _a.w, width = _a.width, maxW = _a.maxW, maxWidth = _a.maxWidth, h = _a.h, height = _a.height, maxH = _a.maxH, maxHeight = _a.maxHeight, props = __rest(_a, [\"bg\", \"color\", \"children\", \"placement\", \"onClose\", \"isOpen\", \"isClosable\", \"title\", \"subtitle\", \"footer\", \"hideModeSwitch\", \"noHeader\", \"w\", \"width\", \"maxW\", \"maxWidth\", \"h\", \"height\", \"maxH\", \"maxHeight\"]);\n return (React.createElement(Modal, { onClose: onClose ? onClose : function () { }, isOpen: isOpen, isCentered: true },\n React.createElement(ModalOverlay, null),\n React.createElement(ModalContent, { bg: bg, color: color, minH: h || height || \"50vh\", maxH: maxH || maxHeight || \"100vh\", w: w || width || { base: \"95%\", md: \"650px\" }, maxW: maxW || maxWidth, borderRadius: \"16px !important\" },\n noHeader ? null :\n React.createElement(ModalHeader, { borderBottomWidth: '1px', w: \"100%\", display: \"flex\", justifyContent: \"space-between\", alignItems: \"center\" },\n React.createElement(VStack, { justifyContent: \"flex-start\", alignItems: \"flex-start\" },\n React.createElement(Text, { as: \"div\", fontSize: { base: \"1.1rem\", md: \"1.3rem\" }, textTransform: \"capitalize\" }, title),\n subtitle ?\n React.createElement(Text, { as: \"div\", fontSize: { base: \"11px\" } }, subtitle)\n : null),\n React.createElement(HStack, null, onClose && (isClosable || isClosable === undefined) ?\n React.createElement(Box, { onClick: onClose, cursor: \"pointer\", display: \"block\" },\n React.createElement(FaTimes, { size: \"24px\" }))\n :\n null)),\n React.createElement(ModalBody, __assign({}, props), children),\n footer ?\n React.createElement(ModalFooter, null, footer)\n : null)));\n};\nexport default ModalPop;\n","import React, { useState } from 'react';\nimport { consoleLog, getColor } from '../../utils/f';\nimport { SDK_NAME, STORAGE_KEYS } from '../../utils/c';\nimport { signInWithEmailAndPassword } from 'firebase/auth';\nimport useFirebase from '.';\nimport ModalPop from '../widgets/ModalPop';\nimport { VStack } from '@chakra-ui/react';\nimport InputBox, { TYPES } from '../widgets/InputBox';\nimport AppButton from '../widgets/AppButton';\nimport { FaSignInAlt } from 'react-icons/fa';\nvar AccessTokenDoor = function (_a) {\n var show = _a.show, onSuccess = _a.onSuccess, onError = _a.onError, isDarkMode = _a.isDarkMode, config = _a.config;\n var _b = useFirebase(config), auth = _b.auth, user = _b.user, setUser = _b.setUser;\n var _c = useState(), password = _c[0], setPassword = _c[1];\n var _d = useState(), e = _d[0], setE = _d[1];\n var _e = useState(false), authenticating = _e[0], setAuthenticating = _e[1];\n var handleSubmit = function () {\n setE(\"\");\n if (!password) {\n setE(\"Please enter your password\");\n }\n else if (auth && user && user.email && password && password.length > 0) {\n setAuthenticating(true);\n signInWithEmailAndPassword(auth, user.email, password)\n .then(function (auntentication) {\n var user = auntentication.user;\n if (user) {\n setUser(user);\n user.getIdToken()\n .then(function (token) {\n localStorage.setItem(STORAGE_KEYS.LAST_LOGIN_MILLI, \"\".concat(Date.now()));\n onSuccess(token, user);\n })\n .catch(function (e) {\n onError(e);\n });\n }\n else {\n setE(\"Failed to sign in. Please try again later.\");\n setAuthenticating(false);\n }\n })\n .catch(function (e) {\n var msg;\n if (e.code == \"auth/wrong-password\") {\n msg = \"Wrong email address or password. Check your email address and password, then try again.\";\n }\n else if (e.code == 'auth/user-not-found') {\n msg = \"Wrong email address or password. Check your email address and password, then try again.\";\n }\n else {\n msg = e.message;\n }\n setE(msg);\n setAuthenticating(false);\n });\n }\n else {\n consoleLog(\"AccessTokenDoor.handleSubmit => \", \"auth:\", auth, \" | user:\", user, \" | userEmail:\", user === null || user === void 0 ? void 0 : user.email, \" | password:\", password, \" | config\", config);\n }\n };\n if (!show)\n return null;\n return (React.createElement(ModalPop, { bg: getColor(isDarkMode, \"cardBg\"), title: \"Confirm Operation\", isOpen: true, onClose: function () {\n onError(new Error(\"Failed to confirm that it's you.\"));\n } },\n React.createElement(VStack, { p: \"1rem !important\", w: \"100%\", h: \"68vh\", justifyContent: \"flex-start\", alignItems: \"center\" },\n React.createElement(InputBox, { zIndex: \"10\", id: \"\".concat(SDK_NAME, \"_pass_confirm\"), key: \"\".concat(SDK_NAME, \"_pass_confirm\"), name: \"pass_confirm\", title: \"Enter Password\", helperText: \"Enter your password to confirm that it's you.\", value: password, type: TYPES.password, mb: 4, onChange: function (password) {\n setPassword(password);\n }, errorMessage: e }),\n React.createElement(AppButton, { alignSelf: \"flex-start\", onClick: handleSubmit, rightIcon: React.createElement(FaSignInAlt, null), disabled: authenticating, fontStyle: authenticating ? \"italic\" : \"normal\" }, authenticating ? \"Please wait...\" : \"Confirm Operation\"))));\n};\nexport default AccessTokenDoor;\n","import { __awaiter, __generator } from \"tslib\";\nimport { useEffect, useState } from 'react';\nimport axios from 'axios';\nimport { consoleLog, isBrowser } from '../../utils/f';\nvar MAX_RETRIES = 5;\nvar CACHE_KEY = \"sdk_config-metadata\";\nvar CACHE_BUST_KEY = \"_fb_cache_bust\";\n// let sdkConfigCache: SdkConfig | null = null;\n// let fetchPromise: Promise<SdkConfig | null> | null = null;\nvar addCacheBust = function (url) {\n try {\n var parsedUrl = new URL(url);\n parsedUrl.searchParams.set(CACHE_BUST_KEY, Date.now().toString());\n return parsedUrl.toString();\n }\n catch (err) {\n return url;\n }\n};\nvar readCachedMetadata = function () {\n if (!isBrowser())\n return null;\n try {\n var cachedMetadata = localStorage.getItem(CACHE_KEY);\n return cachedMetadata ? JSON.parse(cachedMetadata) : null;\n }\n catch (err) {\n localStorage.removeItem(CACHE_KEY);\n return null;\n }\n};\nvar useSdkConfig = function (appConfig) {\n var _a = useState(isBrowser() ? window.sdkConfigCache : null), sdkConfig = _a[0], setSdkConfig = _a[1];\n function parseVendors(vendorsAsTexts) {\n if (vendorsAsTexts === void 0) { vendorsAsTexts = []; }\n if (!Array.isArray(vendorsAsTexts))\n return [];\n return vendorsAsTexts.map(function (vendor) {\n if (typeof vendor !== \"string\")\n return vendor;\n var text = vendor;\n var _a = text.split(','), name = _a[0], number = _a[1], freq = _a[2];\n return {\n name: name,\n number: number,\n freq: parseInt(freq),\n };\n });\n }\n useEffect(function () {\n if (!(appConfig === null || appConfig === void 0 ? void 0 : appConfig.r2Domain))\n return;\n if (window.sdkConfigCache) {\n setSdkConfig(window.sdkConfigCache);\n }\n if (!window.fetchPromise) {\n window.fetchPromise = (function () { return __awaiter(void 0, void 0, void 0, function () {\n var attempts, cachedMetadata, cachedData, response, config, err_1;\n var _a;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n attempts = 0;\n cachedMetadata = readCachedMetadata();\n if (cachedMetadata) {\n cachedData = cachedMetadata.cachedData;\n if (cachedData) {\n window.sdkConfigCache = cachedData;\n setSdkConfig(cachedData);\n //return cachedData;\n }\n }\n consoleLog(\"useSdkConfig.refreshing\");\n _b.label = 1;\n case 1:\n if (!(attempts < MAX_RETRIES)) return [3 /*break*/, 6];\n _b.label = 2;\n case 2:\n _b.trys.push([2, 4, , 5]);\n return [4 /*yield*/, axios.get(addCacheBust(\"https://\".concat(appConfig.r2Domain, \"/sdk_config.json\")))];\n case 3:\n response = _b.sent();\n if (typeof response.data !== \"object\") {\n throw new Error(\"Invalid SDK config response\");\n }\n config = response.data;\n config.vendors = parseVendors(response.data.vendors);\n window.sdkConfigCache = config;\n setSdkConfig(config);\n // Save cache metadata\n localStorage.setItem(CACHE_KEY, JSON.stringify({\n etag: response.headers[\"etag\"],\n lastModified: response.headers[\"last-modified\"],\n cachedAt: Date.now(),\n cachedData: config\n }));\n consoleLog(\"useSdkConfig.refreshed: \", response.data, \" at \".concat(response.headers[\"last-modified\"], \", with etag, \").concat(response.headers[\"etag\"]));\n return [2 /*return*/, config];\n case 4:\n err_1 = _b.sent();\n if (((_a = err_1.response) === null || _a === void 0 ? void 0 : _a.status) === 404) {\n consoleLog(\"Error fetching SDK config: Resource not found (404): \", err_1);\n return [3 /*break*/, 6];\n }\n attempts++;\n if (attempts === MAX_RETRIES) {\n consoleLog(\"Error fetching SDK config: \", err_1);\n }\n return [3 /*break*/, 5];\n case 5: return [3 /*break*/, 1];\n case 6:\n if (window.sdkConfigCache)\n return [2 /*return*/, window.sdkConfigCache];\n return [2 /*return*/, null];\n }\n });\n }); })().finally(function () {\n window.fetchPromise = null;\n });\n }\n window.fetchPromise.then(function (config) {\n if (config)\n setSdkConfig(config);\n });\n }, [appConfig === null || appConfig === void 0 ? void 0 : appConfig.r2Domain]);\n return sdkConfig;\n};\nexport default useSdkConfig;\n","export var SUSCRIPTION_TYPES = {\n monthly: \"monthly\",\n quarterly: \"quarterly\",\n yearly: \"yearly\"\n};\n","import { __assign, __rest } from \"tslib\";\nimport React from \"react\";\nimport { Audio, BallTriangle, Bars, Blocks, Circles, CirclesWithBar, ColorRing, Comment, Discuss, Dna, Grid, FallingLines, FidgetSpinner, Hearts, InfinitySpin, LineWave, MagnifyingGlass, MutatingDots, Oval, ProgressBar, Puff, Radio, RevolvingDot, RotatingSquare, RotatingLines, Rings, TailSpin, ThreeDots, ThreeCircles, Triangle, RotatingTriangles, Watch, Vortex } from \"react-loader-spinner\";\nvar loadersMap = {\n Audio: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(Audio, __assign({}, props));\n },\n BallTriangle: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(BallTriangle, __assign({}, props));\n },\n Bars: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(Bars, __assign({}, props));\n },\n Blocks: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(Blocks, __assign({}, props));\n },\n Circles: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(Circles, __assign({}, props));\n },\n CirclesWithBar: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(CirclesWithBar, __assign({}, props));\n },\n ColorRing: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(ColorRing, __assign({}, props));\n },\n Comment: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(Comment, __assign({}, props));\n },\n Discuss: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(Discuss, __assign({}, props));\n },\n Dna: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(Dna, __assign({}, props));\n },\n Grid: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(Grid, __assign({}, props));\n },\n FallingLines: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(FallingLines, __assign({}, props));\n },\n FidgetSpinner: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(FidgetSpinner, __assign({}, props));\n },\n Hearts: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(Hearts, __assign({}, props));\n },\n InfinitySpin: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(InfinitySpin, __assign({}, props));\n },\n LineWave: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(LineWave, __assign({}, props));\n },\n MagnifyingGlass: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(MagnifyingGlass, __assign({}, props));\n },\n MutatingDots: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(MutatingDots, __assign({}, props));\n },\n Oval: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(Oval, __assign({}, props));\n },\n ProgressBar: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(ProgressBar, __assign({}, props));\n },\n Puff: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(Puff, __assign({}, props));\n },\n Radio: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(Radio, __assign({}, props));\n },\n RevolvingDot: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(RevolvingDot, __assign({}, props));\n },\n RotatingSquare: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(RotatingSquare, __assign({}, props));\n },\n RotatingLines: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(RotatingLines, __assign({}, props));\n },\n Rings: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(Rings, __assign({}, props));\n },\n TailSpin: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(TailSpin, __assign({}, props));\n },\n ThreeDots: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(ThreeDots, __assign({}, props));\n },\n ThreeCircles: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(ThreeCircles, __assign({}, props));\n },\n Triangle: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(Triangle, __assign({}, props));\n },\n RotatingTriangles: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(RotatingTriangles, __assign({}, props));\n },\n Watch: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(Watch, __assign({}, props));\n },\n Vortex: function (_a) {\n var props = __rest(_a, []);\n return React.createElement(Vortex, __assign({}, props));\n }\n};\nvar Loading = function (_a) {\n var type = _a.type, props = __rest(_a, [\"type\"]);\n return type != undefined ? (loadersMap[type](__assign({}, props))) : null;\n};\nLoading.TYPES = {\n audio: \"Audio\",\n bars: \"Bars\",\n ballTrinagle: \"BallTriangle\",\n circles: 'Circles',\n grid: \"Grid\",\n hearts: \"Hearts\",\n oval: \"Oval\",\n puff: \"Puff\",\n rings: 'Rings',\n tailSpin: 'TailSpin',\n threeDots: \"ThreeDots\",\n RotatingLines: \"RotatingLines\",\n Dna: \"Dna\"\n};\nexport default Loading;\n","import { HStack } from '@chakra-ui/react';\nimport React from 'react';\nimport Loading from './Loading';\nvar PleaseWaitForX = function () {\n return (React.createElement(HStack, { display: \"flex\", w: \"100%\", h: \"120px\", justifyContent: \"center\", alignItems: \"center\", pos: \"relative\", p: \"2rem\" },\n React.createElement(Loading, { color: \"green.500\", type: Loading.TYPES.RotatingLines })));\n};\nexport default PleaseWaitForX;\n","import { __assign, __spreadArray } from \"tslib\";\nimport React, { useEffect, useState } from \"react\";\nimport { SUSCRIPTION_TYPES } from \"../types\";\nimport InputBox, { TYPES } from \"../widgets/InputBox\";\nimport { Text, VStack } from \"@chakra-ui/react\";\nimport PleaseWaitForX from \"../widgets/PleaseWaitForX\";\nimport AppButton from \"../widgets/AppButton\";\nimport { amountFormatDefault, consoleLog, getColor } from \"../../utils/f\";\nimport { useFrontbacked } from \"../FrontbackedProvider\";\nimport DrawerPop from \"../widgets/DrawerPop\";\nvar ADMIN_PERMISSIONS = {\n canCreateTools: \"can_create_tools\",\n canEditTools: \"can_edit_tools\"\n};\nvar defaultAdminInfoPermissions = {\n uid: null,\n isAdmin: false,\n isToolsEditor: false,\n canCreateTools: false,\n canEditTools: false\n};\nvar DownloadType = function (_a) {\n var title = _a.title, config = _a.config, removeFreemiumBeforeUpdate = _a.removeFreemiumBeforeUpdate, toolId = _a.toolId, onGetTool = _a.onGetTool, freeTitle = _a.freeTitle, freeMessage = _a.freeMessage, paidTitle = _a.paidTitle, paidMessage = _a.paidMessage, updateMessage = _a.updateMessage, onSuccess = _a.onSuccess, onError = _a.onError, isDarkMode = _a.isDarkMode, renewSubscription = _a.renewSubscription, isFreemium = _a.isFreemium;\n var _b = useState(), downloadType = _b[0], setDownloadType = _b[1];\n var _c = useState(), downloadTypeError = _c[0], setDownloadTypeError = _c[1];\n var _d = useState(), docRules = _d[0], setDocRules = _d[1];\n var adminInfo = useFrontbacked().adminInfo;\n var _e = useState(true), autoProcessOn = _e[0], setAutoProcessOn = _e[1];\n var _f = useState(JSON.parse(JSON.stringify(defaultAdminInfoPermissions))), permission = _f[0], setPermission = _f[1];\n useEffect(function () {\n if (!(adminInfo === null || adminInfo === void 0 ? void 0 : adminInfo.permissions)) {\n setPermission({});\n }\n else {\n var perms = JSON.parse(JSON.stringify(defaultAdminInfoPermissions));\n perms.uid = adminInfo.uid;\n perms.isAdmin = true;\n perms.canCreateTools = adminInfo.permissions.includes(ADMIN_PERMISSIONS.canCreateTools);\n perms.canEditTools = adminInfo.permissions.includes(ADMIN_PERMISSIONS.canEditTools);\n perms.isToolsEditor = perms.canCreateTools || perms.canEditTools;\n setPermission(perms);\n }\n }, [adminInfo]);\n useEffect(function () {\n if (onGetTool && toolId) {\n var tool = onGetTool(toolId);\n consoleLog(\"DownloadType.setDocRules\", tool);\n setDocRules(!tool ? null : __assign(__assign({}, (docRules || {})), { allow_freemium: (tool === null || tool === void 0 ? void 0 : tool.allow_freemium) || true, create_price: (tool === null || tool === void 0 ? void 0 : tool.create_price) || 0, update_price: (tool === null || tool === void 0 ? void 0 : tool.update_price) || 0, create_price_is_monthly: (tool === null || tool === void 0 ? void 0 : tool.create_price_is_monthly) || false, yearly_price: tool === null || tool === void 0 ? void 0 : tool.yearly_price, quarterly_price: tool === null || tool === void 0 ? void 0 : tool.quarterly_price }));\n }\n }, [onGetTool, toolId]);\n var download = function () {\n setDownloadTypeError(\"\");\n if (permission.isToolsEditor && toolId == \"other_tools\") {\n onSuccess({\n allow_freemium: true,\n create_price: 0,\n update_price: 0,\n is_create: updateMessage ? false : true,\n is_freemium: true,\n cost: 0\n });\n }\n else if (docRules && downloadType === \"clean\") {\n var okResult = {\n allow_freemium: docRules.allow_freemium,\n create_price: docRules.create_price,\n update_price: docRules.update_price,\n is_create: updateMessage ? false : true,\n is_freemium: false,\n cost: docRules.create_price\n };\n if (docRules.create_price_is_monthly)\n okResult.subscription_type = SUSCRIPTION_TYPES.monthly;\n onSuccess(okResult);\n }\n else if (docRules && downloadType === \"clean_quarterly\") {\n onSuccess({\n allow_freemium: docRules.allow_freemium,\n create_price: docRules.quarterly_price || 0,\n update_price: docRules.update_price,\n is_create: updateMessage ? false : true,\n is_freemium: false,\n subscription_type: SUSCRIPTION_TYPES.quarterly,\n cost: docRules.quarterly_price || 0\n });\n }\n else if (docRules && downloadType === \"clean_yearly\") {\n onSuccess({\n allow_freemium: docRules.allow_freemium,\n create_price: docRules.yearly_price || 0,\n update_price: docRules.update_price,\n is_create: updateMessage ? false : true,\n is_freemium: false,\n subscription_type: SUSCRIPTION_TYPES.yearly,\n cost: docRules.yearly_price || 0\n });\n }\n else if (docRules && downloadType === \"free\") {\n onSuccess({\n allow_freemium: docRules.allow_freemium,\n create_price: docRules.create_price,\n update_price: docRules.update_price,\n is_create: true,\n is_freemium: true,\n cost: 0\n });\n }\n else if (docRules && updateMessage) {\n var updatePrice = docRules.create_price_is_monthly && renewSubscription ? docRules.create_price\n :\n docRules.allow_freemium && isFreemium ? 0 : docRules.update_price;\n consoleLog(\"DownloadType.updatePrice.1\", updatePrice, \"isMonth: \", docRules.create_price_is_monthly, \"isRenew\", renewSubscription);\n onSuccess({\n allow_freemium: docRules.allow_freemium,\n create_price: docRules.create_price,\n update_price: updatePrice,\n is_create: false,\n is_freemium: false,\n cost: updatePrice\n });\n }\n else {\n setDownloadTypeError(\"Please select a type.\");\n }\n };\n useEffect(function () {\n consoleLog(\"parsedSvg:templatesUrl.docRules\", permission.isToolsEditor, toolId, docRules);\n setAutoProcessOn(true);\n if (docRules) {\n if (permission.isToolsEditor && toolId == \"other_tools\") {\n onSuccess({\n allow_freemium: true,\n create_price: 0,\n update_price: 0,\n is_create: updateMessage ? false : true,\n is_freemium: true,\n cost: 0\n });\n } //If the type is to determine creation price and freemium is not allowed, \n // return result without presenting the freemium option and the item is not subscription modeled\n else if (updateMessage && removeFreemiumBeforeUpdate && docRules.create_price > 0 && !docRules.yearly_price && !docRules.quarterly_price) {\n consoleLog(\"DownloadType.setDocRules.2\", docRules);\n onSuccess({\n allow_freemium: docRules.allow_freemium,\n create_price: docRules.create_price,\n update_price: docRules.update_price,\n is_create: false,\n is_freemium: false,\n cost: docRules.create_price\n });\n }\n //If the type is to determine creation price and freemium is not allowed, \n // return result without presenting the freemium option and the item is not subscription modeled\n else if (!updateMessage && !docRules.allow_freemium && !docRules.yearly_price && !docRules.quarterly_price) {\n consoleLog(\"DownloadType.setDocRules.3\", docRules);\n onSuccess({\n allow_freemium: docRules.allow_freemium,\n create_price: docRules.create_price,\n update_price: docRules.update_price,\n is_create: true,\n is_freemium: false,\n cost: docRules.create_price\n });\n }\n //If the type is to determine the creation price and the create price is 0, \n // return result without presenting the update price's message\n else if (!updateMessage && docRules.create_price == 0) {\n consoleLog(\"DownloadType.setDocRules.4\", docRules);\n onSuccess({\n allow_freemium: docRules.allow_freemium,\n create_price: docRules.create_price,\n update_price: docRules.update_price,\n is_create: true,\n is_freemium: false,\n cost: docRules.create_price\n });\n }\n //If the type is to determine the update price and the update price is > 0, \n // return result without presenting the update price's message\n else if (updateMessage && docRules.update_price >= 0 && !removeFreemiumBeforeUpdate && (!renewSubscription || (renewSubscription && !docRules.yearly_price && !docRules.quarterly_price))) {\n consoleLog(\"DownloadType.setDocRules.5\", docRules);\n var updatePrice = docRules.create_price_is_monthly && renewSubscription ? docRules.create_price\n :\n docRules.allow_freemium && isFreemium ? 0 : docRules.update_price;\n consoleLog(\"DownloadType.updatePrice.2\", updatePrice, \"isMonth: \", docRules.create_price_is_monthly, \"isRenew\", renewSubscription);\n onSuccess({\n allow_freemium: docRules.allow_freemium,\n create_price: docRules.create_price,\n update_price: updatePrice,\n is_create: false,\n is_freemium: false,\n cost: updatePrice\n });\n }\n else {\n setAutoProcessOn(false);\n }\n }\n }, [docRules]);\n if ((permission.isToolsEditor && toolId == \"other_tools\") ||\n !toolId || !onGetTool ||\n !freeTitle ||\n !freeMessage ||\n !paidTitle ||\n !paidMessage)\n return null;\n return (React.createElement(DrawerPop, { placement: \"bottom\", bg: getColor(isDarkMode, \"cardBg\"), height: \"75vh\", isOpen: true, title: title, onClose: function () {\n onError(new Error(\"\"));\n }, footer: autoProcessOn || !docRules ? null :\n React.createElement(VStack, { w: \"100%\", mt: \"1rem\", justifyContent: \"flex-start\", alignItems: \"flex-start\" },\n downloadTypeError ?\n React.createElement(Text, { as: \"div\", color: \"rgb(246, 70, 93)\", mb: 2 }, downloadTypeError)\n : null,\n React.createElement(AppButton, { onClick: download }, \"Continue\")) }, \n //If docRuls has not been loaded\n //Or it's an update that needs freemium to be replaced with premium/paid and create price > 0\n //Or it's not an update(it's a create) but freemium is not allowed\n //Or it's not an update(it's a create) but create price is 0\n //Or it's an update but update price is 0\n //Or it's an update for subscription renewal\n /*!docRules ||*/ /*\n (updateMessage && removeFreemiumBeforeUpdate && docRules.create_price > 0) ||\n (!updateMessage && !docRules.allow_freemium) ||\n (!updateMessage && docRules.create_price == 0) ||\n (updateMessage && docRules.update_price == 0) ||\n (updateMessage && renewSubscription) ||\n (updateMessage && renewSubscription)*/\n //(!updateMessage && docRules.create_price == 0) || (updateMessage && !docRules.yearly_price && !docRules.quarterly_price)?\n autoProcessOn || !docRules ?\n React.createElement(PleaseWaitForX, null)\n :\n React.createElement(React.Fragment, null, updateMessage && !docRules.yearly_price && !docRules.quarterly_price ?\n React.createElement(Text, { mb: \"1rem\", as: \"div\" }, paidMessage.replace(\"{PRICE}\", \"$\".concat(docRules.update_price)))\n :\n React.createElement(React.Fragment, null,\n React.createElement(InputBox, { type: TYPES.radio, value: downloadType, direction: \"column\", errorMessage: downloadTypeError, options: __spreadArray(__spreadArray(__spreadArray(__spreadArray([], (!updateMessage ?\n [\n {\n value: \"free\",\n title: freeTitle.replace(\"{PRICE}\", \"\".concat(amountFormatDefault(docRules.create_price, 2, 2, true))),\n desc: freeMessage.replace(\"{PRICE}\", \"\".concat(amountFormatDefault(docRules.create_price, 2, 2, true)))\n }\n ]\n :\n []), true), [\n {\n value: \"clean\",\n title: paidTitle.replace(\"{PRICE}\", \"\".concat(amountFormatDefault(docRules.create_price, 2, 2, true)).concat(docRules.create_price_is_monthly ? \" for 1 month\" : \"\")),\n desc: paidMessage.replace(\"{PRICE}\", \"\".concat(amountFormatDefault(docRules.create_price, 2, 2, true)).concat(docRules.create_price_is_monthly ? \" for 1 month\" : \"\")) + (docRules.create_price_is_monthly ? \" It can be renewed after it expires in 1 month.\" : \"\")\n }\n ], false), (docRules.create_price_is_monthly && docRules.quarterly_price && docRules.quarterly_price > 0 ?\n [\n {\n value: \"clean_quarterly\",\n title: paidTitle.replace(\"{PRICE}\", \"\".concat(amountFormatDefault(docRules.quarterly_price, 2, 2, true), \" for 3 months\")),\n desc: paidMessage.replace(\"{PRICE}\", \"\".concat(amountFormatDefault(docRules.quarterly_price, 2, 2, true), \" for 3 months\")) + \" It can be renewed after it expires in 3 months.\"\n }\n ]\n :\n []), true), (docRules.create_price_is_monthly && docRules.yearly_price && docRules.yearly_price > 0 ?\n [\n {\n value: \"clean_yearly\",\n title: paidTitle.replace(\"{PRICE}\", \"\".concat(amountFormatDefault(docRules.yearly_price, 2, 2, true), \" for 1 year\")),\n desc: paidMessage.replace(\"{PRICE}\", \"\".concat(amountFormatDefault(docRules.yearly_price, 2, 2, true), \" for 1 year\")) + \" It can be renewed after it expires in 1 year.\"\n }\n ]\n :\n []), true), onOptionName: function (v) {\n return React.createElement(VStack, { justifyContent: \"flex-start\", alignItems: \"flex-start\", mb: \"1rem\" },\n React.createElement(Text, { as: \"div\", fontSize: \"1.2rem\", fontWeight: \"bold\" }, v.title),\n React.createElement(Text, { as: \"div\" }, v.desc));\n }, onOptionValue: function (v) { return v.value; }, onChange: function (v) {\n setDownloadType(v);\n } })))));\n};\nexport default DownloadType;\n","/**\n * Removes a specific query string parameter from a URL.\n * @param {string} url - The original URL.\n * @param {string} queryString - The query string parameter to remove.\n * @returns {string} - The updated URL without the specified query string parameter.\n */\nexport function removeQueryString(url, queryString) {\n try {\n // Create a URL object\n var urlObj = new URL(url);\n // Remove the specified query string parameter\n urlObj.searchParams.delete(queryString);\n // Return the updated URL as a string\n return urlObj.toString();\n }\n catch (error) {\n console.error('Invalid URL:', error, url);\n return url; // Return the original URL if there's an error\n }\n}\n/**\n * Converts an array of objects to a map using a specified attribute as the key.\n *\n * @param {Array<Object>} arr - The array of objects to be converted.\n * @param {string} attr - The attribute to use as the key for the mapping.\n * @returns {Object} - An object mapping each unique attribute value to its corresponding item.\n */\nexport function arrayToMap(attr, arr, keyParser) {\n return arr.reduce(function (map, item) {\n var key = item[attr];\n if (keyParser)\n key = keyParser(key);\n if (key !== undefined) {\n map[key] = item;\n }\n return map;\n }, {});\n}\nexport function removeUpdateQueryString(url) {\n return removeQueryString(url, 'updates');\n}\nexport var rmUpdates = function (url) {\n if (!url)\n return null;\n try {\n return removeUpdateQueryString(url);\n }\n catch (e) {\n return null;\n }\n};\n","import { __awaiter, __generator } from \"tslib\";\nimport { useEffect, useState } from \"react\";\nimport axios from \"axios\";\nimport { arrayToMap, rmUpdates } from \"./utils\";\nimport { consoleLog, isBrowser } from \"../../../utils/f\";\nvar MAX_RETRIES = 5;\nvar CACHE_KEY = \"tools-cache-metadata\";\nvar CACHE_BUST_KEY = \"_fb_cache_bust\";\n// let toolsCache: ToolsData | null = null;\n// let toolsFetchPromise: Promise<ToolsData | null> | null = null;\nvar setR2Host = function (url, r2Domain) {\n if (!url)\n return url;\n if (url.startsWith('/')) {\n return \"https://\".concat(r2Domain).concat(url);\n }\n try {\n var parsedUrl = new URL(url);\n parsedUrl.host = r2Domain;\n parsedUrl.protocol = 'https:'; // force https\n return parsedUrl.toString();\n }\n catch (err) {\n console.error('Invalid URL:', url);\n return url; // fallback\n }\n};\nvar addCacheBust = function (url) {\n try {\n var parsedUrl = new URL(url);\n parsedUrl.searchParams.set(CACHE_BUST_KEY, Date.now().toString());\n return parsedUrl.toString();\n }\n catch (err) {\n return url;\n }\n};\nvar readCachedMetadata = function () {\n if (!isBrowser())\n return null;\n try {\n var cachedMetadata = localStorage.getItem(CACHE_KEY);\n return cachedMetadata ? JSON.parse(cachedMetadata) : null;\n }\n catch (err) {\n localStorage.removeItem(CACHE_KEY);\n return null;\n }\n};\nvar useTools = function (config) {\n var _a = useState(isBrowser() ? window.toolsCache : null), data = _a[0], setData = _a[1];\n var _b = useState(!isBrowser() || !window.toolsCache), loading = _b[0], setLoading = _b[1];\n var _c = useState(null), error = _c[0], setError = _c[1];\n var _d = useState(null), toolsById = _d[0], setToolsById = _d[1];\n var _e = useState(null), toolsByTemplatesUrl = _e[0], setToolsByTemplatesUrl = _e[1];\n useEffect(function () {\n if (!(config === null || config === void 0 ? void 0 : config.r2Domain))\n return;\n if (window.toolsCache) {\n setData(window.toolsCache);\n setLoading(false);\n consoleLog(\"useTools.returns as toolsCache already exist: \", window.toolsCache);\n }\n if (!window.toolsFetchPromise) {\n window.toolsFetchPromise = (function () { return __awaiter(void 0, void 0, void 0, function () {\n var attempts, cachedMetadata, cachedData, response, err_1;\n var _a, _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n attempts = 0;\n cachedMetadata = readCachedMetadata();\n if (cachedMetadata) {\n cachedData = cachedMetadata.cachedData;\n if (cachedData) {\n window.toolsCache = cachedData;\n setData(cachedData);\n setLoading(false);\n //return cachedData;\n }\n }\n consoleLog(\"useTools.refreshing\");\n _c.label = 1;\n case 1:\n if (!(attempts < MAX_RETRIES)) return [3 /*break*/, 6];\n _c.label = 2;\n case 2:\n _c.trys.push([2, 4, , 5]);\n return [4 /*yield*/, axios.get(addCacheBust(\"https://\".concat(config.r2Domain, \"/templates/tools.json\")))];\n case 3:\n response = _c.sent();\n if (typeof response.data !== \"object\" || !Array.isArray((_a = response.data) === null || _a === void 0 ? void 0 : _a.tools)) {\n throw new Error(\"Invalid tools response\");\n }\n window.toolsCache = response.data;\n setData(response.data);\n setError(null);\n setLoading(false);\n // Save cache metadata\n localStorage.setItem(CACHE_KEY, JSON.stringify({\n etag: response.headers[\"etag\"],\n lastModified: response.headers[\"last-modified\"],\n cachedAt: Date.now(),\n cachedData: response.data,\n }));\n consoleLog(\"useTools.refreshed: \", response.data, \" at \".concat(response.headers[\"last-modified\"], \", with etag, \").concat(response.headers[\"etag\"]));\n return [2 /*return*/, response.data];\n case 4:\n err_1 = _c.sent();\n if (((_b = err_1.response) === null || _b === void 0 ? void 0 : _b.status) === 404) {\n if (!window.toolsCache)\n setError(\"Resource not found (404)\");\n return [3 /*break*/, 6];\n }\n attempts++;\n if (attempts === MAX_RETRIES) {\n if (!window.toolsCache)\n setError(\"Failed to fetch data after multiple attempts\");\n }\n return [3 /*break*/, 5];\n case 5: return [3 /*break*/, 1];\n case 6:\n if (window.toolsCache) {\n setError(null);\n setLoading(false);\n return [2 /*return*/, window.toolsCache];\n }\n setLoading(false);\n return [2 /*return*/, null];\n }\n });\n }); })().finally(function () {\n window.toolsFetchPromise = null;\n });\n }\n window.toolsFetchPromise.then(function (result) {\n if (result)\n setData(result);\n });\n }, [config === null || config === void 0 ? void 0 : config.r2Domain]);\n useEffect(function () {\n if ((data === null || data === void 0 ? void 0 : data.tools) && !loading && !error) {\n setToolsById(arrayToMap(\"id\", data.tools || []));\n setToolsByTemplatesUrl(arrayToMap(\"templates_url\", data.tools || [], function (url) { return rmUpdates(setR2Host(url, config.r2Domain)); }));\n }\n }, [data, loading, error]);\n var getTool = function (toolId) {\n if (!toolsById)\n return null;\n if (toolId === \"other_tools\") {\n return {\n id: toolId,\n name: \"Tool Editor\",\n description: \"Create tools for other users\",\n isActive: true,\n isHidden: true,\n siteLogoUrl: \"\",\n siteUrl: \"/tool-editor\",\n allow_freemium: true,\n create_price: 0,\n update_price: 0,\n desktopVideoUrl: \"\",\n mobileVideoUrl: \"\",\n };\n }\n return toolsById[toolId];\n };\n return {\n loading: loading,\n error: error,\n totalUpdates: data === null || data === void 0 ? void 0 : data.totalUpdates,\n lastUpdatedOn: data === null || data === void 0 ? void 0 : data.lastUpdatedOn,\n previouslyUpdatedOn: data === null || data === void 0 ? void 0 : data.previouslyUpdatedOn,\n tools: data === null || data === void 0 ? void 0 : data.tools,\n toolsById: toolsById,\n toolsByTemplatesUrl: toolsByTemplatesUrl,\n getTool: getTool,\n };\n};\nexport default useTools;\n","import { useEffect, useState } from \"react\";\n// Function to get the value of a query parameter from the URL\nvar getQueryParamValue = function (param) {\n var urlSearchParams = new URLSearchParams(window.location.search);\n return urlSearchParams.get(param);\n};\nvar useReferralId = function () {\n var _a = useState(), referralId = _a[0], setReferralId = _a[1];\n var getReferralId = function () { return localStorage.getItem('referral_id'); };\n useEffect(function () {\n // Get the referral_id from the URL query\n var refId = getQueryParamValue('ref');\n // Check if referral_id is present in the URL\n if (refId) {\n // Save referral_id to local storage\n localStorage.setItem('referral_id', refId);\n setReferralId(refId);\n }\n else {\n refId = getReferralId();\n if (refId) {\n setReferralId(refId);\n }\n }\n }, []); // Run the effect only once on mount\n return {\n referralId: referralId,\n getReferralId: getReferralId\n };\n};\nexport default useReferralId;\n","import { __assign } from \"tslib\";\nimport React, { useEffect, useState, createContext, useContext } from 'react';\n//import \"./FrontbackedProvider.scss\";\nimport AuthView from '../Firebase/AuthView';\nimport useFirebase from '../Firebase';\nimport { consoleLog, downloadSvgAsImage, rejectPromise, resolvePromise, savePromise, updateLogSettings } from '../../utils/f';\nimport { PROMISE_ID, SDK_NAME, STORAGE_KEYS, IS_TEST } from '../../utils/c';\nimport AccessTokenDoor from '../Firebase/AccessTokenDoor';\nimport axios from 'axios';\nimport useSdkConfig from '../hooks/useSdkConfig';\nimport DownloadType from '../DownloadType';\nimport useTools from '../hooks/useTools';\nimport { rmUpdates } from '../hooks/useTools/utils';\nimport useReferralId from '../hooks/useReferralId';\nvar SoftBakerContext = createContext({});\nexport { rmUpdates };\nvar FrontbackedProvider = function (_a) {\n var enableLog = _a.enableLog, children = _a.children, isDarkMode = _a.isDarkMode, disableBlockchainPoll = _a.disableBlockchainPoll, config = _a.config;\n var _b = useFirebase(config), auth = _b.auth, db = _b.db, user = _b.user, authLoading = _b.authLoading, setUser = _b.setUser, uploadFile = _b.uploadFile, adminInfo = _b.adminInfo;\n var _c = useState(), showAuth = _c[0], setShowAuth = _c[1];\n var _d = useState(), signInTitle = _d[0], setSignInTitle = _d[1];\n var _e = useState(), signUpTitle = _e[0], setSignUpTitle = _e[1];\n var _f = useState(), showAccessTokenDoor = _f[0], setShowAccessTokenDoor = _f[1];\n var _g = useState(0), walletTrackerDefaultDepositAmount = _g[0], setWalletTrackerDefaultDepositAmount = _g[1];\n var _h = useState(), dowloadTypeProps = _h[0], setDowloadTypeProps = _h[1];\n var _j = useState(false), showCreditTransfer = _j[0], setShowCreditTransfer = _j[1];\n var sdkConfig = useSdkConfig(config);\n var getTool = useTools(config).getTool;\n useEffect(function () {\n updateLogSettings(enableLog);\n }, [enableLog]);\n useEffect(function () {\n consoleLog(\"\".concat(SDK_NAME, \": sdkConfig/currentTool\"), sdkConfig);\n }, [sdkConfig]);\n var signIn = function (signInTitle, signUpTitle) {\n return new Promise(function (resolve, reject) {\n savePromise(PROMISE_ID.signIn, resolve, reject);\n setSignInTitle(signInTitle);\n setSignUpTitle(signUpTitle);\n setShowAuth(true);\n });\n };\n var signOut = function () {\n if (auth)\n return auth.signOut();\n return new Promise(function (resolve, reject) {\n resolve(null);\n });\n };\n var getAccessToken = function (maxAgeMilli) {\n return new Promise(function (resolve, reject) {\n if (!user) {\n reject(new Error(\"signed-out\"));\n }\n else {\n var now = new Date();\n var lastLoginDate = new Date();\n lastLoginDate.setTime(user.metadata.lastLoginAt);\n var timeDiff = now.getTime() - lastLoginDate.getTime();\n if (!maxAgeMilli || timeDiff <= maxAgeMilli) {\n user.getIdToken()\n .then(function (token) {\n resolve(token);\n })\n .catch(function (e) {\n reject(e);\n });\n }\n else {\n savePromise(PROMISE_ID.getAccessToken, resolve, reject);\n setShowAccessTokenDoor(true);\n }\n }\n });\n };\n var createDoc = function (docId, doc, user, staticToolCollection, dynamicToolId) {\n return new Promise(function (resolve, reject) {\n if (!user) {\n reject(new Error(\"Sign In required\"));\n }\n else {\n user.getIdToken().then(function (authToken) {\n axios.post(\"\".concat(IS_TEST ? config === null || config === void 0 ? void 0 : config.serverBaseUrlTest : config === null || config === void 0 ? void 0 : config.serverBaseUrlLive, \"/create_doc\"), {\n collection: staticToolCollection,\n docId: docId,\n doc: doc,\n dynamicToolId: dynamicToolId\n }, {\n headers: {\n Authorization: authToken,\n },\n })\n .then(function (result) {\n resolve(result.data);\n })\n .catch(function (error) {\n var _a;\n reject(((_a = error === null || error === void 0 ? void 0 : error.response) === null || _a === void 0 ? void 0 : _a.data) || { error: error === null || error === void 0 ? void 0 : error.message });\n });\n });\n }\n });\n };\n var updateDoc = function (docId, doc, staticToolCollection, dynamicToolId) {\n return new Promise(function (resolve, reject) {\n if (!user) {\n reject(new Error(\"Sign In required\"));\n }\n else {\n user.getIdToken().then(function (authToken) {\n axios.post(\"\".concat(IS_TEST ? config === null || config === void 0 ? void 0 : config.serverBaseUrlTest : config === null || config === void 0 ? void 0 : config.serverBaseUrlLive, \"/update_doc\"), {\n collection: staticToolCollection,\n docId: docId,\n doc: doc,\n dynamicToolId: dynamicToolId\n }, {\n headers: {\n Authorization: authToken,\n },\n })\n .then(function (result) {\n resolve(result.data);\n })\n .catch(function (error) {\n var _a;\n reject(((_a = error === null || error === void 0 ? void 0 : error.response) === null || _a === void 0 ? void 0 : _a.data) || { error: error === null || error === void 0 ? void 0 : error.message });\n });\n });\n }\n });\n };\n var showWallet = function (amount) {\n setWalletTrackerDefaultDepositAmount(amount);\n };\n var getDownloadType = function (downloadTypeProps) {\n return new Promise(function (resolve, reject) {\n savePromise(PROMISE_ID.downloadType, resolve, reject);\n setDowloadTypeProps(downloadTypeProps);\n });\n };\n var resources = {\n auth: auth,\n db: db,\n user: user,\n authLoading: authLoading,\n uploadFile: uploadFile,\n adminInfo: adminInfo,\n signIn: signIn,\n signOut: signOut,\n createDoc: createDoc,\n updateDoc: updateDoc,\n showWallet: showWallet,\n sdkConfig: sdkConfig,\n contact_link: sdkConfig === null || sdkConfig === void 0 ? void 0 : sdkConfig.contact_link,\n group_link: sdkConfig === null || sdkConfig === void 0 ? void 0 : sdkConfig.group_link,\n group_links: sdkConfig === null || sdkConfig === void 0 ? void 0 : sdkConfig.group_links,\n parent_site_home: sdkConfig === null || sdkConfig === void 0 ? void 0 : sdkConfig.parent_site_home,\n aff_pct: sdkConfig === null || sdkConfig === void 0 ? void 0 : sdkConfig.aff_pct,\n balanceInUsd: 0,\n balancePendingInUsd: 0,\n unconfirmedDepositsCount: 0,\n downloadSvgAsImage: downloadSvgAsImage,\n getDownloadType: getDownloadType\n };\n return (React.createElement(SoftBakerContext.Provider, { value: resources },\n children,\n !showAuth ? null :\n React.createElement(AuthView, { config: config, isDarkMode: isDarkMode, show: showAuth, setUser: setUser, signInTitle: signInTitle, signUpTitle: signUpTitle, onSuccess: function (user) {\n setShowAuth(false);\n localStorage.setItem(STORAGE_KEYS.LAST_LOGIN_MILLI, \"\".concat(Date.now()));\n resolvePromise(PROMISE_ID.signIn, user);\n }, onError: function (error) {\n setShowAuth(false);\n rejectPromise(PROMISE_ID.signIn, error);\n } }),\n !showAccessTokenDoor ? null :\n React.createElement(AccessTokenDoor, { config: config, isDarkMode: isDarkMode, show: showAccessTokenDoor, onSuccess: function (token) {\n setShowAccessTokenDoor(false);\n resolvePromise(PROMISE_ID.getAccessToken, token);\n }, onError: function (error) {\n setShowAccessTokenDoor(false);\n rejectPromise(PROMISE_ID.getAccessToken, error);\n } }),\n React.createElement(DownloadType, __assign({ config: config, isDarkMode: isDarkMode }, (dowloadTypeProps ? dowloadTypeProps : {}), { onGetTool: function (id) {\n return getTool(id);\n }, onSuccess: function (result) {\n setDowloadTypeProps(null);\n consoleLog(\"parsedSvg:templatesUrl.<DownloadType\", result, \"dowloadTypeProps: \", dowloadTypeProps);\n resolvePromise(PROMISE_ID.downloadType, result);\n }, onError: function (error) {\n setDowloadTypeProps(null);\n consoleLog(\"parsedSvg:templatesUrl.<DownloadType.error\", error, \"dowloadTypeProps: \", dowloadTypeProps);\n setDowloadTypeProps(null);\n rejectPromise(PROMISE_ID.downloadType, error);\n } }))));\n};\nfunction useFrontbacked() {\n return useContext(SoftBakerContext);\n}\nexport { FrontbackedProvider, useFrontbacked, useSdkConfig, useTools, useReferralId };\n"],"names":["theme","navbarShadow","light","dark","overlayBg","selectCoinBg","transferWarningBg","cardBg","cardBgShadow","cardBgInverse","cardBgHover","dividerColor","loadingColor","error","LIB_LOGO","PROMISE_ID","signIn","getAccessToken","deposit","downloadType","requestPayment","creditTransfer","SDK_NAME","STORAGE_KEYS","ENABLED_LOG","concat","SDK_CONFIG","DOC_RULES","LAST_DEPOSIT_BLOCK_NUMBER","LAST_LOGIN_MILLI","LAST_USD_BALANCE","USER","LOGO_PATH","_super","__extends","CustomError","message","code","_newTarget","constructor","_this","call","name","Object","setPrototypeOf","prototype","Error","nullOrEmpty","d","length","isVoid","value","undefined","isValidEmail","email","test","USE_SOFT_BAKER_RESOLVE_PREFIX","USE_SOFT_BAKER_REJECT_PREFIX","savePromise","promiseId","resolve","reject","pollInterval","window","resolvePromise","data","rejectPromise","updateLogSettings","enableLog","localStorage","setItem","consoleLog","args","_i","arguments","console","log","apply","isEnabled","getItem","isAppleMobileDevice","navigator","userAgent","platform","maxTouchPoints","openBlobInBrowser","blob","fileName","openInNewTab","objectUrl","URL","createObjectURL","downloadLink","document","createElement","href","rel","style","display","target","download","body","appendChild","click","removeChild","setTimeout","revokeObjectURL","shareBlob","__awaiter","shareApi","canShare","file","shareData","__generator","_a","label","share","File","type","files","title","sent","promptAppleMobileSave","Promise","overlay","setAttribute","cssText","join","dialog","textContent","actions","cancelButton","saveButton","cleanup","onclick","shared","error_1","trys","push","downloadBlob","downloadSvgAsImage","svgString","format","svgBlob","Blob","svgUrl","img","Image","crossOrigin","onload","canvas","context","dataUrl","imageBlob","error_2","width","height","getContext","drawImage","toDataURL","dataURLToBlob","onerror","src","dataURL","arr","split","mime","match","bstr","atob","n","u8arr","Uint8Array","charCodeAt","getColor","isDarkMode","colorName","color","amountFormatDefault","v","minFD","maxFD","noZeroDecimals","isNaN","resolvedMaxFD","resolvedMinFD","factor","Math","pow","roundedValue","floor","formatted","toLocaleString","minimumFractionDigits","maximumFractionDigits","includes","intPart","decimalPart","isBrowser","DrawerPop","bg","children","placement","onClose","isOpen","isClosable","closeOnOverlayClick","footer","hideModeSwitch","h","maxH","maxHeight","w","maxW","maxWidth","props","__rest","_b","useState","height2","setHeight","_c","width2","setWidth","_d","borderTopLeftRadius","setBorderTopLeftRadius","_e","borderTopRightRadius","setBorderTopRightRadius","_f","borderBottomLeftRadius","setBorderBottomLeftRadius","_g","borderBottomRightRadius","setBorderBottomRightRadius","useEffect","handleBackButton","event","preventDefault","addEventListener","removeEventListener","React","Drawer","DrawerOverlay","DrawerContent","__assign","DrawerHeader","borderBottomWidth","justifyContent","alignItems","Text","as","fontSize","base","md","textTransform","HStack","Box","onClick","cursor","FaTimes","size","DrawerBody","DrawerFooter","AppButton","variant","bgColor","outlineColor","leftIcon","rightIcon","loading","disabled","outline","Button","e","p","letterSpacing","textAlign","borderRadius","border","borderColor","boxShadow","opacity","transition","_hover","_disabled","mr","ThreeDots","ml","InfoLabel","info","onInfo","i","Swal","fire","icon","text","confirmButtonText","showCancelButton","flexWrap","mx","mb","marginInlineStart","marginInlineEnd","FaInfoCircle","arraysEqual","array1","array2","l","Array","countryCodes","require","TYPES","number","range","date","phone","password","select","select_tree","textarea","checkbox","checklist","radio","none","location","price","extractNumberFromString","numberRegex","numParts","mantissa","replace","decimals","result","Number","InputBox","id","key","locale","onChange","onFocus","onCheckInfo","onKeyDown","errorMessage","helperText","placeholder","options","onOptionValue","onOptionName","defaultCountry","phoneSelectBg","phoneSelectColor","numberDecimals","hasNegOverflow","numberUnit","rangeMinPlaceholder","minTitle","rangeMaxPlaceholder","maxTitle","maxTextLimit","direction","resize","disableCalendar","disableClock","dateFormat","iconLeft","iconRight","apiKey","mapToSearchRatio","twoDigitCountryCode","inputRef","defaultLatlng","geotype","showPassword","setShowPassword","decimalsSet","setDecimalsSet","parseNum","num","__spreadArray","changeNumber","increaseNumber","numberSteps","decreaseNumber","updateRangeValue","useCallback","min","max","parseFloat","countryCodesMap","setCountryCodesMap","countruesToCurrency","customList","setChecklist","isArray","searchActive","setSearchActive","handleInputCheck","getLatestValue","onValueIsLatest","checker","waitTime","check","checkedValue","then","memoizedOptions","useMemo","map","FormControl","isInvalid","FormLabel","InputGroup","InputLeftElement","Select","ref","errorBorderColor","InputRightElement","Input","PhoneInput","background","_focusVisible","getNumberInfo","codes","parsePhoneNumber","countryCode","country","currencyCode","dialingCode","countryCallingCode","inflatedValue","onBlur","px","m","FaEyeSlash","FaEye","FaMinus","FaPlus","alignSelf","pb","Textarea","isDisabled","RegExp","Checkbox","isChecked","checked","Flex","flexDirection","index","sm","selected","all","onlySelected","all_1","selectedService","RadioGroup","Stack","Radio","VStack","FormErrorMessage","FormHelperText","memo","Link","useFirebase","config","app","setApp","analytics","setAnalytics","auth","setAuth","db","setDb","user","setUser","adminInfo","setAdminInfo","authLoading","setAuthLoading","_h","storage","setStorage","firebaseConfig","theApp","initializeApp","theDb","getFirestore","theAuth","getAuth","theAnalytics","getAnalytics","theStorage","getStorage","unsubscribe","onAuthStateChanged","onSnapshot","doc","collection","uid","docSnapshot","exists","uploadFile","pathToFile","fileRef","storageRef","uploadBytes","snapshot","getDownloadURL","url","SignInView","onAuthDone","setEmail","emailError","setEmailError","setPassword","passwordError","setPasswordError","requesting","setRequesting","clearErrors","forgotPass","pass_1","codeSettings","sendPasswordResetEmail","msg","sendRequest","maxRetries","triedTimes","signInWithEmailAndPassword","userCredential","handleSubmit","hasError","fontStyle","mt","SignUpView","fullname","setFullname","password2","setPassword2","fullnameError","setFullnameError","_j","_k","passwordError2","setPasswordError2","_l","createUserWithEmailAndPassword","updateProfile","displayName","sendVerification","e_1","e_2","sendEmailVerification","AuthView","show","signInTitle","signUpTitle","onSuccess","onError","showSignIn","setShowSignIn","handleAuthLinkClick","appName","minH","Fragment","textDecoration","fontWeight","ModalPop","subtitle","noHeader","Modal","isCentered","ModalOverlay","ModalContent","ModalHeader","ModalBody","ModalFooter","AccessTokenDoor","setE","authenticating","setAuthenticating","auntentication","getIdToken","token","Date","now","zIndex","FaSignInAlt","MAX_RETRIES","CACHE_KEY","CACHE_BUST_KEY","addCacheBust","parsedUrl","searchParams","set","toString","err","readCachedMetadata","cachedMetadata","JSON","parse","removeItem","useSdkConfig","appConfig","sdkConfigCache","sdkConfig","setSdkConfig","parseVendors","vendorsAsTexts","vendor","freq","parseInt","r2Domain","fetchPromise","attempts","cachedData","response","err_1","axios","get","_typeof","vendors","stringify","etag","headers","lastModified","cachedAt","status","SUSCRIPTION_TYPES","monthly","quarterly","yearly","loadersMap","Audio","BallTriangle","Bars","Blocks","Circles","CirclesWithBar","ColorRing","Comment","Discuss","Dna","Grid","FallingLines","FidgetSpinner","Hearts","InfinitySpin","LineWave","MagnifyingGlass","MutatingDots","Oval","ProgressBar","Puff","RevolvingDot","RotatingSquare","RotatingLines","Rings","TailSpin","ThreeCircles","Triangle","RotatingTriangles","Watch","Vortex","Loading","audio","bars","ballTrinagle","circles","grid","hearts","oval","puff","rings","tailSpin","threeDots","PleaseWaitForX","pos","ADMIN_PERMISSIONS","canCreateTools","canEditTools","defaultAdminInfoPermissions","isAdmin","isToolsEditor","DownloadType","removeFreemiumBeforeUpdate","toolId","onGetTool","freeTitle","freeMessage","paidTitle","paidMessage","updateMessage","renewSubscription","isFreemium","setDownloadType","downloadTypeError","setDownloadTypeError","docRules","setDocRules","useFrontbacked","autoProcessOn","setAutoProcessOn","permission","setPermission","permissions","perms","tool","allow_freemium","create_price","update_price","create_price_is_monthly","yearly_price","quarterly_price","is_create","is_freemium","cost","okResult","subscription_type","updatePrice","desc","removeQueryString","queryString","urlObj","arrayToMap","attr","keyParser","reduce","item","removeUpdateQueryString","rmUpdates","setR2Host","startsWith","host","protocol","useTools","toolsCache","setData","setLoading","setError","toolsById","setToolsById","toolsByTemplatesUrl","setToolsByTemplatesUrl","toolsFetchPromise","tools","getTool","description","isActive","isHidden","siteLogoUrl","siteUrl","desktopVideoUrl","mobileVideoUrl","totalUpdates","lastUpdatedOn","previouslyUpdatedOn","getQueryParamValue","param","urlSearchParams","URLSearchParams","search","useReferralId","referralId","setReferralId","getReferralId","refId","SoftBakerContext","createContext","FrontbackedProvider","disableBlockchainPoll","showAuth","setShowAuth","setSignInTitle","setSignUpTitle","showAccessTokenDoor","setShowAccessTokenDoor","walletTrackerDefaultDepositAmount","setWalletTrackerDefaultDepositAmount","dowloadTypeProps","setDowloadTypeProps","showCreditTransfer","setShowCreditTransfer","signOut","createDoc","docId","staticToolCollection","dynamicToolId","authToken","post","serverBaseUrlLive","Authorization","updateDoc","showWallet","amount","getDownloadType","downloadTypeProps","resources","contact_link","group_link","group_links","parent_site_home","aff_pct","balanceInUsd","balancePendingInUsd","unconfirmedDepositsCount","Provider","useContext"],"mappings":"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"}