@osovitny/core 4.0.0 → 4.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -21
- package/README.md +31 -31
- package/fesm2022/osovitny-core.mjs.map +1 -1
- package/package.json +4 -4
package/LICENSE
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2016-2026 Osovitny
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2016-2026 Osovitny
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,31 +1,31 @@
|
|
|
1
|
-
# @osovitny/core
|
|
2
|
-
|
|
3
|
-
Framework-agnostic TypeScript foundation for Osovitny web applications — usable in any TS/JS project.
|
|
4
|
-
|
|
5
|
-
Licensed under [MIT](./LICENSE). Lockstep-versioned with [`@osovitny/angular`](https://www.npmjs.com/package/@osovitny/angular), which re-exports this package's entire public API.
|
|
6
|
-
|
|
7
|
-
## What's inside
|
|
8
|
-
|
|
9
|
-
- **Converts** — date/time (incl. timezone helpers), XML formatting, general value conversion
|
|
10
|
-
- **Utils** — `guid`, `is` type guards, DOM helpers, `Subs` subscription aggregator (rxjs), query-string utils, `Stopwatch`
|
|
11
|
-
- **Consts & enums** — app settings (sessionStorage-backed globals), formats, storage keys, GA events, billing enums
|
|
12
|
-
- **Notifications** — sweetalert2-based alert helpers
|
|
13
|
-
- **IAM (msal-browser layer)** — Azure AD B2C policy config, redirect state, MSAL settings storage
|
|
14
|
-
- **Billing** — PayPal models and helpers
|
|
15
|
-
- **Ports** — `Logger` (`setLogger`/`getLogger`) and `Localizer` (`setLocalizer`/`getLocalizer`): this package never logs or localizes directly; hosts register adapters (defaults: console / pass-through)
|
|
16
|
-
|
|
17
|
-
## Install
|
|
18
|
-
|
|
19
|
-
```bash
|
|
20
|
-
npm install @osovitny/core
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
Peer dependencies: `rxjs`, `date-fns`, `@azure/msal-browser`, `sweetalert2`, `uuid`, `js-beautify`.
|
|
24
|
-
|
|
25
|
-
## Usage
|
|
26
|
-
|
|
27
|
-
```typescript
|
|
28
|
-
import { Guid, Convert, Subs, setLogger } from '@osovitny/core';
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
Angular apps should use [`@osovitny/angular`](https://www.npmjs.com/package/@osovitny/angular) instead — it re-exports everything here and wires the ports automatically.
|
|
1
|
+
# @osovitny/core
|
|
2
|
+
|
|
3
|
+
Framework-agnostic TypeScript foundation for Osovitny web applications — usable in any TS/JS project.
|
|
4
|
+
|
|
5
|
+
Licensed under [MIT](./LICENSE). Lockstep-versioned with [`@osovitny/angular`](https://www.npmjs.com/package/@osovitny/angular), which re-exports this package's entire public API.
|
|
6
|
+
|
|
7
|
+
## What's inside
|
|
8
|
+
|
|
9
|
+
- **Converts** — date/time (incl. timezone helpers), XML formatting, general value conversion
|
|
10
|
+
- **Utils** — `guid`, `is` type guards, DOM helpers, `Subs` subscription aggregator (rxjs), query-string utils, `Stopwatch`
|
|
11
|
+
- **Consts & enums** — app settings (sessionStorage-backed globals), formats, storage keys, GA events, billing enums
|
|
12
|
+
- **Notifications** — sweetalert2-based alert helpers
|
|
13
|
+
- **IAM (msal-browser layer)** — Azure AD B2C policy config, redirect state, MSAL settings storage
|
|
14
|
+
- **Billing** — PayPal models and helpers
|
|
15
|
+
- **Ports** — `Logger` (`setLogger`/`getLogger`) and `Localizer` (`setLocalizer`/`getLocalizer`): this package never logs or localizes directly; hosts register adapters (defaults: console / pass-through)
|
|
16
|
+
|
|
17
|
+
## Install
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
npm install @osovitny/core
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
Peer dependencies: `rxjs`, `date-fns`, `@azure/msal-browser`, `sweetalert2`, `uuid`, `js-beautify`.
|
|
24
|
+
|
|
25
|
+
## Usage
|
|
26
|
+
|
|
27
|
+
```typescript
|
|
28
|
+
import { Guid, Convert, Subs, setLogger } from '@osovitny/core';
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
Angular apps should use [`@osovitny/angular`](https://www.npmjs.com/package/@osovitny/angular) instead — it re-exports everything here and wires the ports automatically.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"osovitny-core.mjs","sources":["../../../projects/core/src/lib/core/consts/storageKeys.ts","../../../projects/core/src/lib/core/consts/app-settings.ts","../../../projects/core/src/lib/core/consts/assets.ts","../../../projects/core/src/lib/core/consts/formats.ts","../../../projects/core/src/lib/core/consts/ga.ts","../../../projects/core/src/lib/core/is.ts","../../../projects/core/src/lib/core/converts/convert.ts","../../../projects/core/src/lib/core/converts/tz/tzTokenizeDate.ts","../../../projects/core/src/lib/core/converts/tz/tzParseTimezone.ts","../../../projects/core/src/lib/core/converts/dateConvert.ts","../../../projects/core/src/lib/core/converts/xmlFormatter.ts","../../../projects/core/src/lib/core/enums/billing.ts","../../../projects/core/src/lib/core/enums/enums.ts","../../../projects/core/src/lib/core/enums/index.ts","../../../projects/core/src/lib/core/guards/once-import.guard.ts","../../../projects/core/src/lib/core/localization/localizer.ts","../../../projects/core/src/lib/core/logging/logger.ts","../../../projects/core/src/lib/core/models/qs.ts","../../../projects/core/src/lib/core/notifications/alerts.ts","../../../projects/core/src/lib/core/notifications/interfaces/notification.ts","../../../projects/core/src/lib/core/performance/stopwatch.ts","../../../projects/core/src/lib/core/dom.ts","../../../projects/core/src/lib/core/guid.ts","../../../projects/core/src/lib/core/subs.ts","../../../projects/core/src/lib/core/utils/qsutils.ts","../../../projects/core/src/lib/core/utils/utils.ts","../../../projects/core/src/lib/iam/consts.ts","../../../projects/core/src/lib/iam/b2c/b2c.ts","../../../projects/core/src/lib/iam/b2c/consts.ts","../../../projects/core/src/lib/iam/b2c/index.ts","../../../projects/core/src/lib/iam/storage.ts","../../../projects/core/src/lib/iam/redirect.ts","../../../projects/core/src/lib/iam/utils.ts","../../../projects/core/src/lib/billing/models/paypal-models.ts","../../../projects/core/src/lib/billing/utils.ts","../../../projects/core/src/lib/ui/components/html-editor/defaultoptions.ts","../../../projects/core/src/lib/ui/components/spinners/pagespinner/spinkits.ts","../../../projects/core/src/public-api.ts","../../../projects/core/src/osovitny-core.ts"],"sourcesContent":["/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\nexport const SessionStorageKeys = {\r\n appSettings: 'appSettings',\r\n appMSALSettings: 'appMSALSettings'\r\n};\r\n\r\nexport const AppContextStorageKeys = {\r\n version: 'version',\r\n currency: 'currency',\r\n\r\n //Lists\r\n countries: 'countries',\r\n languages: 'languages',\r\n timezones: 'timezones',\r\n usStates: 'usStates'\r\n};\r\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\n//App\r\nimport { SessionStorageKeys } from \"./storageKeys\";\r\n\r\nexport function getAppSettings() {\r\n const json = sessionStorage.getItem(SessionStorageKeys.appSettings);\r\n return json ? JSON.parse(json) : null;\r\n}\r\n\r\nexport function resetAppSettings() {\r\n AppSettings = getAppSettings();\r\n\r\n let isDevMode = `${AppSettings?.isDevMode}`;\r\n\r\n AppVersion = `${AppSettings?.version}`;\r\n IsDevMode = (isDevMode && (isDevMode == 'True' || isDevMode == 'true'));\r\n IsProdMode = !IsDevMode;\r\n ClientApps = AppSettings?.clientApps; \r\n}\r\n\r\nexport function getAppSettingsById(id) {\r\n let apps = ClientApps;\r\n\r\n if (apps && id) {\r\n for (let i = 0; i < apps.length; i++) {\r\n let app = apps[i];\r\n\r\n if (app.id == id) {\r\n return app;\r\n }\r\n }\r\n }\r\n\r\n return null;\r\n}\r\n\r\nexport function getAppSettingsByName(name) {\r\n let apps = ClientApps;\r\n\r\n if (apps && name) {\r\n for (let i = 0; i < apps.length; i++) {\r\n let app = apps[i];\r\n\r\n if (app.name == name) {\r\n return app;\r\n }\r\n }\r\n }\r\n\r\n return null;\r\n}\r\n\r\nexport interface ICurrentApp {\r\n id: number;\r\n root: string;\r\n\r\n //ApplicationOne\r\n one: any;\r\n oneUrl: string;\r\n}\r\n\r\nexport function getCurrentApp(): ICurrentApp {\r\n let appSettings = getAppSettingsByName(AppName);\r\n let appOne = getAppSettingsById(1);\r\n\r\n if (!appSettings || !appOne) {\r\n return null;\r\n }\r\n \r\n return {\r\n id: appSettings.id,\r\n root: appSettings.root,\r\n\r\n one: appOne,\r\n oneUrl: appOne?.baseUrl + appOne?.root\r\n }\r\n}\r\n\r\nexport let AppSettings;\r\nexport let AppVersion;\r\nexport let IsDevMode: boolean = true;\r\nexport let IsProdMode: boolean = !IsDevMode;\r\nexport let ClientApps;\r\n\r\n//Set global vars\r\ndeclare const g_AppName: any;\r\ndeclare const g_LibName: any;\r\ndeclare const g_ApiUrl: any;\r\nexport const AppName = g_AppName;\r\nexport const LibName = g_LibName;\r\nexport const ApiUrl = g_ApiUrl;\r\n\r\nresetAppSettings();\r\n\r\n\r\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\nimport { AppSettings, AppName, LibName } from \"./app-settings\";\n\nexport enum AssetGroupType {\n App = 1,\n Lib = 2,\n External\n}\n\n/*\n formatAssetsUrl builds a typed asset URL and delegates to formatUrl.\n\n Output pattern: {base}/{AppName}/assets/{assetGroup}/{assetType}/{file}\n\n assetGroup tokens:\n App -> {AppName} e.g. \"am\"\n Lib -> {LibName} e.g. \"@nexl\"\n External -> external/{libname}\n\n assetType:\n jsons - JSON data files\n l10n - localization files\n images - image files\n\n Examples (AppName = \"am\", LibName = \"@nexl\", CDN disabled):\n App -> /am/assets/am/jsons/countries.json?v=1\n Lib -> /am/assets/@nexl/l10n/en.json?v=1\n External-> /am/assets/external/somelib/jsons/file.json?v=1\n\n Examples (CDN = \"https://cdn.novaexpress.ai\"):\n App -> https://cdn.novaexpress.ai/am/assets/am/jsons/countries.json\n Lib -> https://cdn.novaexpress.ai/am/assets/@nexl/l10n/en.json\n External-> https://cdn.novaexpress.ai/am/assets/external/somelib/jsons/file.json\n*/\nexport function formatAssetsUrl(assetGroupType: AssetGroupType, url: string): string {\n const path = url.replace(/^\\/+/, '');\n\n switch (assetGroupType) {\n case AssetGroupType.App:\n return formatUrl(`assets/{AppName}/${path}`);\n\n case AssetGroupType.Lib:\n return formatUrl(`assets/{LibName}/${path}`);\n\n case AssetGroupType.External:\n return formatUrl(`assets/external/${path}`);\n\n default:\n return url;\n }\n}\n\n/*\n formatUrl resolves a relative URL to its final form.\n\n Output pattern: {base}/{AppName}/{url}\n\n Tokens in url are resolved before building the path:\n {AppName} -> AppName (e.g. \"am\")\n {LibName} -> LibName (e.g. \"@nexl\")\n\n base:\n CDN disabled -> \"\" (relative URL, e.g. /am/assets/...)\n CDN enabled -> \"https://cdn.novaexpress.ai\"\n\n Absolute URLs (starting with \"http\") are returned as-is.\n*/\nexport function formatUrl(url: string): string {\n if (!url) {\n return \"\";\n }\n\n if (url.startsWith(\"http\")) {\n return url;\n }\n\n if (!AppSettings) {\n return url;\n }\n\n const version = AppSettings.version;\n const isCDNEnabled = AppSettings.cdn?.enabled;\n const cdnUrl = AppSettings.cdn?.url;\n\n const resolved = url\n .replace('{AppName}', AppName ?? '')\n .replace('{LibName}', LibName ?? '');\n\n const base = (isCDNEnabled && cdnUrl)\n ? cdnUrl.replace(/\\/+$/, '')\n : '';\n\n const fullUrl = base + '/' + AppName + '/' + resolved.replace(/^\\/+/, '');\n\n if (fullUrl.endsWith('.json')) {\n return fullUrl + '?v=' + version;\n }\n\n return fullUrl;\n}","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\nexport const dateTimeFormats = {\r\n medium: 'dd MMM yyyy HH:mm'\r\n};\r\n\r\nexport const dateFormats = {\r\n medium: \"dd MMM yyyy\",\r\n short: \"dd/MM/yyyy\"\r\n};\r\n\r\nexport const timeFormats = {\r\n medium: \"HH:mm:ss\",\r\n short: \"HH:mm\"\r\n};\r\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\nexport const GAEvents = {\r\n login: {\r\n signin: 'osa_login_signin',\r\n signin_success: 'osa_login_signin_success',\r\n signup: 'osa_login_signup',\r\n signup_success: 'osa_login_signup_success'\r\n }\r\n};\r\n\r\nexport const GABillingEvents = {\r\n payment: 'osa_billing_payment'\r\n};\r\n\r\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\nexport class is {\r\n /**\r\n * @name isDate\r\n * @summary Is the given value a date?\r\n */\r\n public static date(value) {\r\n return (\r\n value instanceof Date ||\r\n (typeof value === \"object\" && Object.prototype.toString.call(value) === \"[object Date]\")\r\n );\r\n }\r\n\r\n /**\r\n * @name isDateValid\r\n * @summary Is the given date valid?\r\n */\r\n public static dateValid(date): boolean {\r\n if (!is.date(date) && typeof date !== \"number\") {\r\n return false;\r\n }\r\n\r\n let d = new Date(date);\r\n return !isNaN(Number(d));\r\n }\r\n\r\n public static dateInvalid(date): boolean {\r\n return !is.dateValid(date);\r\n }\r\n\r\n public static objectNullOrEmpty(obj) {\r\n return !obj || Object.keys(obj).length == 0;\r\n }\r\n\r\n public static string(value) {\r\n return (typeof value === 'string' || value instanceof String);\r\n }\r\n\r\n public static emptyString(value) {\r\n return (is.string(value) && (value.length == 0));\r\n }\r\n\r\n public static notEmptyString(value) {\r\n return (is.string(value) && (value.length > 0));\r\n }\r\n\r\n public static number(value) {\r\n return (typeof value === 'number');\r\n }\r\n\r\n public static boolean(value) {\r\n return (typeof value === 'boolean');\r\n }\r\n\r\n public static array(value) {\r\n return (value instanceof Array);\r\n }\r\n\r\n public static emptyArray(value) {\r\n return (is.array(value) && (value.length == 0));\r\n }\r\n\r\n public static notEmptyArray(value) {\r\n return (is.array(value) && (value.length > 0));\r\n }\r\n\r\n public static undefined(value) {\r\n return (typeof value === 'undefined');\r\n }\r\n}\r\n\r\n/*\r\nis = {\r\n DONE string: function (obj) { return (typeof obj === 'string'); },\r\n DONE emptyString: function (obj) { return (is.string(obj) && (obj.length == 0)); },\r\n DONE nonEmptyString: function (obj) { return (is.string(obj) && (obj.length > 0)); },\r\n DONE number: function (obj) { return (typeof obj === 'number'); },\r\n DONE bool: function (obj) { return (typeof obj === 'boolean'); },\r\n DONE array: function (obj) { return (obj instanceof Array); },\r\n DONE emptyArray: function (obj) { return (is.array(obj) && (obj.length == 0)); },\r\n DONE notEmptyArray: function (obj) { return (is.array(obj) && (obj.length > 0)); },\r\n DONE undefined: function (obj) { return (typeof obj === 'undefined'); },\r\n\r\n 'null': function (obj) { return (obj === null); },\r\n notNull: function (obj) { return (obj !== null); },\r\n invalid: function (obj) { return (is['null'](obj) || is.undefined(obj)); },\r\n valid: function (obj) { return (!is['null'](obj) && !is.undefined(obj)); },\r\n\r\n document: function (obj) { return (obj === document); },\r\n window: function (obj) { return (obj === window); },\r\n element: function (obj) { return (obj instanceof HTMLElement); },\r\n event: function (obj) { return (obj instanceof Event); },\r\n link: function (obj) { return (is.element(obj) && (obj.tagName == 'A')); }\r\n};\r\n*/\r\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\nimport { is } from \"../is\";\r\n\r\nexport class Convert {\r\n private static pad(number) {\r\n if (number < 10) {\r\n return '0' + number;\r\n }\r\n return number;\r\n }\r\n\r\n public static enumToString(enumeration, value) {\r\n for (let k in enumeration) if (enumeration[k] == value) return k;\r\n\r\n return null;\r\n }\r\n\r\n public static enumToArray(enumeration, valueAsInt = true, notIncludes?) {\r\n const notIncludeFiler = (value) => {\r\n if (isNaN(Number(value))) {\r\n return false;\r\n }\r\n\r\n if (notIncludes) {\r\n for (let i in notIncludes) {\r\n if (notIncludes[i] == value)\r\n return false;\r\n }\r\n }\r\n\r\n return true;\r\n }\r\n\r\n if (valueAsInt) {\r\n return Object.keys(enumeration)\r\n .filter(notIncludeFiler)\r\n .map(key => ({\r\n value: parseInt(key),\r\n text: enumeration[key]\r\n }));\r\n }\r\n else {\r\n return Object.keys(enumeration)\r\n .filter(notIncludeFiler)\r\n .map(key => ({\r\n value: key,\r\n text: enumeration[key]\r\n }));\r\n }\r\n }\r\n\r\n public static stringToArray(str: string, separator: string = ',') {\r\n if (str) {\r\n return str.split(separator).filter(element => element);\r\n }\r\n\r\n return [];\r\n }\r\n\r\n public static stringToIntArray(str: string, separator: string = ',') {\r\n if (str) {\r\n return str.split(separator).filter(element => element).map(value => parseInt(value));\r\n }\r\n\r\n return [];\r\n }\r\n\r\n public static company2String(comp:any):string {\r\n let company = JSON.parse(comp);\r\n if(company)\r\n {\r\n return `${company.name} ${company.phone} ${company.email} ${company.websiteUrl}`;\r\n }\r\n }\r\n\r\n public static address2String(adr:any):string {\r\n let address = JSON.parse(adr);\r\n return `${address.street} ${address.street2} ${address.city} ${address.stateOrRegion} ${address.zipcode} ${address.country}`;\r\n }\r\n\r\n public static stringToBoolean(value) {\r\n if (value) {\r\n if (is.boolean(value)){\r\n return value;\r\n }\r\n\r\n if (is.string(value)){\r\n switch (value.toLowerCase().trim()) {\r\n case \"true\":\r\n case \"yes\":\r\n case \"1\":\r\n return true;\r\n \r\n case \"false\":\r\n case \"no\":\r\n case \"0\":\r\n case null:\r\n return false;\r\n }\r\n }\r\n }\r\n\r\n return false;\r\n }\r\n}\r\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\n/**\r\n * Returns the [year, month, day, hour, minute, seconds] tokens of the provided\r\n * `date` as it will be rendered in the `timeZone`.\r\n */\r\nexport function tzTokenizeDate(date, timeZone) {\r\n var dtf = getDateTimeFormat(timeZone)\r\n return dtf.formatToParts ? partsOffset(dtf, date) : hackyOffset(dtf, date)\r\n}\r\n\r\nvar typeToPos = {\r\n year: 0,\r\n month: 1,\r\n day: 2,\r\n hour: 3,\r\n minute: 4,\r\n second: 5,\r\n}\r\n\r\nfunction partsOffset(dtf, date) {\r\n try {\r\n var formatted = dtf.formatToParts(date)\r\n var filled = []\r\n for (var i = 0; i < formatted.length; i++) {\r\n var pos = typeToPos[formatted[i].type]\r\n\r\n if (pos >= 0) {\r\n filled[pos] = parseInt(formatted[i].value, 10)\r\n }\r\n }\r\n return filled\r\n } catch (error) {\r\n if (error instanceof RangeError) {\r\n return [NaN]\r\n }\r\n throw error\r\n }\r\n}\r\n\r\nfunction hackyOffset(dtf, date) {\r\n var formatted = dtf.format(date).replace(/\\u200E/g, '')\r\n var parsed = /(\\d+)\\/(\\d+)\\/(\\d+),? (\\d+):(\\d+):(\\d+)/.exec(formatted)\r\n // var [, fMonth, fDay, fYear, fHour, fMinute, fSecond] = parsed\r\n // return [fYear, fMonth, fDay, fHour, fMinute, fSecond]\r\n return [parsed[3], parsed[1], parsed[2], parsed[4], parsed[5], parsed[6]]\r\n}\r\n\r\n// Get a cached Intl.DateTimeFormat instance for the IANA `timeZone`. This can be used\r\n// to get deterministic local date/time output according to the `en-US` locale which\r\n// can be used to extract local time parts as necessary.\r\nvar dtfCache = {}\r\nfunction getDateTimeFormat(timeZone) {\r\n if (!dtfCache[timeZone]) {\r\n // New browsers use `hourCycle`, IE and Chrome <73 does not support it and uses `hour12`\r\n var testDateFormatted = new Intl.DateTimeFormat('en-US', {\r\n hour12: false,\r\n timeZone: 'America/New_York',\r\n year: 'numeric',\r\n month: 'numeric',\r\n day: '2-digit',\r\n hour: '2-digit',\r\n minute: '2-digit',\r\n second: '2-digit',\r\n }).format(new Date('2014-06-25T04:00:00.123Z'))\r\n\r\n var hourCycleSupported =\r\n testDateFormatted === '06/25/2014, 00:00:00' ||\r\n testDateFormatted === '06/25/2014 00:00:00'\r\n\r\n dtfCache[timeZone] = hourCycleSupported\r\n ? new Intl.DateTimeFormat('en-US', {\r\n hour12: false,\r\n timeZone: timeZone,\r\n year: 'numeric',\r\n month: 'numeric',\r\n day: '2-digit',\r\n hour: '2-digit',\r\n minute: '2-digit',\r\n second: '2-digit',\r\n })\r\n : new Intl.DateTimeFormat('en-US', {\r\n hourCycle: 'h23',\r\n timeZone: timeZone,\r\n year: 'numeric',\r\n month: 'numeric',\r\n day: '2-digit',\r\n hour: '2-digit',\r\n minute: '2-digit',\r\n second: '2-digit',\r\n })\r\n }\r\n\r\n return dtfCache[timeZone]\r\n}\r\n\r\n\r\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\nimport { tzTokenizeDate } from \"./tzTokenizeDate\"\r\n\r\nexport function tzParseTimezone(timezoneString, date, isUtcDate) {\r\n var token\r\n var absoluteOffset\r\n\r\n // Empty string\r\n if (!timezoneString) {\r\n return 0\r\n }\r\n\r\n // Z\r\n token = patterns.timezoneZ.exec(timezoneString)\r\n if (token) {\r\n return 0\r\n }\r\n\r\n var hours\r\n\r\n // ±hh\r\n token = patterns.timezoneHH.exec(timezoneString)\r\n if (token) {\r\n hours = parseInt(token[1], 10)\r\n\r\n if (!validateTimezone(hours)) {\r\n return NaN\r\n }\r\n\r\n return -(hours * MILLISECONDS_IN_HOUR)\r\n }\r\n\r\n // ±hh:mm or ±hhmm\r\n token = patterns.timezoneHHMM.exec(timezoneString)\r\n if (token) {\r\n hours = parseInt(token[1], 10)\r\n var minutes = parseInt(token[2], 10)\r\n\r\n if (!validateTimezone(hours, minutes)) {\r\n return NaN\r\n }\r\n\r\n absoluteOffset = Math.abs(hours) * MILLISECONDS_IN_HOUR + minutes * MILLISECONDS_IN_MINUTE\r\n return hours > 0 ? -absoluteOffset : absoluteOffset\r\n }\r\n\r\n // IANA time zone\r\n if (isValidTimezoneIANAString(timezoneString)) {\r\n date = new Date(date || Date.now())\r\n var utcDate = isUtcDate ? date : toUtcDate(date);\r\n var offset = calcOffset(utcDate, timezoneString);\r\n var fixedOffset = isUtcDate ? offset : fixOffset(date, offset, timezoneString)\r\n\r\n return -fixedOffset\r\n }\r\n\r\n return NaN\r\n}\r\n\r\n\r\nvar MILLISECONDS_IN_HOUR = 3600000\r\nvar MILLISECONDS_IN_MINUTE = 60000\r\n\r\nvar patterns = {\r\n timezone: /([Z+-].*)$/,\r\n timezoneZ: /^(Z)$/,\r\n timezoneHH: /^([+-]\\d{2})$/,\r\n timezoneHHMM: /^([+-]\\d{2}):?(\\d{2})$/,\r\n}\r\n\r\nfunction newDateUTC(fullYear, month, day, hour, minute, second, millisecond) {\r\n var utcDate = new Date(0)\r\n utcDate.setUTCFullYear(fullYear, month, day)\r\n utcDate.setUTCHours(hour, minute, second, millisecond)\r\n return utcDate\r\n}\r\n\r\nfunction toUtcDate(date) {\r\n return newDateUTC(\r\n date.getFullYear(),\r\n date.getMonth(),\r\n date.getDate(),\r\n date.getHours(),\r\n date.getMinutes(),\r\n date.getSeconds(),\r\n date.getMilliseconds()\r\n )\r\n}\r\n\r\nfunction calcOffset(date, timezoneString) {\r\n var tokens = tzTokenizeDate(date, timezoneString)\r\n\r\n // ms dropped because it's not provided by tzTokenizeDate\r\n var asUTC = newDateUTC(\r\n tokens[0],\r\n tokens[1] - 1,\r\n tokens[2],\r\n tokens[3] % 24,\r\n tokens[4],\r\n tokens[5],\r\n 0\r\n ).getTime()\r\n\r\n var asTS = date.getTime()\r\n var over = asTS % 1000\r\n asTS -= over >= 0 ? over : 1000 + over\r\n return asUTC - asTS\r\n}\r\n\r\nfunction fixOffset(date, offset, timezoneString) {\r\n var localTS = date.getTime()\r\n\r\n // Our UTC time is just a guess because our offset is just a guess\r\n var utcGuess = localTS - offset\r\n\r\n // Test whether the zone matches the offset for this ts\r\n var o2 = calcOffset(new Date(utcGuess), timezoneString)\r\n\r\n // If so, offset didn't change, and we're done\r\n if (offset === o2) {\r\n return offset\r\n }\r\n\r\n // If not, change the ts by the difference in the offset\r\n utcGuess -= o2 - offset\r\n\r\n // If that gives us the local time we want, we're done\r\n var o3 = calcOffset(new Date(utcGuess), timezoneString)\r\n if (o2 === o3) {\r\n return o2\r\n }\r\n\r\n // If it's different, we're in a hole time. The offset has changed, but we don't adjust the time\r\n return Math.max(o2, o3)\r\n}\r\n\r\nfunction validateTimezone(hours, minutes = null) {\r\n return -23 <= hours && hours <= 23 && (minutes == null || (0 <= minutes && minutes <= 59))\r\n}\r\n\r\nvar validIANATimezoneCache = {}\r\nfunction isValidTimezoneIANAString(timeZoneString) {\r\n if (validIANATimezoneCache[timeZoneString]) return true\r\n try {\r\n new Intl.DateTimeFormat(undefined, { timeZone: timeZoneString })\r\n validIANATimezoneCache[timeZoneString] = true\r\n return true\r\n } catch (error) {\r\n return false\r\n }\r\n}\r\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\nimport { tzParseTimezone } from \"./tz/tzParseTimezone\";\r\nimport { format } from 'date-fns';\r\n\r\nexport class DateConvert {\r\n public static toDate(date: Date | number | string): Date {\r\n const argStr = Object.prototype.toString.call(date);\r\n\r\n if (date instanceof Date || (typeof date === \"object\" && argStr === \"[object Date]\")) {\r\n return date;\r\n }\r\n else if (typeof date === \"number\" || argStr === \"[object Number]\" ||\r\n typeof date === \"string\" || argStr === \"[object String]\") {\r\n return new Date(date);\r\n }\r\n else {\r\n return new Date(NaN);\r\n }\r\n }\r\n\r\n public static toFormattedDate(date: Date | number | string, formatStr: string = 'yyyy-MM-dd HH:mm:ss' ){\r\n const parsedDate = this.toDate(date);\r\n return format(parsedDate, formatStr);\r\n }\r\n\r\n public static utcToLocal(dirtyDate): Date {\r\n if (typeof dirtyDate === 'string') {\r\n if (dirtyDate.indexOf(\"T\") > -1) {\r\n dirtyDate = dirtyDate.replace(\"T\", \" \");\r\n }\r\n\r\n if (dirtyDate.indexOf(\"Z\") == -1) {\r\n dirtyDate = dirtyDate + \"Z\";\r\n }\r\n }\r\n\r\n let browserTimeZone = Intl.DateTimeFormat().resolvedOptions().timeZone;\r\n\r\n if (browserTimeZone) {\r\n let date = DateConvert.toDate(dirtyDate);\r\n let offsetMilliseconds = tzParseTimezone(browserTimeZone, date, true);\r\n let d = new Date(date.getTime() - offsetMilliseconds);\r\n let resultDate = new Date(0);\r\n\r\n resultDate.setFullYear(d.getUTCFullYear(), d.getUTCMonth(), d.getUTCDate());\r\n resultDate.setHours(d.getUTCHours(), d.getUTCMinutes(), d.getUTCSeconds(), d.getUTCMilliseconds());\r\n\r\n return resultDate;\r\n }\r\n\r\n return new Date(dirtyDate);\r\n }\r\n\r\n /*\r\n VadimOS: Osovitny please have a look\r\n\r\n public static localToUtc(value: Date): Date | null {\r\n if (value) {\r\n return new Date(value.getUTCFullYear(), value.getUTCMonth(), value.getUTCDate(),\r\n value.getUTCHours(), value.getUTCMinutes(), value.getUTCSeconds(), value.getUTCMilliseconds()\r\n );\r\n }\r\n\r\n return null;\r\n }\r\n\r\n public static utcToLocal(value: Date): Date | null {\r\n if (value) {\r\n return new Date(Date.UTC(value.getFullYear(), value.getMonth(), value.getDate(),\r\n value.getHours(), value.getMinutes(), value.getSeconds(), value.getMilliseconds())\r\n );\r\n }\r\n\r\n return null;\r\n }\r\n */\r\n}\r\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\nimport js_beautify from 'js-beautify'\r\nimport { HTMLBeautifyOptions } from 'js-beautify'\r\n\r\nexport class XmlFormatter {\r\n public static toPrettyXML(s: string, options?: HTMLBeautifyOptions): string {\r\n if (!options) {\r\n options = {\r\n indent_size: 2,\r\n indent_char: \" \",\r\n wrap_line_length: 110\r\n }\r\n }\r\n\r\n return js_beautify.html(s, options);\r\n }\r\n}\r\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\nexport enum DiscountCodeType {\r\n Standard = 1,\r\n UseOnce = 2\r\n}\r\n\r\nexport enum DiscountCodeStatus {\r\n Exist = 1,\r\n NotFound = 2,\r\n AlreadyUsed = 3\r\n}\r\n\r\nexport enum PaymentType {\r\n FullPayment = 1,\r\n WeeklyPayment = 2,\r\n BiWeeklyPayment = 3,\r\n MonthlyPayment = 4\r\n}\r\n\r\nexport enum PaymentMethod {\r\n None = 1,\r\n Wallet = 2,\r\n CreditCard = 3,\r\n PayPal = 4,\r\n Stripe = 5,\r\n Venmo = 6,\r\n ApplePay = 7,\r\n GooglePay = 8\r\n}\r\n\r\nexport enum PaymentStage {\r\n //PayPal/Stripe\r\n External = 1,\r\n Internal = 2\r\n}\r\n\r\nexport enum SubscriptionProvider\r\n{\r\n Product = 1,\r\n PayPal = 2,\r\n Stripe = 3\r\n}","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\nexport enum Mode {\r\n View = 1,\r\n Edit = 2,\r\n Moderation = 3\r\n}\r\n\r\nexport enum DataViewType {\r\n Grid = 'grid',\r\n List = 'list',\r\n Table = 'table'\r\n}\r\n\r\nexport enum PublishStatus {\r\n Draft = 1, //viewable by owner ONLY\r\n PendingReview = 2, //via RequestPublishing\r\n Published = 3, //viewable by everyone\r\n Archived = 4 \r\n}\r\n\r\nexport enum ModerationStatus {\r\n Draft = 1, //item is saved\r\n PendingReview = 2, //item is in review\r\n Approved = 3, //item is approved by Moderator\r\n Rejected = 4 //item is rejected by Moderator \r\n}","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\nexport * from './billing';\r\nexport * from './enums';","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\nexport function throwIfAlreadyLoaded(parentModule: any, moduleName: string) {\r\n if (parentModule) {\r\n throw new Error(\r\n `${moduleName} has already been loaded. Import ${moduleName} modules in the AppModule only.`\r\n );\r\n }\r\n}\r\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\n/*\n Framework-agnostic localization port.\n\n @osovitny/core never localizes directly — it localizes through this port. The\n default is a pass-through (returns the key, or the defaultKey when the key is\n empty). An adapter (e.g. L10nUtils in @osovitny/angular, registered by\n OsovitnyCoreModule) can take over by calling setLocalizer() once at startup.\n*/\nexport interface Localizer {\n getLocalizedValue(key: string, params?: any[], defaultKey?: string): string;\n}\n\nlet currentLocalizer: Localizer = {\n getLocalizedValue: (key: string, params?: any[], defaultKey?: string) => key || defaultKey || ''\n};\n\nexport function setLocalizer(localizer: Localizer): void {\n currentLocalizer = localizer;\n}\n\nexport function getLocalizer(): Localizer {\n return currentLocalizer;\n}\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\n/*\n Framework-agnostic logging port.\n\n @osovitny/core never logs directly — it logs through this port. By default the\n port is backed by the console. An adapter (e.g. LoggingService in\n @osovitny/angular, registered by OsovitnyCoreModule) can take over by calling\n setLogger() once at startup.\n*/\nexport interface Logger {\n debug(info: any, ...optionalParams: any[]): void;\n info(info: any, ...optionalParams: any[]): void;\n warn(info: any, ...optionalParams: any[]): void;\n error(error: any, ...optionalParams: any[]): void;\n}\n\nlet currentLogger: Logger = console;\n\nexport function setLogger(logger: Logger): void {\n currentLogger = logger;\n}\n\nexport function getLogger(): Logger {\n return currentLogger;\n}\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\nexport interface IQueryParam {\r\n name: string;\r\n value: string;\r\n}\r\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\n//Node\nimport Swal from 'sweetalert2';\n\n//App\nimport { getLocalizer } from '../localization/localizer';\n\nexport class Alerts {\n public static areYouSure(text, title?, confirmButtonText?, cancelButtonText?, successAction?, cancelAction?) {\n text = getLocalizer().getLocalizedValue(text);\n title = getLocalizer().getLocalizedValue(title, null, 'Notifications.AreYouSure');\n confirmButtonText = getLocalizer().getLocalizedValue(confirmButtonText, null, 'Notifications.AreYouSure-ConfirmButtonText');\n cancelButtonText = getLocalizer().getLocalizedValue(cancelButtonText, null, 'Notifications.AreYouSure-CancelButtonText');\n\n Swal.fire({\n text,\n title,\n icon: 'warning',\n confirmButtonText,\n cancelButtonText,\n showCancelButton: true\n })\n .then((result) => {\n if (result.value) {\n if (successAction) {\n successAction();\n }\n }\n // result.dismiss can be 'cancel', 'overlay', 'close', and 'timer'\n else if (result.dismiss == Swal.DismissReason.cancel || result.dismiss == Swal.DismissReason.close) {\n if (cancelAction) {\n cancelAction();\n }\n }\n });\n };\n\n public static info(text, params?: any[], title?) {\n text = getLocalizer().getLocalizedValue(text, params);\n title = getLocalizer().getLocalizedValue(title, null, 'Notifications.Info');\n\n Swal.fire({\n text,\n title,\n icon: 'info',\n confirmButtonText: getLocalizer().getLocalizedValue('Notifications.Ok')\n });\n }\n\n public static warning(text, params?: any[], title?) {\n text = getLocalizer().getLocalizedValue(text, params);\n title = getLocalizer().getLocalizedValue(title, null, 'Notifications.Warning');\n\n Swal.fire({\n text,\n title,\n icon: 'warning',\n confirmButtonText: getLocalizer().getLocalizedValue('Notifications.Ok')\n });\n }\n\n public static error(text?, params?: any[], title?) {\n text = getLocalizer().getLocalizedValue(text, params, 'Notifications.ErrorOccured');\n title = getLocalizer().getLocalizedValue(title, null, 'Notifications.Error');\n\n Swal.fire({\n text,\n title,\n icon: 'error',\n confirmButtonText: getLocalizer().getLocalizedValue('Notifications.Ok')\n });\n }\n\n public static success(text?, params?: any[], title?, successAction?) {\n text = getLocalizer().getLocalizedValue(text, params, 'Notifications.OperationSuccessFull');\n title = getLocalizer().getLocalizedValue(title, null, 'Notifications.Success');\n\n Swal.fire({\n text,\n title,\n icon: 'success',\n confirmButtonText: getLocalizer().getLocalizedValue('Notifications.Ok')\n })\n .then(() => {\n if (successAction) {\n successAction();\n }\n });\n }\n\n public static cancel(text?, params?: any[], title?) {\n text = getLocalizer().getLocalizedValue(text, params, 'Notifications.OperationCancelled');\n title = getLocalizer().getLocalizedValue(title, null, 'Notifications.Cancelled');\n\n Swal.fire({\n text,\n title,\n icon: 'info'\n })\n }\n\n //Standard Notifications\n public static notImplemented() {\n let text = getLocalizer().getLocalizedValue('Notifications.NotImplemented');\n this.warning(text);\n };\n\n public static authenticationRequired() {\n let text = 'Please Log in';\n let title = 'Authentication Required';\n\n this.warning(text, null, title);\n };\n}\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\nexport interface INotification {\r\n id?: string;\r\n isNew: boolean;\r\n isSession: boolean;\r\n text?: string;\r\n type?: string;\r\n component?: string;\r\n operation?: string;\r\n createdDate?: string;\r\n}\r\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\n//App\nimport { getLogger } from '../logging/logger';\n\nexport class Stopwatch {\n private name;\n private startTime;\n private stopTime;\n private running;\n private performance;\n\n constructor(name) {\n this.name = name;\n this.startTime = 0;\n this.stopTime = 0;\n this.running = false;\n this.performance = !!window.performance;\n\n getLogger().info(this.name + ' started.');\n }\n\n private currentTime() {\n return this.performance ? window.performance.now() : new Date().getTime();\n }\n\n start() {\n this.startTime = this.currentTime();\n this.running = true;\n }\n\n stop() {\n this.stopTime = this.currentTime();\n this.running = false;\n }\n\n getElapsedMilliseconds() {\n if (this.running) {\n this.stopTime = this.currentTime();\n }\n\n return this.stopTime - this.startTime;\n }\n\n getElapsedSeconds() {\n return this.getElapsedMilliseconds() / 1000;\n }\n\n printElapsedAsMilliseconds() {\n let elapsed = this.getElapsedMilliseconds();\n getLogger().info(`${this.name} stopped. Execution time: ${elapsed} ms`);\n }\n}\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\ndeclare var $: any;\r\n\r\nexport class DOM {\r\n //Private\r\n private static dir(elem: HTMLElement, dir, until = null, selector: string = null) {\r\n let matched = [];\r\n let truncate = until !== undefined && until != null;\r\n\r\n while ((elem = elem[dir]) && elem.nodeType !== 9) {\r\n if (elem.nodeType === 1) {\r\n /*\r\n if (truncate && jQuery(elem).is(until)) {\r\n break;\r\n }\r\n */\r\n\r\n if (selector) {\r\n let className = selector.replace('.', '');\r\n if (elem.classList.contains(className)) {\r\n matched.push(elem);\r\n }\r\n }\r\n else {\r\n matched.push(elem);\r\n }\r\n }\r\n }\r\n\r\n return matched;\r\n }\r\n\r\n //Public\r\n public static first(elements: HTMLElement[]): HTMLElement {\r\n if (!elements || elements.length == 0) {\r\n return null;\r\n }\r\n\r\n return elements[0];\r\n }\r\n\r\n public static any(elements: HTMLElement[]): boolean {\r\n if (!elements || elements.length == 0) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n\r\n public static parent(elem: HTMLElement): HTMLElement {\r\n let parentElement = elem.parentElement;\r\n let parentNode = elem.parentNode;\r\n\r\n return parentNode && parentNode.nodeType !== 11 ? parentElement : null;\r\n }\r\n\r\n public static parents(elem: HTMLElement, selector = null) {\r\n return this.dir(elem, \"parentNode\", null, selector);\r\n }\r\n\r\n public static findInDocument(selector: string): HTMLElement[] {\r\n let parent = $(document);\r\n return $(parent).find(selector).get();\r\n }\r\n\r\n public static find(elem, selector: string): HTMLElement[] {\r\n return $(elem).find(selector).get();\r\n }\r\n\r\n public static remove(nodes) {\r\n if (nodes == null) {\r\n return;\r\n }\r\n\r\n if (!Array.isArray(nodes)) {\r\n if (nodes.parentNode) {\r\n nodes.parentNode.removeChild(nodes);\r\n }\r\n\r\n return;\r\n }\r\n\r\n if (nodes.length == 0) {\r\n return;\r\n }\r\n\r\n let node;\r\n let i = 0;\r\n\r\n for (; (node = nodes[i]) != null; i++) {\r\n if (node.parentNode) {\r\n node.parentNode.removeChild(node);\r\n }\r\n }\r\n }\r\n\r\n public static findAndRemove(element, selector) {\r\n this.remove(this.find(element, selector));\r\n }\r\n\r\n public static show(elem) {\r\n $(elem).show();\r\n }\r\n\r\n public static hide(elem) {\r\n $(elem).hide();\r\n }\r\n\r\n public static each(selector, action) {\r\n let parent = $(document);\r\n let elems = DOM.find(parent, selector);\r\n\r\n for (let i = 0; i < elems.length; i++) {\r\n let elem = elems[i];\r\n action(elem);\r\n }\r\n }\r\n\r\n //Css\r\n /*\r\n public static addClass(e: Element, className: string): Element {\r\n const class = e.getAttribute('class');\r\n if (class === null || class === '') {\r\n e.setAttribute('class', className);\r\n } else if (!DOM.hasClass(e, className)) {\r\n e.setAttribute('class', `${class} ${className}`);\r\n }\r\n\r\n return e;\r\n }\r\n\r\n public static removeClass(e: Element, className: string): Element {\r\n const class = e.getAttribute('class')\r\n if (class !== null && class !== '') {\r\n if (class === className) {\r\n e.setAttribute('class', '');\r\n } else {\r\n const result = class\r\n .split(' ')\r\n .filter((s: any) => s !== className)\r\n .join(' ');\r\n e.setAttribute('class', result);\r\n }\r\n }\r\n\r\n return e;\r\n }\r\n\r\n public static hasClass(e: Element, className: string): boolean {\r\n const class = e.getAttribute('class') || '';\r\n const r = new RegExp(`\\\\b${className}\\\\b`, '');\r\n return r.test(class);\r\n }\r\n */\r\n\r\n public static addClass(elem: Node | Element, classNames) {\r\n $(elem).addClass(classNames);\r\n }\r\n\r\n public static removeClass(elem: Node | Element, classNames) {\r\n $(elem).removeClass(classNames);\r\n }\r\n\r\n public static hasClass(elem: Node | Element, className) {\r\n $(elem).hasClass(className);\r\n }\r\n}\r\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\nimport { v4 as uuidv4 } from 'uuid';\r\n\r\nexport class Guid {\r\n public static newGuid() {\r\n return uuidv4();\r\n }\r\n}\r\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\nimport { Subscription } from 'rxjs';\r\n\r\nexport class Subs {\r\n private subs: Subscription[] = [];\r\n\r\n constructor() {}\r\n\r\n add(...subscriptions: Subscription[]) {\r\n this.subs = this.subs.concat(subscriptions);\r\n }\r\n\r\n set sink(subscription: Subscription) {\r\n this.subs.push(subscription);\r\n }\r\n\r\n unsubscribe() {\r\n this.subs.forEach((sub) => sub && sub.unsubscribe());\r\n this.subs = [];\r\n }\r\n}\r\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\n//App\nimport { getLogger } from '../logging/logger';\n\nexport class QSUtils {\n private static getValue(url, name) {\n name = name.replace(/[\\[]/, '\\\\[').replace(/[\\]]/, '\\\\]');\n const regex = new RegExp('[\\\\?&]' + name + '=([^&#]*)'),\n\n results = regex.exec(url);\n return results === null ? '' : decodeURIComponent(results[1].replace(/\\+/g, ' '));\n }\n\n public static getValueByName(name) {\n return QSUtils.getValue(location.search, name);\n }\n\n public static exists(name) {\n let value = QSUtils.getValueByName(name);\n if (value) return true;\n\n return false;\n }\n\n public static idExists() {\n return QSUtils.exists(\"id\");\n }\n\n public static clear() {\n try\n {\n let newURL = location.href.split(\"?\")[0];\n window.history.pushState('object', document.title, newURL);\n }\n catch(e)\n {\n }\n }\n\n public static clearKey(name, reload = false, clearStorage = false) {\n try\n {\n let str = null;\n let newURL= null;\n\n str = \"?\" + name;\n if (location.href.indexOf(str) > -1) {\n newURL = location.href.split(str)[0];\n }\n\n str = \"&\" + name;\n if (location.href.indexOf(str) > -1) {\n newURL = location.href.split(str)[0];\n }\n\n if (newURL && reload) {\n if (clearStorage) {\n getLogger().info(\"Clearing Storage\");\n localStorage.clear();\n sessionStorage.clear();\n }\n\n window.location.href = newURL;\n }\n else {\n window.history.pushState('object', document.title, newURL);\n }\n }\n catch(e)\n {\n }\n }\n\n public static getUrlSlug(): string {\n let str = location.href;\n let items = str.split('/');\n let urlSlugWithQS = items[items.length - 1];\n let urlSlug = urlSlugWithQS.split(\"?\")[0];\n\n return urlSlug;\n }\n\n //SSO\n public static isSSOinProgress(): boolean {\n return location.search.indexOf(\"action=sso\") > -1;\n }\n\n public static clearSSO() {\n this.clearKey(\"action=sso\");\n }\n}\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\nexport class Utils {\r\n public static copyToClipBoard(event: any, val: string) {\r\n event.preventDefault();\r\n\r\n const selBox = document.createElement('textarea');\r\n selBox.style.position = 'fixed';\r\n selBox.style.left = '0';\r\n selBox.style.top = '0';\r\n selBox.style.opacity = '0';\r\n selBox.value = val;\r\n document.body.appendChild(selBox);\r\n selBox.focus();\r\n selBox.select();\r\n document.execCommand('copy');\r\n document.body.removeChild(selBox);\r\n }\r\n\r\n public static downloadFile(name: string, url: string) {\r\n const link = document.createElement('a');\r\n link.download = name;\r\n link.href = url;\r\n link.click();\r\n }\r\n\r\n public static downloadBlobFile(value: Blob, fileName: string) {\r\n const nav = (window.navigator as any);\r\n\r\n if (nav.msSaveOrOpenBlob) {\r\n nav.msSaveOrOpenBlob(value, fileName);\r\n }\r\n else {\r\n const downloadURL = window.URL.createObjectURL(value);\r\n Utils.downloadFile(fileName, downloadURL);\r\n }\r\n }\r\n\r\n /*\r\n Author:\r\n https://medium.com/@mhagemann/the-ultimate-way-to-slugify-a-url-string-in-javascript-b8e4a0d849e1\r\n */\r\n public static slugify(text: string, prefix: string = '', postfix: string = '') {\r\n const a = 'àáâäæãåāăąçćčđďèéêëēėęěğǵḧîïíīįìłḿñńǹňôöòóœøōõőṕŕřßśšşșťțûüùúūǘůűųẃẍÿýžźż·/_,:;';\r\n const b = 'aaaaaaaaaacccddeeeeeeeegghiiiiiilmnnnnoooooooooprrsssssttuuuuuuuuuwxyyzzz------';\r\n const p = new RegExp(a.split('').join('|'), 'g');\r\n\r\n /*\r\n https://css-tricks.com/snippets/javascript/strip-html-tags-in-javascript/\r\n https://stackoverflow.com/questions/822452/strip-html-from-text-javascript\r\n */\r\n text = text.replace(/(<([^>]+)>)/gi, '');\r\n\r\n let result = text\r\n .toString()\r\n .toLowerCase()\r\n .replace(/\\s+/g, '-') // Replace spaces with -\r\n .replace(p, c => b.charAt(a.indexOf(c))) // Replace special characters\r\n .replace(/&/g, '-and-') // Replace & with 'and'\r\n .replace(/[^\\w\\-]+/g, '') // Remove all non-word characters\r\n .replace(/\\-\\-+/g, '-') // Replace multiple - with single -\r\n .replace(/^-+/, '') // Trim - from start of text\r\n .replace(/-+$/, ''); // Trim - from end of text\r\n\r\n return prefix + result + postfix;\r\n }\r\n\r\n public static generateRandom(start: number, end: number) {\r\n return Math.floor(Math.random() * (end - start + 1)) + start;\r\n }\r\n\r\n public static sortArray(items) {\r\n return items?.slice().sort((a, b) => a.name.toLowerCase().localeCompare(b.name.toLowerCase()))\r\n }\r\n}\r\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\n//App\r\nimport { SessionStorageKeys } from \"../core/consts/storageKeys\";\r\n\r\nexport function getMsalSettings() {\r\n const json = sessionStorage.getItem(SessionStorageKeys.appMSALSettings);\r\n return json ? JSON.parse(json) : null;\r\n}\r\n\r\nexport function resetMsalSettings() {\r\n let msalSettings = getMsalSettings();\r\n\r\n MSALConfig = msalSettings;\r\n MSALApiConfig = MSALConfig?.api;\r\n MSALB2CConfig = MSALConfig?.b2c; \r\n}\r\n\r\nexport let MSALConfig;\r\nexport let MSALApiConfig;\r\nexport let MSALB2CConfig;\r\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\n//App\r\nimport { MSALB2CConfig } from '../consts';\r\n\r\nexport class MSALB2C {\r\n public static getAuthorityByType(type) {\r\n let policy = MSALB2C.getPolicyByType(type);\r\n return policy?.authority;\r\n }\r\n\r\n public static getPolicyByType(type) {\r\n let policies = MSALB2CConfig?.policies;\r\n if (!policies) {\r\n return null;\r\n }\r\n\r\n for (let i = 0; i < policies.length; i++) {\r\n let policy = policies[i];\r\n\r\n if (policy.type == type) {\r\n return policy;\r\n }\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\nexport const PolicyType = {\r\n signUpSignIn: 'signUpSignIn',\r\n signUp: 'signUp',\r\n editProfile: 'editProfile',\r\n resetPassword: 'resetPassword'\r\n}\r\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\nexport * from './b2c';\r\nexport * from './consts';\r\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\n//App\nimport { getLogger } from '../core/logging/logger';\n\nexport const MSALStorageKeys = {\n //LocalStorage\n redirectTo: 'msal.app.redirectTo'\n\n //SessionStorage\n}\n\nexport class MSALStorage {\n private static hasRedirectValue(value: string | null | undefined) {\n return value && value !== 'null' && value !== 'undefined';\n }\n\n public static saveRedirectState(redirectTo: string | null | undefined, calledBy: string) {\n if (!MSALStorage.hasRedirectValue(redirectTo)) {\n MSALStorage.clearRedirectState(calledBy);\n return;\n }\n\n if (redirectTo.indexOf('iam') >= 0) {\n MSALStorage.clearRedirectState(calledBy);\n return;\n }\n\n localStorage.setItem(MSALStorageKeys.redirectTo, redirectTo);\n getLogger().info(`MSAL. redirect state saved: ${redirectTo}. Called by: ${calledBy}`);\n }\n\n public static getRedirectState(calledBy: string) {\n let redirectTo = localStorage.getItem(MSALStorageKeys.redirectTo);\n getLogger().info(`MSAL. redirect state requested: ${redirectTo}. Called by: ${calledBy}`);\n\n if (!MSALStorage.hasRedirectValue(redirectTo)) {\n MSALStorage.clearRedirectState(calledBy);\n return null;\n }\n\n return redirectTo;\n }\n\n public static clearRedirectState(calledBy: string) {\n localStorage.removeItem(MSALStorageKeys.redirectTo);\n getLogger().info(`MSAL. redirect state cleared. Called by: ${calledBy}`);\n }\n}\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\nimport { MSALStorage } from './storage';\r\n\r\nexport class MSALRedirect {\r\n public static handle(router, calledBy: string) {\r\n let redirectTo = MSALStorage.getRedirectState(calledBy);\r\n\r\n if (!redirectTo) {\r\n return;\r\n }\r\n\r\n MSALStorage.clearRedirectState(calledBy);\r\n router.navigate([redirectTo]);\r\n }\r\n}\r\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\n//Node\r\nimport { BrowserUtils } from '@azure/msal-browser';\r\n\r\n//App\r\nimport { MSALApiConfig, MSALB2CConfig } from './consts';\r\n\r\nexport class MSALUtils {\r\n public static isB2C() {\r\n if (MSALB2CConfig) {\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n // Don't perform initial navigation in iframes or popups\r\n public static initialNavigation() {\r\n return !BrowserUtils.isInIframe() && !BrowserUtils.isInPopup() ? 'enabledNonBlocking' : 'disabled';\r\n }\r\n\r\n public static getApiScopes() : any[] {\r\n let scopes = []; \r\n\r\n if (MSALApiConfig) {\r\n let api = MSALApiConfig;\r\n for (const scope of api.scopes) {\r\n scopes.push(scope);\r\n }\r\n }\r\n \r\n return scopes;\r\n }\r\n}\r\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\n//App\r\nimport { IQueryParam } from '../../core/models/qs';\r\n\r\nexport interface IPayPalConfig {\r\n /**\r\n * Currency - Defaults to USD if not provided\r\n */\r\n currency?: string;\r\n\r\n /**\r\n * Use when creating order on client\r\n */\r\n createOrderOnClient?: (data: any) => ICreateOrderRequest;\r\n\r\n /**\r\n * Use when creating subscription on client\r\n */\r\n createSubscriptionOnClient?: (data: any) => ICreateSubscriptionRequest;\r\n\r\n /**\r\n * Use for creating orders on server. PayPal expects you to return 'orderId' in this method\r\n */\r\n createOrderOnServer?: (data: any) => Promise<string>;\r\n\r\n /**\r\n * Advanced configuration\r\n */\r\n advanced?: IAdvancedConfiguration;\r\n\r\n /**\r\n * Client id\r\n */\r\n clientId: string;\r\n\r\n /**\r\n * Shipping callback\r\n * see https://developer.paypal.com/docs/checkout/integration-features/shipping-callback/\r\n */\r\n onShippingChange?: OnShippingChangeCallback;\r\n\r\n /**\r\n * Called when 'onApprove' event occurs\r\n */\r\n onApprove?: (data: IOnApproveCallbackData, actions: any) => void;\r\n\r\n /**\r\n * Called when authorization on client succeeds\r\n */\r\n onClientAuthorization?: (authorization: IClientAuthorizeCallbackData) => void;\r\n\r\n /**\r\n * Implement for authorizing on server side\r\n */\r\n authorizeOnServer?: (\r\n data: IOnApproveCallbackData,\r\n actions: any\r\n ) => Promise<any>;\r\n\r\n /**\r\n * Button style configuration\r\n */\r\n style?: IPayPalButtonStyle;\r\n\r\n /**\r\n * Error handler\r\n */\r\n onError?: (err: any) => void;\r\n\r\n /**\r\n * Click handler\r\n */\r\n onClick?: (data: any, actions: IOnClickCallbackActions) => void;\r\n\r\n /**\r\n * Cancel handler\r\n */\r\n onCancel?: (data: ICancelCallbackData, actions: any) => void;\r\n\r\n /**\r\n * Init handler.\r\n * can be used for validation, see: https://developer.paypal.com/docs/checkout/integration-features/validation/#\r\n */\r\n onInit?: (data: IInitCallbackData, actions: IOnInitCallbackActions) => void;\r\n\r\n /**\r\n * Create subscription handler\r\n * https://developer.paypal.com/docs/subscriptions/integrate/\r\n *\r\n * Note: the vault property in the advanced configuration also has to be set to true\r\n */\r\n createSubscription?: (data: any) => ICreateSubscriptionRequest;\r\n\r\n /**\r\n * Vault - must be set to true when creating subscriptions\r\n */\r\n vault?: TrueFalse;\r\n intent?: OrderIntent;\r\n\r\n /*\r\n Select type of funding source, use it when you need set type of button you want to see, see: https://developer.paypal.com/docs/checkout/standard/customize/standalone-buttons/\r\n */\r\n fundingSource?: \"PAYPAL\" | \"CARD\" | \"PAYLATER\" | \"CREDIT\" | \"VENMO\";\r\n\r\n debug?: boolean;\r\n}\r\n\r\nexport type TrueFalse = \"true\" | \"false\";\r\n\r\nexport interface IPayPalUrlConfig {\r\n clientId: string;\r\n currency?: string;\r\n funding?: boolean;\r\n commit?: TrueFalse;\r\n vault?: TrueFalse;\r\n intent?: OrderIntent;\r\n locale?: string;\r\n extraParams?: IQueryParam[];\r\n debug?:boolean;\r\n}\r\n\r\nexport interface IOrderDetails {\r\n create_time: string;\r\n update_time: string;\r\n id: string;\r\n intent: OrderIntent;\r\n payer: IPayer;\r\n status: OrderStatus;\r\n links: ILinkDescription[];\r\n purchase_units: IPurchaseUnit[];\r\n}\r\n\r\nexport interface IClientAuthorizeCallbackData extends IOrderDetails {\r\n links: ILinkDescription[];\r\n}\r\n\r\nexport interface ILinkDescription {\r\n href: string;\r\n rel: String;\r\n method?: LinkMethod;\r\n}\r\n\r\nexport type OnShippingChangeCallback = (\r\n data: IOnShippingChangeData,\r\n actions: IOnShippingChangeActions\r\n) => any;\r\n\r\nexport interface IOnShippingChangeData {\r\n paymentToken: string;\r\n shipping_address: any;\r\n selected_shipping_method?: any;\r\n}\r\n\r\nexport interface IOnShippingChangeActions {\r\n resolve: () => any;\r\n reject: () => any;\r\n patch: () => any;\r\n}\r\n\r\nexport type LinkMethod =\r\n | \"GET\"\r\n | \"POST\"\r\n | \"PUT\"\r\n | \"DELETE\"\r\n | \"HEAD\"\r\n | \"CONNECT\"\r\n | \"OPTIONS\"\r\n | \"PATCH\";\r\n\r\nexport interface IAdvancedConfiguration {\r\n commit?: TrueFalse;\r\n locale?: string;\r\n extraQueryParams?: IQueryParam[];\r\n}\r\n\r\nexport interface IOnApproveCallbackData {\r\n orderID: string;\r\n payerID: string;\r\n subscriptionID: string;\r\n}\r\n\r\nexport interface ICreateOrderCallbackActions {\r\n order: {\r\n create: (order: ICreateOrderRequest) => Promise<any>;\r\n };\r\n}\r\n\r\nexport interface ICancelCallbackData {\r\n orderID: string;\r\n}\r\n\r\nexport interface IOnApproveCallbackActions {\r\n redirect: () => void;\r\n restart: () => void;\r\n order: {\r\n authorize: () => Promise<any>;\r\n capture: () => Promise<any>;\r\n get: () => Promise<IOrderDetails>;\r\n patch: () => Promise<any>;\r\n };\r\n}\r\n\r\nexport interface IOnInitCallbackActions {\r\n enable: () => void;\r\n disable: () => void;\r\n}\r\n\r\nexport interface ICreateSubscriptionCallbackActions {\r\n subscription: {\r\n create: (subscription: ICreateSubscriptionRequest) => Promise<any>;\r\n revise: (\r\n subscriptionId: string,\r\n subscription: ICreateSubscriptionRequest\r\n ) => Promise<any>;\r\n };\r\n}\r\n\r\n// tslint:disable-next-line:no-empty-interface\r\nexport interface IInitCallbackData {}\r\n\r\n// tslint:disable-next-line:no-empty-interface\r\nexport interface ICreateSubscriptionCallbackData {}\r\n\r\nexport interface IOnClickCallbackActions {\r\n resolve: () => void;\r\n reject: () => void;\r\n}\r\n\r\nexport interface IPayPalButtonStyle {\r\n label?:\r\n | \"paypal\"\r\n | \"checkout\"\r\n | \"pay\"\r\n | \"installment\"\r\n | \"buynow\"\r\n | \"subscribe\";\r\n shape?: \"pill\" | \"rect\";\r\n color?: \"gold\" | \"blue\" | \"silver\" | \"white\" | \"black\";\r\n layout?: \"horizontal\" | \"vertical\";\r\n tagline?: boolean;\r\n height?: number;\r\n fundingicons?: boolean;\r\n}\r\n\r\nexport interface ICreateOrderRequest {\r\n intent: OrderIntent;\r\n purchase_units: IPurchaseUnit[];\r\n payer?: IPayer;\r\n application_context?: IApplicationContext;\r\n}\r\n\r\nexport interface ICreateSubscriptionRequest {\r\n plan_id: string;\r\n quantity?: number;\r\n custom_id: string;\r\n application_context?: IApplicationContext;\r\n}\r\n\r\nexport interface IPayer {\r\n name?: IPartyName;\r\n email_address?: string;\r\n payer_id?: string;\r\n birth_date?: string;\r\n tax_info?: ITaxInfo;\r\n address?: IAddressPortable;\r\n phone?: IPhone;\r\n}\r\n\r\nexport interface IApplicationContext {\r\n brand_name?: string;\r\n locale?: string;\r\n landing_page?: PaypalLandingPage;\r\n shipping_preference?: ShippingPreference;\r\n user_action?: PayPalUserAction;\r\n payment_method?: IPaymentMethod;\r\n return_url?: string;\r\n cancel_url?: string;\r\n}\r\n\r\nexport interface IPaymentMethod {\r\n payer_selected?: PayerSelected;\r\n payee_preferred?: PayeePreferred;\r\n}\r\n\r\nexport type PayeePreferred = \"UNRESTRICTED\" | \"IMMEDIATE_PAYMENT_REQUIRED\";\r\n\r\nexport type PayerSelected = \"PAYPAL_CREDIT\" | \"PAYPAL\";\r\n\r\nexport type PayPalUserAction = \"CONTINUE\" | \"PAY_NOW\";\r\n\r\nexport type ShippingPreference =\r\n | \"GET_FROM_FILE\"\r\n | \"NO_SHIPPING\"\r\n | \"SET_PROVIDED_ADDRESS\";\r\n\r\nexport type PaypalLandingPage = \"LOGIN\" | \"BILLING\";\r\n\r\nexport type OrderIntent = \"capture\" | \"authorize\" | \"subscription\" | \"tokenize\";\r\n\r\nexport type DisbursementMode = \"INSTANT\" | \"DELAYED\";\r\n\r\nexport type ItemCategory = \"DIGITAL_GOODS\" | \"PHYSICAL_GOODS\";\r\n\r\nexport type PhoneType = \"FAX\" | \"HOME\" | \"MOBILE\" | \"OTHER\" | \"PAGER\";\r\n\r\nexport type TaxIdType = \"BR_CPF\" | \"BR_CNPJ\";\r\n\r\nexport interface IPhone {\r\n phone_type?: PhoneType;\r\n phone_number?: IPhoneNumber;\r\n}\r\n\r\nexport interface ITaxInfo {\r\n tax_id: string;\r\n tax_id_type: TaxIdType;\r\n}\r\n\r\nexport interface IPhoneNumber {\r\n national_number: string;\r\n}\r\n\r\nexport interface IPurchaseUnit {\r\n amount: IUnitAmount;\r\n\r\n reference_id?: string;\r\n payee?: IPayee;\r\n payment_instruction?: IPaymentInstructions;\r\n description?: string;\r\n custom_id?: string;\r\n invoice_id?: string;\r\n soft_descriptor?: string;\r\n items: ITransactionItem[];\r\n shipping?: IShipping;\r\n}\r\n\r\nexport interface IPayee {\r\n email_address?: string;\r\n merchant_id?: string;\r\n}\r\n\r\nexport interface IPaymentInstructions {\r\n platform_fees?: IPlatformFee[];\r\n disbursement_mode?: DisbursementMode;\r\n}\r\n\r\nexport interface IPlatformFee {\r\n amount: IUnitAmount;\r\n payee?: IPayee;\r\n}\r\n\r\nexport interface ITransactionItem {\r\n name: string;\r\n unit_amount: IUnitAmount;\r\n quantity: string;\r\n\r\n description?: string;\r\n sku?: string;\r\n category?: ItemCategory;\r\n tax?: ITax;\r\n}\r\n\r\nexport interface ITax {\r\n currency_code: string;\r\n value: string;\r\n}\r\n\r\nexport interface IUnitAmount {\r\n currency_code: string;\r\n value: string;\r\n breakdown?: IUnitBreakdown;\r\n}\r\n\r\nexport interface IMoney {\r\n currency_code: string;\r\n value: string;\r\n}\r\n\r\nexport interface IUnitBreakdown {\r\n item_total?: IUnitAmount;\r\n shipping?: IUnitAmount;\r\n handling?: IUnitAmount;\r\n tax_total?: IUnitAmount;\r\n insurance?: IUnitAmount;\r\n shipping_discount?: IUnitAmount;\r\n discount?: IMoney;\r\n}\r\n\r\nexport interface IPartyName {\r\n prefix?: string;\r\n given_name?: string;\r\n surname?: string;\r\n middle_name?: string;\r\n suffix?: string;\r\n alternate_full_name?: string;\r\n full_name?: string;\r\n}\r\n\r\nexport interface IAddressPortable {\r\n country_code: string;\r\n\r\n address_line_1?: string;\r\n address_line_2?: string;\r\n admin_area_2?: string;\r\n admin_area_1?: string;\r\n postal_code?: string;\r\n}\r\n\r\nexport interface IShipping {\r\n name?: IPartyName;\r\n address?: IAddressPortable;\r\n}\r\n\r\nexport type OrderStatus =\r\n | \"APPROVED\"\r\n | \"SAVED\"\r\n | \"CREATED\"\r\n | \"VOIDED\"\r\n | \"COMPLETED\";\r\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\nexport class BillingUtils {\r\n private static readonly CURRENCY_SYMBOLS: Record<string, string> = {\r\n GBP: '£',\r\n EUR: '€',\r\n USD: '$',\r\n JPY: '¥',\r\n CAD: 'CA$',\r\n AUD: 'A$',\r\n };\r\n\r\n public static convert2AmountWithCurrency(amount: number | string, currency: string): string {\r\n if (!amount && amount !== 0) return '';\r\n\r\n const symbol = this.CURRENCY_SYMBOLS[currency.toUpperCase()];\r\n return symbol ? `${symbol}${amount}` : `${amount} ${currency}`;\r\n }\r\n}\r\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\nimport { AppSettings } from '../../../core/consts/app-settings';\r\n\r\nlet imageUploadUrl = AppSettings?.api?.url + AppSettings?.api?.imageUploadPath; \r\n\r\nexport const DefaultEditorOptions: Object = {\r\n placeholderText: \"Edit Your Content Here\",\r\n charCounterCount: true,\r\n heightMin: 100,\r\n toolbarInline: false,\r\n\r\n toolbarButtons: {\r\n moreText: {\r\n buttons: [\r\n \"bold\",\r\n \"italic\",\r\n \"underline\",\r\n \"strikeThrough\",\r\n \"subscript\",\r\n \"superscript\",\r\n \"fontFamily\",\r\n \"fontSize\",\r\n \"textColor\",\r\n \"backgroundColor\",\r\n \"inlineClass\",\r\n \"inlineStyle\",\r\n ],\r\n },\r\n moreParagraph: {\r\n buttons: [\r\n \"alignLeft\",\r\n \"alignCenter\",\r\n \"formatOLSimple\",\r\n \"alignRight\",\r\n \"alignJustify\",\r\n \"formatOL\",\r\n \"formatUL\",\r\n \"paragraphFormat\",\r\n \"paragraphStyle\",\r\n \"lineHeight\",\r\n \"outdent\",\r\n \"indent\",\r\n \"quote\",\r\n ],\r\n },\r\n moreRich: {\r\n buttons: [\r\n \"insertLink\",\r\n \"insertImage\",\r\n \"insertTable\",\r\n \"emoticons\",\r\n \"fontAwesome\",\r\n \"specialCharacters\",\r\n \"embedly\",\r\n ],\r\n },\r\n moreMisc: {\r\n buttons: [\r\n \"selectAll\",\r\n \"clearFormatting\",\r\n \"html\",\r\n \"undo\",\r\n \"redo\",\r\n \"fullscreen\",\r\n ],\r\n align: \"right\",\r\n }\r\n },\r\n\r\n /*\r\n Upload:\r\n https://www.froala.com/wysiwyg-editor/docs/concepts/image/upload\r\n */\r\n imageUploadURL: imageUploadUrl,\r\n imageAllowedTypes: [\"jpeg\", \"jpg\", \"png\"],\r\n imageUploadParams: { uploadType: \"\", uploadParentId: \"\" }\r\n};\r\n","/*!\n * @osovitny/core\n * Copyright (c) 2016-2026 Osovitny\n * SPDX-License-Identifier: MIT\n */\n\nexport const Spinkit = {\r\n skChasingDots: 'sk-chasing-dots',\r\n skCubeGrid: 'sk-cube-grid',\r\n skDoubleBounce: 'sk-double-bounce',\r\n skRotatingPlane: 'sk-rotationg-plane',\r\n skSpinnerPulse: 'sk-spinner-pulse',\r\n skThreeBounce: 'sk-three-bounce',\r\n skWanderingCubes: 'sk-wandering-cubes',\r\n skWave: 'sk-wave',\r\n skLine: 'sk-line-material'\r\n};\r\n","/*\n * Public API of @osovitny/core\n */\n\n//Core — consts\nexport * from './lib/core/consts/app-settings';\nexport * from './lib/core/consts/assets';\nexport * from './lib/core/consts/formats';\nexport * from './lib/core/consts/ga';\nexport * from './lib/core/consts/storageKeys';\n\n//Core — converts\nexport * from './lib/core/converts/convert';\nexport * from './lib/core/converts/dateConvert';\nexport * from './lib/core/converts/xmlFormatter';\n\n//Core — enums\nexport * from './lib/core/enums';\n\n//Core — guards\nexport * from './lib/core/guards/once-import.guard';\n\n//Core — localization\nexport * from './lib/core/localization/localizer';\n\n//Core — logging\nexport * from './lib/core/logging/logger';\n\n//Core — models\nexport * from './lib/core/models/qs';\n\n//Core — notifications\nexport * from './lib/core/notifications/alerts';\nexport * from './lib/core/notifications/interfaces/notification';\n\n//Core — performance\nexport * from './lib/core/performance/stopwatch';\n\n//Core — root\nexport * from './lib/core/dom';\nexport * from './lib/core/guid';\nexport * from './lib/core/is';\nexport * from './lib/core/subs';\n\n//Core — utils\nexport * from './lib/core/utils/qsutils';\nexport * from './lib/core/utils/utils';\n\n//IAM (msal-browser layer)\nexport * from './lib/iam/b2c';\nexport * from './lib/iam/consts';\nexport * from './lib/iam/redirect';\nexport * from './lib/iam/storage';\nexport * from './lib/iam/utils';\n\n//Billing\nexport * from './lib/billing/models/paypal-models';\nexport * from './lib/billing/utils';\n\n//UI data blobs\nexport * from './lib/ui/components/html-editor/defaultoptions';\nexport * from './lib/ui/components/spinners/pagespinner/spinkits';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["uuidv4"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"osovitny-core.mjs","sources":["../../../projects/core/src/lib/core/consts/storageKeys.ts","../../../projects/core/src/lib/core/consts/app-settings.ts","../../../projects/core/src/lib/core/consts/assets.ts","../../../projects/core/src/lib/core/consts/formats.ts","../../../projects/core/src/lib/core/consts/ga.ts","../../../projects/core/src/lib/core/is.ts","../../../projects/core/src/lib/core/converts/convert.ts","../../../projects/core/src/lib/core/converts/tz/tzTokenizeDate.ts","../../../projects/core/src/lib/core/converts/tz/tzParseTimezone.ts","../../../projects/core/src/lib/core/converts/dateConvert.ts","../../../projects/core/src/lib/core/converts/xmlFormatter.ts","../../../projects/core/src/lib/core/enums/billing.ts","../../../projects/core/src/lib/core/enums/enums.ts","../../../projects/core/src/lib/core/enums/index.ts","../../../projects/core/src/lib/core/guards/once-import.guard.ts","../../../projects/core/src/lib/core/localization/localizer.ts","../../../projects/core/src/lib/core/logging/logger.ts","../../../projects/core/src/lib/core/models/qs.ts","../../../projects/core/src/lib/core/notifications/alerts.ts","../../../projects/core/src/lib/core/notifications/interfaces/notification.ts","../../../projects/core/src/lib/core/performance/stopwatch.ts","../../../projects/core/src/lib/core/dom.ts","../../../projects/core/src/lib/core/guid.ts","../../../projects/core/src/lib/core/subs.ts","../../../projects/core/src/lib/core/utils/qsutils.ts","../../../projects/core/src/lib/core/utils/utils.ts","../../../projects/core/src/lib/iam/consts.ts","../../../projects/core/src/lib/iam/b2c/b2c.ts","../../../projects/core/src/lib/iam/b2c/consts.ts","../../../projects/core/src/lib/iam/b2c/index.ts","../../../projects/core/src/lib/iam/storage.ts","../../../projects/core/src/lib/iam/redirect.ts","../../../projects/core/src/lib/iam/utils.ts","../../../projects/core/src/lib/billing/models/paypal-models.ts","../../../projects/core/src/lib/billing/utils.ts","../../../projects/core/src/lib/ui/components/html-editor/defaultoptions.ts","../../../projects/core/src/lib/ui/components/spinners/pagespinner/spinkits.ts","../../../projects/core/src/public-api.ts","../../../projects/core/src/osovitny-core.ts"],"sourcesContent":["/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\nexport const SessionStorageKeys = {\r\n appSettings: 'appSettings',\r\n appMSALSettings: 'appMSALSettings'\r\n};\r\n\r\nexport const AppContextStorageKeys = {\r\n version: 'version',\r\n currency: 'currency',\r\n\r\n //Lists\r\n countries: 'countries',\r\n languages: 'languages',\r\n timezones: 'timezones',\r\n usStates: 'usStates'\r\n};\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\n//App\r\nimport { SessionStorageKeys } from \"./storageKeys\";\r\n\r\nexport function getAppSettings() {\r\n const json = sessionStorage.getItem(SessionStorageKeys.appSettings);\r\n return json ? JSON.parse(json) : null;\r\n}\r\n\r\nexport function resetAppSettings() {\r\n AppSettings = getAppSettings();\r\n\r\n let isDevMode = `${AppSettings?.isDevMode}`;\r\n\r\n AppVersion = `${AppSettings?.version}`;\r\n IsDevMode = (isDevMode && (isDevMode == 'True' || isDevMode == 'true'));\r\n IsProdMode = !IsDevMode;\r\n ClientApps = AppSettings?.clientApps; \r\n}\r\n\r\nexport function getAppSettingsById(id) {\r\n let apps = ClientApps;\r\n\r\n if (apps && id) {\r\n for (let i = 0; i < apps.length; i++) {\r\n let app = apps[i];\r\n\r\n if (app.id == id) {\r\n return app;\r\n }\r\n }\r\n }\r\n\r\n return null;\r\n}\r\n\r\nexport function getAppSettingsByName(name) {\r\n let apps = ClientApps;\r\n\r\n if (apps && name) {\r\n for (let i = 0; i < apps.length; i++) {\r\n let app = apps[i];\r\n\r\n if (app.name == name) {\r\n return app;\r\n }\r\n }\r\n }\r\n\r\n return null;\r\n}\r\n\r\nexport interface ICurrentApp {\r\n id: number;\r\n root: string;\r\n\r\n //ApplicationOne\r\n one: any;\r\n oneUrl: string;\r\n}\r\n\r\nexport function getCurrentApp(): ICurrentApp {\r\n let appSettings = getAppSettingsByName(AppName);\r\n let appOne = getAppSettingsById(1);\r\n\r\n if (!appSettings || !appOne) {\r\n return null;\r\n }\r\n \r\n return {\r\n id: appSettings.id,\r\n root: appSettings.root,\r\n\r\n one: appOne,\r\n oneUrl: appOne?.baseUrl + appOne?.root\r\n }\r\n}\r\n\r\nexport let AppSettings;\r\nexport let AppVersion;\r\nexport let IsDevMode: boolean = true;\r\nexport let IsProdMode: boolean = !IsDevMode;\r\nexport let ClientApps;\r\n\r\n//Set global vars\r\ndeclare const g_AppName: any;\r\ndeclare const g_LibName: any;\r\ndeclare const g_ApiUrl: any;\r\nexport const AppName = g_AppName;\r\nexport const LibName = g_LibName;\r\nexport const ApiUrl = g_ApiUrl;\r\n\r\nresetAppSettings();\r\n\r\n\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\nimport { AppSettings, AppName, LibName } from \"./app-settings\";\r\n\r\nexport enum AssetGroupType {\r\n App = 1,\r\n Lib = 2,\r\n External\r\n}\r\n\r\n/*\r\n formatAssetsUrl builds a typed asset URL and delegates to formatUrl.\r\n\r\n Output pattern: {base}/{AppName}/assets/{assetGroup}/{assetType}/{file}\r\n\r\n assetGroup tokens:\r\n App -> {AppName} e.g. \"am\"\r\n Lib -> {LibName} e.g. \"@nexl\"\r\n External -> external/{libname}\r\n\r\n assetType:\r\n jsons - JSON data files\r\n l10n - localization files\r\n images - image files\r\n\r\n Examples (AppName = \"am\", LibName = \"@nexl\", CDN disabled):\r\n App -> /am/assets/am/jsons/countries.json?v=1\r\n Lib -> /am/assets/@nexl/l10n/en.json?v=1\r\n External-> /am/assets/external/somelib/jsons/file.json?v=1\r\n\r\n Examples (CDN = \"https://cdn.novaexpress.ai\"):\r\n App -> https://cdn.novaexpress.ai/am/assets/am/jsons/countries.json\r\n Lib -> https://cdn.novaexpress.ai/am/assets/@nexl/l10n/en.json\r\n External-> https://cdn.novaexpress.ai/am/assets/external/somelib/jsons/file.json\r\n*/\r\nexport function formatAssetsUrl(assetGroupType: AssetGroupType, url: string): string {\r\n const path = url.replace(/^\\/+/, '');\r\n\r\n switch (assetGroupType) {\r\n case AssetGroupType.App:\r\n return formatUrl(`assets/{AppName}/${path}`);\r\n\r\n case AssetGroupType.Lib:\r\n return formatUrl(`assets/{LibName}/${path}`);\r\n\r\n case AssetGroupType.External:\r\n return formatUrl(`assets/external/${path}`);\r\n\r\n default:\r\n return url;\r\n }\r\n}\r\n\r\n/*\r\n formatUrl resolves a relative URL to its final form.\r\n\r\n Output pattern: {base}/{AppName}/{url}\r\n\r\n Tokens in url are resolved before building the path:\r\n {AppName} -> AppName (e.g. \"am\")\r\n {LibName} -> LibName (e.g. \"@nexl\")\r\n\r\n base:\r\n CDN disabled -> \"\" (relative URL, e.g. /am/assets/...)\r\n CDN enabled -> \"https://cdn.novaexpress.ai\"\r\n\r\n Absolute URLs (starting with \"http\") are returned as-is.\r\n*/\r\nexport function formatUrl(url: string): string {\r\n if (!url) {\r\n return \"\";\r\n }\r\n\r\n if (url.startsWith(\"http\")) {\r\n return url;\r\n }\r\n\r\n if (!AppSettings) {\r\n return url;\r\n }\r\n\r\n const version = AppSettings.version;\r\n const isCDNEnabled = AppSettings.cdn?.enabled;\r\n const cdnUrl = AppSettings.cdn?.url;\r\n\r\n const resolved = url\r\n .replace('{AppName}', AppName ?? '')\r\n .replace('{LibName}', LibName ?? '');\r\n\r\n const base = (isCDNEnabled && cdnUrl)\r\n ? cdnUrl.replace(/\\/+$/, '')\r\n : '';\r\n\r\n const fullUrl = base + '/' + AppName + '/' + resolved.replace(/^\\/+/, '');\r\n\r\n if (fullUrl.endsWith('.json')) {\r\n return fullUrl + '?v=' + version;\r\n }\r\n\r\n return fullUrl;\r\n}","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\nexport const dateTimeFormats = {\r\n medium: 'dd MMM yyyy HH:mm'\r\n};\r\n\r\nexport const dateFormats = {\r\n medium: \"dd MMM yyyy\",\r\n short: \"dd/MM/yyyy\"\r\n};\r\n\r\nexport const timeFormats = {\r\n medium: \"HH:mm:ss\",\r\n short: \"HH:mm\"\r\n};\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\nexport const GAEvents = {\r\n login: {\r\n signin: 'osa_login_signin',\r\n signin_success: 'osa_login_signin_success',\r\n signup: 'osa_login_signup',\r\n signup_success: 'osa_login_signup_success'\r\n }\r\n};\r\n\r\nexport const GABillingEvents = {\r\n payment: 'osa_billing_payment'\r\n};\r\n\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\nexport class is {\r\n /**\r\n * @name isDate\r\n * @summary Is the given value a date?\r\n */\r\n public static date(value) {\r\n return (\r\n value instanceof Date ||\r\n (typeof value === \"object\" && Object.prototype.toString.call(value) === \"[object Date]\")\r\n );\r\n }\r\n\r\n /**\r\n * @name isDateValid\r\n * @summary Is the given date valid?\r\n */\r\n public static dateValid(date): boolean {\r\n if (!is.date(date) && typeof date !== \"number\") {\r\n return false;\r\n }\r\n\r\n let d = new Date(date);\r\n return !isNaN(Number(d));\r\n }\r\n\r\n public static dateInvalid(date): boolean {\r\n return !is.dateValid(date);\r\n }\r\n\r\n public static objectNullOrEmpty(obj) {\r\n return !obj || Object.keys(obj).length == 0;\r\n }\r\n\r\n public static string(value) {\r\n return (typeof value === 'string' || value instanceof String);\r\n }\r\n\r\n public static emptyString(value) {\r\n return (is.string(value) && (value.length == 0));\r\n }\r\n\r\n public static notEmptyString(value) {\r\n return (is.string(value) && (value.length > 0));\r\n }\r\n\r\n public static number(value) {\r\n return (typeof value === 'number');\r\n }\r\n\r\n public static boolean(value) {\r\n return (typeof value === 'boolean');\r\n }\r\n\r\n public static array(value) {\r\n return (value instanceof Array);\r\n }\r\n\r\n public static emptyArray(value) {\r\n return (is.array(value) && (value.length == 0));\r\n }\r\n\r\n public static notEmptyArray(value) {\r\n return (is.array(value) && (value.length > 0));\r\n }\r\n\r\n public static undefined(value) {\r\n return (typeof value === 'undefined');\r\n }\r\n}\r\n\r\n/*\r\nis = {\r\n DONE string: function (obj) { return (typeof obj === 'string'); },\r\n DONE emptyString: function (obj) { return (is.string(obj) && (obj.length == 0)); },\r\n DONE nonEmptyString: function (obj) { return (is.string(obj) && (obj.length > 0)); },\r\n DONE number: function (obj) { return (typeof obj === 'number'); },\r\n DONE bool: function (obj) { return (typeof obj === 'boolean'); },\r\n DONE array: function (obj) { return (obj instanceof Array); },\r\n DONE emptyArray: function (obj) { return (is.array(obj) && (obj.length == 0)); },\r\n DONE notEmptyArray: function (obj) { return (is.array(obj) && (obj.length > 0)); },\r\n DONE undefined: function (obj) { return (typeof obj === 'undefined'); },\r\n\r\n 'null': function (obj) { return (obj === null); },\r\n notNull: function (obj) { return (obj !== null); },\r\n invalid: function (obj) { return (is['null'](obj) || is.undefined(obj)); },\r\n valid: function (obj) { return (!is['null'](obj) && !is.undefined(obj)); },\r\n\r\n document: function (obj) { return (obj === document); },\r\n window: function (obj) { return (obj === window); },\r\n element: function (obj) { return (obj instanceof HTMLElement); },\r\n event: function (obj) { return (obj instanceof Event); },\r\n link: function (obj) { return (is.element(obj) && (obj.tagName == 'A')); }\r\n};\r\n*/\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\nimport { is } from \"../is\";\r\n\r\nexport class Convert {\r\n private static pad(number) {\r\n if (number < 10) {\r\n return '0' + number;\r\n }\r\n return number;\r\n }\r\n\r\n public static enumToString(enumeration, value) {\r\n for (let k in enumeration) if (enumeration[k] == value) return k;\r\n\r\n return null;\r\n }\r\n\r\n public static enumToArray(enumeration, valueAsInt = true, notIncludes?) {\r\n const notIncludeFiler = (value) => {\r\n if (isNaN(Number(value))) {\r\n return false;\r\n }\r\n\r\n if (notIncludes) {\r\n for (let i in notIncludes) {\r\n if (notIncludes[i] == value)\r\n return false;\r\n }\r\n }\r\n\r\n return true;\r\n }\r\n\r\n if (valueAsInt) {\r\n return Object.keys(enumeration)\r\n .filter(notIncludeFiler)\r\n .map(key => ({\r\n value: parseInt(key),\r\n text: enumeration[key]\r\n }));\r\n }\r\n else {\r\n return Object.keys(enumeration)\r\n .filter(notIncludeFiler)\r\n .map(key => ({\r\n value: key,\r\n text: enumeration[key]\r\n }));\r\n }\r\n }\r\n\r\n public static stringToArray(str: string, separator: string = ',') {\r\n if (str) {\r\n return str.split(separator).filter(element => element);\r\n }\r\n\r\n return [];\r\n }\r\n\r\n public static stringToIntArray(str: string, separator: string = ',') {\r\n if (str) {\r\n return str.split(separator).filter(element => element).map(value => parseInt(value));\r\n }\r\n\r\n return [];\r\n }\r\n\r\n public static company2String(comp:any):string {\r\n let company = JSON.parse(comp);\r\n if(company)\r\n {\r\n return `${company.name} ${company.phone} ${company.email} ${company.websiteUrl}`;\r\n }\r\n }\r\n\r\n public static address2String(adr:any):string {\r\n let address = JSON.parse(adr);\r\n return `${address.street} ${address.street2} ${address.city} ${address.stateOrRegion} ${address.zipcode} ${address.country}`;\r\n }\r\n\r\n public static stringToBoolean(value) {\r\n if (value) {\r\n if (is.boolean(value)){\r\n return value;\r\n }\r\n\r\n if (is.string(value)){\r\n switch (value.toLowerCase().trim()) {\r\n case \"true\":\r\n case \"yes\":\r\n case \"1\":\r\n return true;\r\n \r\n case \"false\":\r\n case \"no\":\r\n case \"0\":\r\n case null:\r\n return false;\r\n }\r\n }\r\n }\r\n\r\n return false;\r\n }\r\n}\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\n/**\r\n * Returns the [year, month, day, hour, minute, seconds] tokens of the provided\r\n * `date` as it will be rendered in the `timeZone`.\r\n */\r\nexport function tzTokenizeDate(date, timeZone) {\r\n var dtf = getDateTimeFormat(timeZone)\r\n return dtf.formatToParts ? partsOffset(dtf, date) : hackyOffset(dtf, date)\r\n}\r\n\r\nvar typeToPos = {\r\n year: 0,\r\n month: 1,\r\n day: 2,\r\n hour: 3,\r\n minute: 4,\r\n second: 5,\r\n}\r\n\r\nfunction partsOffset(dtf, date) {\r\n try {\r\n var formatted = dtf.formatToParts(date)\r\n var filled = []\r\n for (var i = 0; i < formatted.length; i++) {\r\n var pos = typeToPos[formatted[i].type]\r\n\r\n if (pos >= 0) {\r\n filled[pos] = parseInt(formatted[i].value, 10)\r\n }\r\n }\r\n return filled\r\n } catch (error) {\r\n if (error instanceof RangeError) {\r\n return [NaN]\r\n }\r\n throw error\r\n }\r\n}\r\n\r\nfunction hackyOffset(dtf, date) {\r\n var formatted = dtf.format(date).replace(/\\u200E/g, '')\r\n var parsed = /(\\d+)\\/(\\d+)\\/(\\d+),? (\\d+):(\\d+):(\\d+)/.exec(formatted)\r\n // var [, fMonth, fDay, fYear, fHour, fMinute, fSecond] = parsed\r\n // return [fYear, fMonth, fDay, fHour, fMinute, fSecond]\r\n return [parsed[3], parsed[1], parsed[2], parsed[4], parsed[5], parsed[6]]\r\n}\r\n\r\n// Get a cached Intl.DateTimeFormat instance for the IANA `timeZone`. This can be used\r\n// to get deterministic local date/time output according to the `en-US` locale which\r\n// can be used to extract local time parts as necessary.\r\nvar dtfCache = {}\r\nfunction getDateTimeFormat(timeZone) {\r\n if (!dtfCache[timeZone]) {\r\n // New browsers use `hourCycle`, IE and Chrome <73 does not support it and uses `hour12`\r\n var testDateFormatted = new Intl.DateTimeFormat('en-US', {\r\n hour12: false,\r\n timeZone: 'America/New_York',\r\n year: 'numeric',\r\n month: 'numeric',\r\n day: '2-digit',\r\n hour: '2-digit',\r\n minute: '2-digit',\r\n second: '2-digit',\r\n }).format(new Date('2014-06-25T04:00:00.123Z'))\r\n\r\n var hourCycleSupported =\r\n testDateFormatted === '06/25/2014, 00:00:00' ||\r\n testDateFormatted === '06/25/2014 00:00:00'\r\n\r\n dtfCache[timeZone] = hourCycleSupported\r\n ? new Intl.DateTimeFormat('en-US', {\r\n hour12: false,\r\n timeZone: timeZone,\r\n year: 'numeric',\r\n month: 'numeric',\r\n day: '2-digit',\r\n hour: '2-digit',\r\n minute: '2-digit',\r\n second: '2-digit',\r\n })\r\n : new Intl.DateTimeFormat('en-US', {\r\n hourCycle: 'h23',\r\n timeZone: timeZone,\r\n year: 'numeric',\r\n month: 'numeric',\r\n day: '2-digit',\r\n hour: '2-digit',\r\n minute: '2-digit',\r\n second: '2-digit',\r\n })\r\n }\r\n\r\n return dtfCache[timeZone]\r\n}\r\n\r\n\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\nimport { tzTokenizeDate } from \"./tzTokenizeDate\"\r\n\r\nexport function tzParseTimezone(timezoneString, date, isUtcDate) {\r\n var token\r\n var absoluteOffset\r\n\r\n // Empty string\r\n if (!timezoneString) {\r\n return 0\r\n }\r\n\r\n // Z\r\n token = patterns.timezoneZ.exec(timezoneString)\r\n if (token) {\r\n return 0\r\n }\r\n\r\n var hours\r\n\r\n // ±hh\r\n token = patterns.timezoneHH.exec(timezoneString)\r\n if (token) {\r\n hours = parseInt(token[1], 10)\r\n\r\n if (!validateTimezone(hours)) {\r\n return NaN\r\n }\r\n\r\n return -(hours * MILLISECONDS_IN_HOUR)\r\n }\r\n\r\n // ±hh:mm or ±hhmm\r\n token = patterns.timezoneHHMM.exec(timezoneString)\r\n if (token) {\r\n hours = parseInt(token[1], 10)\r\n var minutes = parseInt(token[2], 10)\r\n\r\n if (!validateTimezone(hours, minutes)) {\r\n return NaN\r\n }\r\n\r\n absoluteOffset = Math.abs(hours) * MILLISECONDS_IN_HOUR + minutes * MILLISECONDS_IN_MINUTE\r\n return hours > 0 ? -absoluteOffset : absoluteOffset\r\n }\r\n\r\n // IANA time zone\r\n if (isValidTimezoneIANAString(timezoneString)) {\r\n date = new Date(date || Date.now())\r\n var utcDate = isUtcDate ? date : toUtcDate(date);\r\n var offset = calcOffset(utcDate, timezoneString);\r\n var fixedOffset = isUtcDate ? offset : fixOffset(date, offset, timezoneString)\r\n\r\n return -fixedOffset\r\n }\r\n\r\n return NaN\r\n}\r\n\r\n\r\nvar MILLISECONDS_IN_HOUR = 3600000\r\nvar MILLISECONDS_IN_MINUTE = 60000\r\n\r\nvar patterns = {\r\n timezone: /([Z+-].*)$/,\r\n timezoneZ: /^(Z)$/,\r\n timezoneHH: /^([+-]\\d{2})$/,\r\n timezoneHHMM: /^([+-]\\d{2}):?(\\d{2})$/,\r\n}\r\n\r\nfunction newDateUTC(fullYear, month, day, hour, minute, second, millisecond) {\r\n var utcDate = new Date(0)\r\n utcDate.setUTCFullYear(fullYear, month, day)\r\n utcDate.setUTCHours(hour, minute, second, millisecond)\r\n return utcDate\r\n}\r\n\r\nfunction toUtcDate(date) {\r\n return newDateUTC(\r\n date.getFullYear(),\r\n date.getMonth(),\r\n date.getDate(),\r\n date.getHours(),\r\n date.getMinutes(),\r\n date.getSeconds(),\r\n date.getMilliseconds()\r\n )\r\n}\r\n\r\nfunction calcOffset(date, timezoneString) {\r\n var tokens = tzTokenizeDate(date, timezoneString)\r\n\r\n // ms dropped because it's not provided by tzTokenizeDate\r\n var asUTC = newDateUTC(\r\n tokens[0],\r\n tokens[1] - 1,\r\n tokens[2],\r\n tokens[3] % 24,\r\n tokens[4],\r\n tokens[5],\r\n 0\r\n ).getTime()\r\n\r\n var asTS = date.getTime()\r\n var over = asTS % 1000\r\n asTS -= over >= 0 ? over : 1000 + over\r\n return asUTC - asTS\r\n}\r\n\r\nfunction fixOffset(date, offset, timezoneString) {\r\n var localTS = date.getTime()\r\n\r\n // Our UTC time is just a guess because our offset is just a guess\r\n var utcGuess = localTS - offset\r\n\r\n // Test whether the zone matches the offset for this ts\r\n var o2 = calcOffset(new Date(utcGuess), timezoneString)\r\n\r\n // If so, offset didn't change, and we're done\r\n if (offset === o2) {\r\n return offset\r\n }\r\n\r\n // If not, change the ts by the difference in the offset\r\n utcGuess -= o2 - offset\r\n\r\n // If that gives us the local time we want, we're done\r\n var o3 = calcOffset(new Date(utcGuess), timezoneString)\r\n if (o2 === o3) {\r\n return o2\r\n }\r\n\r\n // If it's different, we're in a hole time. The offset has changed, but we don't adjust the time\r\n return Math.max(o2, o3)\r\n}\r\n\r\nfunction validateTimezone(hours, minutes = null) {\r\n return -23 <= hours && hours <= 23 && (minutes == null || (0 <= minutes && minutes <= 59))\r\n}\r\n\r\nvar validIANATimezoneCache = {}\r\nfunction isValidTimezoneIANAString(timeZoneString) {\r\n if (validIANATimezoneCache[timeZoneString]) return true\r\n try {\r\n new Intl.DateTimeFormat(undefined, { timeZone: timeZoneString })\r\n validIANATimezoneCache[timeZoneString] = true\r\n return true\r\n } catch (error) {\r\n return false\r\n }\r\n}\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\nimport { tzParseTimezone } from \"./tz/tzParseTimezone\";\r\nimport { format } from 'date-fns';\r\n\r\nexport class DateConvert {\r\n public static toDate(date: Date | number | string): Date {\r\n const argStr = Object.prototype.toString.call(date);\r\n\r\n if (date instanceof Date || (typeof date === \"object\" && argStr === \"[object Date]\")) {\r\n return date;\r\n }\r\n else if (typeof date === \"number\" || argStr === \"[object Number]\" ||\r\n typeof date === \"string\" || argStr === \"[object String]\") {\r\n return new Date(date);\r\n }\r\n else {\r\n return new Date(NaN);\r\n }\r\n }\r\n\r\n public static toFormattedDate(date: Date | number | string, formatStr: string = 'yyyy-MM-dd HH:mm:ss' ){\r\n const parsedDate = this.toDate(date);\r\n return format(parsedDate, formatStr);\r\n }\r\n\r\n public static utcToLocal(dirtyDate): Date {\r\n if (typeof dirtyDate === 'string') {\r\n if (dirtyDate.indexOf(\"T\") > -1) {\r\n dirtyDate = dirtyDate.replace(\"T\", \" \");\r\n }\r\n\r\n if (dirtyDate.indexOf(\"Z\") == -1) {\r\n dirtyDate = dirtyDate + \"Z\";\r\n }\r\n }\r\n\r\n let browserTimeZone = Intl.DateTimeFormat().resolvedOptions().timeZone;\r\n\r\n if (browserTimeZone) {\r\n let date = DateConvert.toDate(dirtyDate);\r\n let offsetMilliseconds = tzParseTimezone(browserTimeZone, date, true);\r\n let d = new Date(date.getTime() - offsetMilliseconds);\r\n let resultDate = new Date(0);\r\n\r\n resultDate.setFullYear(d.getUTCFullYear(), d.getUTCMonth(), d.getUTCDate());\r\n resultDate.setHours(d.getUTCHours(), d.getUTCMinutes(), d.getUTCSeconds(), d.getUTCMilliseconds());\r\n\r\n return resultDate;\r\n }\r\n\r\n return new Date(dirtyDate);\r\n }\r\n\r\n /*\r\n VadimOS: Osovitny please have a look\r\n\r\n public static localToUtc(value: Date): Date | null {\r\n if (value) {\r\n return new Date(value.getUTCFullYear(), value.getUTCMonth(), value.getUTCDate(),\r\n value.getUTCHours(), value.getUTCMinutes(), value.getUTCSeconds(), value.getUTCMilliseconds()\r\n );\r\n }\r\n\r\n return null;\r\n }\r\n\r\n public static utcToLocal(value: Date): Date | null {\r\n if (value) {\r\n return new Date(Date.UTC(value.getFullYear(), value.getMonth(), value.getDate(),\r\n value.getHours(), value.getMinutes(), value.getSeconds(), value.getMilliseconds())\r\n );\r\n }\r\n\r\n return null;\r\n }\r\n */\r\n}\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\nimport js_beautify from 'js-beautify'\r\nimport { HTMLBeautifyOptions } from 'js-beautify'\r\n\r\nexport class XmlFormatter {\r\n public static toPrettyXML(s: string, options?: HTMLBeautifyOptions): string {\r\n if (!options) {\r\n options = {\r\n indent_size: 2,\r\n indent_char: \" \",\r\n wrap_line_length: 110\r\n }\r\n }\r\n\r\n return js_beautify.html(s, options);\r\n }\r\n}\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\nexport enum DiscountCodeType {\r\n Standard = 1,\r\n UseOnce = 2\r\n}\r\n\r\nexport enum DiscountCodeStatus {\r\n Exist = 1,\r\n NotFound = 2,\r\n AlreadyUsed = 3\r\n}\r\n\r\nexport enum PaymentType {\r\n FullPayment = 1,\r\n WeeklyPayment = 2,\r\n BiWeeklyPayment = 3,\r\n MonthlyPayment = 4\r\n}\r\n\r\nexport enum PaymentMethod {\r\n None = 1,\r\n Wallet = 2,\r\n CreditCard = 3,\r\n PayPal = 4,\r\n Stripe = 5,\r\n Venmo = 6,\r\n ApplePay = 7,\r\n GooglePay = 8\r\n}\r\n\r\nexport enum PaymentStage {\r\n //PayPal/Stripe\r\n External = 1,\r\n Internal = 2\r\n}\r\n\r\nexport enum SubscriptionProvider\r\n{\r\n Product = 1,\r\n PayPal = 2,\r\n Stripe = 3\r\n}","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\nexport enum Mode {\r\n View = 1,\r\n Edit = 2,\r\n Moderation = 3\r\n}\r\n\r\nexport enum DataViewType {\r\n Grid = 'grid',\r\n List = 'list',\r\n Table = 'table'\r\n}\r\n\r\nexport enum PublishStatus {\r\n Draft = 1, //viewable by owner ONLY\r\n PendingReview = 2, //via RequestPublishing\r\n Published = 3, //viewable by everyone\r\n Archived = 4 \r\n}\r\n\r\nexport enum ModerationStatus {\r\n Draft = 1, //item is saved\r\n PendingReview = 2, //item is in review\r\n Approved = 3, //item is approved by Moderator\r\n Rejected = 4 //item is rejected by Moderator \r\n}","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\nexport * from './billing';\r\nexport * from './enums';","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\nexport function throwIfAlreadyLoaded(parentModule: any, moduleName: string) {\r\n if (parentModule) {\r\n throw new Error(\r\n `${moduleName} has already been loaded. Import ${moduleName} modules in the AppModule only.`\r\n );\r\n }\r\n}\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\n/*\r\n Framework-agnostic localization port.\r\n\r\n @osovitny/core never localizes directly — it localizes through this port. The\r\n default is a pass-through (returns the key, or the defaultKey when the key is\r\n empty). An adapter (e.g. L10nUtils in @osovitny/angular, registered by\r\n OsovitnyCoreModule) can take over by calling setLocalizer() once at startup.\r\n*/\r\nexport interface Localizer {\r\n getLocalizedValue(key: string, params?: any[], defaultKey?: string): string;\r\n}\r\n\r\nlet currentLocalizer: Localizer = {\r\n getLocalizedValue: (key: string, params?: any[], defaultKey?: string) => key || defaultKey || ''\r\n};\r\n\r\nexport function setLocalizer(localizer: Localizer): void {\r\n currentLocalizer = localizer;\r\n}\r\n\r\nexport function getLocalizer(): Localizer {\r\n return currentLocalizer;\r\n}\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\n/*\r\n Framework-agnostic logging port.\r\n\r\n @osovitny/core never logs directly — it logs through this port. By default the\r\n port is backed by the console. An adapter (e.g. LoggingService in\r\n @osovitny/angular, registered by OsovitnyCoreModule) can take over by calling\r\n setLogger() once at startup.\r\n*/\r\nexport interface Logger {\r\n debug(info: any, ...optionalParams: any[]): void;\r\n info(info: any, ...optionalParams: any[]): void;\r\n warn(info: any, ...optionalParams: any[]): void;\r\n error(error: any, ...optionalParams: any[]): void;\r\n}\r\n\r\nlet currentLogger: Logger = console;\r\n\r\nexport function setLogger(logger: Logger): void {\r\n currentLogger = logger;\r\n}\r\n\r\nexport function getLogger(): Logger {\r\n return currentLogger;\r\n}\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\nexport interface IQueryParam {\r\n name: string;\r\n value: string;\r\n}\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\n//Node\r\nimport Swal from 'sweetalert2';\r\n\r\n//App\r\nimport { getLocalizer } from '../localization/localizer';\r\n\r\nexport class Alerts {\r\n public static areYouSure(text, title?, confirmButtonText?, cancelButtonText?, successAction?, cancelAction?) {\r\n text = getLocalizer().getLocalizedValue(text);\r\n title = getLocalizer().getLocalizedValue(title, null, 'Notifications.AreYouSure');\r\n confirmButtonText = getLocalizer().getLocalizedValue(confirmButtonText, null, 'Notifications.AreYouSure-ConfirmButtonText');\r\n cancelButtonText = getLocalizer().getLocalizedValue(cancelButtonText, null, 'Notifications.AreYouSure-CancelButtonText');\r\n\r\n Swal.fire({\r\n text,\r\n title,\r\n icon: 'warning',\r\n confirmButtonText,\r\n cancelButtonText,\r\n showCancelButton: true\r\n })\r\n .then((result) => {\r\n if (result.value) {\r\n if (successAction) {\r\n successAction();\r\n }\r\n }\r\n // result.dismiss can be 'cancel', 'overlay', 'close', and 'timer'\r\n else if (result.dismiss == Swal.DismissReason.cancel || result.dismiss == Swal.DismissReason.close) {\r\n if (cancelAction) {\r\n cancelAction();\r\n }\r\n }\r\n });\r\n };\r\n\r\n public static info(text, params?: any[], title?) {\r\n text = getLocalizer().getLocalizedValue(text, params);\r\n title = getLocalizer().getLocalizedValue(title, null, 'Notifications.Info');\r\n\r\n Swal.fire({\r\n text,\r\n title,\r\n icon: 'info',\r\n confirmButtonText: getLocalizer().getLocalizedValue('Notifications.Ok')\r\n });\r\n }\r\n\r\n public static warning(text, params?: any[], title?) {\r\n text = getLocalizer().getLocalizedValue(text, params);\r\n title = getLocalizer().getLocalizedValue(title, null, 'Notifications.Warning');\r\n\r\n Swal.fire({\r\n text,\r\n title,\r\n icon: 'warning',\r\n confirmButtonText: getLocalizer().getLocalizedValue('Notifications.Ok')\r\n });\r\n }\r\n\r\n public static error(text?, params?: any[], title?) {\r\n text = getLocalizer().getLocalizedValue(text, params, 'Notifications.ErrorOccured');\r\n title = getLocalizer().getLocalizedValue(title, null, 'Notifications.Error');\r\n\r\n Swal.fire({\r\n text,\r\n title,\r\n icon: 'error',\r\n confirmButtonText: getLocalizer().getLocalizedValue('Notifications.Ok')\r\n });\r\n }\r\n\r\n public static success(text?, params?: any[], title?, successAction?) {\r\n text = getLocalizer().getLocalizedValue(text, params, 'Notifications.OperationSuccessFull');\r\n title = getLocalizer().getLocalizedValue(title, null, 'Notifications.Success');\r\n\r\n Swal.fire({\r\n text,\r\n title,\r\n icon: 'success',\r\n confirmButtonText: getLocalizer().getLocalizedValue('Notifications.Ok')\r\n })\r\n .then(() => {\r\n if (successAction) {\r\n successAction();\r\n }\r\n });\r\n }\r\n\r\n public static cancel(text?, params?: any[], title?) {\r\n text = getLocalizer().getLocalizedValue(text, params, 'Notifications.OperationCancelled');\r\n title = getLocalizer().getLocalizedValue(title, null, 'Notifications.Cancelled');\r\n\r\n Swal.fire({\r\n text,\r\n title,\r\n icon: 'info'\r\n })\r\n }\r\n\r\n //Standard Notifications\r\n public static notImplemented() {\r\n let text = getLocalizer().getLocalizedValue('Notifications.NotImplemented');\r\n this.warning(text);\r\n };\r\n\r\n public static authenticationRequired() {\r\n let text = 'Please Log in';\r\n let title = 'Authentication Required';\r\n\r\n this.warning(text, null, title);\r\n };\r\n}\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\nexport interface INotification {\r\n id?: string;\r\n isNew: boolean;\r\n isSession: boolean;\r\n text?: string;\r\n type?: string;\r\n component?: string;\r\n operation?: string;\r\n createdDate?: string;\r\n}\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\n//App\r\nimport { getLogger } from '../logging/logger';\r\n\r\nexport class Stopwatch {\r\n private name;\r\n private startTime;\r\n private stopTime;\r\n private running;\r\n private performance;\r\n\r\n constructor(name) {\r\n this.name = name;\r\n this.startTime = 0;\r\n this.stopTime = 0;\r\n this.running = false;\r\n this.performance = !!window.performance;\r\n\r\n getLogger().info(this.name + ' started.');\r\n }\r\n\r\n private currentTime() {\r\n return this.performance ? window.performance.now() : new Date().getTime();\r\n }\r\n\r\n start() {\r\n this.startTime = this.currentTime();\r\n this.running = true;\r\n }\r\n\r\n stop() {\r\n this.stopTime = this.currentTime();\r\n this.running = false;\r\n }\r\n\r\n getElapsedMilliseconds() {\r\n if (this.running) {\r\n this.stopTime = this.currentTime();\r\n }\r\n\r\n return this.stopTime - this.startTime;\r\n }\r\n\r\n getElapsedSeconds() {\r\n return this.getElapsedMilliseconds() / 1000;\r\n }\r\n\r\n printElapsedAsMilliseconds() {\r\n let elapsed = this.getElapsedMilliseconds();\r\n getLogger().info(`${this.name} stopped. Execution time: ${elapsed} ms`);\r\n }\r\n}\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\ndeclare var $: any;\r\n\r\nexport class DOM {\r\n //Private\r\n private static dir(elem: HTMLElement, dir, until = null, selector: string = null) {\r\n let matched = [];\r\n let truncate = until !== undefined && until != null;\r\n\r\n while ((elem = elem[dir]) && elem.nodeType !== 9) {\r\n if (elem.nodeType === 1) {\r\n /*\r\n if (truncate && jQuery(elem).is(until)) {\r\n break;\r\n }\r\n */\r\n\r\n if (selector) {\r\n let className = selector.replace('.', '');\r\n if (elem.classList.contains(className)) {\r\n matched.push(elem);\r\n }\r\n }\r\n else {\r\n matched.push(elem);\r\n }\r\n }\r\n }\r\n\r\n return matched;\r\n }\r\n\r\n //Public\r\n public static first(elements: HTMLElement[]): HTMLElement {\r\n if (!elements || elements.length == 0) {\r\n return null;\r\n }\r\n\r\n return elements[0];\r\n }\r\n\r\n public static any(elements: HTMLElement[]): boolean {\r\n if (!elements || elements.length == 0) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n\r\n public static parent(elem: HTMLElement): HTMLElement {\r\n let parentElement = elem.parentElement;\r\n let parentNode = elem.parentNode;\r\n\r\n return parentNode && parentNode.nodeType !== 11 ? parentElement : null;\r\n }\r\n\r\n public static parents(elem: HTMLElement, selector = null) {\r\n return this.dir(elem, \"parentNode\", null, selector);\r\n }\r\n\r\n public static findInDocument(selector: string): HTMLElement[] {\r\n let parent = $(document);\r\n return $(parent).find(selector).get();\r\n }\r\n\r\n public static find(elem, selector: string): HTMLElement[] {\r\n return $(elem).find(selector).get();\r\n }\r\n\r\n public static remove(nodes) {\r\n if (nodes == null) {\r\n return;\r\n }\r\n\r\n if (!Array.isArray(nodes)) {\r\n if (nodes.parentNode) {\r\n nodes.parentNode.removeChild(nodes);\r\n }\r\n\r\n return;\r\n }\r\n\r\n if (nodes.length == 0) {\r\n return;\r\n }\r\n\r\n let node;\r\n let i = 0;\r\n\r\n for (; (node = nodes[i]) != null; i++) {\r\n if (node.parentNode) {\r\n node.parentNode.removeChild(node);\r\n }\r\n }\r\n }\r\n\r\n public static findAndRemove(element, selector) {\r\n this.remove(this.find(element, selector));\r\n }\r\n\r\n public static show(elem) {\r\n $(elem).show();\r\n }\r\n\r\n public static hide(elem) {\r\n $(elem).hide();\r\n }\r\n\r\n public static each(selector, action) {\r\n let parent = $(document);\r\n let elems = DOM.find(parent, selector);\r\n\r\n for (let i = 0; i < elems.length; i++) {\r\n let elem = elems[i];\r\n action(elem);\r\n }\r\n }\r\n\r\n //Css\r\n /*\r\n public static addClass(e: Element, className: string): Element {\r\n const class = e.getAttribute('class');\r\n if (class === null || class === '') {\r\n e.setAttribute('class', className);\r\n } else if (!DOM.hasClass(e, className)) {\r\n e.setAttribute('class', `${class} ${className}`);\r\n }\r\n\r\n return e;\r\n }\r\n\r\n public static removeClass(e: Element, className: string): Element {\r\n const class = e.getAttribute('class')\r\n if (class !== null && class !== '') {\r\n if (class === className) {\r\n e.setAttribute('class', '');\r\n } else {\r\n const result = class\r\n .split(' ')\r\n .filter((s: any) => s !== className)\r\n .join(' ');\r\n e.setAttribute('class', result);\r\n }\r\n }\r\n\r\n return e;\r\n }\r\n\r\n public static hasClass(e: Element, className: string): boolean {\r\n const class = e.getAttribute('class') || '';\r\n const r = new RegExp(`\\\\b${className}\\\\b`, '');\r\n return r.test(class);\r\n }\r\n */\r\n\r\n public static addClass(elem: Node | Element, classNames) {\r\n $(elem).addClass(classNames);\r\n }\r\n\r\n public static removeClass(elem: Node | Element, classNames) {\r\n $(elem).removeClass(classNames);\r\n }\r\n\r\n public static hasClass(elem: Node | Element, className) {\r\n $(elem).hasClass(className);\r\n }\r\n}\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\nimport { v4 as uuidv4 } from 'uuid';\r\n\r\nexport class Guid {\r\n public static newGuid() {\r\n return uuidv4();\r\n }\r\n}\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\nimport { Subscription } from 'rxjs';\r\n\r\nexport class Subs {\r\n private subs: Subscription[] = [];\r\n\r\n constructor() {}\r\n\r\n add(...subscriptions: Subscription[]) {\r\n this.subs = this.subs.concat(subscriptions);\r\n }\r\n\r\n set sink(subscription: Subscription) {\r\n this.subs.push(subscription);\r\n }\r\n\r\n unsubscribe() {\r\n this.subs.forEach((sub) => sub && sub.unsubscribe());\r\n this.subs = [];\r\n }\r\n}\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\n//App\r\nimport { getLogger } from '../logging/logger';\r\n\r\nexport class QSUtils {\r\n private static getValue(url, name) {\r\n name = name.replace(/[\\[]/, '\\\\[').replace(/[\\]]/, '\\\\]');\r\n const regex = new RegExp('[\\\\?&]' + name + '=([^&#]*)'),\r\n\r\n results = regex.exec(url);\r\n return results === null ? '' : decodeURIComponent(results[1].replace(/\\+/g, ' '));\r\n }\r\n\r\n public static getValueByName(name) {\r\n return QSUtils.getValue(location.search, name);\r\n }\r\n\r\n public static exists(name) {\r\n let value = QSUtils.getValueByName(name);\r\n if (value) return true;\r\n\r\n return false;\r\n }\r\n\r\n public static idExists() {\r\n return QSUtils.exists(\"id\");\r\n }\r\n\r\n public static clear() {\r\n try\r\n {\r\n let newURL = location.href.split(\"?\")[0];\r\n window.history.pushState('object', document.title, newURL);\r\n }\r\n catch(e)\r\n {\r\n }\r\n }\r\n\r\n public static clearKey(name, reload = false, clearStorage = false) {\r\n try\r\n {\r\n let str = null;\r\n let newURL= null;\r\n\r\n str = \"?\" + name;\r\n if (location.href.indexOf(str) > -1) {\r\n newURL = location.href.split(str)[0];\r\n }\r\n\r\n str = \"&\" + name;\r\n if (location.href.indexOf(str) > -1) {\r\n newURL = location.href.split(str)[0];\r\n }\r\n\r\n if (newURL && reload) {\r\n if (clearStorage) {\r\n getLogger().info(\"Clearing Storage\");\r\n localStorage.clear();\r\n sessionStorage.clear();\r\n }\r\n\r\n window.location.href = newURL;\r\n }\r\n else {\r\n window.history.pushState('object', document.title, newURL);\r\n }\r\n }\r\n catch(e)\r\n {\r\n }\r\n }\r\n\r\n public static getUrlSlug(): string {\r\n let str = location.href;\r\n let items = str.split('/');\r\n let urlSlugWithQS = items[items.length - 1];\r\n let urlSlug = urlSlugWithQS.split(\"?\")[0];\r\n\r\n return urlSlug;\r\n }\r\n\r\n //SSO\r\n public static isSSOinProgress(): boolean {\r\n return location.search.indexOf(\"action=sso\") > -1;\r\n }\r\n\r\n public static clearSSO() {\r\n this.clearKey(\"action=sso\");\r\n }\r\n}\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\nexport class Utils {\r\n public static copyToClipBoard(event: any, val: string) {\r\n event.preventDefault();\r\n\r\n const selBox = document.createElement('textarea');\r\n selBox.style.position = 'fixed';\r\n selBox.style.left = '0';\r\n selBox.style.top = '0';\r\n selBox.style.opacity = '0';\r\n selBox.value = val;\r\n document.body.appendChild(selBox);\r\n selBox.focus();\r\n selBox.select();\r\n document.execCommand('copy');\r\n document.body.removeChild(selBox);\r\n }\r\n\r\n public static downloadFile(name: string, url: string) {\r\n const link = document.createElement('a');\r\n link.download = name;\r\n link.href = url;\r\n link.click();\r\n }\r\n\r\n public static downloadBlobFile(value: Blob, fileName: string) {\r\n const nav = (window.navigator as any);\r\n\r\n if (nav.msSaveOrOpenBlob) {\r\n nav.msSaveOrOpenBlob(value, fileName);\r\n }\r\n else {\r\n const downloadURL = window.URL.createObjectURL(value);\r\n Utils.downloadFile(fileName, downloadURL);\r\n }\r\n }\r\n\r\n /*\r\n Author:\r\n https://medium.com/@mhagemann/the-ultimate-way-to-slugify-a-url-string-in-javascript-b8e4a0d849e1\r\n */\r\n public static slugify(text: string, prefix: string = '', postfix: string = '') {\r\n const a = 'àáâäæãåāăąçćčđďèéêëēėęěğǵḧîïíīįìłḿñńǹňôöòóœøōõőṕŕřßśšşșťțûüùúūǘůűųẃẍÿýžźż·/_,:;';\r\n const b = 'aaaaaaaaaacccddeeeeeeeegghiiiiiilmnnnnoooooooooprrsssssttuuuuuuuuuwxyyzzz------';\r\n const p = new RegExp(a.split('').join('|'), 'g');\r\n\r\n /*\r\n https://css-tricks.com/snippets/javascript/strip-html-tags-in-javascript/\r\n https://stackoverflow.com/questions/822452/strip-html-from-text-javascript\r\n */\r\n text = text.replace(/(<([^>]+)>)/gi, '');\r\n\r\n let result = text\r\n .toString()\r\n .toLowerCase()\r\n .replace(/\\s+/g, '-') // Replace spaces with -\r\n .replace(p, c => b.charAt(a.indexOf(c))) // Replace special characters\r\n .replace(/&/g, '-and-') // Replace & with 'and'\r\n .replace(/[^\\w\\-]+/g, '') // Remove all non-word characters\r\n .replace(/\\-\\-+/g, '-') // Replace multiple - with single -\r\n .replace(/^-+/, '') // Trim - from start of text\r\n .replace(/-+$/, ''); // Trim - from end of text\r\n\r\n return prefix + result + postfix;\r\n }\r\n\r\n public static generateRandom(start: number, end: number) {\r\n return Math.floor(Math.random() * (end - start + 1)) + start;\r\n }\r\n\r\n public static sortArray(items) {\r\n return items?.slice().sort((a, b) => a.name.toLowerCase().localeCompare(b.name.toLowerCase()))\r\n }\r\n}\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\n//App\r\nimport { SessionStorageKeys } from \"../core/consts/storageKeys\";\r\n\r\nexport function getMsalSettings() {\r\n const json = sessionStorage.getItem(SessionStorageKeys.appMSALSettings);\r\n return json ? JSON.parse(json) : null;\r\n}\r\n\r\nexport function resetMsalSettings() {\r\n let msalSettings = getMsalSettings();\r\n\r\n MSALConfig = msalSettings;\r\n MSALApiConfig = MSALConfig?.api;\r\n MSALB2CConfig = MSALConfig?.b2c; \r\n}\r\n\r\nexport let MSALConfig;\r\nexport let MSALApiConfig;\r\nexport let MSALB2CConfig;\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\n//App\r\nimport { MSALB2CConfig } from '../consts';\r\n\r\nexport class MSALB2C {\r\n public static getAuthorityByType(type) {\r\n let policy = MSALB2C.getPolicyByType(type);\r\n return policy?.authority;\r\n }\r\n\r\n public static getPolicyByType(type) {\r\n let policies = MSALB2CConfig?.policies;\r\n if (!policies) {\r\n return null;\r\n }\r\n\r\n for (let i = 0; i < policies.length; i++) {\r\n let policy = policies[i];\r\n\r\n if (policy.type == type) {\r\n return policy;\r\n }\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\nexport const PolicyType = {\r\n signUpSignIn: 'signUpSignIn',\r\n signUp: 'signUp',\r\n editProfile: 'editProfile',\r\n resetPassword: 'resetPassword'\r\n}\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\nexport * from './b2c';\r\nexport * from './consts';\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\n//App\r\nimport { getLogger } from '../core/logging/logger';\r\n\r\nexport const MSALStorageKeys = {\r\n //LocalStorage\r\n redirectTo: 'msal.app.redirectTo'\r\n\r\n //SessionStorage\r\n}\r\n\r\nexport class MSALStorage {\r\n private static hasRedirectValue(value: string | null | undefined) {\r\n return value && value !== 'null' && value !== 'undefined';\r\n }\r\n\r\n public static saveRedirectState(redirectTo: string | null | undefined, calledBy: string) {\r\n if (!MSALStorage.hasRedirectValue(redirectTo)) {\r\n MSALStorage.clearRedirectState(calledBy);\r\n return;\r\n }\r\n\r\n if (redirectTo.indexOf('iam') >= 0) {\r\n MSALStorage.clearRedirectState(calledBy);\r\n return;\r\n }\r\n\r\n localStorage.setItem(MSALStorageKeys.redirectTo, redirectTo);\r\n getLogger().info(`MSAL. redirect state saved: ${redirectTo}. Called by: ${calledBy}`);\r\n }\r\n\r\n public static getRedirectState(calledBy: string) {\r\n let redirectTo = localStorage.getItem(MSALStorageKeys.redirectTo);\r\n getLogger().info(`MSAL. redirect state requested: ${redirectTo}. Called by: ${calledBy}`);\r\n\r\n if (!MSALStorage.hasRedirectValue(redirectTo)) {\r\n MSALStorage.clearRedirectState(calledBy);\r\n return null;\r\n }\r\n\r\n return redirectTo;\r\n }\r\n\r\n public static clearRedirectState(calledBy: string) {\r\n localStorage.removeItem(MSALStorageKeys.redirectTo);\r\n getLogger().info(`MSAL. redirect state cleared. Called by: ${calledBy}`);\r\n }\r\n}\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\nimport { MSALStorage } from './storage';\r\n\r\nexport class MSALRedirect {\r\n public static handle(router, calledBy: string) {\r\n let redirectTo = MSALStorage.getRedirectState(calledBy);\r\n\r\n if (!redirectTo) {\r\n return;\r\n }\r\n\r\n MSALStorage.clearRedirectState(calledBy);\r\n router.navigate([redirectTo]);\r\n }\r\n}\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\n//Node\r\nimport { BrowserUtils } from '@azure/msal-browser';\r\n\r\n//App\r\nimport { MSALApiConfig, MSALB2CConfig } from './consts';\r\n\r\nexport class MSALUtils {\r\n public static isB2C() {\r\n if (MSALB2CConfig) {\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n // Don't perform initial navigation in iframes or popups\r\n public static initialNavigation() {\r\n return !BrowserUtils.isInIframe() && !BrowserUtils.isInPopup() ? 'enabledNonBlocking' : 'disabled';\r\n }\r\n\r\n public static getApiScopes() : any[] {\r\n let scopes = []; \r\n\r\n if (MSALApiConfig) {\r\n let api = MSALApiConfig;\r\n for (const scope of api.scopes) {\r\n scopes.push(scope);\r\n }\r\n }\r\n \r\n return scopes;\r\n }\r\n}\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\n//App\r\nimport { IQueryParam } from '../../core/models/qs';\r\n\r\nexport interface IPayPalConfig {\r\n /**\r\n * Currency - Defaults to USD if not provided\r\n */\r\n currency?: string;\r\n\r\n /**\r\n * Use when creating order on client\r\n */\r\n createOrderOnClient?: (data: any) => ICreateOrderRequest;\r\n\r\n /**\r\n * Use when creating subscription on client\r\n */\r\n createSubscriptionOnClient?: (data: any) => ICreateSubscriptionRequest;\r\n\r\n /**\r\n * Use for creating orders on server. PayPal expects you to return 'orderId' in this method\r\n */\r\n createOrderOnServer?: (data: any) => Promise<string>;\r\n\r\n /**\r\n * Advanced configuration\r\n */\r\n advanced?: IAdvancedConfiguration;\r\n\r\n /**\r\n * Client id\r\n */\r\n clientId: string;\r\n\r\n /**\r\n * Shipping callback\r\n * see https://developer.paypal.com/docs/checkout/integration-features/shipping-callback/\r\n */\r\n onShippingChange?: OnShippingChangeCallback;\r\n\r\n /**\r\n * Called when 'onApprove' event occurs\r\n */\r\n onApprove?: (data: IOnApproveCallbackData, actions: any) => void;\r\n\r\n /**\r\n * Called when authorization on client succeeds\r\n */\r\n onClientAuthorization?: (authorization: IClientAuthorizeCallbackData) => void;\r\n\r\n /**\r\n * Implement for authorizing on server side\r\n */\r\n authorizeOnServer?: (\r\n data: IOnApproveCallbackData,\r\n actions: any\r\n ) => Promise<any>;\r\n\r\n /**\r\n * Button style configuration\r\n */\r\n style?: IPayPalButtonStyle;\r\n\r\n /**\r\n * Error handler\r\n */\r\n onError?: (err: any) => void;\r\n\r\n /**\r\n * Click handler\r\n */\r\n onClick?: (data: any, actions: IOnClickCallbackActions) => void;\r\n\r\n /**\r\n * Cancel handler\r\n */\r\n onCancel?: (data: ICancelCallbackData, actions: any) => void;\r\n\r\n /**\r\n * Init handler.\r\n * can be used for validation, see: https://developer.paypal.com/docs/checkout/integration-features/validation/#\r\n */\r\n onInit?: (data: IInitCallbackData, actions: IOnInitCallbackActions) => void;\r\n\r\n /**\r\n * Create subscription handler\r\n * https://developer.paypal.com/docs/subscriptions/integrate/\r\n *\r\n * Note: the vault property in the advanced configuration also has to be set to true\r\n */\r\n createSubscription?: (data: any) => ICreateSubscriptionRequest;\r\n\r\n /**\r\n * Vault - must be set to true when creating subscriptions\r\n */\r\n vault?: TrueFalse;\r\n intent?: OrderIntent;\r\n\r\n /*\r\n Select type of funding source, use it when you need set type of button you want to see, see: https://developer.paypal.com/docs/checkout/standard/customize/standalone-buttons/\r\n */\r\n fundingSource?: \"PAYPAL\" | \"CARD\" | \"PAYLATER\" | \"CREDIT\" | \"VENMO\";\r\n\r\n debug?: boolean;\r\n}\r\n\r\nexport type TrueFalse = \"true\" | \"false\";\r\n\r\nexport interface IPayPalUrlConfig {\r\n clientId: string;\r\n currency?: string;\r\n funding?: boolean;\r\n commit?: TrueFalse;\r\n vault?: TrueFalse;\r\n intent?: OrderIntent;\r\n locale?: string;\r\n extraParams?: IQueryParam[];\r\n debug?:boolean;\r\n}\r\n\r\nexport interface IOrderDetails {\r\n create_time: string;\r\n update_time: string;\r\n id: string;\r\n intent: OrderIntent;\r\n payer: IPayer;\r\n status: OrderStatus;\r\n links: ILinkDescription[];\r\n purchase_units: IPurchaseUnit[];\r\n}\r\n\r\nexport interface IClientAuthorizeCallbackData extends IOrderDetails {\r\n links: ILinkDescription[];\r\n}\r\n\r\nexport interface ILinkDescription {\r\n href: string;\r\n rel: String;\r\n method?: LinkMethod;\r\n}\r\n\r\nexport type OnShippingChangeCallback = (\r\n data: IOnShippingChangeData,\r\n actions: IOnShippingChangeActions\r\n) => any;\r\n\r\nexport interface IOnShippingChangeData {\r\n paymentToken: string;\r\n shipping_address: any;\r\n selected_shipping_method?: any;\r\n}\r\n\r\nexport interface IOnShippingChangeActions {\r\n resolve: () => any;\r\n reject: () => any;\r\n patch: () => any;\r\n}\r\n\r\nexport type LinkMethod =\r\n | \"GET\"\r\n | \"POST\"\r\n | \"PUT\"\r\n | \"DELETE\"\r\n | \"HEAD\"\r\n | \"CONNECT\"\r\n | \"OPTIONS\"\r\n | \"PATCH\";\r\n\r\nexport interface IAdvancedConfiguration {\r\n commit?: TrueFalse;\r\n locale?: string;\r\n extraQueryParams?: IQueryParam[];\r\n}\r\n\r\nexport interface IOnApproveCallbackData {\r\n orderID: string;\r\n payerID: string;\r\n subscriptionID: string;\r\n}\r\n\r\nexport interface ICreateOrderCallbackActions {\r\n order: {\r\n create: (order: ICreateOrderRequest) => Promise<any>;\r\n };\r\n}\r\n\r\nexport interface ICancelCallbackData {\r\n orderID: string;\r\n}\r\n\r\nexport interface IOnApproveCallbackActions {\r\n redirect: () => void;\r\n restart: () => void;\r\n order: {\r\n authorize: () => Promise<any>;\r\n capture: () => Promise<any>;\r\n get: () => Promise<IOrderDetails>;\r\n patch: () => Promise<any>;\r\n };\r\n}\r\n\r\nexport interface IOnInitCallbackActions {\r\n enable: () => void;\r\n disable: () => void;\r\n}\r\n\r\nexport interface ICreateSubscriptionCallbackActions {\r\n subscription: {\r\n create: (subscription: ICreateSubscriptionRequest) => Promise<any>;\r\n revise: (\r\n subscriptionId: string,\r\n subscription: ICreateSubscriptionRequest\r\n ) => Promise<any>;\r\n };\r\n}\r\n\r\n// tslint:disable-next-line:no-empty-interface\r\nexport interface IInitCallbackData {}\r\n\r\n// tslint:disable-next-line:no-empty-interface\r\nexport interface ICreateSubscriptionCallbackData {}\r\n\r\nexport interface IOnClickCallbackActions {\r\n resolve: () => void;\r\n reject: () => void;\r\n}\r\n\r\nexport interface IPayPalButtonStyle {\r\n label?:\r\n | \"paypal\"\r\n | \"checkout\"\r\n | \"pay\"\r\n | \"installment\"\r\n | \"buynow\"\r\n | \"subscribe\";\r\n shape?: \"pill\" | \"rect\";\r\n color?: \"gold\" | \"blue\" | \"silver\" | \"white\" | \"black\";\r\n layout?: \"horizontal\" | \"vertical\";\r\n tagline?: boolean;\r\n height?: number;\r\n fundingicons?: boolean;\r\n}\r\n\r\nexport interface ICreateOrderRequest {\r\n intent: OrderIntent;\r\n purchase_units: IPurchaseUnit[];\r\n payer?: IPayer;\r\n application_context?: IApplicationContext;\r\n}\r\n\r\nexport interface ICreateSubscriptionRequest {\r\n plan_id: string;\r\n quantity?: number;\r\n custom_id: string;\r\n application_context?: IApplicationContext;\r\n}\r\n\r\nexport interface IPayer {\r\n name?: IPartyName;\r\n email_address?: string;\r\n payer_id?: string;\r\n birth_date?: string;\r\n tax_info?: ITaxInfo;\r\n address?: IAddressPortable;\r\n phone?: IPhone;\r\n}\r\n\r\nexport interface IApplicationContext {\r\n brand_name?: string;\r\n locale?: string;\r\n landing_page?: PaypalLandingPage;\r\n shipping_preference?: ShippingPreference;\r\n user_action?: PayPalUserAction;\r\n payment_method?: IPaymentMethod;\r\n return_url?: string;\r\n cancel_url?: string;\r\n}\r\n\r\nexport interface IPaymentMethod {\r\n payer_selected?: PayerSelected;\r\n payee_preferred?: PayeePreferred;\r\n}\r\n\r\nexport type PayeePreferred = \"UNRESTRICTED\" | \"IMMEDIATE_PAYMENT_REQUIRED\";\r\n\r\nexport type PayerSelected = \"PAYPAL_CREDIT\" | \"PAYPAL\";\r\n\r\nexport type PayPalUserAction = \"CONTINUE\" | \"PAY_NOW\";\r\n\r\nexport type ShippingPreference =\r\n | \"GET_FROM_FILE\"\r\n | \"NO_SHIPPING\"\r\n | \"SET_PROVIDED_ADDRESS\";\r\n\r\nexport type PaypalLandingPage = \"LOGIN\" | \"BILLING\";\r\n\r\nexport type OrderIntent = \"capture\" | \"authorize\" | \"subscription\" | \"tokenize\";\r\n\r\nexport type DisbursementMode = \"INSTANT\" | \"DELAYED\";\r\n\r\nexport type ItemCategory = \"DIGITAL_GOODS\" | \"PHYSICAL_GOODS\";\r\n\r\nexport type PhoneType = \"FAX\" | \"HOME\" | \"MOBILE\" | \"OTHER\" | \"PAGER\";\r\n\r\nexport type TaxIdType = \"BR_CPF\" | \"BR_CNPJ\";\r\n\r\nexport interface IPhone {\r\n phone_type?: PhoneType;\r\n phone_number?: IPhoneNumber;\r\n}\r\n\r\nexport interface ITaxInfo {\r\n tax_id: string;\r\n tax_id_type: TaxIdType;\r\n}\r\n\r\nexport interface IPhoneNumber {\r\n national_number: string;\r\n}\r\n\r\nexport interface IPurchaseUnit {\r\n amount: IUnitAmount;\r\n\r\n reference_id?: string;\r\n payee?: IPayee;\r\n payment_instruction?: IPaymentInstructions;\r\n description?: string;\r\n custom_id?: string;\r\n invoice_id?: string;\r\n soft_descriptor?: string;\r\n items: ITransactionItem[];\r\n shipping?: IShipping;\r\n}\r\n\r\nexport interface IPayee {\r\n email_address?: string;\r\n merchant_id?: string;\r\n}\r\n\r\nexport interface IPaymentInstructions {\r\n platform_fees?: IPlatformFee[];\r\n disbursement_mode?: DisbursementMode;\r\n}\r\n\r\nexport interface IPlatformFee {\r\n amount: IUnitAmount;\r\n payee?: IPayee;\r\n}\r\n\r\nexport interface ITransactionItem {\r\n name: string;\r\n unit_amount: IUnitAmount;\r\n quantity: string;\r\n\r\n description?: string;\r\n sku?: string;\r\n category?: ItemCategory;\r\n tax?: ITax;\r\n}\r\n\r\nexport interface ITax {\r\n currency_code: string;\r\n value: string;\r\n}\r\n\r\nexport interface IUnitAmount {\r\n currency_code: string;\r\n value: string;\r\n breakdown?: IUnitBreakdown;\r\n}\r\n\r\nexport interface IMoney {\r\n currency_code: string;\r\n value: string;\r\n}\r\n\r\nexport interface IUnitBreakdown {\r\n item_total?: IUnitAmount;\r\n shipping?: IUnitAmount;\r\n handling?: IUnitAmount;\r\n tax_total?: IUnitAmount;\r\n insurance?: IUnitAmount;\r\n shipping_discount?: IUnitAmount;\r\n discount?: IMoney;\r\n}\r\n\r\nexport interface IPartyName {\r\n prefix?: string;\r\n given_name?: string;\r\n surname?: string;\r\n middle_name?: string;\r\n suffix?: string;\r\n alternate_full_name?: string;\r\n full_name?: string;\r\n}\r\n\r\nexport interface IAddressPortable {\r\n country_code: string;\r\n\r\n address_line_1?: string;\r\n address_line_2?: string;\r\n admin_area_2?: string;\r\n admin_area_1?: string;\r\n postal_code?: string;\r\n}\r\n\r\nexport interface IShipping {\r\n name?: IPartyName;\r\n address?: IAddressPortable;\r\n}\r\n\r\nexport type OrderStatus =\r\n | \"APPROVED\"\r\n | \"SAVED\"\r\n | \"CREATED\"\r\n | \"VOIDED\"\r\n | \"COMPLETED\";\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\nexport class BillingUtils {\r\n private static readonly CURRENCY_SYMBOLS: Record<string, string> = {\r\n GBP: '£',\r\n EUR: '€',\r\n USD: '$',\r\n JPY: '¥',\r\n CAD: 'CA$',\r\n AUD: 'A$',\r\n };\r\n\r\n public static convert2AmountWithCurrency(amount: number | string, currency: string): string {\r\n if (!amount && amount !== 0) return '';\r\n\r\n const symbol = this.CURRENCY_SYMBOLS[currency.toUpperCase()];\r\n return symbol ? `${symbol}${amount}` : `${amount} ${currency}`;\r\n }\r\n}\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\nimport { AppSettings } from '../../../core/consts/app-settings';\r\n\r\nlet imageUploadUrl = AppSettings?.api?.url + AppSettings?.api?.imageUploadPath; \r\n\r\nexport const DefaultEditorOptions: Object = {\r\n placeholderText: \"Edit Your Content Here\",\r\n charCounterCount: true,\r\n heightMin: 100,\r\n toolbarInline: false,\r\n\r\n toolbarButtons: {\r\n moreText: {\r\n buttons: [\r\n \"bold\",\r\n \"italic\",\r\n \"underline\",\r\n \"strikeThrough\",\r\n \"subscript\",\r\n \"superscript\",\r\n \"fontFamily\",\r\n \"fontSize\",\r\n \"textColor\",\r\n \"backgroundColor\",\r\n \"inlineClass\",\r\n \"inlineStyle\",\r\n ],\r\n },\r\n moreParagraph: {\r\n buttons: [\r\n \"alignLeft\",\r\n \"alignCenter\",\r\n \"formatOLSimple\",\r\n \"alignRight\",\r\n \"alignJustify\",\r\n \"formatOL\",\r\n \"formatUL\",\r\n \"paragraphFormat\",\r\n \"paragraphStyle\",\r\n \"lineHeight\",\r\n \"outdent\",\r\n \"indent\",\r\n \"quote\",\r\n ],\r\n },\r\n moreRich: {\r\n buttons: [\r\n \"insertLink\",\r\n \"insertImage\",\r\n \"insertTable\",\r\n \"emoticons\",\r\n \"fontAwesome\",\r\n \"specialCharacters\",\r\n \"embedly\",\r\n ],\r\n },\r\n moreMisc: {\r\n buttons: [\r\n \"selectAll\",\r\n \"clearFormatting\",\r\n \"html\",\r\n \"undo\",\r\n \"redo\",\r\n \"fullscreen\",\r\n ],\r\n align: \"right\",\r\n }\r\n },\r\n\r\n /*\r\n Upload:\r\n https://www.froala.com/wysiwyg-editor/docs/concepts/image/upload\r\n */\r\n imageUploadURL: imageUploadUrl,\r\n imageAllowedTypes: [\"jpeg\", \"jpg\", \"png\"],\r\n imageUploadParams: { uploadType: \"\", uploadParentId: \"\" }\r\n};\r\n","/*!\r\n * @osovitny/core\r\n * Copyright (c) 2016-2026 Osovitny\r\n * SPDX-License-Identifier: MIT\r\n */\r\n\r\nexport const Spinkit = {\r\n skChasingDots: 'sk-chasing-dots',\r\n skCubeGrid: 'sk-cube-grid',\r\n skDoubleBounce: 'sk-double-bounce',\r\n skRotatingPlane: 'sk-rotationg-plane',\r\n skSpinnerPulse: 'sk-spinner-pulse',\r\n skThreeBounce: 'sk-three-bounce',\r\n skWanderingCubes: 'sk-wandering-cubes',\r\n skWave: 'sk-wave',\r\n skLine: 'sk-line-material'\r\n};\r\n","/*\r\n * Public API of @osovitny/core\r\n */\r\n\r\n//Core — consts\r\nexport * from './lib/core/consts/app-settings';\r\nexport * from './lib/core/consts/assets';\r\nexport * from './lib/core/consts/formats';\r\nexport * from './lib/core/consts/ga';\r\nexport * from './lib/core/consts/storageKeys';\r\n\r\n//Core — converts\r\nexport * from './lib/core/converts/convert';\r\nexport * from './lib/core/converts/dateConvert';\r\nexport * from './lib/core/converts/xmlFormatter';\r\n\r\n//Core — enums\r\nexport * from './lib/core/enums';\r\n\r\n//Core — guards\r\nexport * from './lib/core/guards/once-import.guard';\r\n\r\n//Core — localization\r\nexport * from './lib/core/localization/localizer';\r\n\r\n//Core — logging\r\nexport * from './lib/core/logging/logger';\r\n\r\n//Core — models\r\nexport * from './lib/core/models/qs';\r\n\r\n//Core — notifications\r\nexport * from './lib/core/notifications/alerts';\r\nexport * from './lib/core/notifications/interfaces/notification';\r\n\r\n//Core — performance\r\nexport * from './lib/core/performance/stopwatch';\r\n\r\n//Core — root\r\nexport * from './lib/core/dom';\r\nexport * from './lib/core/guid';\r\nexport * from './lib/core/is';\r\nexport * from './lib/core/subs';\r\n\r\n//Core — utils\r\nexport * from './lib/core/utils/qsutils';\r\nexport * from './lib/core/utils/utils';\r\n\r\n//IAM (msal-browser layer)\r\nexport * from './lib/iam/b2c';\r\nexport * from './lib/iam/consts';\r\nexport * from './lib/iam/redirect';\r\nexport * from './lib/iam/storage';\r\nexport * from './lib/iam/utils';\r\n\r\n//Billing\r\nexport * from './lib/billing/models/paypal-models';\r\nexport * from './lib/billing/utils';\r\n\r\n//UI data blobs\r\nexport * from './lib/ui/components/html-editor/defaultoptions';\r\nexport * from './lib/ui/components/spinners/pagespinner/spinkits';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["uuidv4"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@osovitny/core",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.1.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"peerDependencies": {
|
|
6
6
|
"rxjs": "~7.8.2",
|
|
7
7
|
"date-fns": "4.4.0",
|
|
8
|
-
"@azure/msal-browser": "
|
|
8
|
+
"@azure/msal-browser": "5.17.1",
|
|
9
9
|
"sweetalert2": "11.26.25",
|
|
10
|
-
"uuid": "14.0.
|
|
11
|
-
"js-beautify": "
|
|
10
|
+
"uuid": "14.0.1",
|
|
11
|
+
"js-beautify": "2.0.3"
|
|
12
12
|
},
|
|
13
13
|
"sideEffects": false,
|
|
14
14
|
"module": "fesm2022/osovitny-core.mjs",
|