@everymatrix/player-elevate-card-jojogroup 1.80.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (100) hide show
  1. package/dist/cjs/app-globals-3a1e7e63.js +5 -0
  2. package/dist/cjs/general-styling-wrapper_6.cjs.entry.js +3570 -0
  3. package/dist/cjs/index-51874d29.js +1619 -0
  4. package/dist/cjs/index.cjs.js +2 -0
  5. package/dist/cjs/loader.cjs.js +15 -0
  6. package/dist/cjs/player-elevate-card-jojogroup.cjs.js +25 -0
  7. package/dist/collection/collection-manifest.json +23 -0
  8. package/dist/collection/components/player-elevate-card-data/player-elevate-card-data.css +192 -0
  9. package/dist/collection/components/player-elevate-card-data/player-elevate-card-data.js +244 -0
  10. package/dist/collection/components/player-elevate-card-jojogroup/index.js +1 -0
  11. package/dist/collection/components/player-elevate-card-jojogroup/player-elevate-card-jojogroup-items.js +23 -0
  12. package/dist/collection/components/player-elevate-card-jojogroup/player-elevate-card-jojogroup.css +64 -0
  13. package/dist/collection/components/player-elevate-card-jojogroup/player-elevate-card-jojogroup.js +297 -0
  14. package/dist/collection/components/player-elevate-loyaltycard-jojogroup/player-elevate-loyaltycard-jojogroup.css +98 -0
  15. package/dist/collection/components/player-elevate-loyaltycard-jojogroup/player-elevate-loyaltycard-jojogroup.js +310 -0
  16. package/dist/collection/components/player-elevate-pointcard/player-elevate-pointcard.css +70 -0
  17. package/dist/collection/components/player-elevate-pointcard/player-elevate-pointcard.js +334 -0
  18. package/dist/collection/components/player-rakeback-card/player-rakeback-card.css +87 -0
  19. package/dist/collection/components/player-rakeback-card/player-rakeback-card.js +357 -0
  20. package/dist/collection/components/static/button-default.svg +42 -0
  21. package/dist/collection/components/static/button-disabled.svg +4 -0
  22. package/dist/collection/components/static/button-hover.svg +4 -0
  23. package/dist/collection/components/static/button-level.svg +27 -0
  24. package/dist/collection/components/static/button-pressed.svg +18 -0
  25. package/dist/collection/components/static/button-redeem.svg +36 -0
  26. package/dist/collection/components/static/card-ground-over.png +0 -0
  27. package/dist/collection/components/static/card-ground-over.svg +903 -0
  28. package/dist/collection/components/static/card-ground.png +0 -0
  29. package/dist/collection/components/static/card-ground.svg +34 -0
  30. package/dist/collection/components/static/info.svg +4 -0
  31. package/dist/collection/components/static/level-badge.png +0 -0
  32. package/dist/collection/components/static/level-percent.svg +80 -0
  33. package/dist/collection/components/static/tips-info.svg +21 -0
  34. package/dist/collection/components/static/user.svg +3 -0
  35. package/dist/collection/index.js +1 -0
  36. package/dist/collection/models/player-elevate.js +1 -0
  37. package/dist/collection/utils/locale.utils.js +238 -0
  38. package/dist/collection/utils/utils.js +51 -0
  39. package/dist/esm/app-globals-0f993ce5.js +3 -0
  40. package/dist/esm/general-styling-wrapper_6.entry.js +3561 -0
  41. package/dist/esm/index-9498ebd7.js +1589 -0
  42. package/dist/esm/index.js +1 -0
  43. package/dist/esm/loader.js +11 -0
  44. package/dist/esm/player-elevate-card-jojogroup.js +20 -0
  45. package/dist/index.cjs.js +1 -0
  46. package/dist/index.js +1 -0
  47. package/dist/player-elevate-card-jojogroup/app-globals-0f993ce5.js +1 -0
  48. package/dist/player-elevate-card-jojogroup/general-styling-wrapper_6.entry.js +1 -0
  49. package/dist/player-elevate-card-jojogroup/index-9498ebd7.js +2 -0
  50. package/dist/player-elevate-card-jojogroup/index.esm.js +0 -0
  51. package/dist/player-elevate-card-jojogroup/player-elevate-card-jojogroup.esm.js +1 -0
  52. package/dist/static/button-default.svg +42 -0
  53. package/dist/static/button-disabled.svg +4 -0
  54. package/dist/static/button-hover.svg +4 -0
  55. package/dist/static/button-level.svg +27 -0
  56. package/dist/static/button-pressed.svg +18 -0
  57. package/dist/static/button-redeem.svg +36 -0
  58. package/dist/static/card-ground-over.png +0 -0
  59. package/dist/static/card-ground-over.svg +903 -0
  60. package/dist/static/card-ground.png +0 -0
  61. package/dist/static/card-ground.svg +34 -0
  62. package/dist/static/info.svg +4 -0
  63. package/dist/static/level-badge.png +0 -0
  64. package/dist/static/level-percent.svg +80 -0
  65. package/dist/static/tips-info.svg +21 -0
  66. package/dist/static/user.svg +3 -0
  67. package/dist/stencil.config.dev.js +18 -0
  68. package/dist/stencil.config.js +20 -0
  69. package/dist/storybook/main.js +47 -0
  70. package/dist/storybook/preview.js +9 -0
  71. package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/player-elevate-card-jojogroup/.stencil/libs/common/src/storybook/storybook-utils.d.ts +39 -0
  72. package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/player-elevate-card-jojogroup/.stencil/packages/stencil/player-elevate-card-jojogroup/stencil.config.d.ts +2 -0
  73. package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/player-elevate-card-jojogroup/.stencil/packages/stencil/player-elevate-card-jojogroup/stencil.config.dev.d.ts +2 -0
  74. package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/player-elevate-card-jojogroup/.stencil/packages/stencil/player-elevate-card-jojogroup/storybook/main.d.ts +3 -0
  75. package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/player-elevate-card-jojogroup/.stencil/packages/stencil/player-elevate-card-jojogroup/storybook/preview.d.ts +70 -0
  76. package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/player-elevate-card-jojogroup/.stencil/tools/plugins/index.d.ts +4 -0
  77. package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/player-elevate-card-jojogroup/.stencil/tools/plugins/lazy-load-chunk-plugin.d.ts +12 -0
  78. package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/player-elevate-card-jojogroup/.stencil/tools/plugins/stencil-clean-deps-plugin.d.ts +5 -0
  79. package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/player-elevate-card-jojogroup/.stencil/tools/plugins/vite-chunk-plugin.d.ts +6 -0
  80. package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/player-elevate-card-jojogroup/.stencil/tools/plugins/vite-clean-deps-plugin.d.ts +4 -0
  81. package/dist/types/components/player-elevate-card-data/player-elevate-card-data.d.ts +24 -0
  82. package/dist/types/components/player-elevate-card-jojogroup/index.d.ts +1 -0
  83. package/dist/types/components/player-elevate-card-jojogroup/player-elevate-card-jojogroup-items.d.ts +20 -0
  84. package/dist/types/components/player-elevate-card-jojogroup/player-elevate-card-jojogroup.d.ts +56 -0
  85. package/dist/types/components/player-elevate-loyaltycard-jojogroup/player-elevate-loyaltycard-jojogroup.d.ts +59 -0
  86. package/dist/types/components/player-elevate-pointcard/player-elevate-pointcard.d.ts +69 -0
  87. package/dist/types/components/player-rakeback-card/player-rakeback-card.d.ts +65 -0
  88. package/dist/types/components.d.ts +461 -0
  89. package/dist/types/index.d.ts +1 -0
  90. package/dist/types/models/player-elevate.d.ts +40 -0
  91. package/dist/types/stencil-public-runtime.d.ts +1674 -0
  92. package/dist/types/utils/locale.utils.d.ts +15 -0
  93. package/dist/types/utils/utils.d.ts +1 -0
  94. package/loader/cdn.js +1 -0
  95. package/loader/index.cjs.js +1 -0
  96. package/loader/index.d.ts +24 -0
  97. package/loader/index.es2017.js +1 -0
  98. package/loader/index.js +2 -0
  99. package/loader/package.json +11 -0
  100. package/package.json +26 -0
@@ -0,0 +1,2 @@
1
+ 'use strict';
2
+
@@ -0,0 +1,15 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-51874d29.js');
6
+ const appGlobals = require('./app-globals-3a1e7e63.js');
7
+
8
+ const defineCustomElements = async (win, options) => {
9
+ if (typeof window === 'undefined') return undefined;
10
+ await appGlobals.globalScripts();
11
+ return index.bootstrapLazy([["general-styling-wrapper_6.cjs",[[1,"player-elevate-card-jojogroup",{"endpoint":[513],"theme":[513],"session":[513],"playerAvatarUrl":[513,"player-avatar-url"],"language":[513],"playerName":[513,"player-name"],"dateFormat":[513,"date-format"],"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"pointExpireString":[32],"playerLevelFlag":[32],"playerElevateLevel":[32],"elevateWalletTotal":[32]},[[0,"playerElevateLeveLoaded","playerElevateLeveLoadedHandler"]],{"session":["onSessionOrEndpointChange"],"endpoint":["onSessionOrEndpointChange"],"language":["onSessionOrEndpointChange"]}],[1,"player-elevate-loyaltycard-jojogroup",{"endpoint":[513],"theme":[513],"session":[513],"playerAvatarUrl":[513,"player-avatar-url"],"language":[513],"playerName":[513,"player-name"],"dateFormat":[513,"date-format"],"mbSource":[1,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"pointExpireString":[32],"playerElevateLevel":[32],"elevateWalletTotal":[32]},[[0,"playerElevateLeveLoaded","playerElevateLeveLoadedHandler"]],{"session":["onSessionOrEndpointChange"],"endpoint":["onSessionOrEndpointChange"],"language":["onSessionOrEndpointChange"]}],[1,"player-elevate-pointcard",{"endpoint":[513],"theme":[513],"session":[513],"playerAvatarUrl":[513,"player-avatar-url"],"language":[513],"mbSource":[513,"mb-source"],"playerName":[513,"player-name"],"cardTitle":[513,"card-title"],"buttonType":[513,"button-type"],"dateFormat":[513,"date-format"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"pointExpireString":[32],"playerElevateLevel":[32],"elevateWalletTotal":[32],"elevateSPTotal":[32]},[[0,"playerElevateLeveLoaded","playerElevateLeveLoadedHandler"]],{"session":["onSessionOrEndpointChange"],"endpoint":["onSessionOrEndpointChange"],"language":["onSessionOrEndpointChange"]}],[1,"player-rakeback-card",{"endpoint":[513],"theme":[513],"session":[513],"language":[513],"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"show":[516],"rakebackInfo":[32],"isLoading":[32],"coolingOffPeriod":[32],"showTheWidget":[32]},[[8,"message","handleMessage"]],{"session":["onSessionOrEndpointChange"],"endpoint":["onSessionOrEndpointChange"],"language":["onSessionOrEndpointChange"],"show":["onShowOrHasRakebackWalletChange"],"rakebackInfo":["onShowOrHasRakebackWalletChange"]}],[0,"player-elevate-card-data",{"params":[8],"playerElevateLevel":[32],"pointExpireString":[32]},[[9,"resize","handleWindowResizs"],[8,"redeemGiftButton","redeemGiftButtonHandler"]],{"params":["onParamsChanged"]}],[4,"general-styling-wrapper",{"clientStyling":[1,"client-styling"],"clientStylingUrl":[1,"client-styling-url"],"mbSource":[1,"mb-source"],"translationUrl":[1,"translation-url"],"targetTranslations":[16]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"]}]]]], options);
12
+ };
13
+
14
+ exports.setNonce = index.setNonce;
15
+ exports.defineCustomElements = defineCustomElements;
@@ -0,0 +1,25 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-51874d29.js');
6
+ const appGlobals = require('./app-globals-3a1e7e63.js');
7
+
8
+ /*
9
+ Stencil Client Patch Browser v4.19.2 | MIT Licensed | https://stenciljs.com
10
+ */
11
+ var patchBrowser = () => {
12
+ const importMeta = (typeof document === 'undefined' ? new (require('u' + 'rl').URL)('file:' + __filename).href : (document.currentScript && document.currentScript.src || new URL('player-elevate-card-jojogroup.cjs.js', document.baseURI).href));
13
+ const opts = {};
14
+ if (importMeta !== "") {
15
+ opts.resourcesUrl = new URL(".", importMeta).href;
16
+ }
17
+ return index.promiseResolve(opts);
18
+ };
19
+
20
+ patchBrowser().then(async (options) => {
21
+ await appGlobals.globalScripts();
22
+ return index.bootstrapLazy([["general-styling-wrapper_6.cjs",[[1,"player-elevate-card-jojogroup",{"endpoint":[513],"theme":[513],"session":[513],"playerAvatarUrl":[513,"player-avatar-url"],"language":[513],"playerName":[513,"player-name"],"dateFormat":[513,"date-format"],"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"pointExpireString":[32],"playerLevelFlag":[32],"playerElevateLevel":[32],"elevateWalletTotal":[32]},[[0,"playerElevateLeveLoaded","playerElevateLeveLoadedHandler"]],{"session":["onSessionOrEndpointChange"],"endpoint":["onSessionOrEndpointChange"],"language":["onSessionOrEndpointChange"]}],[1,"player-elevate-loyaltycard-jojogroup",{"endpoint":[513],"theme":[513],"session":[513],"playerAvatarUrl":[513,"player-avatar-url"],"language":[513],"playerName":[513,"player-name"],"dateFormat":[513,"date-format"],"mbSource":[1,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"pointExpireString":[32],"playerElevateLevel":[32],"elevateWalletTotal":[32]},[[0,"playerElevateLeveLoaded","playerElevateLeveLoadedHandler"]],{"session":["onSessionOrEndpointChange"],"endpoint":["onSessionOrEndpointChange"],"language":["onSessionOrEndpointChange"]}],[1,"player-elevate-pointcard",{"endpoint":[513],"theme":[513],"session":[513],"playerAvatarUrl":[513,"player-avatar-url"],"language":[513],"mbSource":[513,"mb-source"],"playerName":[513,"player-name"],"cardTitle":[513,"card-title"],"buttonType":[513,"button-type"],"dateFormat":[513,"date-format"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"pointExpireString":[32],"playerElevateLevel":[32],"elevateWalletTotal":[32],"elevateSPTotal":[32]},[[0,"playerElevateLeveLoaded","playerElevateLeveLoadedHandler"]],{"session":["onSessionOrEndpointChange"],"endpoint":["onSessionOrEndpointChange"],"language":["onSessionOrEndpointChange"]}],[1,"player-rakeback-card",{"endpoint":[513],"theme":[513],"session":[513],"language":[513],"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"show":[516],"rakebackInfo":[32],"isLoading":[32],"coolingOffPeriod":[32],"showTheWidget":[32]},[[8,"message","handleMessage"]],{"session":["onSessionOrEndpointChange"],"endpoint":["onSessionOrEndpointChange"],"language":["onSessionOrEndpointChange"],"show":["onShowOrHasRakebackWalletChange"],"rakebackInfo":["onShowOrHasRakebackWalletChange"]}],[0,"player-elevate-card-data",{"params":[8],"playerElevateLevel":[32],"pointExpireString":[32]},[[9,"resize","handleWindowResizs"],[8,"redeemGiftButton","redeemGiftButtonHandler"]],{"params":["onParamsChanged"]}],[4,"general-styling-wrapper",{"clientStyling":[1,"client-styling"],"clientStylingUrl":[1,"client-styling-url"],"mbSource":[1,"mb-source"],"translationUrl":[1,"translation-url"],"targetTranslations":[16]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"]}]]]], options);
23
+ });
24
+
25
+ exports.setNonce = index.setNonce;
@@ -0,0 +1,23 @@
1
+ {
2
+ "entries": [
3
+ "components/player-elevate-card-jojogroup/player-elevate-card-jojogroup.js",
4
+ "components/player-elevate-card-data/player-elevate-card-data.js",
5
+ "components/player-elevate-loyaltycard-jojogroup/player-elevate-loyaltycard-jojogroup.js",
6
+ "components/player-elevate-pointcard/player-elevate-pointcard.js",
7
+ "components/player-rakeback-card/player-rakeback-card.js"
8
+ ],
9
+ "compiler": {
10
+ "name": "@stencil/core",
11
+ "version": "4.19.2",
12
+ "typescriptVersion": "5.4.5"
13
+ },
14
+ "collections": [
15
+ {
16
+ "name": "@everymatrix/general-styling-wrapper",
17
+ "tags": [
18
+ "general-styling-wrapper"
19
+ ]
20
+ }
21
+ ],
22
+ "bundles": []
23
+ }
@@ -0,0 +1,192 @@
1
+ :host {
2
+ display: block;
3
+ width: 360px;
4
+ height: 230px;
5
+ }
6
+
7
+ .ElevateCardWrapper {
8
+ contain: layout inline-size;
9
+ width: 100%;
10
+ height: fit-content;
11
+ min-height: 218px;
12
+ }
13
+
14
+ .Outer {
15
+ container-type: inline-size;
16
+ font-size: 12px;
17
+ background-size: cover;
18
+ background-repeat: no-repeat;
19
+ line-height: initial;
20
+ width: 100%;
21
+ height: 100%;
22
+ }
23
+
24
+ .Dark {
25
+ color: var(--emw--color-gray150, #efefef);
26
+ }
27
+
28
+ .Light {
29
+ color: var(--emw--color-black, #0e0e0e);
30
+ }
31
+
32
+ @container (min-width: 381px) {
33
+ .Outer {
34
+ background-size: cover;
35
+ }
36
+ .Outer .OuterCover {
37
+ min-height: 190px;
38
+ }
39
+ }
40
+ @container (min-width: 260px) {
41
+ .Outer {
42
+ background-size: contain;
43
+ }
44
+ }
45
+ .OuterCover {
46
+ width: 100%;
47
+ height: 100%;
48
+ content: "";
49
+ background-repeat: no-repeat;
50
+ background-size: cover;
51
+ border-radius: 15px;
52
+ }
53
+
54
+ .Inner {
55
+ display: flex;
56
+ flex-direction: column;
57
+ min-height: 158px;
58
+ }
59
+ .Inner .Content {
60
+ padding: 15px;
61
+ flex-wrap: wrap;
62
+ gap: 8px;
63
+ }
64
+ .Inner .Row {
65
+ display: flex;
66
+ flex-direction: row;
67
+ }
68
+ .Inner .CardCell {
69
+ display: flex;
70
+ }
71
+ .Inner .LevelProgress svg {
72
+ transition: opacity 0.4s;
73
+ }
74
+ .Inner .LevelInfo {
75
+ display: flex;
76
+ flex-direction: column;
77
+ }
78
+ .Inner .LevelInfo .ElevateLevel .LevelName {
79
+ height: 28px;
80
+ border-radius: 5px;
81
+ line-height: 28px;
82
+ overflow: hidden;
83
+ text-overflow: ellipsis;
84
+ white-space: nowrap;
85
+ }
86
+ .Inner .LevelInfo.Level0 .ElevateLevel .LevelName {
87
+ box-shadow: -2px -2px 7px 0px var(--emw--elevate-color-level0button-shadow, rgba(191, 84, 6, 0.75));
88
+ background: linear-gradient(180deg, var(--emw--elevate-color-level0-bg0, #E2792C) 0%, var(--emw--elevate-color-level0-bg1, rgba(242, 151, 99, 0)) 100%);
89
+ }
90
+ .Inner .LevelInfo.Level1 .ElevateLevel .LevelName {
91
+ box-shadow: -2px -2px 7px 0px var(--emw--elevate-color-level1button-shadow, rgba(151, 151, 151, 0.75));
92
+ background: linear-gradient(180deg, var(--emw--elevate-color-level1-bg0, #BEBFED) 0%, var(--emw--elevate-color-level1-bg1, rgba(216, 217, 233, 0)) 100%);
93
+ }
94
+ .Inner .LevelInfo.Level2 .ElevateLevel .LevelName {
95
+ box-shadow: -2px -2px 7px 0px var(--emw--elevate-color-level2button-shadow, rgba(191, 120, 6, 0.75));
96
+ background: linear-gradient(180deg, var(--emw--elevate-color-level2-bg0, #FCC410) 0%, var(--emw--elevate-color-level2-bg1, rgba(255, 189, 43, 0)) 100%);
97
+ }
98
+ .Inner .LevelInfo.Level3 .ElevateLevel .LevelName {
99
+ box-shadow: -2px -2px 7px 0px var(--emw--elevate-color-level3button-shadow, rgba(65, 6, 191, 0.75));
100
+ background: linear-gradient(180deg, var(--emw--elevate-color-level3-bg0, #B1A2DB) 0%, var(--emw--elevate-color-level3-bg1, rgba(203, 202, 245, 0)) 100%);
101
+ }
102
+ .Inner .LevelInfo.Level4 .ElevateLevel .LevelName {
103
+ box-shadow: -2px -2px 7px 0px var(--emw--elevate-color-level4button-shadow, rgba(65, 6, 191, 0.75));
104
+ background: linear-gradient(180deg, var(--emw--elevate-color-level4-bg0, #B1A2DB) 0%, var(--emw--elevate-color-level4-bg1, rgba(203, 202, 245, 0)) 100%);
105
+ }
106
+ .Inner .LevelInfo .ElevateLevel {
107
+ display: flex;
108
+ }
109
+ .Inner .LevelInfo {
110
+ flex: 1;
111
+ flex-grow: 1;
112
+ min-width: 150px;
113
+ }
114
+ .Inner .PlayerImg {
115
+ width: 29%;
116
+ margin: auto;
117
+ max-width: 100px;
118
+ min-width: 30px;
119
+ order: 0;
120
+ }
121
+ .Inner .PlayerAvatar {
122
+ max-width: 100px;
123
+ flex-basis: 100px;
124
+ height: auto;
125
+ margin: auto;
126
+ padding-top: 10px;
127
+ }
128
+ .Inner .PlayerAvatar .Avatar, .Inner .PlayerAvatar .Badge {
129
+ width: 100%;
130
+ height: 100%;
131
+ }
132
+ .Inner .PlayerAvatar .Avatar {
133
+ border-radius: 50%;
134
+ background-size: contain;
135
+ background-repeat: no-repeat;
136
+ }
137
+ .Inner .ElevateLevel .ExpirationDate {
138
+ max-width: 138px;
139
+ min-width: 118px;
140
+ }
141
+ .Inner .PlayerName, .Inner .RedeemButton, .Inner .ElevateLevel {
142
+ text-transform: capitalize;
143
+ width: 100%;
144
+ }
145
+ .Inner .PlayerName {
146
+ font-size: 16px;
147
+ }
148
+ .Inner .Row .PointsInfo {
149
+ display: table;
150
+ font-weight: 600;
151
+ }
152
+ .Inner .Row .Redeem {
153
+ justify-content: flex-end;
154
+ margin-left: auto;
155
+ }
156
+ .Inner .Row .Redeem:hover {
157
+ color: var(--emw--elevate-color-redeem-hover, #00ABA4);
158
+ cursor: pointer;
159
+ }
160
+ .Inner .Row .RedeemButton:hover span {
161
+ color: var(emfe-w-elevate-color-redeem-text-hover, #f1f1f1);
162
+ font-weight: bold;
163
+ }
164
+ .Inner .Row .RedeemButton {
165
+ width: 95px;
166
+ height: 35px;
167
+ display: flex;
168
+ align-items: center;
169
+ border-radius: var(--emw--border-radius-medium, 10px);
170
+ background: var(--emw--elevate-color-redeem-bg, linear-gradient(0deg, #26CC37, #26CC37)), linear-gradient(117.99deg, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0) 33.89%), linear-gradient(283.85deg, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0) 33.47%), linear-gradient(268.18deg, rgba(255, 255, 255, 0.6) -17.36%, rgba(239, 239, 239, 0) 15.78%);
171
+ box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.2509803922);
172
+ }
173
+ .Inner .Row .RedeemButton span {
174
+ color: var(--emw--color-white, #fff);
175
+ line-height: 18px;
176
+ font-size: 15px;
177
+ text-align: center;
178
+ width: 100%;
179
+ }
180
+ .Inner .Row .Points {
181
+ font-size: large;
182
+ vertical-align: middle;
183
+ }
184
+ .Inner .Row .Points .XP {
185
+ font-size: x-small;
186
+ }
187
+ .Inner .Row .ExpirationPoints {
188
+ font-size: small;
189
+ text-align: right;
190
+ font-weight: bold;
191
+ color: var(--emw--color-red, #9e595f);
192
+ }
@@ -0,0 +1,244 @@
1
+ import { differenceInCalendarDays, differenceInHours, differenceInMinutes, isBefore } from "date-fns";
2
+ import { translateWithParams } from "../../utils/locale.utils";
3
+ import "../../../../../general-styling-wrapper/dist/types/index";
4
+ import { updateProgressSvg } from "../../utils/utils";
5
+ export class PlayerElevateCardData {
6
+ constructor() {
7
+ this.params = undefined;
8
+ this.playerElevateLevel = undefined;
9
+ this.pointExpireString = undefined;
10
+ }
11
+ handleWindowResizs() {
12
+ this.initLevelProgressbar();
13
+ }
14
+ onParamsChanged() {
15
+ this.loadElevateInfo();
16
+ }
17
+ redeemGiftButtonHandler() {
18
+ this.loadElevateInfo();
19
+ }
20
+ onRedeemClick() {
21
+ window.postMessage({ type: 'BEERedeemClicked' }, window.location.href);
22
+ }
23
+ loadLevels() {
24
+ let url = new URL(`${this.params.endpoint}/v1/elevate/levels?language=${this.params.language}`);
25
+ return new Promise((resolve, reject) => {
26
+ return fetch(url.href, {
27
+ method: 'GET',
28
+ })
29
+ .then((res) => res.json())
30
+ .then((res) => {
31
+ this.levels = res.data;
32
+ resolve(true);
33
+ })
34
+ .catch((err) => {
35
+ reject(err);
36
+ });
37
+ });
38
+ }
39
+ calcuatePointsToBeExpired(walletTotalInfo, translationPrefix) {
40
+ let pointExpireInfoAsString = '';
41
+ if (!walletTotalInfo || !walletTotalInfo.aboutToExpire ||
42
+ walletTotalInfo.aboutToExpire.length == 0 ||
43
+ walletTotalInfo.aboutToExpire[0].points <= 0) {
44
+ return pointExpireInfoAsString;
45
+ }
46
+ walletTotalInfo.aboutToExpire.sort((expire1, expire2) => {
47
+ return isBefore(new Date(expire1.expireTime), new Date(expire2.expireTime))
48
+ ? -1
49
+ : 1;
50
+ });
51
+ const aboutToExpire = walletTotalInfo.aboutToExpire[0];
52
+ const daysToExpried = differenceInCalendarDays(new Date(aboutToExpire.expireTime), new Date());
53
+ let hoursToExpired = 0, minutesToExpired = 0, expiredTranslationKey = daysToExpried === 0 ? `${translationPrefix}Day` : translationPrefix;
54
+ if (daysToExpried <= 0) {
55
+ hoursToExpired = differenceInHours(new Date(aboutToExpire.expireTime), new Date(), { roundingMethod: 'floor' });
56
+ expiredTranslationKey = hoursToExpired > 1 ? `${translationPrefix}Hours` : `${translationPrefix}Hour`;
57
+ if (hoursToExpired <= 0) {
58
+ minutesToExpired = differenceInMinutes(new Date(aboutToExpire.expireTime), new Date(), { roundingMethod: 'floor' });
59
+ expiredTranslationKey = minutesToExpired > 1 ? `${translationPrefix}Minutes` : `${translationPrefix}Minute`;
60
+ }
61
+ }
62
+ pointExpireInfoAsString = translateWithParams(expiredTranslationKey, {
63
+ expirationPoints: aboutToExpire.points,
64
+ expireDay: Math.max(daysToExpried, hoursToExpired, minutesToExpired),
65
+ lang: this.params.language,
66
+ });
67
+ return pointExpireInfoAsString;
68
+ }
69
+ loadPlayerLevelInfo() {
70
+ let url = new URL(`${this.params.endpoint}/v1/elevate/playerInfo?language=${this.params.language}`);
71
+ return new Promise((resolve, reject) => {
72
+ return fetch(url.href, {
73
+ method: 'GET',
74
+ headers: {
75
+ 'X-Sessionid': this.params.session,
76
+ 'Content-Type': 'application/json',
77
+ },
78
+ })
79
+ .then((res) => res.json())
80
+ .then((res) => {
81
+ var _a, _b, _c, _d, _e;
82
+ if (!res.success) {
83
+ console.error('Exception when fetch user elevateinfo, ', res.errorCode, res.errorMessage);
84
+ reject(true);
85
+ return;
86
+ }
87
+ window.postMessage({ type: 'UpdateGamificationXp', points: (_b = (_a = res.data) === null || _a === void 0 ? void 0 : _a.level) === null || _b === void 0 ? void 0 : _b.loyaltyPoints }, window.location.href);
88
+ let playerElevateInfo = res.data;
89
+ this.playerElevateLevel = playerElevateInfo.level;
90
+ this.playerElevateLevel.name = this.playerElevateLevel.presentation.displayName || this.playerElevateLevel.name;
91
+ this.playerElevateLevel.spendablePoints = ((_c = playerElevateInfo.spendableWallet) === null || _c === void 0 ? void 0 : _c.total.points) || 0;
92
+ this.playerElevateLeveLoaded.emit({ elevateLevel: this.playerElevateLevel });
93
+ const spendableTotal = (_d = res.data.spendableWallet) === null || _d === void 0 ? void 0 : _d.total;
94
+ const loyaltyWalletTotal = (_e = res.data.loyaltyWallet) === null || _e === void 0 ? void 0 : _e.total;
95
+ this.playerElevateLeveLoaded.emit({
96
+ elevateLevelWalletTotal: spendableTotal,
97
+ loyaltyWalletTotal
98
+ });
99
+ let spExpireInfoAsString = this.calcuatePointsToBeExpired(spendableTotal, 'coinsToBeExpired');
100
+ let xpExpireInfoAsString = this.calcuatePointsToBeExpired(loyaltyWalletTotal, 'pointsToBeExpired');
101
+ if (spExpireInfoAsString || xpExpireInfoAsString) {
102
+ this.playerElevateLeveLoaded.emit({
103
+ pointExpireString: spExpireInfoAsString,
104
+ xpExpireString: xpExpireInfoAsString
105
+ });
106
+ }
107
+ resolve(this.playerElevateLevel);
108
+ })
109
+ .catch((err) => {
110
+ console.log('error ', err);
111
+ reject(true);
112
+ });
113
+ });
114
+ }
115
+ setLoyaltyProgress(percent) {
116
+ updateProgressSvg(this.loyaltyProgressEle, percent);
117
+ }
118
+ initLevelProgressbar() {
119
+ setTimeout(() => {
120
+ this.loyaltyProgressEle =
121
+ this.elevateCardRef.parentElement.querySelector('#LevelProgress');
122
+ if (!this.loyaltyProgressEle) {
123
+ return;
124
+ }
125
+ this.setLoyaltyProgress(!this.playerElevateLevel.nextLevel
126
+ ? 1 : (this.playerElevateLevel.loyaltyPoints / this.playerElevateLevel.nextLevel.entryPoints));
127
+ this.params['playerElevateLevel'] = this.playerElevateLevel;
128
+ }, 80);
129
+ }
130
+ componentDidRender() {
131
+ this.initLevelProgressbar();
132
+ }
133
+ loadElevateInfo() {
134
+ if (!this.params.endpoint || !this.params.session) {
135
+ return;
136
+ }
137
+ const promises = [];
138
+ promises.push(this.loadPlayerLevelInfo());
139
+ if (this.params.calculateLevelFlag) {
140
+ promises.push(this.loadLevels());
141
+ }
142
+ Promise.all(promises).then((res) => {
143
+ console.log('elevate-init', res);
144
+ this.initLevelProgressbar();
145
+ if (!this.levels) {
146
+ return;
147
+ }
148
+ this.levels.sort((level1, level2) => {
149
+ return level1.firstEntryPoints > level2.firstEntryPoints ? 1 : -1;
150
+ });
151
+ const playerPoints = this.playerElevateLevel.loyaltyPoints;
152
+ let playerLevelNumber = 0;
153
+ this.levels.forEach((elevateLevel, idx) => {
154
+ if (playerPoints > elevateLevel.firstEntryPoints) {
155
+ playerLevelNumber = idx;
156
+ }
157
+ });
158
+ this.playerElevateLeveLoaded.emit({
159
+ calculatedLevelFlag: playerLevelNumber,
160
+ });
161
+ });
162
+ }
163
+ componentWillLoad() {
164
+ this.loadElevateInfo();
165
+ }
166
+ static get is() { return "player-elevate-card-data"; }
167
+ static get originalStyleUrls() {
168
+ return {
169
+ "$": ["player-elevate-card-data.scss"]
170
+ };
171
+ }
172
+ static get styleUrls() {
173
+ return {
174
+ "$": ["player-elevate-card-data.css"]
175
+ };
176
+ }
177
+ static get properties() {
178
+ return {
179
+ "params": {
180
+ "type": "any",
181
+ "mutable": false,
182
+ "complexType": {
183
+ "original": "any",
184
+ "resolved": "any",
185
+ "references": {}
186
+ },
187
+ "required": false,
188
+ "optional": false,
189
+ "docs": {
190
+ "tags": [],
191
+ "text": ""
192
+ },
193
+ "attribute": "params",
194
+ "reflect": false
195
+ }
196
+ };
197
+ }
198
+ static get states() {
199
+ return {
200
+ "playerElevateLevel": {},
201
+ "pointExpireString": {}
202
+ };
203
+ }
204
+ static get events() {
205
+ return [{
206
+ "method": "playerElevateLeveLoaded",
207
+ "name": "playerElevateLeveLoaded",
208
+ "bubbles": true,
209
+ "cancelable": true,
210
+ "composed": true,
211
+ "docs": {
212
+ "tags": [],
213
+ "text": ""
214
+ },
215
+ "complexType": {
216
+ "original": "any",
217
+ "resolved": "any",
218
+ "references": {}
219
+ }
220
+ }];
221
+ }
222
+ static get elementRef() { return "elevateCardRef"; }
223
+ static get watchers() {
224
+ return [{
225
+ "propName": "params",
226
+ "methodName": "onParamsChanged"
227
+ }];
228
+ }
229
+ static get listeners() {
230
+ return [{
231
+ "name": "resize",
232
+ "method": "handleWindowResizs",
233
+ "target": "window",
234
+ "capture": false,
235
+ "passive": true
236
+ }, {
237
+ "name": "redeemGiftButton",
238
+ "method": "redeemGiftButtonHandler",
239
+ "target": "window",
240
+ "capture": false,
241
+ "passive": false
242
+ }];
243
+ }
244
+ }
@@ -0,0 +1 @@
1
+ export { PlayerElevateCardJojogroup } from './player-elevate-card-jojogroup';
@@ -0,0 +1,23 @@
1
+ import { getAssetPath, h } from "@stencil/core";
2
+ import LoyaltyProgress from "../static/level-percent.svg";
3
+ import { translate } from "../../utils/locale.utils";
4
+ import dateFnsFormat from "date-fns/format";
5
+ import TipsInfo from "../static/tips-info.svg";
6
+ export const PlayerLoyaltyProcess = () => (h("span", { class: "LevelProgress", id: 'LevelProgress', innerHTML: LoyaltyProgress }));
7
+ export const PlayerPoints = ({ loyaltyPoints, spendablePoints, pointExpireString, language, }) => (h("div", { class: "PointsInfo" }, (loyaltyPoints && loyaltyPoints >= 0) &&
8
+ h("div", { class: 'Points' }, loyaltyPoints, " ", h("sub", { class: "XP" }, translate('xp', language))), spendablePoints &&
9
+ h("div", { class: 'Points' }, spendablePoints, " ", h("sub", { class: "XP" }, translate('sp', language))), pointExpireString && (h("div", { class: 'ExpirationPoints' }, pointExpireString, " "))));
10
+ export const PlayerElevateCardRedeem = ({ language, onRedeemClick }) => (h("div", { class: "CardCell Redeem" }, h("div", { class: "RedeemButton", onClick: () => {
11
+ onRedeemClick();
12
+ } }, h("span", null, translate('redeem', language)))));
13
+ export const PlayerNameDiv = (props) => (h("div", { class: 'CardCell PlayerName Txt' }, props.playerName));
14
+ export const PlayerElevateLoyaltyLevel = (props) => (h("div", { class: 'CardCell ElevateLevel' }, h("span", { class: "LevelName", title: props.level }, props.level), props.expireTime && (h("div", { class: "CardCell ExpirationDate Txt" }, translate('expireOn', props.language), h("span", { class: "ExpireTime" }, dateFnsFormat(new Date(props.expireTime), props.dateFormat || 'yyyy-MM-dd')), !props.hideInfo && (h("span", { class: "fa Info", style: { 'background': `url(${getAssetPath('../static/info.svg')})` } }, h("span", { class: "InfoTips", innerHTML: TipsInfo })))))));
15
+ export const LoyaltyLevelExpireDay = (props) => (h("div", { class: 'CardCell ElevateLevel Expire' }, h("div", { class: "CardCell ExpirationDate Txt" }, translate('expireOn', props.language), h("span", { class: "ExpireTime" }, dateFnsFormat(new Date(props.expireTime), props.dateFormat || 'yyyy-MM-dd')))));
16
+ export const PlayerAvatar = (props) => {
17
+ const badge = props.loyaltyIconUrl
18
+ ? h("img", { class: "Badge", src: props.loyaltyIconUrl })
19
+ : props.hideIfNull ? '' : h("div", { class: "Badge" });
20
+ const avatarSrc = props.playerAvatarUrl || getAssetPath('../static/user.svg');
21
+ return h("div", { class: "PlayerAvatar", style: { 'position': `${props.onlyBadge ? '' : 'relative'}` } }, !props.onlyBadge && h("img", { class: "Avatar", src: avatarSrc }), badge);
22
+ };
23
+ export const TextSpan = (props) => (h("div", { class: `${props.classValues}` }, props.textToShow));
@@ -0,0 +1,64 @@
1
+ @container (max-width: 270px) {
2
+ .Card .Inner {
3
+ flex-direction: column;
4
+ }
5
+ .Card .Inner .Content {
6
+ padding: 9px;
7
+ }
8
+ .Inner .Row .ExpirationPoints {
9
+ order: 1;
10
+ }
11
+ }
12
+ .Card .PlayerImg {
13
+ order: 0;
14
+ }
15
+ .Card .ExpirationPoints {
16
+ order: 3;
17
+ }
18
+ .Card .LevelInfo {
19
+ order: 2;
20
+ }
21
+ .Card .Inner .Row .PlayerImg {
22
+ flex-direction: column;
23
+ }
24
+ .Card .Inner .Row .PointsInfo {
25
+ width: 100%;
26
+ text-align: center;
27
+ display: flex;
28
+ flex-direction: column;
29
+ max-height: 50%;
30
+ }
31
+ .Card .Inner .PlayerAvatar .Badge {
32
+ background-size: contain;
33
+ background-repeat: no-repeat;
34
+ position: absolute;
35
+ right: 5px;
36
+ bottom: -5px;
37
+ width: 40%;
38
+ height: 40%;
39
+ overflow: visible;
40
+ }
41
+ .Card .Inner .Row .ExpirationPoints {
42
+ text-align: left;
43
+ color: var(--emw--color-red, red);
44
+ }
45
+ .Card .Inner .Row .Points {
46
+ text-wrap: nowrap;
47
+ }
48
+ .Card .Inner .LevelInfo .ElevateLevel {
49
+ flex-direction: column;
50
+ }
51
+ .Card .Inner .LevelInfo .ElevateLevel .LevelName {
52
+ width: calc(100% - 20px);
53
+ text-align: left;
54
+ font-size: 13px;
55
+ padding-left: 20px;
56
+ margin: 10px 0;
57
+ }
58
+ .Card .Inner .LevelInfo .ElevateLevel .ExpirationDate {
59
+ text-align: center;
60
+ font-size: smaller;
61
+ }
62
+ .Card .Inner .LevelInfo .ElevateLevel .ExpireTime {
63
+ margin-left: 5px;
64
+ }