@everymatrix/player-lugas-limit 1.76.6 → 1.76.8
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/dist/cjs/{index-bf3197ee.js → index-2079b2a6.js} +4 -1
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/player-lugas-limit.cjs.entry.js +53 -13
- package/dist/cjs/player-lugas-limit.cjs.js +2 -2
- package/dist/collection/components/player-lugas-limit/player-lugas-limit.css +56 -1
- package/dist/collection/components/player-lugas-limit/player-lugas-limit.js +64 -4
- package/dist/collection/static/arrow.svg +1 -0
- package/dist/collection/static/document.svg +1 -0
- package/dist/collection/static/success.svg +1 -0
- package/dist/collection/utils/locale.utils.js +16 -7
- package/dist/esm/{index-c89cfec9.js → index-43ec4fd3.js} +4 -1
- package/dist/esm/loader.js +3 -3
- package/dist/esm/player-lugas-limit.entry.js +53 -13
- package/dist/esm/player-lugas-limit.js +3 -3
- package/dist/player-lugas-limit/{index-c89cfec9.js → index-43ec4fd3.js} +1 -1
- package/dist/player-lugas-limit/player-lugas-limit.entry.js +1 -1
- package/dist/player-lugas-limit/player-lugas-limit.esm.js +1 -1
- package/dist/types/Users/adrian.pripon/Documents/Work/widgets-monorepo/packages/stencil/player-lugas-limit/.stencil/packages/stencil/player-lugas-limit/stencil.config.d.ts +2 -0
- package/dist/types/Users/adrian.pripon/Documents/Work/widgets-monorepo/packages/stencil/player-lugas-limit/.stencil/packages/stencil/player-lugas-limit/stencil.config.dev.d.ts +2 -0
- package/dist/types/components/player-lugas-limit/player-lugas-limit.d.ts +5 -0
- package/dist/types/components.d.ts +4 -0
- package/package.json +1 -1
- package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/player-lugas-limit/.stencil/packages/stencil/player-lugas-limit/stencil.config.d.ts +0 -2
- package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/player-lugas-limit/.stencil/packages/stencil/player-lugas-limit/stencil.config.dev.d.ts +0 -2
- /package/dist/types/{builds/emfe-widgets → Users/adrian.pripon/Documents/Work}/widgets-monorepo/packages/stencil/player-lugas-limit/.stencil/libs/common/src/storybook/storybook-utils.d.ts +0 -0
- /package/dist/types/{builds/emfe-widgets → Users/adrian.pripon/Documents/Work}/widgets-monorepo/packages/stencil/player-lugas-limit/.stencil/packages/stencil/player-lugas-limit/storybook/main.d.ts +0 -0
- /package/dist/types/{builds/emfe-widgets → Users/adrian.pripon/Documents/Work}/widgets-monorepo/packages/stencil/player-lugas-limit/.stencil/packages/stencil/player-lugas-limit/storybook/preview.d.ts +0 -0
- /package/dist/types/{builds/emfe-widgets → Users/adrian.pripon/Documents/Work}/widgets-monorepo/packages/stencil/player-lugas-limit/.stencil/tools/plugins/index.d.ts +0 -0
- /package/dist/types/{builds/emfe-widgets → Users/adrian.pripon/Documents/Work}/widgets-monorepo/packages/stencil/player-lugas-limit/.stencil/tools/plugins/stencil-clean-deps-plugin.d.ts +0 -0
- /package/dist/types/{builds/emfe-widgets → Users/adrian.pripon/Documents/Work}/widgets-monorepo/packages/stencil/player-lugas-limit/.stencil/tools/plugins/vite-chunk-plugin.d.ts +0 -0
- /package/dist/types/{builds/emfe-widgets → Users/adrian.pripon/Documents/Work}/widgets-monorepo/packages/stencil/player-lugas-limit/.stencil/tools/plugins/vite-clean-deps-plugin.d.ts +0 -0
|
@@ -21,7 +21,7 @@ function _interopNamespace(e) {
|
|
|
21
21
|
}
|
|
22
22
|
|
|
23
23
|
const NAMESPACE = 'player-lugas-limit';
|
|
24
|
-
const BUILD = /* player-lugas-limit */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: true, cmpDidRender: false, cmpDidUnload: false, cmpDidUpdate: false, cmpShouldUpdate: false, cmpWillLoad: true, cmpWillRender: false, cmpWillUpdate: false, connectedCallback: false, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: true, element: false, event: true, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: false, hasRenderFn: true, hostListener: false, hostListenerTarget: false, hostListenerTargetBody: false, hostListenerTargetDocument: false, hostListenerTargetParent: false, hostListenerTargetWindow: false, hotModuleReplacement: false, hydrateClientSide: false, hydrateServerSide: false, hydratedAttribute: false, hydratedClass: true, hydratedSelectorName: "hydrated", initializeNextTick: false, invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: true, lifecycleDOMEvents: false, member: true, method: false, mode: false, observeAttribute: true, profile: false, prop: true, propBoolean:
|
|
24
|
+
const BUILD = /* player-lugas-limit */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: true, cmpDidRender: false, cmpDidUnload: false, cmpDidUpdate: false, cmpShouldUpdate: false, cmpWillLoad: true, cmpWillRender: false, cmpWillUpdate: false, connectedCallback: false, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: true, element: false, event: true, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: false, hasRenderFn: true, hostListener: false, hostListenerTarget: false, hostListenerTargetBody: false, hostListenerTargetDocument: false, hostListenerTargetParent: false, hostListenerTargetWindow: false, hotModuleReplacement: false, hydrateClientSide: false, hydrateServerSide: false, hydratedAttribute: false, hydratedClass: true, hydratedSelectorName: "hydrated", initializeNextTick: false, invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: true, lifecycleDOMEvents: false, member: true, method: false, mode: false, observeAttribute: true, profile: false, prop: true, propBoolean: true, propMutable: false, propNumber: false, propString: true, reflect: true, scoped: false, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: false, shadowDom: true, slot: true, slotChildNodesFix: false, slotRelocation: false, state: true, style: true, svg: true, taskQueue: true, transformTagName: false, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: false, vdomKey: false, vdomListener: true, vdomPropOrAttr: true, vdomRef: true, vdomRender: true, vdomStyle: false, vdomText: true, vdomXlink: false, watchCallback: true };
|
|
25
25
|
|
|
26
26
|
/*
|
|
27
27
|
Stencil Client Platform v4.19.2 | MIT Licensed | https://stenciljs.com
|
|
@@ -287,6 +287,9 @@ var Host = {};
|
|
|
287
287
|
var isHost = (node) => node && node.$tag$ === Host;
|
|
288
288
|
var parsePropertyValue = (propValue, propType) => {
|
|
289
289
|
if (propValue != null && !isComplexType(propValue)) {
|
|
290
|
+
if (propType & 4 /* Boolean */) {
|
|
291
|
+
return propValue === "false" ? false : propValue === "" || !!propValue;
|
|
292
|
+
}
|
|
290
293
|
if (propType & 1 /* String */) {
|
|
291
294
|
return String(propValue);
|
|
292
295
|
}
|
package/dist/cjs/loader.cjs.js
CHANGED
|
@@ -2,13 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
const index = require('./index-
|
|
5
|
+
const index = require('./index-2079b2a6.js');
|
|
6
6
|
const appGlobals = require('./app-globals-3a1e7e63.js');
|
|
7
7
|
|
|
8
8
|
const defineCustomElements = async (win, options) => {
|
|
9
9
|
if (typeof window === 'undefined') return undefined;
|
|
10
10
|
await appGlobals.globalScripts();
|
|
11
|
-
return index.bootstrapLazy([["player-lugas-limit.cjs",[[1,"player-lugas-limit",{"userId":[513,"user-id"],"session":[513],"endpoint":[513],"currency":[513],"flow":[513],"amount":[513],"lang":[513],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"mbSource":[513,"mb-source"],"translationUrl":[513,"translation-url"],"hasValidation":[32],"kycStep":[32],"isLoading":[32],"regularDepositLimitAmount":[32],"isSubmitted":[32],"isUseExistingLimitOptionActive":[32],"selectedPredefinedAmount":[32],"errorMessageOnInitialization":[32],"errorMessageOnSubmit":[32],"errorMessageOnInput":[32],"hasLugasError":[32],"showCustomAmount":[32],"newAmount":[32]},null,{"translationUrl":["handleNewTranslations"],"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"]}]]]], options);
|
|
11
|
+
return index.bootstrapLazy([["player-lugas-limit.cjs",[[1,"player-lugas-limit",{"userId":[513,"user-id"],"session":[513],"endpoint":[513],"currency":[513],"flow":[513],"amount":[513],"lang":[513],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"mbSource":[513,"mb-source"],"translationUrl":[513,"translation-url"],"showExistingLimit":[516,"show-existing-limit"],"hasValidation":[32],"kycStep":[32],"isLoading":[32],"regularDepositLimitAmount":[32],"isSubmitted":[32],"isUseExistingLimitOptionActive":[32],"selectedPredefinedAmount":[32],"errorMessageOnInitialization":[32],"errorMessageOnSubmit":[32],"errorMessageOnInput":[32],"hasLugasError":[32],"showCustomAmount":[32],"newAmount":[32]},null,{"translationUrl":["handleNewTranslations"],"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"]}]]]], options);
|
|
12
12
|
};
|
|
13
13
|
|
|
14
14
|
exports.setNonce = index.setNonce;
|
|
@@ -2,12 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
const index = require('./index-
|
|
5
|
+
const index = require('./index-2079b2a6.js');
|
|
6
6
|
|
|
7
7
|
const DEFAULT_LANGUAGE = 'de';
|
|
8
8
|
let TRANSLATIONS = {
|
|
9
9
|
en: {
|
|
10
10
|
LugasSetLimitDialogTitle: 'Monthly Central Deposit Limit',
|
|
11
|
+
LugasSetLimitDialogTitle2: 'Responsible Gaming',
|
|
11
12
|
LugasInfoBox: 'The central limit is your monthly deposit limit for all licensed websites in Germany. Note that your limit and deposit details may vary if changed on other sites.',
|
|
12
13
|
ChooseLimit: 'Choose Limit',
|
|
13
14
|
ButtonCustomValue: 'Other',
|
|
@@ -26,18 +27,23 @@ let TRANSLATIONS = {
|
|
|
26
27
|
loading: 'Loading, please wait ...',
|
|
27
28
|
error: 'It was an error while trying to fetch the data',
|
|
28
29
|
kyc1: 'All deposit limit changes must be reported to LUGAS in accordance with regulatory requirements. Please note that decreases in the limit will take effect immediately, while increases will only come into effect after 8 days at the latest.',
|
|
29
|
-
kyc2: 'We
|
|
30
|
+
kyc2: 'We could not apply the desired LUGAS limit. To increase the limit, one of the following methods can be used. In the meantime, the following value will be set for the limit: {amount} {currency}',
|
|
30
31
|
kyc3: 'We have transmitted your desired limit to Lugas Please be aware that the limit will only come into effect after 8 days at the latest.',
|
|
31
|
-
kycThanks: '
|
|
32
|
+
kycThanks: 'THANK YOU!',
|
|
33
|
+
kycSuccess: "Successful",
|
|
32
34
|
kycSure: 'Are you sure?',
|
|
33
35
|
setNewLimit: 'SET NEW LIMIT',
|
|
34
36
|
keepExistingLimit: 'KEEP EXISTING LIMIT',
|
|
35
37
|
Close: 'CLOSE',
|
|
36
|
-
UploadDocuments:
|
|
38
|
+
UploadDocuments: "Upload documents",
|
|
39
|
+
UploadDocumentsSubTitle: "Last payslip as well as a current bank statement",
|
|
40
|
+
BankLogin: 'Online bank login',
|
|
41
|
+
BankLoginSubTitle: "Log into your bank account to verify your details",
|
|
37
42
|
LugasF1002Error: 'We were unable to set your cross-provider deposit limit at LUGAS due to a technical error. Please contact our support team and provide error code F1002. We\'ll be happy to assist you in resolving this issue.'
|
|
38
43
|
},
|
|
39
44
|
de: {
|
|
40
45
|
LugasSetLimitDialogTitle: 'Monatliches zentrales Einzahlungslimit',
|
|
46
|
+
LugasSetLimitDialogTitle2: 'Spielerschutz',
|
|
41
47
|
LugasInfoBox: 'Das zentrale Limit ist Ihr monatliches Einzahlungslimit für alle lizenzierten Websites in Deutschland. Beachten Sie, dass sich Ihr Limit und der verbleibende Betrag ändern können, wenn Sie auf anderen Websites Einzahlungen vornehmen oder Ihr Limit anpassen.',
|
|
42
48
|
ChooseLimit: 'Choose Limit',
|
|
43
49
|
ButtonCustomValue: 'Eigener',
|
|
@@ -56,15 +62,18 @@ let TRANSLATIONS = {
|
|
|
56
62
|
loading: "Lade, bitte warten ...",
|
|
57
63
|
error: "Beim Laden der Daten ist ein Fehler aufgetreten.",
|
|
58
64
|
kyc1: "Alle Änderungen des Einzahlungslimits müssen gemäß den gesetzlichen Anforderungen an LUGAS gemeldet werden. Bitte beachten Sie, dass eine Senkung des Limits sofort wirksam wird, während eine Erhöhung spätestens nach 8 Tagen in Kraft tritt.",
|
|
59
|
-
kyc2: "
|
|
65
|
+
kyc2: "Das gewünschte LUGAS-Limit konnte nicht gesetzt werden. Um das Limit zu erhöhen, kann eine der folgenden Methoden verwendet werden. In der Zwischenzeit wird für das Limit folgender Wert eingemeldet: {amount} {currency}",
|
|
60
66
|
kyc3: "Wir haben Ihr gewünschtes Limit an LUGAS übermittelt. Bitte beachten Sie, dass das Limit spätestens nach 8 Tagen in Kraft tritt.",
|
|
61
|
-
kycThanks: "
|
|
67
|
+
kycThanks: "DANKE SCHÖN!",
|
|
68
|
+
kycSuccess: "Successful",
|
|
62
69
|
kycSure: "Sind Sie sicher?",
|
|
63
70
|
setNewLimit: "NEUES LIMIT FESTLEGEN",
|
|
64
71
|
keepExistingLimit: "AKTUELLES LIMIT BEIBEHALTEN",
|
|
65
72
|
Close: "SCHLIESSEN",
|
|
66
|
-
UploadDocuments: "
|
|
67
|
-
|
|
73
|
+
UploadDocuments: "Dokumente hochladen",
|
|
74
|
+
UploadDocumentsSubTitle: "Letzte Gehaltsabrechnung sowie ein aktueller Kontoauszug",
|
|
75
|
+
BankLogin: 'Online-Banking-Login',
|
|
76
|
+
BankLoginSubTitle: "Melden Sie sich bei Ihrem Bankkonto an, um Ihre Daten zu überprüfen"
|
|
68
77
|
},
|
|
69
78
|
};
|
|
70
79
|
const getTranslations = (url) => {
|
|
@@ -159,13 +168,20 @@ function setStreamStyling(stylingContainer, domain, subscription) {
|
|
|
159
168
|
}
|
|
160
169
|
}
|
|
161
170
|
|
|
162
|
-
const playerLugasLimitCss = "@import url(\"https://fonts.googleapis.com/css2?family=Roboto:wght@100&display=swap\");\n:host {\n font-family: \"Roboto\", sans-serif;\n}\n\n.ModalContainer {\n position: absolute;\n top: 0;\n left: 0;\n width: 100vw;\n height: 100vh;\n background-color: var(--emw--color-black-transparency-50, rgba(0, 0, 0, 0.5));\n display: flex;\n justify-content: center;\n align-items: center;\n font-size: var(--emw--font-size-small, 12px);\n container-type: inline-size;\n}\n.ModalContainer hr {\n border: 1px solid var(--emw--color-black-transparency-10, rgba(0, 0, 0, 0.1));\n margin: 10px 0px;\n}\n.ModalContainer p {\n margin: 0;\n}\n.ModalContainer button {\n width: 100%;\n border: 1px solid var(--emw--color-gray-100, #E8E9EB);\n padding: 10px 0;\n cursor: pointer;\n width: 100%;\n border-radius: var(--emw--border-radius-small, 4px);\n}\n.ModalContainer button.PrimaryButton {\n background: var(--emw--color-primary, #6BB816);\n border: none;\n font-weight: 500;\n}\n.ModalContainer button.PrimaryButton:not(:disabled) {\n color: var(--emw--color-white, #FFF);\n}\n.ModalContainer button.PrimaryButton:disabled {\n cursor: default;\n}\n.ModalContainer .Container {\n position: fixed;\n top: 30vh;\n width: 320px;\n background: var(--emw--color-white, #FFF);\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n border-radius: 4px;\n transform: scale(1.1);\n}\n.ModalContainer .ModalHeader {\n display: flex;\n justify-content: space-between;\n align-items: center;\n background-color: var(--emw--color-gray-50, #F7F8FA);\n padding: 12px;\n}\n.ModalContainer .ModalHeader h2 {\n font-weight: bold;\n font-size: var(--emw--font-size-small, 12px);\n margin: 0;\n}\n.ModalContainer .ModalBody {\n background: var(--emw--color-white, #FFF);\n padding: 12px;\n container-type: inline-size;\n border-radius: 4px;\n}\n.ModalContainer .ModalBody .ErrorContainer {\n display: flex;\n align-items: center;\n color: var(--emw--color-red-100, #E10014);\n border-bottom: 1px solid var(--emw--color-gray-100, #E8E9EB);\n margin: -12px;\n padding: 12px;\n margin-bottom: 12px;\n font-weight: bold;\n position: relative;\n background: linear-gradient(180deg, var(--emw--color-gray-100, #E8E9EB) 0%, rgba(255, 255, 255, 0.47) 30%);\n}\n.ModalContainer .ModalBody .DismissError {\n position: absolute;\n right: 12px;\n cursor: pointer;\n}\n.ModalContainer .ModalBody .ErrorParagraph {\n display: flex;\n align-items: center;\n}\n.ModalContainer .ModalBody .ErrorIcon {\n background: linear-gradient(180deg, var(--emw--color-red-100, #E10014) 0%, var(--emw--color-red-150, #D60080) 100%);\n text-align: center;\n width: 16px;\n height: 16px;\n border-radius: 50%;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n margin-right: 6px;\n flex-shrink: 0;\n}\n.ModalContainer .ModalBody .ErrorIcon svg {\n width: 6px;\n height: 6px;\n}\n.ModalContainer .ModalBody .ErrorIcon svg path {\n fill: var(--emw--color-white, #FFF);\n}\n.ModalContainer .ModalBody .ChooseLimitLabel {\n text-transform: uppercase;\n}\n.ModalContainer .ModalBody .PredefinedAmounts {\n display: flex;\n justify-content: space-between;\n}\n.ModalContainer .ModalBody .PredefinedAmounts button {\n background: none;\n margin: -1px 0 0 -1px;\n color: var(--emw--color-gray-150, #808080);\n}\n.ModalContainer .ModalBody .PredefinedAmounts button.Active {\n font-weight: bold;\n background: var(--emw--color-gray-50, #F7F8FA);\n color: var(--emw--color-gray-200, #323233);\n}\n.ModalContainer .ModalBody .PredefinedAmounts button:first-child {\n border-radius: 4px 0 0 4px;\n}\n.ModalContainer .ModalBody .PredefinedAmounts button:last-child {\n border-radius: 0 4px 4px 0;\n}\n.ModalContainer .ModalBody .CustomAmountInput {\n width: 100%;\n padding: 10px;\n border: 1px solid var(--emw--color-gray-100, #E8E9EB);\n border-radius: 4px;\n box-sizing: border-box;\n margin-bottom: 6px;\n color: var(--emw--color-gray-200, #323233);\n font-weight: bold;\n}\n.ModalContainer .ModalBody .CustomAmountInput.InvalidInput {\n border: 1px solid var(--emw--color-red, #FF0000);\n}\n.ModalContainer .ModalBody .InvalidParagraph {\n font-size: var(--emw--font-size-small, 12px);\n color: var(--emw--color-red, #FF0000);\n}\n.ModalContainer .ModalBody .SetLimitBtn {\n margin-top: 10px;\n}\n.ModalContainer .ValidatorContainer {\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n}\n.ModalContainer .Paragraphs:not(:last-child) {\n margin-bottom: 20px;\n}\n.ModalContainer .LimitAmountWrapper {\n display: flex;\n flex-direction: column;\n gap: 10px;\n position: relative;\n}\n\n.ModalFooter {\n padding-top: 12px;\n margin: 5px 0px;\n}\n\n.Link {\n color: inherit;\n text-decoration: underline;\n cursor: pointer;\n}\n.Link.Inactive {\n cursor: default;\n color: var(--emw--color-gray-150, #808080);\n}\n\n.ContainerButtons {\n display: flex;\n justify-content: space-around;\n gap: 10px;\n padding-top: 5px;\n}\n.ContainerButtons .FirstButton {\n background-color: var(--emw--color-white, #FFF);\n font-weight: bold;\n color: var(--emw--button-color, #002554);\n font-size: var(--emw--font-size-small, 10px);\n border: 2.5px solid var(--emw--button-border-color, #DEE2E6);\n width: 100%;\n cursor: pointer;\n}\n.ContainerButtons .SecondButton {\n background-color: var(--emw--color-primary, #6BB816);\n border: none;\n cursor: pointer;\n font-weight: bold;\n font-size: var(--emw--font-size-small, 10px);\n color: var(--emw--color-white, #FFF);\n width: 100%;\n}\n.ContainerButtons button {\n width: 240px;\n height: 30px;\n}\n\ninput {\n /* Firefox */\n -moz-appearance: textfield;\n /* Chrome, Safari, Edge, Opera */\n}\ninput::-webkit-outer-spin-button, input::-webkit-inner-spin-button {\n -webkit-appearance: none;\n margin: 0;\n}\n\n@container (max-width: 1300px) {\n .ModalContainer .Container {\n width: 50%;\n }\n}\n@container (max-width: 800px) {\n .ModalContainer .Container {\n width: 70%;\n }\n}\n.LoadingWrapper {\n width: 100%;\n height: 100%;\n background: var(--emw--color-white-transparency-80, rgba(255, 255, 255, 0.8));\n position: absolute;\n display: flex;\n justify-content: center;\n align-items: center;\n}\n\n.spinner {\n animation: rotate 2s linear infinite;\n z-index: 2;\n width: 30px;\n height: 30px;\n}\n.spinner .path {\n stroke: var(--emw--color-primary, #6BB816);\n stroke-linecap: round;\n animation: dash 1.5s ease-in-out infinite;\n}\n\n@keyframes rotate {\n 100% {\n transform: rotate(360deg);\n }\n}\n@keyframes dash {\n 0% {\n stroke-dasharray: 1, 150;\n stroke-dashoffset: 0;\n }\n 50% {\n stroke-dasharray: 90, 150;\n stroke-dashoffset: -35;\n }\n 100% {\n stroke-dasharray: 90, 150;\n stroke-dashoffset: -124;\n }\n}";
|
|
171
|
+
const documentSvg = 'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMTUxIiBoZWlnaHQ9IjE0MCIgZmlsbD0ibm9uZSI+PHBhdGggZmlsbD0idXJsKCNhKSIgZD0iTTU1LjM2NCAxMTAuNzk5YzMwLjU3NyAwIDU1LjM2NS0yNC44MDMgNTUuMzY1LTU1LjRDMTEwLjcyOSAyNC44MDMgODUuOTQxIDAgNTUuMzY1IDAgMjQuNzg3IDAgMCAyNC44MDMgMCA1NS40YzAgMzAuNTk2IDI0Ljc4OCA1NS4zOTkgNTUuMzY0IDU1LjM5OVoiLz48cGF0aCBmaWxsPSJ1cmwoI2IpIiBkPSJNMjAuMTIyIDk4LjY0N0gyMDV2NTEuMzg3SDIwLjEyMnoiIG9wYWNpdHk9Ii40Ii8+PHBhdGggZmlsbD0iI2ZmZiIgZD0ibTQ2Ljc0OCAxOS42NC0zMy43MiA1MS44IDQ2LjUyOCAzMS42MTEgNDAuOTI2LTYxLjczTDY2Ljk3IDE3LjkwNmwtMjAuMjIyIDEuNzM1WiIvPjxwYXRoIGZpbGw9IiNEN0VEQjkiIGQ9Im01MC4yMTQgMjAuNzk3LTMzLjE3IDQ5Ljc3OSA0MS41NzkgMjguMDEgMzcuNjU4LTU2LjUzLTMyLjc3OC0yMi40MTUtMTMuMjg5IDEuMTU2WiIvPjxwYXRoIGZpbGw9InVybCgjYykiIGQ9Im00Ni43NDggMTkuNjQgMjAuNTExLTIuMDIzIDMzLjIyMyAyMy43MDQtNDAuOTIzIDYxLjc5My00Ni42MTItMzEuNzI5IDMzLjgtNTEuNzQ0WiIgb3BhY2l0eT0iLjEiLz48cGF0aCBmaWxsPSIjZmZmIiBkPSJNNTcuMDcgNjkuMDczYTEyLjg3IDEyLjg3IDAgMCAxLTEuNjA4LS4xMDIgMTIuNzEgMTIuNzEgMCAwIDEtOC41MDktNC44NTIgMTIuNzI2IDEyLjcyNiAwIDAgMS0yLjU4Ny05LjQ1MmMuODgzLTcuMDA1IDcuMjk2LTExLjk4OCAxNC4yOTUtMTEuMTAzIDcgLjg4MyAxMS45NzggNy4zIDExLjA5NiAxNC4zMDQtLjgxNCA2LjQ2NC02LjMzOCAxMS4yMDUtMTIuNjg3IDExLjIwNVptLS4wMTYtMjMuNTM2Yy01LjMyIDAtOS45NSAzLjk3Mi0xMC42MzIgOS4zOWExMC42NjMgMTAuNjYzIDAgMCAwIDIuMTY5IDcuOTIgMTAuNjUzIDEwLjY1MyAwIDAgMCA3LjEzIDQuMDY3YzUuODY2LjczOCAxMS4yNDEtMy40MzQgMTEuOTgtOS4zMDUuNzQtNS44Ny0zLjQzMi0xMS4yNDgtOS4yOTgtMTEuOTg3YTEwLjgyMiAxMC44MjIgMCAwIDAtMS4zNDktLjA4NVoiLz48cGF0aCBmaWxsPSIjZmZmIiBkPSJtNTYuMDg1IDUyLjI0Mi0xLjg2LTEuMjQ0LTMuNzMgNS41ODQgMS44NiAxLjI0NCAzLjczLTUuNTg0Wk01OS40OTUgNTQuNTI0bC0xLjg2LTEuMjQ1LTMuNzMgNS41ODQgMS44NiAxLjI0NCAzLjczLTUuNTgzWk02My4yMTUgNTcuMDEybC0xLjg2LTEuMjQ1LTMuNzMgNS41ODQgMS44NiAxLjI0NCAzLjczLTUuNTgzWk01NC41NzggNDkuMTc3bDEwLjg1IDcuMjU4LTIuNDAzLTguMzQtOC40NDcgMS4wODJaTTU5LjQyMyA2NC40MTZsLTEwLjg1LTcuMjU3LTEuMDM2IDEuNTUgMTAuODUgNy4yNTggMS4wMzYtMS41NVoiLz48cGF0aCBmaWxsPSJ1cmwoI2QpIiBkPSJtNDYuNzQ4IDE5LjY0IDI4Ljg5IDU5LjU1IDI1LjEzMy0zNy41OC0zMy44LTIzLjcwNC0yMC4yMjMgMS43MzVaIiBvcGFjaXR5PSIuMTUiLz48cGF0aCBmaWxsPSIjZmZmIiBkPSJtNTkuMDMgMjguNjU1IDguMDIyLTEwLjk2Mi0yMC4zNTcgMS44ODUgMTIuMzM1IDkuMDc3WiIvPjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0iYSIgeDE9Ijc0LjMwOCIgeDI9IjI0Ljg0NSIgeTE9IjEwNy40NiIgeTI9Ii0yOC4zNTMiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBvZmZzZXQ9Ii4yNzciIHN0b3AtY29sb3I9IiM3RUM1MUUiIHN0b3Atb3BhY2l0eT0iLjAxIi8+PHN0b3Agb2Zmc2V0PSIuNTQ4IiBzdG9wLWNvbG9yPSIjN0VDNTFFIiBzdG9wLW9wYWNpdHk9Ii4wNzUiLz48c3RvcCBvZmZzZXQ9Ii43ODIiIHN0b3AtY29sb3I9IiM3RUM1MUUiIHN0b3Atb3BhY2l0eT0iLjE1Ii8+PC9saW5lYXJHcmFkaWVudD48bGluZWFyR3JhZGllbnQgaWQ9ImMiIHgxPSI0OC44MzUiIHgyPSI2My42OTciIHkxPSIxMDEuMjM1IiB5Mj0iMTcuMDAxIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agc3RvcC1jb2xvcj0iIzAwNTE4MCIvPjxzdG9wIG9mZnNldD0iLjI5NyIgc3RvcC1jb2xvcj0iIzAwNTE4MCIgc3RvcC1vcGFjaXR5PSIuNjU1Ii8+PHN0b3Agb2Zmc2V0PSIuNjAzIiBzdG9wLWNvbG9yPSIjMDA1MTgwIiBzdG9wLW9wYWNpdHk9Ii4zNTQiLz48c3RvcCBvZmZzZXQ9Ii44NDgiIHN0b3AtY29sb3I9IiMwMDUxODAiIHN0b3Atb3BhY2l0eT0iLjE2OCIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzAwNTE4MCIgc3RvcC1vcGFjaXR5PSIuMSIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IGlkPSJkIiB4MT0iNzMuNzU5IiB4Mj0iNzMuNzU5IiB5MT0iMTcuOTA2IiB5Mj0iNzkuMTkiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjMDA1MTgwIi8+PHN0b3Agb2Zmc2V0PSIuMDE0IiBzdG9wLWNvbG9yPSIjMDA1MTgwIiBzdG9wLW9wYWNpdHk9Ii45NzQiLz48c3RvcCBvZmZzZXQ9Ii4yNjkiIHN0b3AtY29sb3I9IiMwMDUxODAiIHN0b3Atb3BhY2l0eT0iLjU1OCIvPjxzdG9wIG9mZnNldD0iLjQ5IiBzdG9wLWNvbG9yPSIjMDA1MTgwIiBzdG9wLW9wYWNpdHk9Ii4yNTQiLz48c3RvcCBvZmZzZXQ9Ii42NjUiIHN0b3AtY29sb3I9IiMwMDUxODAiIHN0b3Atb3BhY2l0eT0iLjA2OCIvPjxzdG9wIG9mZnNldD0iLjc3NCIgc3RvcC1jb2xvcj0iIzAwNTE4MCIgc3RvcC1vcGFjaXR5PSIwIi8+PC9saW5lYXJHcmFkaWVudD48cGF0dGVybiBpZD0iYiIgd2lkdGg9IjEiIGhlaWdodD0iMSIgcGF0dGVybkNvbnRlbnRVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giPjx1c2UgeGxpbms6aHJlZj0iI2UiIHRyYW5zZm9ybT0ic2NhbGUoLjAwMTg1IC4wMDY2NykiLz48L3BhdHRlcm4+PGltYWdlIHhsaW5rOmhyZWY9ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBaHdBQUFDV0NBWUFBQUNWU2xIckFBQUFDWEJJV1hNQUFBc1NBQUFMRWdIUzNYNzhBQUFnQUVsRVFWUjRYdTJkeTVianhwbHVkNEFnbVpsVktWV1huTFoxVnZzc0Q5cVRycUZlb0Y1QzcrUDMwVXZVQzNnb1Q5d0RMeDh2cTlVbDJhV3VTNUpKSU9JTUFnRUVBZ0h3a21UZTZ0dHIyVWxFQkprWHllVDI5LzhSTU00NWhCQkNDQ0ZPU2JGdGdSQkNDQ0hFYlpGd0NDR0VFT0xrU0RpRUVFSUljWElrSEVJSUlZUTRPUklPSVlRUVFwd2NDWWNRUWdnaFRvNkVRd2doaEJBblI4SWhoQkJDaUpNajRSQkNDQ0hFeVpGd0NDR0VFT0xrU0RpRUVFSUljWElrSEVJSUlZUTRPUklPSVlRUVFwd2NDWWNRUWdnaFRvNkVRd2doaEJBblI4SWhoQkJDaUpNajRSQkNDQ0hFeVpGd0NDR0VFT0xrU0RpRUVFSUljWElrSEVJSUlZUTRPUklPSVlRUVFwd2NDWWNRUWdnaFRrNjViY0ZEd3hoanRxMFJqd2Zubk51MlJnZ2h4T1BIUE9UM2U4bUZ1QzhrUWtJSWNWd2VwSENNaU1hUjVPT1BJNC9GUGZMdy9pWE1JQWtSUW9qRGVWRENrWWpHRnVuNE5qUDkxcysvemt3ZGc2dXIwLzJ4dnR1MjRGVGMyemVPT2QzZmRYLzIrbGtrSVVJSXNSc1BRamdtUkNNUmpFUW8zcjhmVFQyK0FWYXJsUUg0Zm16UnZweWQzZjhmQytEeThtNStqamZiRnR5V04rSEIzZncrMCt6ek00eXVsWUFJSVVTZWV4ZU9FZG1JeGw3N3g5OUVjckZhbVZmTncvVjZIYTM5QXpGVmRYMmtNa3llc2p5UC9uaC9HVjk0WkpiTDViMytRenM3b25qOUtUZDRWMElWZUFPUVM2K3k2Yy9ZenpZWWwzd0lJVVRIdlFySHRHd2tvdEZJUmhDTXF2cjM1bXNqSEwveno3STNOd1BKcURlYmFPeTMwY3gvcDB2M1lqYWZuK1NQVnl3V0I3MXVtUk9Sdnc3WDNaYSthT1U0WEw1dUsxTzd5RkJXY21KeXd2T21mWkI3L1hRcyt6TklRSVFRbnpNUFJUaWlyMDNwSkJLTi80Z2tvNnJXaHQ5MVloRmt3dGExZ1NzQVhsYXhZRUJkVjRhdnVCTm1aWG5ZSC9RbitMbDVhTXJEUkthWUhTSXFmZWs2VktMMmxxVC9seDh1eTlzSlIxbisvZURucDdMVGx1SlNpUWxDOHFiOXIzaCtGeUh4Zy9mNVB6NGhoTGhqN2swNDhySUI4TnJMUmtZMDdHOXVUTDNaR0M4WDRLb1g1aXNhb1FEc2wxVWtIeSt3elhqQTJ2cWtKUmFBb3BnZC9BY3Rackdzdkp0WXQvMTdGQWVLeit6ZFljOHI5NUNrMmV5Zjdkb2ZweFp5bUFBZElqOWpvaE1MVEJDUzc2RXZJWmVYYmlJQjJVbEFKQjlDaUtmT1F4R09yR3prUk1OVmxiSDFDL1BDTm5MeFJkMEl5SmRZV3hzWFpPUlpiZUNTaTBneXdseU9RMlZrSDhFd1cwUWhmcTBQdkI5ZFp6NXUvNTdidmxkZzI4OS9UQWtLREdUb1o3TE1adHZsWjFwMDNnSXdhMzYyUStTbWxaZFdTdjRLUU5uOERzdmwwdDFTUUNRZlFvalBnbnNSamt6dlJ2T2Zid3l2Z214VXBxcStUbVRqaFhsUlY2YXExb1c5ckkyMXo3MWMxTFZ4dGpiMm1UWFA2bk12SXJZMnpsay9iODhNRi82YldXdDdZdUdpNjdCK0g0d3Bkdm9EbW1KNlhUR1kvOVErNmoyM0c1NzgzdHRFSXJCTlROclhlVDhVb0k4VDMyUG4xMjM1WmJobUI0bVpXak9aOHZ3OExqUmxPWGYvMDE2OWJiOUhMQ1RGajE1RXl2S0g1dXVJZ054U1BrQUNJb1I0R3R5M2NFUmZoK25HemMzN292NVZJaHZQMTRXdG54dHJhMk0zTjRXMTFqeTdxSTIxNThZNWE1eTFoZ3V3OXN3NGE0MXoxcHdUeE9JY3Q0d0VZMFEybk4xUFBMYkpSR0JLRU1aZXc0OWYrNHZyN2V1THpQY3dSZUVpVHhrd2tKMVlhb3FaZzQra0hDSTdPUWtwaWsrVGY3dVA2WFArdHo4L0pqYmJoR3NzdVlrRnBpaExGOUtYSUNmL0xOKzVlRjJRa09MSGhRc0p5RzdweHh1WTd2MFkvZmtsSUVLSXg4aWRDOGY0emhRdkhLOVdLN05lcjgxcWRWV0VkS05lWHhZNTJiaDRabzJyejAxZGJ3cG5yYkZuMWpoN1pweXo1cXlSRGJkWVJrbEg4OVV0REdmZDljSzUzbnlMY3dZV1RITXpIREptYjdFQU1OSHoxbUVzWHIrSzE5NWt4V0l3bG9qQnBOaEVRdE54blgxT0xEYXh6SXlLVUpIK0hLdnVlb2ZVWmtvZzhpSXpjNHlVcFhvU0V3bE0vRHJ4OXl0bUh6ckorQmNVUmVsbXM5TDlESmhJUUdMNUFGK0NpWHRBL2lzMHBXNVBQM0svYS9iM2wzd0lJUjRMRDBRNHZqVmhaNG9YanY5clZxdDNoZjNOamRtc1ZvV3JYcGd2bnE4S1cxK2Fhck11WEYyYjgvTmw0ZXJheThhWk5kYWVHVnRYUlNvYVB1Vnd4cm01Y1F0bkZrRXFtakgvMEJvVzRCcng4R09SYkFReDRRREdQdUROeG1WVXBTY2QvcnA1ZnJRNFhlTUhONU1Da250T0t3R1J5S3dISC9oK01oV0puQmhNcHpRMENjMVFZUFpKWllhbHAwUmV3dGoxZnVMU2w0MVA3a01ZYi9wbHdueFJ6TnlZZ09UU2oyS3hjSEgvUjBnLzlwQVBVUG9oaEhnQ1BNaTd4VmJWdGVGM05CK3lWN3lvcjQyRmR0ZUplMVliYk5mb0djb25aOVlhdDF5MnBSUmIxMFVuR3JXaGJzVERXZVBtemtDTmMxNUMzR1p1d0xUUzRlZHZ3TTBOaGZlUXV2bjU5dXIxY0hYKy83VzdrcUluQWQ0b0RJbHdNUHdBTWMwSFR1c2dSZUU2SGJxSjVNTDFIa05mRk9wMU0xWjAzM09HcFJsMFBtY3hnelVlUjVySW1DTDZJRnlsVXJMQ2xJV0RXVHNTNXNQZkZmclNNZy9YdmVUbGVyQU9pb0cwbUhrK2dla0x5eWYvT3ArQWVoUDlQQ1ZMR2psWkJObjRRRkVVN3VQSG1hczNDeisyZ2VMWkIxZk1hbWRubGJ2ODExa3YvYkQxTzFkc05vNlhZT2MzRHI2aWFrb3Z2Ni8rYXNxeWRLelhacmxjdXU5WEs4TTNRVDVlK3gvdlRmZzUyd2ZnLzBHbS8vNjF2MU1zOUpJUEljUkQ0czRURHVpOUtZNlVWUG9KeDh2cWhkbEVDWWM5dXlrdTdJV3BOemVGYzliVWkwVVIwZzA3bnhjaDJiQzJMQllMWjF3UWowWTBuSE1HYTgzY3pmM2pSU01SemhubnlpYjE4T0l4RDZuSGZON0pTSlNFWklubnA4b3JnelNqNmwxdnd2eG1iSDBpTXNhNE9BcUo1OXZuM2d4ZkJ4Z2tNY1lZZDlON3JlUjdieWJTazk3UHRjNmtJLzMxeFUxLzNxY3NYZXh5U0ttbzdYMjV6czhYcHArZ3hQT2RsSHpDclB4all3b1gwcEVnSUorS3dwbVBNemVXZmhTL2JDKzk3TmYzQVVvL2hCQ1BsZnNXRGlEc1VNazBqWDcxdnNqMWNOU2JteUl1cWRTTFJlR3NOY3U2S3R4eWFXeGQrWjZPZVZrc1hDUWM4NmE4VXRkRmtBMDM3MFRET1dlQ0xKUmxKeDloYkNBY2M0Q3luVy9qb2gyRm94cXNxWnJMNkRtYjVIb2dIU1BTc3VtdmpkZFZXVkdKTDZ2Kzg2YktPZEVIOVNZcDY1amU5eThtWHVlbS83Tk9DTW82bmwrRitadUo1KzRnSnEyVXJOdTVWZk84c041THlGQkEwdlFEd014bUxpY2ZBTzltcFp1V2orN3NqK3k1SHozNXVITEo4ZXY5Znpialk1SVBJY1NkY3kvQ0FjVFNZYnIveE50aXV6TTR0cVVjdHE0S2U5YjFjSVNVdzlabHNWajQwZ3B1YnF5dGk1Qnd6T3RaTVNZY3JXeTRKZzJoa1l4eTFqNmVFNGxIUzlvRE12Y2Zsc0ZFcW5qTzAzMllic0xJNklmdEpybkdHTmMralNyNWdNOUx5bUROcG4yQmRsMzZmZm9mMm9rY3BCL29rYURFcjNIVGZ0RGZET2F5eVUzbU5kSStsU2t4S1lyQzVYdFRWcE5TRXN1TU1WNUFXdWt3aGJ0dUJXVGw4dW5IdGRzbCtZQzhmUFI3UG1BeS9laWRlQXBLUDRRUUQ1bUhKQnhrRC83NmVtMDJIejhXdG41cHZseGZGL2JMeWxRMzUwVzNVNlZmV2dsSlJ5Y2RQdDJZbDNXQmM4YmEyVkE2eXJyWUtoeWxNN2laY2M2WnNoV0dPUEdZNDJhSmdBeUVwSS9EbWJSbmcrVEQxdzlGWTlVbStZQWVGNVR1dGJ5TWJES2xtZDNFcEYvcW9US3UxYU14K1RER2RYSlI5RjkzTE9tSXBNUVkwemJWRHI3SDJQTW5oS1FuSXplRkN5NWlJaEdKbnhQRzIrdDE0ZUtHMTIzeXNVL1pCVHI1R0d5M0hXazZQVUxwWld4TThpR0VPQW4zSmh6UVNrY3NIcVM5SEZWMUhVbEhiYjVjUHkrc3JZejlvamJWNXR5WFZjNDN4Yk93UGZic3pOUlZWVGhuemJLZUYyNWhmWW5GTFl5ZDE4WENXdU5zNldXa3RBWFdtcks1WnQ0bEhjN2FvaXlkSVZ3N1p5aWRnWkt5RlpFZ0hLVnBaU09TREVldTFOTDE2VHJuVFByLzdpRXF0VkFOQkdSS1VJd3h6ajk1WEVwU3djaVZkWHp5a1YvZlBjd0x5YVlhVzdPRGpHeEdmczVJUkRieGVMenVKdmtlOGR4RXlhWmRzNGFibmhqNU1zMjRnS3pkbEh5RTlVRStQalJsbDIzeUVaLzNjVVQ1Z08xcFIzcmRUZHpubTRRUTRzbndFSVFEaUtYalczajkxdkMrTzVNamxGYzJMNzEwOUU4Y2pRNEJlM1pobnJWYlpmY1ZqOUxNblRQVzFzVXU0dUhjektjaEFQaHhOMHQ2UG1qbVd3a3BtNWFQS1Bsd3pxUlNFYjhHclVUUVhBWkpxTUpBOXlFNUppUFZtQ0RrUCtDcmdXUTB2U1VqTWhHK1QxOXlJdW5aMEJNRjA2Ni9yWVRrbTFyRDQ1dEVRc2JTa0RFQkNUdGZqTGx4cTJpZE1VVXJHNlpZTzY3OVhHaEVOVVhoaXFKd2ZQSzdZRkw1K05RY2RoYmtJNVJqaXRtSFZqTDJrNDkrMzhkQVBnRCtGTjhCZDJ2NmtWNTNFL2Y1aGlHRWVOVGNxM0FBVzZXaks2ODBSNTNiR3hPZlB2ckZabFg0KzZrMDRuRjJVMWdiaTRjMWRiWHdPMWVXMWl5cnFOU3ltQnRYMTc2eDFNMk5MV3RmWXFsbnhkejUvZzVuZmRrbFYycnhrbEVVQUdXVGVQangwbENTRjQreUhBcEhockFtbDREZ0oveDQ2eDExZjExR1JLcDB2STVGWWRoRE1wNXUxTDZra2pTMHRvOXpZMm5xa3BFWDN6dFNSSzh4WFpJWlMwSFN1YjdzRkZ2N1F6cXg4UE9oSHlTa0h1c2RVbzlWSkNXN2xGeUFmTE5wYzlxcFArZGo3bkpIclcrVkQrZ0x5SDd5TVRibUorNzdEVVFJOFdoNFNNSUI1TXNyckZZR0lDOGVMNDJyTnVaRlhabTR2OE05OHpkeXF6Zkw0c0xXeHAwMzR0R2MwYkdjei8xT2xpYjFjQXZieUVlL3VYU2JmRGhyaTFZZ3lyakhJNlFoelhiYWJPclJ5RWQ4R2twWU55SWNZMldZK0VNK1RUUklaTVRRcENSWk1RaVBOOEZRc212Q2M3dlgyYThVMDVPY01OOElUTmNmTXAyQWJKZVBNTzRYSFVVOEFMUGVKaDZGQ3p0ZTR0MHVVNmxIT09MOTQxVEo1WmJ5QVh2ZjZSYVVmZ2doanNTOUN3ZXdSVG93OEpvcDhlQnI4RGQ0ZTJucTlYWHg0c3ZLMkxwTFBkeXoydFNiVGVIcWM1T1ZqNlRrNHB3MXJod21IMjNacGZTN1hwcnpQZ3BYT2xNbXlVZVFqMjQzeTNqWkJUY3p3VGxhZVVrYlVLUDVySEFFcHNTam5XOUtKT1I2T1ByUE1hYUtTanF4TFBTZjF4ZVlLbDkrbWZvZTNZWGJWenlBcmYwZlFUeHVrdm5iaVVmaFlIV1llRFJiYkZQeEdOdGlDMG5KNVFqeUFmRDlxSHpBRHVsSGV0MmZmQWh2TGtLSUI4T0RFSTVBSkI0akF2TGFpd2NRU2kwQVkrVVdXMWNtSngrOTVNTlpFL2Q3T051a0grMng2RjNQQjNIWkpVay93cmJic2RKTDZQdUlkN2prbWsxRG8ybFdRa0taSnY1Z2RJbVlKTUxoaDNMUzBTMm80OTZQcmVJeDhzRnVodkppVEQyWmVKakI5NG9TaitaaDFWc1RpOGZHcFdQYnBNT1BiL0s3WDhZT01ndmZaMFE2Z0wzRVk5RG5NWEc0V0p4NmRHUFQ4aEVPR1R0RVBzN096dHlmaU5odjEwdDYzWjk4U0c4MFFvaDc0VUVKQnhCTEI1QVZEK0MxNFRYd2ZqZjVnQ3RjdFRFdlhsVEdWcFdKNzhuaW50VW05SHhZV3h1N3JJcjRUck9oOU5MciszRE5jZWkyTE1ZUEU5c21JRDRCd2ZVYlQzdmJhMU1KQVhDem5tRE1VdUhJc0UwNEt1ZzNuSTVKUngxdmo4MnNPVUE2MHZFMjdUaWhkTVFIbEcyVkRsTzRjQ3U5WEhOcEVVdkdDdGJGVGU5bjZwcExpNmE1dEJNUGdPc2R4Q09YZXZqdlBYUHdpeSszUk0ybWNIdjVHSlJlMVBjaGhMZ2xEMDQ0QW9sNEFJZkxCMEM0ODJ6bytaaEtQL3BOcDJmRzJ1YW85TG9xenRKN3RTem1adUdjSDVzVUVIOEd5S2lBUU5JREFwMkVRTnNMQXIxVW95Y2owZHp3SmpuTlNDSWJrQ1FjdlRYaE1zakRzTHdTejBNa0IvRUhlVlVQMTI0VERtZ2JTK09EeUhMQzBSdS9pZGZtaGVQUWxBTVlKQjNRVHp2VzZ5QVlVK0p4M2U1cWllZFdXOFVEd28zbDB1MjFRUCt1dHREYjZWS1djL2MvZTVSZFlLTHZZMW8rWUkvMFEvSWh4T2ZEZ3hXT21JblVJN2wrN1I5SFpaZFh3THJwK1lEZlUxWHJiUHBoWDFUbVJaTisyTHFLQk9UQ1dGdWI4K1p3c1lNRnhPMTN1cW1YQzlmdWFvbDdRY0p2RzNiRHRDTGlCM3QvbjFoSVlnbnA5Vy9Fak1nR01KcHc5Tlo5eGlrSGdGbEhoNHBOU1FkZzF2MjA0eUR4bU0wYy8wc3Y5Y2lKQi9qVUE3eDh3RnQraXVTaldDejg3ekFoSDl0M3ZNQ1c5Q09kNnlINUVPSnA4eWlFSTVCSlBZQ0o1QVBZTi8wQURoYVFjQytYY1FHcEN6ZWZkMExSYTBMdEM0aHp6c3puM1E2WE5Ba0Iycm5vS0xGbXZPeWtKTmQ4Nmx6KzdJOElrOHdiWXh4VmRBejZIcjBjd0dlYWNoU3VQY0UwRnFKSVBFTGlrVXBIVVlSZWo1Vi8zcWZ1TmJvR1V5OGVBQjh6NGdIanZSNFF4QU4rbXYzVFFaSjZBT1VQWFlsbEovbVlQbXdzZnB5NzdrOCtwamNtSWNST1BDcmhTTWtJeUY3cEIvZ2RMd0RoY0RFNFRFQnlKWmd6MTl6WHBSR1FjRU01NTN3UGlCY0pmMU01YS8ycHA4N05UZGVJMnBjUTVsQW1VZ0pSd2hINlF2RDNsZXVTajFnNm90Sk1qcVFXTXlVYTdYekU4TkF3R04yMTBsdVRmUEEvMFpSajhQeWsxTEpOUE14MUp4MUFLeGloejZPWXpkejdySGlVRHQ2Ums0OGdIclBad3YzSWZ3UGpKUmM0U0Q2NmNjKzI2LzdrWTM2VEVrSzBQR3JoaU5raC9VaXVoNzBmY0ZvQmNjNmFzK1hTMkdoSFRQOE1rRVpBbkRYaEhKQ1FncmhXUXByNUlDRkFXZmJ2ZE5zWEVWK1dBU2lUK1Q0VEVnS3dSVFNDT095Y2JpUnIwcmtISnh4K29ocy9Zc3JSam8yVVdDQ1VXZGdxSGlIeEtKckVZemFidVYraWRVV1RiaFN6OS81cmN6ejY3TjEwNmdFSHlvZTIyZ29oR3A2TWNLVGN0WURFTzJER0JNVHZnbGtVc1lBNDIwaElYVFZKaURQeFRwaXBGQVJnWEVLYW5oQWdLeUx6a2w0NUppTWhZZjFBTG1LaXVmUXdNWC9aOVcvNDZ6M1NqYkJtUitHSXgrOUtPT0kxeDBvNW9KT09NUDZKN3ZWTk1YUHcwYS8vNk5jTXhXUG00SDNYSk5yc2NFbmxZMHc4WUx6UkZIYVREOWgyenNlVmcrL2lnVzV0L25xQUJFU0l4OE9URlk2VWh5b2c3dHdhWi92bmdNU05xTU96UVBJcGlIT3VLOFVBcVlUTXdkL3hsdjdKcDVBbUlxV3Z4L2lCM3Q5bnVQUEZNeW9hd0M2eWtjN2xlamo4dzRlWGNLUnJqcFZ5d0xSMCtMRytlQXpMTE9QaVVSUk44akVMZ3BFdnQwQVFEeGc5WEF6b3k4ZGZpVzhzUjBQdm5JOUJzMmxQUHBJNWlZY1FUNEhQUmpoU0hvNkE5TThCQ1FJU3B5RExwQStrUFExMUVWS1EwSWc2VVlxQm5vVE1vVXMreXJLWGdPUmtKR1l3TnU4ZXRoKytZNkxoQjNyWCs2WWJmdXJ4Q0lkZmY1eVVBMUxwV0hYUG0wdzdtcm1aTDduTW1wSkxLaDRoOFlDaGVFQW5IOFZZeVlWOHMrbmtBV005K1ZEcUljUlQ1Yk1WanBTTWdFd0lTWDRIVE5pQ0MwY1VrR1FuakhQV25ObWxjVXU3WHdyQ2drVW8yVFJ5d3R5UE8yZDd3akYzempBUDE5NG1jaklTNDl5V0k5ZGhValM2NjhoVTlrZzMwdkdIS2h4K2ZTYlp1R1hLQWJSOUhUQ1ZkdENrRk8rOWRBQTdpUWZEY2d0TTlIcVFpc2U1Zzc4QUUvSXhYWExwL2psMDVNYjZDL1FHSjhTRFFjS1I0YUQwQTQ0a0lORkJaSFZ0K0FLR1paaHo0Mnh0ckxWdDcwZXVET01XdHQyU081YUNMUEN5MEpaVm10MHhXUkVwNCtRajJubzdJaUZqNUVVRGtsaGtyM1NqTjM3VC94NFBWVGo4ZUM3bDhMZThoLzFTRHNoTEJ6Q1NkdlRGby9qZ3BjUFBUWWhIV1RwKzZxUURZTmFJeDA4N2lRZkFYL1k0Vm4xcjZqRTIxazNxalU2SWUwZkNzUU4zSnlEUlFXVE5TYWdBdS9hQnBMdGhYQ1FrN1c0WTEyOUdCWWdsWkdHNzhvcHp6ckNnRlEraTlXRk5XMDFwVXBHTzZlMjNmZWxJUkNNYU1xYTdpWnUvM2kvZDhIT1BTemlBMFpUanVsbXpUOG9CWkpNT3lLY2Q3M3Z6UVR4S0IvL3lZenVJeDN3K2R6K0UxOGdlS3BZWEQ4ZzBtZ2JlWERXUEoxT1BxWEUvcVRjOUllNEZDY2NCbkVaQWhnZVJBY1JIc2IvOENuWXF3MHdJU0plQ2hENlFmQXJpUldOWWpvRW0wY2lJaUorejJlU2o1eUxPK1lQSGVvTU55WW1rMlR2R0J2Wk5OK0RSQzhjeFVvNTBQUFIxUUxPTjluL1QrVEo1L0s5V091QjI0Z0hqOGpFcUhwREtSMyt1WTJ5OFc2QTNRQ0h1REFuSEViZ0xBUUZJN3dWekt3RVo2UU1KS2NnU2NFay9DSUNiUjMwZXR0OXNHdVk2NlZpUTluekVRZ0prblFPMmlZWng0UmIxNlpwZDA0MzRwTkYwM2VjbkhEN2xDTXcrUnFXVjBiUURZdkdZQlFFWmlNZkN3WC9ueFlNRHlpMnBlRnhkT2U4Y1NqMkVlT2hJT0U3QXFRUUVtbnZCWkFRRTRGaU5xTkNVV1hJN1l2emtvQnpqSHp1ellBSHRhL1JGSkt5blpSRUdjMyt2UHUySGVsNDBZSXRzd0U3cEJqd2U0WUJqU3NjdzVSaXVTWk1PeUtZZFFQa3VsUTZZRkkvbDB2SFg1dkdFZUlUSGY0ckY0NnBKTzFyblVPb2h4RU5Fd25FSEhFdEFJTjZHZTZDQTFGNUNVZ0hoNGhtaEViV1RFR3RjMG93S0VDUmtzWER0V0NqSCtJZUpjRFJmRjBraTR0Y09aU05OUVdBb0Y3MjViYUlCQjZVYjZkelRGbzc5VW83dWNiK3ZBL0pwUnljZE1KOHYzUS84d3o4dmxZN3crUHpjTlp0YVdDNy8xbzdIMGdGdzJZakhtekRRSmg0ZzhSRGlZU0hodUFmdVRVRHF5dGd2OHdJQ2wxellrSWFNbFdIOFY4N082WmRpbXNSakNZc2dHVGJlN2RLSlNFODJra1FrakRIRklub2NXd1BiUlNOd1VMcmhtME42SC95NWRhY1dEdWdhUitGMndwSE83WnR5ZE5jajB2R1Rmendzc1hoK21pOGRSeENQeTdUTUFyenBpUWZBZDRNMURXUGozUUs5U1FweEZDUWM5OHlJZk1BQkFySjNDU1lSRUlEUm5URE9HbmRtamJWbnJWRGtVcEJ1YnVFZk4wMnBZUndZbEdTNnlvcHJ0K24yellLZWxHd2xJeGtReE9DbTlaUXAyUmpNUjVJQ2oxYzRnSjNLS2dBZlBvNnQyNTV5d0hicCtCR1l6WU5jL0dOYU9nRCtBc3ZsODJiOHo4QjI4Ymk2dW5MOUZvOVI4WUF0OGlIeEVPSjJTRGdlR0E5RlFBQ215akRnWldIWUMySU5uQk0zcEVJbkc2RXhkWWtYaTFoQzBqU0VobHpxRWVRa2o1OFpKQlROZitlU0VHTUtGeWNtaDZRYjhOaUZZLyt5U25jOW5YTEF1SFJBRUk4ZDBnNFlpTWRZbVNYbXF1bno2THhENGlIRVhTUGhlT0RjaDRBQS9qQ3l1akxXVm9aL1M4NENHU3ZEUkFJQy9SUWtsaEFnYWtwMUJwWXNuRFVzTzdrWUU1SHczRFFBOGVOTnIwaHpIY3RBVW4xcGliZlRkbU9Ka0J5UWJzRERFUTYvYm5zZkIvUlRqcmlza3E2OWJjb0JYanArN0M2WnpYL3VYbk9iZE1DUnhPT1ZneitteXdLRDUvY205ZVlweEY1SU9CNFpkeThnM1dGa0wwTFpKZWtEQWZBUzBpL0RRRDhGZ1hFSnlTWWh6cHJsMHY4R1l5SVNtT3o5R0k5Q3RvaEc0V0NkRE8yZmJzQXFlZDdURWc1L1BUeVJGQTVQT1dCY09pRHQ3Umd2czhCUVBJSjBRQ1FlcjE0NS92aEhNdlNlTzVqVUc2Z1FPeVBoZU9UY2lZRFlHOFBYWGtDZ080d3NKeURROUlGTXBDRHdESGZXN1lnQk9Hc1RqNlhockJNVDZFc0lnRnY0NjBXY2V1UjZQS0lEeWZaaWkyaTBZd2VrRy81NWowTTRZTGMranU1NkpPWEkzSU9sbmRzeDVZQnA2WUFnSG45dXIzY1ZqMTV2cWNSRGlKTWg0WGhpN0xnREpobmJUMEFnZnhycVYwRGQ5b0hVQmw3MCtrQUE0aFFFR2pseGZrY01GeEFrNUt6WGdOcEpDRFFsRmVKclg1WUp2U0hkV0orc2xQUllFb3RHVGpKZ090bUEzZE1OZUx6QzRkZm15eXF3WDhyUkY0N2RVdzZBOHUvbnZiRjlwUU9PSng2U0RpR21rWEE4Y2U1SFFHcmpxaGVkZ0dUNlFLQXB3OWphMkdjWDVubHozYVVna0N2Rm5FZVB3L1pjNkNRa3JQVmpQaEU1QTJ6VEl4SXpXWVpKeURXYXBxTGgxeFZ1dFlxdWQwdzMwdXZQUlRqZ3RDa0g3QzRkUGVHQWc2UURKQjVDakNIaCtNeTRTd0dCZkI5SUp5RCt6cmdRbFdGc2JiaUVDM3ZSbG1FZ1NqVXlXM09EaEFDNDViS2RpNS9YaloyUmpnT2NuZmwwaFMza0pBTTZrZGhWTnZ6OGlIeGNYL2V1SDROdytPdDhId2NjWGxhQjQ2Y2NjRnJwa0hBSWtVZkM4Um16Ui85SE1qWXVJREIrUjF6WTFvZzZWb2J4L1I3UGVVNHFJYzdhcGhUVFNjZ0ZUYUpCa0F6Zm5OcGRENFdqWDI3cFM4a1pDYzFBVHlCV0VGd2pGWTNCV25aUE42QXZISWVjTk9yWFBSemhnTVBMS25ESEtRZElPb1E0RXVXMkJlTHBrcjRwUmdLU3ZsbWEvdGdiQjVqbVBHbm5CZVRTZmY4YUx5Qm5aNDdWeXJ4YXZuWFFDTWd2cVlCNFVYa2ZCR1FGdmd5emFmdEFvRWxCYnA0YmEydXpvcUtmZ2xqajZuUERCcXl0MmxMTU9wYVFHVGk3TVJkVktpRmRHZ0xnVEN3Y0ZjNVpZNXJmT2QxUzY5YlduTkZKd2dxZ09NTVF4UnNOdVNQWnAyU0Q2MnNvaXZZeVRUZWVJblY5WTRoT0lLMDNhek9iYno4Qk5GQmRYNXVTTHVWWXJ6K1k1ZkkvQjlJUjgvNzllNU5LeDl1M2I4MjNZOUt4SjhZWUkra1FvbzhTRGpISzZST1EvRlpjbU9vRHFac2s1RXZ5S1FpNCt0eS94cUFjMCs4SkFiODdwdm14MmpRRWFCT1JtTzFOcDlOa2Q3cWs4bkZndXVIbkgyZkNBZkRUcko5aVRKVlZJSk55YkNtcmdGSU9JZTRiSlJ4aWxOTW5JRXNIYjZNRUpPb0QrUjNZbTVWNUZ3a0lLM2hadlRCMVhSbllSR1VZc0RlMXNmYTVXUUd1S2RPNFo3VzVzTmJRbEdMWTFBTUoyWnhaQXhlK2Y2TkpRd0RjeHZlR0JKenRFZy9PejQ4dUg2WW9ITmZYdlRYN3BCdXhiS1Nrb3ZBVXFmNzkyc1RTNFZPTzZaUkVLWWNRZDRzU0RuRXdkNW1BZUFGSiswQkNHWVpCR2NaL2ZkN2JFUVB3ckVsQ1dna2hsNFJFRXRJUWVrT2dLODIwblBmVGtYM1lWVFNPbFc3QTAwdzRRQ21IRUE4ZEpSemlZRzZSZ01SZlhEWUJBVjZ0VnFaTlFONk83WVJaMGFZZ3EzNFpCalpZV3huN1JXMllld0ZaM1FUQnFJakxNZjBrQkt5OU1RV2RoQUNzTXlKeUFiaVZOVkE0MklUaG9aVEVuRGRpc3FOb3BHTlRzdkc1VUszWEppY2QrektXY2hDZFJub2JsSElJMFNIaEVFZGpEd0ZKZUJOL2NTRUIrZjcxcFlzRnhLY2diN3NFNU9jdEF0SUl4Y3ZycUF3VDlZSUVDZUVHVnJZMnJsNjNBZ0srS2JXWGhLeHJBemUwSW5MaGp3bHp6UTZaZ0xYV1hOQkp3YUQ4c21vT0Z6TmRjMmhNVGpJK01SUU52elpKTC9aSU43WXgyMlB0UTJTWHNzb1kzNUljQkNhRXVEVXFxWWc3NDZnbEdCaWNCUUw3bDJIQWI4bUZZVU1xZEtVWVoydnovQkxTY2d4MEpSbUlFcEdMWjRUbkVaRTc2K09DUEVWU1JvbnBST05qTkZhNDZCSzRYVGxsNmw0cWZ2MzlsVlJnZStNb3dITDV0OEdZeWlwQzNBOUtPTVNkc1VjQ1l2cGp1U1pVNFBXbCt4NzZmU0J4SStvdVpaamVsdHl3SStZNlNVRzhoSHhhQlFueHIvV3NTVUptZ0xVWG5YVFV0V0Y5ZzdWMTEyaUtsNUhaUmJqdWhDVGRUSHVCVHpSaTBpUmpJQnI5b1d5ajZEN3B4dWVFeWlwQzNBMFNEbkZ2SEVsQWdHOGR2RFU5QWNudGhHRllodWxTRUM4aGJRcnlJVWxCQmhJUzk0TjBFbkw1QmRnaWlNaGxrcFRNWExoVmk3WFhCaUFWRWk3Z21uemtFL0NDRVpWanRvZ0dER1ZqMzNSRENDRnVpNFJEUEJnT0Y1QW0vSDRUcmhzQnlUU2lwbjBnUGdYNWR5OGp2VEpNMmd0eXhjc1AvanJlbHR2T054THlxZWtEOWFLeDlxTHhCVER2eWpQUHVjVEVaWmkyUE5NSlNjQW1KUmtnaENPdGFFeHRlODJsR29kc2s5MWVUaW4zZnMxSHlmZmZKLy91dFl5TkN5RWFKQnppd1hKckFZRkJJeXF2TDkzM3FZQXMzN3IxZW0zS0VqZGVobm5mQ2doNHlmajE2b3FxaWlUa3F3MjI2bS9OWmY0Q2V4MVNFai8yc2Y1aytLTDdlWjhWc1ZSYzlpUWpiZFVucGJFQUFBZ2hTVVJCVk54MGRXMEltMXN5UGFkVFpaT2NhQlN6bVlQM3ZUR2xHOGRIWlJVaEpCemlFWEc0Z01EWVRwaWNnTEJjdXFuZE1DRUYrUmZ2ZXllajhzRWZUQmErbzVlUTY0R0UyT0o1S3czVzF1WVRuUWk0WjU4TU05d2xIYTI4Y0FtUk5HVFRqNGlwSktOb3hXUW9HNE8xVzlJTlQzZW5XQ0dFeUNIaEVJK1dVd2tJd1BkUkgwZ3FJT05sR0hpMzZYYlJlQW54TjZucjc0cTU3cThCd2szcnVQWWY3cCtJaGNLUFBYLzJxU2NZeGF6N25iclhTYmxzMXFZaU1TNGFVenRUY253MjVSUWh4SzJRY0lnbnd4NENrdUZONzB2Y2lBcVJnTUJJR2FZdklCQWt4S2NnNytpa0lEU2tRa2hCQUxva2hHYXRGNHBHUklCUDF4UHB4aGQrTHZTRGRBbEpmbU50OW95TkhVUmpsM1JqMjVaWUljVG5pWVJEUEZrbUJBUzJTa2phaVBxNiszS1o3d01CMHUyNERvWXBTTDE1Yjk0MXJ4cVhZbVowSDh6MWl5QWZReEVCS0dZdm9uU2pNbndJVjdtRUJMNGs0WXZvY1NNYVJURnp2NUJ0RFJsTk1RNUpOOUl6T0lRUW53Y1NEdkhac0tlQUpHV1lONzB2WFFKQ0p5QkFyZ3l6UFFYSmxXSnd2OFkzcFFZUnFldktGRitGRC9oT1JQS2xsUmM5R1hoZlYvSHZ5cGNmdXNjVThBdDV0b3ZHN2RPTjlOQXZJY1RUUk1JaFBsdjJGSkNFTkFGSitrRGV2emZmQS8xbTFMZnVQNGE3WVhvcENIUVNNbWhLTFhGOHVPSmxzek9tVFVSK0JYV1FqK1lEMzFidmU0SVJwTVRXbHdiU0RvNThxcEdqTHlDZGJLU2lNY1l1NlVaNnlxZ1E0bWtnNFJDaVlVOEJTUklRR0c5RUJTNjloUHpYeUc2WWZncmlqK3l1dmw2YllyRnc5dWJHek9iK2c3cmUvTk84U3hPTmQxZUFudzhOcXZueURCVGxkU01rL2NURDgyL0RvU3piUldOV2xvNmZjalBKT3FVYlFudzJTRGlFR09ISUFrTGJCd0xERkdTMU1nQnhMMGo1RnRjVGtHcHRDaFl1N2dmeEl0SWxJY3h3WFgvSVN3UHc2dy96NXZuZE9TSXpTaGNuSTU0MDkvRFlKRDJaZXR1WWhUV0piSXdsR3o4bTE3bDBZNWY3cUFnaEhqNFNEaUYyNUdnQzBqNTgzVjNIQWdLdGhQUUVwUFN2Vi8zUVNRaDBTVWk0N21URTMwenRwMGhHNExmOHF2Ynp2SU9TdVl0RkJJQmZkUS9ycWpKVDVaSlpPcmVqYUlEU0RTRStOeVFjUWh6SThRVWtITWtPbzgybzlGTVFnUEl0RHY1QVZZWHpQWmFPMzBQVnpJZXlqSi83bVgvTmNYVjBhdXB2WnI5MUFIVWtJb0dza01RRU9UbEFOSTZaYnVUdUZDdUVlRmhJT0lRNEVyY1hrTys2c1RkaDdIVTNQWktDK0l1LzhXcUphdzhuK3p1VWhKSU14SDBoMEgyUTI1c2I4eE0vK3lXcGlJUUgxTUFWV1lLY2JIa25tVW96WnZQVGxFZHl0NllYUXR3ZkVnNGhUc1R0QlFTR0tValVqQXF0aEFBTStrR0FaWE5BV1ZoZXZ2MkQ2NUlRZ0tVTEVnTDlOS1FOTGVaelYyLytPWkp5L0RZU2s5MEl5VVpmTlA3Ulc1TkxObUFrM1RqZlBkMDRDMDI3UW9nN1I4SWh4QjJ4cDRCQVhrSU12T25HM2tBL0JhSGRFVFBvQndIZ2J5empKSVFSQ1ltMjZVSmFsb241ZWJBWjVXdGcweVFsODNsWFd2a0JnUC9EckxkNk45R0FpVWJSdnd5SGxzdm5PNHZGNWVYbHptdUZFSWRqZEFORElSNEdpWUJrbCt3K0hxY2dFRktRbUZkdE9jWVRTMGkvSjZRanZvRmRqcnlVVERNbEdUQzlJNlU4UDNkNTRjaVhVM0lKUjA0NHJxNnVYSFRQNFk1WHJ4eC8vR051QnJhYzNhSzd4WXJQSFNVY1Fqd1F0aVFnY0tzVUJOSWtwRTFBR3I0NU8zT3JxQ2NrVFVJQXlySkpRMzRnUy9WMWZ2d1F0bTE5SFplTmZMcHg0bkxLS1Y5YmlDZUJFZzRoSGhFSHBpQWp6MGxTRU1nbUlTUkp5Q3ZTTkFUZ0R3RFpWQVNBMzJkSEQ2THQyUmlWalQ4UEo5ZzkzUUI0YzNXVmYyUDg3cnV4TjB5bEcwSnNRUW1IRUkrSUExS1FYQUxTakc5UFFYS2t5VWpvRGZHc3lmTDNQd3lHc25MeSs4RUlrRFNHN3BGcUJQWkpONjdHWk9QVks4ZDMyVUtMRUdJSEpCeENQR0lPRUJDNGpZUmtMdk1Da3ZLMzlsRjdma2o1aCtIUDhQZmtPdmFVcmFLeGU3SUJSMjBXUGRickNQR2tVVWxGaUNmTURpV1l3Tmk2N2VVWW1DekpmTk44WFNXbG1YSCtjOXVDaFAxRUk2Qm1VU0h1RmlVY1FqeGhka2hBMnFXWnNkMlNFSUEzMytKUFNXMCt4RjkzVTM4Q0x5S0pBSHhEbnRYcXp6dUtTWjl0Z2hFNFlySUJTamVFMkJrbEhFSjg1dXlSZ3NEZVNVZ1FrUkZlUjQrYmRHUk1SRzdMTnRGUXVpSEVhVkhDSWNSbnpoNHBDT1NiVW5QakRkRng3UzNmZGcvZnhESnk2WGpkSkNJcFVhbG1IeUhaSmhrdzBTUzZuVU9mSjhSbmlSSU9JY1FrZXlZZ01KNkN4RVJySWdIcDhkYU03WlNKZWIxdHdRaXBhQXpTalZldi9MelNEU0dPZ29SRENMRTNwNWVRSE4vMnZ2QTJYNnA1blJ1TU9JSm93QTdwaG9SRGlENFNEaUhFclRsQVFHQ3JZTFJNclBzMiszQmlWY3VCb2dHU0RTRU9Rc0loaERnSko1YVFtT1E1RStZUkU1WWRVVFJBc2lIRUdCSU9JY1NkY1ljU2NreDJmcE9VYkFneGpvUkRDSEZ2SENnZ2dkczhkeHQ3dlRGS05JVFlqb1JEQ1BHZ3VLV0VCQTU1amIzZkRDVWFRdXlPaEVNSThlQTVrb1FjQlVtR0VJY2g0UkJDUEZydVNrUWtHVUxjSGdtSEVPTEpjVnNSa1dBSWNYd2tIRUlJSVlRNE9jVzJCVUlJSVlRUXQwWENJWVFRUW9pVEkrRVFRZ2doeE1tUmNBZ2hoQkRpNUVnNGhCQkNDSEZ5SkJ4Q0NDR0VPRGtTRGlHRUVFS2NIQW1IRUVJSUlVNk9oRU1JSVlRUUowZkNJWVFRUW9pVEkrRVFRZ2doeE1tUmNBZ2hoQkRpNUVnNGhCQkNDSEZ5SkJ4Q0NDR0VPRGtTRGlHRUVFS2NIQW1IRUVJSUlVNk9oRU1JSVlRUUowZkNJWVFRUW9pVEkrRVFRZ2doeE1tUmNBZ2hoQkRpNUVnNGhCQkNDSEZ5SkJ4Q0NDR0VPRGtTRGlHRUVFS2NIQW1IRUVJSUlVNk9oRU1JSVlRUUowZkNJWVFRUW9pVEkrRVFRZ2doeE1tUmNBZ2hoQkRpNUVnNGhCQkNDSEZ5SkJ4Q0NDR0VPRGtTRGlHRUVFS2NIQW1IRUVJSUlVN08vd2RCTFJKM2dMSkpOd0FBQUFCSlJVNUVya0pnZ2c9PSIgaWQ9ImUiIHdpZHRoPSI1NDAiIGhlaWdodD0iMTUwIiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJub25lIi8+PC9kZWZzPjwvc3ZnPg==';
|
|
172
|
+
|
|
173
|
+
const arrowSvg = 'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1IiBoZWlnaHQ9IjgiIGZpbGw9Im5vbmUiPjxwYXRoIGZpbGw9IiMwMDAiIGQ9Ik0wIDcuMDYgMy4wNTUgNCAwIC45NC45NCAwbDQuMDAxIDQtNCA0TDAgNy4wNloiIG9wYWNpdHk9Ii40Ii8+PC9zdmc+';
|
|
174
|
+
|
|
175
|
+
const successSvg = 'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbDpzcGFjZT0icHJlc2VydmUiIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBzdHlsZT0ic2hhcGUtcmVuZGVyaW5nOmdlb21ldHJpY1ByZWNpc2lvbjt0ZXh0LXJlbmRlcmluZzpnZW9tZXRyaWNQcmVjaXNpb247aW1hZ2UtcmVuZGVyaW5nOm9wdGltaXplUXVhbGl0eSIgdmlld0JveD0iMCAwIDkwIDY5Ij48cGF0aCBkPSJtMCAzOCAxMC0xMyAyNiAyMkw3OCAwbDEyIDExLTUzIDU4eiIgc3R5bGU9ImZpbGw6IzAwMDtmaWxsLXJ1bGU6bm9uemVybyIvPjwvc3ZnPg==';
|
|
176
|
+
|
|
177
|
+
const playerLugasLimitCss = "@import url(\"https://fonts.googleapis.com/css2?family=Roboto:wght@100&display=swap\");\n:host {\n font-family: \"Roboto\", sans-serif;\n}\n\n.ModalContainer {\n position: fixed;\n top: 0;\n left: 0;\n width: 100vw;\n height: 100vh;\n background-color: var(--emw--color-black-transparency-50, rgba(0, 0, 0, 0.5));\n display: flex;\n justify-content: center;\n align-items: center;\n font-size: var(--emw--font-size-small, 12px);\n container-type: inline-size;\n}\n.ModalContainer hr {\n border: 1px solid var(--emw--color-black-transparency-10, rgba(0, 0, 0, 0.1));\n margin: 10px 0px;\n}\n.ModalContainer p {\n margin: 0;\n}\n.ModalContainer button {\n width: 100%;\n border: 1px solid var(--emw--color-gray-100, #E8E9EB);\n padding: 10px 0;\n cursor: pointer;\n width: 100%;\n border-radius: var(--emw--border-radius-small, 4px);\n}\n.ModalContainer button.PrimaryButton {\n background: var(--emw--color-primary, #6BB816);\n border: none;\n font-weight: 500;\n}\n.ModalContainer button.PrimaryButton:not(:disabled) {\n color: var(--emw--color-white, #FFF);\n}\n.ModalContainer button.PrimaryButton:disabled {\n cursor: default;\n}\n.ModalContainer .Container {\n position: fixed;\n top: 30vh;\n width: 320px;\n background: var(--emw--color-white, #FFF);\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n border-radius: 4px;\n transform: scale(1.1);\n}\n.ModalContainer .ModalHeader {\n display: flex;\n justify-content: space-between;\n align-items: center;\n background-color: var(--emw--color-gray-50, #F7F8FA);\n padding: 12px;\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n}\n.ModalContainer .ModalHeader h2 {\n font-weight: bold;\n font-size: var(--emw--font-size-small, 12px);\n margin: 0;\n}\n.ModalContainer .ModalBody {\n background: var(--emw--color-white, #FFF);\n padding: 12px;\n container-type: inline-size;\n border-radius: 4px;\n}\n.ModalContainer .ModalBody .ErrorContainer {\n display: flex;\n align-items: center;\n color: var(--emw--color-red-100, #E10014);\n border-bottom: 1px solid var(--emw--color-gray-100, #E8E9EB);\n margin: -12px;\n padding: 12px;\n margin-bottom: 12px;\n font-weight: bold;\n position: relative;\n background: linear-gradient(180deg, var(--emw--color-gray-100, #E8E9EB) 0%, rgba(255, 255, 255, 0.47) 30%);\n}\n.ModalContainer .ModalBody .DismissError {\n position: absolute;\n right: 12px;\n cursor: pointer;\n}\n.ModalContainer .ModalBody .ErrorParagraph {\n display: flex;\n align-items: center;\n}\n.ModalContainer .ModalBody .ErrorIcon {\n background: linear-gradient(180deg, var(--emw--color-red-100, #E10014) 0%, var(--emw--color-red-150, #D60080) 100%);\n text-align: center;\n width: 16px;\n height: 16px;\n border-radius: 50%;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n margin-right: 6px;\n flex-shrink: 0;\n}\n.ModalContainer .ModalBody .ErrorIcon svg {\n width: 6px;\n height: 6px;\n}\n.ModalContainer .ModalBody .ErrorIcon svg path {\n fill: var(--emw--color-white, #FFF);\n}\n.ModalContainer .ModalBody .ChooseLimitLabel {\n text-transform: uppercase;\n}\n.ModalContainer .ModalBody .PredefinedAmounts {\n display: flex;\n justify-content: space-between;\n}\n.ModalContainer .ModalBody .PredefinedAmounts button {\n background: none;\n margin: -1px 0 0 -1px;\n color: var(--emw--color-gray-150, #808080);\n border-radius: 0;\n}\n.ModalContainer .ModalBody .PredefinedAmounts button.Active {\n font-weight: bold;\n background: var(--emw--color-gray-50, #F7F8FA);\n color: var(--emw--color-gray-200, #323233);\n}\n.ModalContainer .ModalBody .PredefinedAmounts button:first-child {\n border-radius: 4px 0 0 4px;\n}\n.ModalContainer .ModalBody .PredefinedAmounts button:last-child {\n border-radius: 0 4px 4px 0;\n}\n.ModalContainer .ModalBody .CustomAmountInput {\n width: 100%;\n padding: 10px;\n border: 1px solid var(--emw--color-gray-100, #E8E9EB);\n border-radius: 4px;\n box-sizing: border-box;\n margin-bottom: 6px;\n color: var(--emw--color-gray-200, #323233);\n font-weight: bold;\n}\n.ModalContainer .ModalBody .CustomAmountInput.InvalidInput {\n border: 1px solid var(--emw--color-red, #FF0000);\n}\n.ModalContainer .ModalBody .InvalidParagraph {\n font-size: var(--emw--font-size-small, 12px);\n color: var(--emw--color-red, #FF0000);\n}\n.ModalContainer .ModalBody .SetLimitBtn {\n margin-top: 10px;\n border-radius: 4px;\n}\n.ModalContainer .ValidatorContainer {\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n}\n.ModalContainer .Paragraphs:not(:last-child) {\n margin-bottom: 20px;\n}\n.ModalContainer .Paragraphs .KycThanks {\n font-weight: 500;\n text-align: center;\n padding-bottom: 12px;\n}\n.ModalContainer .Paragraphs .Kyc2 {\n color: var(--emw--color-gray-150, #666666);\n text-align: center;\n}\n.ModalContainer .LimitAmountWrapper {\n display: flex;\n flex-direction: column;\n gap: 10px;\n position: relative;\n}\n\n.ModalFooter {\n padding-top: 12px;\n margin: 5px 0px;\n}\n\n.Link {\n color: inherit;\n text-decoration: underline;\n cursor: pointer;\n}\n.Link.Inactive {\n cursor: default;\n color: var(--emw--color-gray-150, #808080);\n}\n\n.ContainerButtons {\n display: flex;\n justify-content: space-around;\n gap: 10px;\n padding-top: 5px;\n}\n.ContainerButtons .FirstButton {\n background-color: var(--emw--color-white, #FFF);\n font-weight: bold;\n color: var(--emw--button-color, #002554);\n font-size: var(--emw--font-size-small, 10px);\n border: 2.5px solid var(--emw--button-border-color, #DEE2E6);\n width: 100%;\n cursor: pointer;\n}\n.ContainerButtons .SecondButton {\n background-color: var(--emw--color-primary, #6BB816);\n border: none;\n cursor: pointer;\n font-weight: bold;\n font-size: var(--emw--font-size-small, 10px);\n color: var(--emw--color-white, #FFF);\n width: 100%;\n}\n.ContainerButtons button {\n width: 240px;\n height: 30px;\n}\n\n.ContainerOptions {\n padding-top: 10px;\n}\n.ContainerOptions > button {\n border-radius: 0;\n border-left: 0;\n border-right: 0;\n border-bottom: 0;\n border-top: 1px solid var(--emw--color-white, #E8E9EB);\n background-color: var(--emw--color-white, #FFFFFF);\n display: grid;\n text-align: left;\n font-size: 12px;\n grid-template-rows: 1fr 1fr;\n grid-template-columns: 1fr 20px;\n color: var(--emw--color-black, #111111);\n}\n.ContainerOptions > button:last-child {\n padding-bottom: 0;\n}\n.ContainerOptions .Option {\n font-family: \"Roboto\", sans-serif;\n grid-column: 1/2;\n grid-row: 1/2;\n font-weight: 400;\n}\n.ContainerOptions .OptionSubTitle {\n font-family: \"Roboto Condensed\", sans-serif;\n font-weight: 300;\n grid-column: 1/2;\n grid-row: 2/3;\n}\n.ContainerOptions .ArrowIcon {\n grid-column: 2/3;\n grid-row: 1/3;\n margin: auto;\n}\n\ninput {\n /* Firefox */\n -moz-appearance: textfield;\n /* Chrome, Safari, Edge, Opera */\n}\ninput::-webkit-outer-spin-button, input::-webkit-inner-spin-button {\n -webkit-appearance: none;\n margin: 0;\n}\n\n@container (max-width: 1300px) {\n .ModalContainer .Container {\n width: 50%;\n }\n}\n@container (max-width: 800px) {\n .ModalContainer .Container {\n width: 70%;\n }\n}\n.LoadingWrapper {\n width: 100%;\n height: 100%;\n background: var(--emw--color-white-transparency-80, rgba(255, 255, 255, 0.8));\n position: absolute;\n display: flex;\n justify-content: center;\n align-items: center;\n}\n\n.spinner {\n animation: rotate 2s linear infinite;\n z-index: 2;\n width: 30px;\n height: 30px;\n}\n.spinner .path {\n stroke: var(--emw--color-primary, #6BB816);\n stroke-linecap: round;\n animation: dash 1.5s ease-in-out infinite;\n}\n\n.DocumentIcon {\n padding: 20px 48px 0 86px;\n}\n\n@keyframes rotate {\n 100% {\n transform: rotate(360deg);\n }\n}\n@keyframes dash {\n 0% {\n stroke-dasharray: 1, 150;\n stroke-dashoffset: 0;\n }\n 50% {\n stroke-dasharray: 90, 150;\n stroke-dashoffset: -35;\n }\n 100% {\n stroke-dasharray: 90, 150;\n stroke-dashoffset: -124;\n }\n}";
|
|
163
178
|
const PlayerLugasLimitStyle0 = playerLugasLimitCss;
|
|
164
179
|
|
|
165
180
|
const PlayerLugasLimit = class {
|
|
166
181
|
constructor(hostRef) {
|
|
167
182
|
index.registerInstance(this, hostRef);
|
|
168
183
|
this.uploadDocuments = index.createEvent(this, "uploadDocuments", 7);
|
|
184
|
+
this.bankLogin = index.createEvent(this, "bankLogin", 7);
|
|
169
185
|
this.closePopup = index.createEvent(this, "closePopup", 7);
|
|
170
186
|
// Internal variables
|
|
171
187
|
this.predefinedAmounts = [];
|
|
@@ -176,6 +192,10 @@ const PlayerLugasLimit = class {
|
|
|
176
192
|
this.uploadDocuments.emit();
|
|
177
193
|
window.postMessage({ type: 'uploadDocuments' }, window.location.href);
|
|
178
194
|
break;
|
|
195
|
+
case 'BankLogin':
|
|
196
|
+
this.bankLogin.emit();
|
|
197
|
+
window.postMessage({ type: 'bankLogin' }, window.location.href);
|
|
198
|
+
break;
|
|
179
199
|
case 'Close':
|
|
180
200
|
this.closePopup.emit();
|
|
181
201
|
window.postMessage({ type: 'closePopup' }, window.location.href);
|
|
@@ -193,6 +213,7 @@ const PlayerLugasLimit = class {
|
|
|
193
213
|
this.clientStylingUrl = '';
|
|
194
214
|
this.mbSource = undefined;
|
|
195
215
|
this.translationUrl = '';
|
|
216
|
+
this.showExistingLimit = true;
|
|
196
217
|
this.hasValidation = true;
|
|
197
218
|
this.kycStep = undefined;
|
|
198
219
|
this.isLoading = false;
|
|
@@ -225,6 +246,11 @@ const PlayerLugasLimit = class {
|
|
|
225
246
|
setClientStylingURL(this.stylingContainer, this.clientStylingUrl);
|
|
226
247
|
}
|
|
227
248
|
}
|
|
249
|
+
setScrollable(scrollable) {
|
|
250
|
+
window.postMessage({
|
|
251
|
+
type: scrollable ? 'EnableScroll' : 'DisableScroll'
|
|
252
|
+
}, window.location.href);
|
|
253
|
+
}
|
|
228
254
|
// Lifecycle methods
|
|
229
255
|
async componentWillLoad() {
|
|
230
256
|
if (this.translationUrl.length > 2) {
|
|
@@ -245,9 +271,11 @@ const PlayerLugasLimit = class {
|
|
|
245
271
|
if (this.clientStylingUrl)
|
|
246
272
|
setClientStylingURL(this.stylingContainer, this.clientStylingUrl);
|
|
247
273
|
}
|
|
274
|
+
this.setScrollable(false);
|
|
248
275
|
}
|
|
249
276
|
disconnectedCallback() {
|
|
250
277
|
this.stylingSubscription && this.stylingSubscription.unsubscribe();
|
|
278
|
+
this.setScrollable(true);
|
|
251
279
|
}
|
|
252
280
|
async fetchDepositLimitConfig() {
|
|
253
281
|
this.isLoading = true;
|
|
@@ -372,6 +400,9 @@ const PlayerLugasLimit = class {
|
|
|
372
400
|
event.target.value = this.newAmount;
|
|
373
401
|
}
|
|
374
402
|
}
|
|
403
|
+
renderOption(opt) {
|
|
404
|
+
return (index.h("button", { onClick: () => this.handleClick(opt) }, index.h("div", { class: "Option" }, translate(opt, this.lang)), index.h("div", { class: "OptionSubTitle" }, translate(`${opt}SubTitle`, this.lang)), index.h("img", { class: "ArrowIcon", src: arrowSvg, alt: "ArrowIcon" })));
|
|
405
|
+
}
|
|
375
406
|
renderKYC(step) {
|
|
376
407
|
switch (step) {
|
|
377
408
|
case 0:
|
|
@@ -380,9 +411,9 @@ const PlayerLugasLimit = class {
|
|
|
380
411
|
case 1:
|
|
381
412
|
return (index.h("div", { class: "ValidatorContainer" }, index.h("div", { class: "Paragraphs" }, index.h("p", null, translate('kycSure', this.lang, { values: { currency: this.currency } })), index.h("p", null, translate('kyc1', this.lang, { values: { currency: this.currency } })), index.h("div", { class: "ContainerButtons" }, index.h("button", { class: "FirstButton", onClick: () => this.postPlayerSituation(this.newAmount, false) }, translate('setNewLimit', this.lang, { values: { currency: this.currency } })), index.h("button", { class: "SecondButton", onClick: () => this.postPlayerSituation(this.amount, true) }, translate('keepExistingLimit', this.lang, { values: { currency: this.currency } }))))));
|
|
382
413
|
case 2:
|
|
383
|
-
return (index.h("div", { class: "ValidatorContainer" }, index.h("
|
|
414
|
+
return (index.h("div", { class: "ValidatorContainer" }, index.h("img", { class: "DocumentIcon", src: documentSvg, alt: "DocumentIcon" }), index.h("div", { class: "Paragraphs" }, index.h("p", { class: "KycThanks" }, translate('kycThanks', this.lang, { values: { currency: this.currency } })), index.h("p", { class: "Kyc2", innerHTML: translate('kyc2', this.lang, { values: { currency: this.currency, amount: this.regularDepositLimitAmount } }) }), index.h("div", { class: "ContainerOptions" }, ['BankLogin', 'UploadDocuments'].map(opt => this.renderOption(opt))))));
|
|
384
415
|
default:
|
|
385
|
-
return (index.h("div", { class: "ValidatorContainer" }, index.h("div", { class: "Paragraphs" }, index.h("p",
|
|
416
|
+
return (index.h("div", { class: "ValidatorContainer" }, index.h("div", { class: "Paragraphs" }, index.h("div", { class: "IconContainer" }, index.h("img", { src: successSvg, alt: "SuccessIcon" })), index.h("p", { class: "ParagraphStep3" }, translate('kycSuccess', this.lang, { values: { currency: this.currency } })), index.h("p", { class: "ParagraphStep3" }, translate('kyc3', this.lang, { values: { currency: this.currency } })), index.h("div", { class: "ContainerButtons" }, index.h("button", { class: "SecondButton", onClick: () => this.handleClick('Close') }, translate('Close', this.lang, { values: { currency: this.currency } }))))));
|
|
386
417
|
}
|
|
387
418
|
}
|
|
388
419
|
renderPredefinedButtons() {
|
|
@@ -405,6 +436,15 @@ const PlayerLugasLimit = class {
|
|
|
405
436
|
}
|
|
406
437
|
})))))));
|
|
407
438
|
}
|
|
439
|
+
renderTitle() {
|
|
440
|
+
switch (this.kycStep) {
|
|
441
|
+
case 2:
|
|
442
|
+
case 3:
|
|
443
|
+
return translate('LugasSetLimitDialogTitle2', this.lang);
|
|
444
|
+
default:
|
|
445
|
+
return translate('LugasSetLimitDialogTitle', this.lang);
|
|
446
|
+
}
|
|
447
|
+
}
|
|
408
448
|
render() {
|
|
409
449
|
const kycConfirmation = this.renderKYC(this.kycStep);
|
|
410
450
|
const validationContainer = this.renderValidator();
|
|
@@ -414,8 +454,8 @@ const PlayerLugasLimit = class {
|
|
|
414
454
|
if (this.errorMessageOnInitialization) {
|
|
415
455
|
return (index.h("div", null, index.h("p", null, this.errorMessageOnInitialization)));
|
|
416
456
|
}
|
|
417
|
-
return (index.h("div", { class: "ModalContainer", ref: el => this.stylingContainer = el }, index.h("div", { class: "Container" }, index.h("div", { class: "ModalHeader" }, index.h("h2", null,
|
|
418
|
-
index.h("div", { class: "ModalFooter" }, index.h("hr", null), index.h("div", { class: "Paragraphs" }, index.h("p", { class: "ExistingLimit" }, translate('LugasSetLimitDialogExistingLimit.text', this.lang), index.h("span", { class: this.isUseExistingLimitOptionActive ? 'Link' : 'Link Inactive', onClick: () => this.postPlayerSituation(this.amount, true) }, translate('LugasSetLimitDialogExistingLimit.link', this.lang))), index.h("p", { class: "PrivacyNote" }, translate('LugasSetLimitDialogPrivacyNote.text', this.lang), index.h("span", { class: "Link", onClick: this.goToPrivacyPolicy }, translate('LugasSetLimitDialogPrivacyNote.link', this.lang)))))))));
|
|
457
|
+
return (index.h("div", { class: "ModalContainer", ref: el => this.stylingContainer = el, "data-current-step": this.kycStep }, index.h("div", { class: "Container" }, index.h("div", { class: "ModalHeader" }, index.h("h2", null, this.renderTitle())), index.h("div", { class: "ModalBody" }, this.hasValidation ? validationContainer : kycConfirmation, this.hasValidation &&
|
|
458
|
+
index.h("div", { class: "ModalFooter" }, index.h("hr", null), index.h("div", { class: "Paragraphs" }, this.showExistingLimit ? index.h("p", { class: "ExistingLimit" }, translate('LugasSetLimitDialogExistingLimit.text', this.lang), index.h("span", { class: this.isUseExistingLimitOptionActive ? 'Link' : 'Link Inactive', onClick: () => this.postPlayerSituation(this.amount, true) }, translate('LugasSetLimitDialogExistingLimit.link', this.lang))) : null, index.h("p", { class: "PrivacyNote" }, translate('LugasSetLimitDialogPrivacyNote.text', this.lang), index.h("span", { class: "Link", onClick: this.goToPrivacyPolicy }, translate('LugasSetLimitDialogPrivacyNote.link', this.lang)))))))));
|
|
419
459
|
}
|
|
420
460
|
static get watchers() { return {
|
|
421
461
|
"translationUrl": ["handleNewTranslations"],
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
const index = require('./index-
|
|
5
|
+
const index = require('./index-2079b2a6.js');
|
|
6
6
|
const appGlobals = require('./app-globals-3a1e7e63.js');
|
|
7
7
|
|
|
8
8
|
/*
|
|
@@ -19,7 +19,7 @@ var patchBrowser = () => {
|
|
|
19
19
|
|
|
20
20
|
patchBrowser().then(async (options) => {
|
|
21
21
|
await appGlobals.globalScripts();
|
|
22
|
-
return index.bootstrapLazy([["player-lugas-limit.cjs",[[1,"player-lugas-limit",{"userId":[513,"user-id"],"session":[513],"endpoint":[513],"currency":[513],"flow":[513],"amount":[513],"lang":[513],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"mbSource":[513,"mb-source"],"translationUrl":[513,"translation-url"],"hasValidation":[32],"kycStep":[32],"isLoading":[32],"regularDepositLimitAmount":[32],"isSubmitted":[32],"isUseExistingLimitOptionActive":[32],"selectedPredefinedAmount":[32],"errorMessageOnInitialization":[32],"errorMessageOnSubmit":[32],"errorMessageOnInput":[32],"hasLugasError":[32],"showCustomAmount":[32],"newAmount":[32]},null,{"translationUrl":["handleNewTranslations"],"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"]}]]]], options);
|
|
22
|
+
return index.bootstrapLazy([["player-lugas-limit.cjs",[[1,"player-lugas-limit",{"userId":[513,"user-id"],"session":[513],"endpoint":[513],"currency":[513],"flow":[513],"amount":[513],"lang":[513],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"mbSource":[513,"mb-source"],"translationUrl":[513,"translation-url"],"showExistingLimit":[516,"show-existing-limit"],"hasValidation":[32],"kycStep":[32],"isLoading":[32],"regularDepositLimitAmount":[32],"isSubmitted":[32],"isUseExistingLimitOptionActive":[32],"selectedPredefinedAmount":[32],"errorMessageOnInitialization":[32],"errorMessageOnSubmit":[32],"errorMessageOnInput":[32],"hasLugasError":[32],"showCustomAmount":[32],"newAmount":[32]},null,{"translationUrl":["handleNewTranslations"],"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"]}]]]], options);
|
|
23
23
|
});
|
|
24
24
|
|
|
25
25
|
exports.setNonce = index.setNonce;
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
}
|
|
5
5
|
|
|
6
6
|
.ModalContainer {
|
|
7
|
-
position:
|
|
7
|
+
position: fixed;
|
|
8
8
|
top: 0;
|
|
9
9
|
left: 0;
|
|
10
10
|
width: 100vw;
|
|
@@ -59,6 +59,8 @@
|
|
|
59
59
|
align-items: center;
|
|
60
60
|
background-color: var(--emw--color-gray-50, #F7F8FA);
|
|
61
61
|
padding: 12px;
|
|
62
|
+
border-top-left-radius: 4px;
|
|
63
|
+
border-top-right-radius: 4px;
|
|
62
64
|
}
|
|
63
65
|
.ModalContainer .ModalHeader h2 {
|
|
64
66
|
font-weight: bold;
|
|
@@ -122,6 +124,7 @@
|
|
|
122
124
|
background: none;
|
|
123
125
|
margin: -1px 0 0 -1px;
|
|
124
126
|
color: var(--emw--color-gray-150, #808080);
|
|
127
|
+
border-radius: 0;
|
|
125
128
|
}
|
|
126
129
|
.ModalContainer .ModalBody .PredefinedAmounts button.Active {
|
|
127
130
|
font-weight: bold;
|
|
@@ -153,6 +156,7 @@
|
|
|
153
156
|
}
|
|
154
157
|
.ModalContainer .ModalBody .SetLimitBtn {
|
|
155
158
|
margin-top: 10px;
|
|
159
|
+
border-radius: 4px;
|
|
156
160
|
}
|
|
157
161
|
.ModalContainer .ValidatorContainer {
|
|
158
162
|
display: flex;
|
|
@@ -162,6 +166,15 @@
|
|
|
162
166
|
.ModalContainer .Paragraphs:not(:last-child) {
|
|
163
167
|
margin-bottom: 20px;
|
|
164
168
|
}
|
|
169
|
+
.ModalContainer .Paragraphs .KycThanks {
|
|
170
|
+
font-weight: 500;
|
|
171
|
+
text-align: center;
|
|
172
|
+
padding-bottom: 12px;
|
|
173
|
+
}
|
|
174
|
+
.ModalContainer .Paragraphs .Kyc2 {
|
|
175
|
+
color: var(--emw--color-gray-150, #666666);
|
|
176
|
+
text-align: center;
|
|
177
|
+
}
|
|
165
178
|
.ModalContainer .LimitAmountWrapper {
|
|
166
179
|
display: flex;
|
|
167
180
|
flex-direction: column;
|
|
@@ -213,6 +226,44 @@
|
|
|
213
226
|
height: 30px;
|
|
214
227
|
}
|
|
215
228
|
|
|
229
|
+
.ContainerOptions {
|
|
230
|
+
padding-top: 10px;
|
|
231
|
+
}
|
|
232
|
+
.ContainerOptions > button {
|
|
233
|
+
border-radius: 0;
|
|
234
|
+
border-left: 0;
|
|
235
|
+
border-right: 0;
|
|
236
|
+
border-bottom: 0;
|
|
237
|
+
border-top: 1px solid var(--emw--color-white, #E8E9EB);
|
|
238
|
+
background-color: var(--emw--color-white, #FFFFFF);
|
|
239
|
+
display: grid;
|
|
240
|
+
text-align: left;
|
|
241
|
+
font-size: 12px;
|
|
242
|
+
grid-template-rows: 1fr 1fr;
|
|
243
|
+
grid-template-columns: 1fr 20px;
|
|
244
|
+
color: var(--emw--color-black, #111111);
|
|
245
|
+
}
|
|
246
|
+
.ContainerOptions > button:last-child {
|
|
247
|
+
padding-bottom: 0;
|
|
248
|
+
}
|
|
249
|
+
.ContainerOptions .Option {
|
|
250
|
+
font-family: "Roboto", sans-serif;
|
|
251
|
+
grid-column: 1/2;
|
|
252
|
+
grid-row: 1/2;
|
|
253
|
+
font-weight: 400;
|
|
254
|
+
}
|
|
255
|
+
.ContainerOptions .OptionSubTitle {
|
|
256
|
+
font-family: "Roboto Condensed", sans-serif;
|
|
257
|
+
font-weight: 300;
|
|
258
|
+
grid-column: 1/2;
|
|
259
|
+
grid-row: 2/3;
|
|
260
|
+
}
|
|
261
|
+
.ContainerOptions .ArrowIcon {
|
|
262
|
+
grid-column: 2/3;
|
|
263
|
+
grid-row: 1/3;
|
|
264
|
+
margin: auto;
|
|
265
|
+
}
|
|
266
|
+
|
|
216
267
|
input {
|
|
217
268
|
/* Firefox */
|
|
218
269
|
-moz-appearance: textfield;
|
|
@@ -255,6 +306,10 @@ input::-webkit-outer-spin-button, input::-webkit-inner-spin-button {
|
|
|
255
306
|
animation: dash 1.5s ease-in-out infinite;
|
|
256
307
|
}
|
|
257
308
|
|
|
309
|
+
.DocumentIcon {
|
|
310
|
+
padding: 20px 48px 0 86px;
|
|
311
|
+
}
|
|
312
|
+
|
|
258
313
|
@keyframes rotate {
|
|
259
314
|
100% {
|
|
260
315
|
transform: rotate(360deg);
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { h } from "@stencil/core";
|
|
2
2
|
import { getTranslations, translate } from "../../utils/locale.utils";
|
|
3
3
|
import { setClientStyling, setClientStylingURL, setStreamStyling } from "../../../../../../../../libs/common/src/styling/index";
|
|
4
|
+
import DocumentIcon from "../../static/document.svg";
|
|
5
|
+
import ArrowIcon from "../../static/arrow.svg";
|
|
6
|
+
import SuccessIcon from "../../static/success.svg";
|
|
4
7
|
export class PlayerLugasLimit {
|
|
5
8
|
constructor() {
|
|
6
9
|
// Internal variables
|
|
@@ -12,6 +15,10 @@ export class PlayerLugasLimit {
|
|
|
12
15
|
this.uploadDocuments.emit();
|
|
13
16
|
window.postMessage({ type: 'uploadDocuments' }, window.location.href);
|
|
14
17
|
break;
|
|
18
|
+
case 'BankLogin':
|
|
19
|
+
this.bankLogin.emit();
|
|
20
|
+
window.postMessage({ type: 'bankLogin' }, window.location.href);
|
|
21
|
+
break;
|
|
15
22
|
case 'Close':
|
|
16
23
|
this.closePopup.emit();
|
|
17
24
|
window.postMessage({ type: 'closePopup' }, window.location.href);
|
|
@@ -29,6 +36,7 @@ export class PlayerLugasLimit {
|
|
|
29
36
|
this.clientStylingUrl = '';
|
|
30
37
|
this.mbSource = undefined;
|
|
31
38
|
this.translationUrl = '';
|
|
39
|
+
this.showExistingLimit = true;
|
|
32
40
|
this.hasValidation = true;
|
|
33
41
|
this.kycStep = undefined;
|
|
34
42
|
this.isLoading = false;
|
|
@@ -61,6 +69,11 @@ export class PlayerLugasLimit {
|
|
|
61
69
|
setClientStylingURL(this.stylingContainer, this.clientStylingUrl);
|
|
62
70
|
}
|
|
63
71
|
}
|
|
72
|
+
setScrollable(scrollable) {
|
|
73
|
+
window.postMessage({
|
|
74
|
+
type: scrollable ? 'EnableScroll' : 'DisableScroll'
|
|
75
|
+
}, window.location.href);
|
|
76
|
+
}
|
|
64
77
|
// Lifecycle methods
|
|
65
78
|
async componentWillLoad() {
|
|
66
79
|
if (this.translationUrl.length > 2) {
|
|
@@ -81,9 +94,11 @@ export class PlayerLugasLimit {
|
|
|
81
94
|
if (this.clientStylingUrl)
|
|
82
95
|
setClientStylingURL(this.stylingContainer, this.clientStylingUrl);
|
|
83
96
|
}
|
|
97
|
+
this.setScrollable(false);
|
|
84
98
|
}
|
|
85
99
|
disconnectedCallback() {
|
|
86
100
|
this.stylingSubscription && this.stylingSubscription.unsubscribe();
|
|
101
|
+
this.setScrollable(true);
|
|
87
102
|
}
|
|
88
103
|
async fetchDepositLimitConfig() {
|
|
89
104
|
this.isLoading = true;
|
|
@@ -208,6 +223,9 @@ export class PlayerLugasLimit {
|
|
|
208
223
|
event.target.value = this.newAmount;
|
|
209
224
|
}
|
|
210
225
|
}
|
|
226
|
+
renderOption(opt) {
|
|
227
|
+
return (h("button", { onClick: () => this.handleClick(opt) }, h("div", { class: "Option" }, translate(opt, this.lang)), h("div", { class: "OptionSubTitle" }, translate(`${opt}SubTitle`, this.lang)), h("img", { class: "ArrowIcon", src: ArrowIcon, alt: "ArrowIcon" })));
|
|
228
|
+
}
|
|
211
229
|
renderKYC(step) {
|
|
212
230
|
switch (step) {
|
|
213
231
|
case 0:
|
|
@@ -216,9 +234,9 @@ export class PlayerLugasLimit {
|
|
|
216
234
|
case 1:
|
|
217
235
|
return (h("div", { class: "ValidatorContainer" }, h("div", { class: "Paragraphs" }, h("p", null, translate('kycSure', this.lang, { values: { currency: this.currency } })), h("p", null, translate('kyc1', this.lang, { values: { currency: this.currency } })), h("div", { class: "ContainerButtons" }, h("button", { class: "FirstButton", onClick: () => this.postPlayerSituation(this.newAmount, false) }, translate('setNewLimit', this.lang, { values: { currency: this.currency } })), h("button", { class: "SecondButton", onClick: () => this.postPlayerSituation(this.amount, true) }, translate('keepExistingLimit', this.lang, { values: { currency: this.currency } }))))));
|
|
218
236
|
case 2:
|
|
219
|
-
return (h("div", { class: "ValidatorContainer" }, h("
|
|
237
|
+
return (h("div", { class: "ValidatorContainer" }, h("img", { class: "DocumentIcon", src: DocumentIcon, alt: "DocumentIcon" }), h("div", { class: "Paragraphs" }, h("p", { class: "KycThanks" }, translate('kycThanks', this.lang, { values: { currency: this.currency } })), h("p", { class: "Kyc2", innerHTML: translate('kyc2', this.lang, { values: { currency: this.currency, amount: this.regularDepositLimitAmount } }) }), h("div", { class: "ContainerOptions" }, ['BankLogin', 'UploadDocuments'].map(opt => this.renderOption(opt))))));
|
|
220
238
|
default:
|
|
221
|
-
return (h("div", { class: "ValidatorContainer" }, h("div", { class: "Paragraphs" }, h("p",
|
|
239
|
+
return (h("div", { class: "ValidatorContainer" }, h("div", { class: "Paragraphs" }, h("div", { class: "IconContainer" }, h("img", { src: SuccessIcon, alt: "SuccessIcon" })), h("p", { class: "ParagraphStep3" }, translate('kycSuccess', this.lang, { values: { currency: this.currency } })), h("p", { class: "ParagraphStep3" }, translate('kyc3', this.lang, { values: { currency: this.currency } })), h("div", { class: "ContainerButtons" }, h("button", { class: "SecondButton", onClick: () => this.handleClick('Close') }, translate('Close', this.lang, { values: { currency: this.currency } }))))));
|
|
222
240
|
}
|
|
223
241
|
}
|
|
224
242
|
renderPredefinedButtons() {
|
|
@@ -241,6 +259,15 @@ export class PlayerLugasLimit {
|
|
|
241
259
|
}
|
|
242
260
|
})))))));
|
|
243
261
|
}
|
|
262
|
+
renderTitle() {
|
|
263
|
+
switch (this.kycStep) {
|
|
264
|
+
case 2:
|
|
265
|
+
case 3:
|
|
266
|
+
return translate('LugasSetLimitDialogTitle2', this.lang);
|
|
267
|
+
default:
|
|
268
|
+
return translate('LugasSetLimitDialogTitle', this.lang);
|
|
269
|
+
}
|
|
270
|
+
}
|
|
244
271
|
render() {
|
|
245
272
|
const kycConfirmation = this.renderKYC(this.kycStep);
|
|
246
273
|
const validationContainer = this.renderValidator();
|
|
@@ -250,8 +277,8 @@ export class PlayerLugasLimit {
|
|
|
250
277
|
if (this.errorMessageOnInitialization) {
|
|
251
278
|
return (h("div", null, h("p", null, this.errorMessageOnInitialization)));
|
|
252
279
|
}
|
|
253
|
-
return (h("div", { class: "ModalContainer", ref: el => this.stylingContainer = el }, h("div", { class: "Container" }, h("div", { class: "ModalHeader" }, h("h2", null,
|
|
254
|
-
h("div", { class: "ModalFooter" }, h("hr", null), h("div", { class: "Paragraphs" }, h("p", { class: "ExistingLimit" }, translate('LugasSetLimitDialogExistingLimit.text', this.lang), h("span", { class: this.isUseExistingLimitOptionActive ? 'Link' : 'Link Inactive', onClick: () => this.postPlayerSituation(this.amount, true) }, translate('LugasSetLimitDialogExistingLimit.link', this.lang))), h("p", { class: "PrivacyNote" }, translate('LugasSetLimitDialogPrivacyNote.text', this.lang), h("span", { class: "Link", onClick: this.goToPrivacyPolicy }, translate('LugasSetLimitDialogPrivacyNote.link', this.lang)))))))));
|
|
280
|
+
return (h("div", { class: "ModalContainer", ref: el => this.stylingContainer = el, "data-current-step": this.kycStep }, h("div", { class: "Container" }, h("div", { class: "ModalHeader" }, h("h2", null, this.renderTitle())), h("div", { class: "ModalBody" }, this.hasValidation ? validationContainer : kycConfirmation, this.hasValidation &&
|
|
281
|
+
h("div", { class: "ModalFooter" }, h("hr", null), h("div", { class: "Paragraphs" }, this.showExistingLimit ? h("p", { class: "ExistingLimit" }, translate('LugasSetLimitDialogExistingLimit.text', this.lang), h("span", { class: this.isUseExistingLimitOptionActive ? 'Link' : 'Link Inactive', onClick: () => this.postPlayerSituation(this.amount, true) }, translate('LugasSetLimitDialogExistingLimit.link', this.lang))) : null, h("p", { class: "PrivacyNote" }, translate('LugasSetLimitDialogPrivacyNote.text', this.lang), h("span", { class: "Link", onClick: this.goToPrivacyPolicy }, translate('LugasSetLimitDialogPrivacyNote.link', this.lang)))))))));
|
|
255
282
|
}
|
|
256
283
|
static get is() { return "player-lugas-limit"; }
|
|
257
284
|
static get encapsulation() { return "shadow"; }
|
|
@@ -462,6 +489,24 @@ export class PlayerLugasLimit {
|
|
|
462
489
|
"attribute": "translation-url",
|
|
463
490
|
"reflect": true,
|
|
464
491
|
"defaultValue": "''"
|
|
492
|
+
},
|
|
493
|
+
"showExistingLimit": {
|
|
494
|
+
"type": "boolean",
|
|
495
|
+
"mutable": false,
|
|
496
|
+
"complexType": {
|
|
497
|
+
"original": "boolean",
|
|
498
|
+
"resolved": "boolean",
|
|
499
|
+
"references": {}
|
|
500
|
+
},
|
|
501
|
+
"required": false,
|
|
502
|
+
"optional": false,
|
|
503
|
+
"docs": {
|
|
504
|
+
"tags": [],
|
|
505
|
+
"text": ""
|
|
506
|
+
},
|
|
507
|
+
"attribute": "show-existing-limit",
|
|
508
|
+
"reflect": true,
|
|
509
|
+
"defaultValue": "true"
|
|
465
510
|
}
|
|
466
511
|
};
|
|
467
512
|
}
|
|
@@ -498,6 +543,21 @@ export class PlayerLugasLimit {
|
|
|
498
543
|
"resolved": "any",
|
|
499
544
|
"references": {}
|
|
500
545
|
}
|
|
546
|
+
}, {
|
|
547
|
+
"method": "bankLogin",
|
|
548
|
+
"name": "bankLogin",
|
|
549
|
+
"bubbles": true,
|
|
550
|
+
"cancelable": true,
|
|
551
|
+
"composed": true,
|
|
552
|
+
"docs": {
|
|
553
|
+
"tags": [],
|
|
554
|
+
"text": ""
|
|
555
|
+
},
|
|
556
|
+
"complexType": {
|
|
557
|
+
"original": "any",
|
|
558
|
+
"resolved": "any",
|
|
559
|
+
"references": {}
|
|
560
|
+
}
|
|
501
561
|
}, {
|
|
502
562
|
"method": "closePopup",
|
|
503
563
|
"name": "closePopup",
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="5" height="8" fill="none"><path fill="#000" d="M0 7.06 3.055 4 0 .94.94 0l4.001 4-4 4L0 7.06Z" opacity=".4"/></svg>
|