@everymatrix/lottery-oddsbom-ticket-bet 0.0.1

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 (76) hide show
  1. package/dist/cjs/app-globals-3a1e7e63.js +5 -0
  2. package/dist/cjs/index-b8e9c8e4.js +1327 -0
  3. package/dist/cjs/index.cjs.js +10 -0
  4. package/dist/cjs/loader.cjs.js +15 -0
  5. package/dist/cjs/lottery-oddsbom-bullet_9.cjs.entry.js +1064 -0
  6. package/dist/cjs/lottery-oddsbom-ticket-bet-402dc005.js +10038 -0
  7. package/dist/cjs/lottery-oddsbom-ticket-bet.cjs.js +25 -0
  8. package/dist/collection/collection-manifest.json +36 -0
  9. package/dist/collection/components/lottery-oddsbom-oddschart/lottery-oddsbom-oddschart.css +221 -0
  10. package/dist/collection/components/lottery-oddsbom-oddschart/lottery-oddsbom-oddschart.js +609 -0
  11. package/dist/collection/components/lottery-oddsbom-oddschart-input/lottery-oddsbom-oddschart-input.css +40 -0
  12. package/dist/collection/components/lottery-oddsbom-oddschart-input/lottery-oddsbom-oddschart-input.js +213 -0
  13. package/dist/collection/components/lottery-oddsbom-ticket-bet/index.js +1 -0
  14. package/dist/collection/components/lottery-oddsbom-ticket-bet/lottery-oddsbom-ticket-bet.css +193 -0
  15. package/dist/collection/components/lottery-oddsbom-ticket-bet/lottery-oddsbom-ticket-bet.js +782 -0
  16. package/dist/collection/components/lottery-oddsbom-ticket-board/lottery-oddsbom-ticket-board.css +82 -0
  17. package/dist/collection/components/lottery-oddsbom-ticket-board/lottery-oddsbom-ticket-board.js +350 -0
  18. package/dist/collection/components/lottery-oddsbom-ticket-button/lottery-oddsbom-ticket-button.css +168 -0
  19. package/dist/collection/components/lottery-oddsbom-ticket-button/lottery-oddsbom-ticket-button.js +299 -0
  20. package/dist/collection/components/lottery-oddsbom-ticket-selection/lottery-oddsbom-ticket-selection.css +104 -0
  21. package/dist/collection/components/lottery-oddsbom-ticket-selection/lottery-oddsbom-ticket-selection.js +233 -0
  22. package/dist/collection/index.js +1 -0
  23. package/dist/collection/model/index.type.js +1 -0
  24. package/dist/collection/utils/api.js +10 -0
  25. package/dist/collection/utils/locale.utils.js +73 -0
  26. package/dist/collection/utils/utils.js +200 -0
  27. package/dist/esm/app-globals-0f993ce5.js +3 -0
  28. package/dist/esm/index-9dee9d86.js +1299 -0
  29. package/dist/esm/index.js +2 -0
  30. package/dist/esm/loader.js +11 -0
  31. package/dist/esm/lottery-oddsbom-bullet_9.entry.js +1053 -0
  32. package/dist/esm/lottery-oddsbom-ticket-bet-e46dbb50.js +10026 -0
  33. package/dist/esm/lottery-oddsbom-ticket-bet.js +20 -0
  34. package/dist/index.cjs.js +1 -0
  35. package/dist/index.js +1 -0
  36. package/dist/lottery-oddsbom-ticket-bet/app-globals-0f993ce5.js +1 -0
  37. package/dist/lottery-oddsbom-ticket-bet/index-9dee9d86.js +2 -0
  38. package/dist/lottery-oddsbom-ticket-bet/index.esm.js +1 -0
  39. package/dist/lottery-oddsbom-ticket-bet/lottery-oddsbom-bullet_9.entry.js +1 -0
  40. package/dist/lottery-oddsbom-ticket-bet/lottery-oddsbom-ticket-bet-e46dbb50.js +6657 -0
  41. package/dist/lottery-oddsbom-ticket-bet/lottery-oddsbom-ticket-bet.esm.js +1 -0
  42. package/dist/stencil.config.dev.js +19 -0
  43. package/dist/stencil.config.js +19 -0
  44. package/dist/storybook/main.js +43 -0
  45. package/dist/storybook/preview.js +9 -0
  46. package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/lottery-oddsbom-ticket-bet/.stencil/libs/common/src/storybook/storybook-utils.d.ts +39 -0
  47. package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/lottery-oddsbom-ticket-bet/.stencil/packages/stencil/lottery-oddsbom-ticket-bet/stencil.config.d.ts +2 -0
  48. package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/lottery-oddsbom-ticket-bet/.stencil/packages/stencil/lottery-oddsbom-ticket-bet/stencil.config.dev.d.ts +2 -0
  49. package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/lottery-oddsbom-ticket-bet/.stencil/packages/stencil/lottery-oddsbom-ticket-bet/storybook/main.d.ts +3 -0
  50. package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/lottery-oddsbom-ticket-bet/.stencil/packages/stencil/lottery-oddsbom-ticket-bet/storybook/preview.d.ts +70 -0
  51. package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/lottery-oddsbom-ticket-bet/.stencil/tools/plugins/index.d.ts +4 -0
  52. package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/lottery-oddsbom-ticket-bet/.stencil/tools/plugins/lazy-load-chunk-plugin.d.ts +12 -0
  53. package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/lottery-oddsbom-ticket-bet/.stencil/tools/plugins/stencil-clean-deps-plugin.d.ts +5 -0
  54. package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/lottery-oddsbom-ticket-bet/.stencil/tools/plugins/vite-chunk-plugin.d.ts +6 -0
  55. package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/lottery-oddsbom-ticket-bet/.stencil/tools/plugins/vite-clean-deps-plugin.d.ts +4 -0
  56. package/dist/types/components/lottery-oddsbom-oddschart/lottery-oddsbom-oddschart.d.ts +51 -0
  57. package/dist/types/components/lottery-oddsbom-oddschart-input/lottery-oddsbom-oddschart-input.d.ts +21 -0
  58. package/dist/types/components/lottery-oddsbom-ticket-bet/index.d.ts +1 -0
  59. package/dist/types/components/lottery-oddsbom-ticket-bet/lottery-oddsbom-ticket-bet.d.ts +95 -0
  60. package/dist/types/components/lottery-oddsbom-ticket-board/lottery-oddsbom-ticket-board.d.ts +51 -0
  61. package/dist/types/components/lottery-oddsbom-ticket-button/lottery-oddsbom-ticket-button.d.ts +40 -0
  62. package/dist/types/components/lottery-oddsbom-ticket-selection/lottery-oddsbom-ticket-selection.d.ts +25 -0
  63. package/dist/types/components.d.ts +298 -0
  64. package/dist/types/index.d.ts +1 -0
  65. package/dist/types/model/index.type.d.ts +198 -0
  66. package/dist/types/stencil-public-runtime.d.ts +1674 -0
  67. package/dist/types/utils/api.d.ts +6 -0
  68. package/dist/types/utils/locale.utils.d.ts +3 -0
  69. package/dist/types/utils/utils.d.ts +17 -0
  70. package/loader/cdn.js +1 -0
  71. package/loader/index.cjs.js +1 -0
  72. package/loader/index.d.ts +24 -0
  73. package/loader/index.es2017.js +1 -0
  74. package/loader/index.js +2 -0
  75. package/loader/package.json +11 -0
  76. package/package.json +27 -0
@@ -0,0 +1,609 @@
1
+ import { h } from "@stencil/core";
2
+ import { setClientStyling, setClientStylingURL, setStreamStyling } from "../../../../../../../../libs/common/src/styling/index";
3
+ import "../../../../../lottery-oddsbom-bullet/dist/types/index";
4
+ import { ArrowUpOutlined, InfoCircleFilled, LeftOutlined, RightOutlined } from "@ant-design/icons-svg";
5
+ import { renderIconDefinitionToSVGElement } from "@ant-design/icons-svg/es/helpers";
6
+ import { showNotification, stringToBase64, formatNumber } from "../../utils/utils";
7
+ import { translate, resolveTranslationUrl } from "../../utils/locale.utils";
8
+ const upIcon = renderIconDefinitionToSVGElement(ArrowUpOutlined, {
9
+ extraSVGAttrs: { width: '16px', height: '16px', fill: '' }
10
+ });
11
+ const infoIcon = renderIconDefinitionToSVGElement(InfoCircleFilled, {
12
+ extraSVGAttrs: { width: '18px', height: '18px', fill: '#0d196e' }
13
+ });
14
+ const infoIcon1 = renderIconDefinitionToSVGElement(InfoCircleFilled, {
15
+ extraSVGAttrs: { width: '16px', height: '16px', fill: '#1367e7' }
16
+ });
17
+ const leftArrowIcon = renderIconDefinitionToSVGElement(LeftOutlined, {
18
+ extraSVGAttrs: { width: '16px', height: '16px', fill: '' }
19
+ });
20
+ const rightArrowIcon = renderIconDefinitionToSVGElement(RightOutlined, {
21
+ extraSVGAttrs: { width: '16px', height: '16px', fill: '' }
22
+ });
23
+ export class LotteryOddsbomOddschart {
24
+ constructor() {
25
+ this.handleSearch = async () => {
26
+ const inputs = this.matchItemsContainer.querySelectorAll('lottery-oddsbom-oddschart-input');
27
+ const values = await Promise.all(Array.from(inputs).map((input) => input.getValue()));
28
+ if (values.length != 2 * this.matchInfo.length) {
29
+ showNotification({
30
+ theme: 'warning',
31
+ message: translate('pleaseFillIn', this.language)
32
+ });
33
+ return;
34
+ }
35
+ const newMatchSelection = [...this.matchSelection];
36
+ const lineSelection = [];
37
+ for (let i = 0; i < values.length; i += 2) {
38
+ const val1 = values[i];
39
+ const val2 = values[i + 1];
40
+ const index = i / 2;
41
+ if (val1 && val2) {
42
+ lineSelection.push([[`${val1}:${val2}`]]);
43
+ newMatchSelection[index] = [val1, val2];
44
+ }
45
+ }
46
+ this.matchSelection = [...newMatchSelection];
47
+ if (lineSelection.length > 0) {
48
+ const lineSelectionBase64 = await stringToBase64(JSON.stringify(lineSelection));
49
+ this.oddsQueryLineChangeEvent.emit({
50
+ lineSelectionBase64: lineSelectionBase64,
51
+ offset: 0
52
+ });
53
+ this.hasFillInSelection = true;
54
+ }
55
+ };
56
+ this.handleGroupClick = (index) => {
57
+ this.selectedGroupIndex = index;
58
+ };
59
+ this.toggleFilterIcon = () => {
60
+ this.isAscend = !this.isAscend;
61
+ this.selectedGroupIndex = -1;
62
+ this.oddsQueryChangeEvent.emit({
63
+ ascending: this.isAscend,
64
+ offset: 0,
65
+ lineSelectionBase64: ''
66
+ });
67
+ };
68
+ this.handlePrevPage = () => {
69
+ if (this.curPage >= 1) {
70
+ this.selectedGroupIndex = -1;
71
+ this.oddsQueryChangeEvent.emit({
72
+ offset: this.offset - this.limit,
73
+ lineSelectionBase64: ''
74
+ });
75
+ }
76
+ };
77
+ this.handleNextPage = () => {
78
+ if (this.curPage < this.totalPage - 1) {
79
+ this.selectedGroupIndex = -1;
80
+ this.oddsQueryChangeEvent.emit({
81
+ offset: this.offset + this.limit,
82
+ lineSelectionBase64: ''
83
+ });
84
+ }
85
+ };
86
+ this.matchInfo = undefined;
87
+ this.oddsInfo = undefined;
88
+ this.total = undefined;
89
+ this.curPage = undefined;
90
+ this.limit = undefined;
91
+ this.offset = undefined;
92
+ this.filterdOdds = undefined;
93
+ this.isSearching = undefined;
94
+ this.mbSource = undefined;
95
+ this.clientStyling = undefined;
96
+ this.clientStylingUrl = undefined;
97
+ this.isLoading = false;
98
+ this.language = 'en';
99
+ this.translationUrl = '';
100
+ this.isAscend = true;
101
+ this.selectedGroupIndex = -1;
102
+ this.matchSelection = [];
103
+ this.hasFillInSelection = false;
104
+ }
105
+ async initOddsChart() {
106
+ this.oddsQueryChangeEvent.emit({
107
+ offset: 0,
108
+ ascending: true,
109
+ lineSelectionBase64: ''
110
+ });
111
+ }
112
+ async closeOddsChart() {
113
+ this.hasFillInSelection = false;
114
+ this.selectedGroupIndex = -1;
115
+ this.matchSelection = [];
116
+ this.isAscend = true;
117
+ if (this.matchItemsContainer) {
118
+ const inputs = this.matchItemsContainer.querySelectorAll('lottery-oddsbom-oddschart-input');
119
+ inputs.forEach((input) => {
120
+ input.clearValue();
121
+ });
122
+ }
123
+ }
124
+ handleClientStylingChange(newValue, oldValue) {
125
+ if (newValue != oldValue) {
126
+ setClientStyling(this.stylingContainer, this.clientStyling);
127
+ }
128
+ }
129
+ handleClientStylingUrlChange(newValue, oldValue) {
130
+ if (newValue != oldValue) {
131
+ setClientStylingURL(this.stylingContainer, this.clientStylingUrl);
132
+ }
133
+ }
134
+ handleMbSourceChange(newValue, oldValue) {
135
+ if (newValue != oldValue) {
136
+ setStreamStyling(this.stylingContainer, `${this.mbSource}.Style`, this.stylingSubscription);
137
+ }
138
+ }
139
+ handleMatchInfoChange(newValue) {
140
+ this.matchSelection = newValue.map(() => [-1, -1]);
141
+ }
142
+ componentWillLoad() {
143
+ if (this.translationUrl) {
144
+ resolveTranslationUrl(this.translationUrl);
145
+ }
146
+ }
147
+ componentDidLoad() {
148
+ if (this.stylingContainer) {
149
+ if (this.mbSource)
150
+ setStreamStyling(this.stylingContainer, `${this.mbSource}.Style`, this.stylingSubscription);
151
+ if (this.clientStyling)
152
+ setClientStyling(this.stylingContainer, this.clientStyling);
153
+ if (this.clientStylingUrl)
154
+ setClientStylingURL(this.stylingContainer, this.clientStylingUrl);
155
+ }
156
+ }
157
+ disconnectedCallback() {
158
+ this.stylingSubscription && this.stylingSubscription.unsubscribe();
159
+ }
160
+ get totalPage() {
161
+ return Math.ceil(this.total / this.limit);
162
+ }
163
+ generateBulletGroup(line, odds, groupIndex) {
164
+ let lineArr;
165
+ try {
166
+ lineArr = JSON.parse(line);
167
+ }
168
+ catch (error) {
169
+ console.error('Failed to parse line JSON:', error);
170
+ return h("div", { class: "error-message" }, "Invalid data format");
171
+ }
172
+ let group = lineArr.map((arr) => arr[0]).map((arr1) => arr1[0]);
173
+ const isSelected = this.selectedGroupIndex === groupIndex;
174
+ return (h("div", { class: "oddsbom-oddschart-selection--group", onClick: this.handleGroupClick.bind(this, groupIndex) }, h("div", { class: "oddsbom-oddschart-selection--group-wrap", style: { flexBasis: `${160 * group.length}px` } }, group.map((item, index) => {
175
+ const selection = item.split(':');
176
+ return (h("div", { class: "oddsbom-oddschart-selection-item", key: index }, h("div", { class: "oddsbom-oddschart-selection-item--1" }, h("lottery-oddsbom-bullet", { text: selection[0], "is-reading": true, "is-selected": isSelected })), h("div", { class: "oddsbom-oddschart-selection-item--2" }, h("lottery-oddsbom-bullet", { text: selection[1], "is-reading": true, "is-selected": isSelected }))));
177
+ })), h("div", { class: "oddsbom-oddschart-selection-odds" }, h("div", { class: "oddsbom-oddschart-selection-odds--text" }, formatNumber(odds)), isSelected && (h("div", { class: "oddsbom-oddschart-selection-odds--fillIn" }, h("lottery-oddsbom-ticket-button", { text: translate('fillIn', this.language), size: "small", variant: "outline", onClick: this.handleFillIn.bind(this, group), language: this.language, "translation-url": this.translationUrl, "client-styling": this.clientStyling, "client-styling-Url": this.clientStylingUrl }))))));
178
+ }
179
+ handleFillIn(nums) {
180
+ this.oddschartFillInEvent.emit({ fillInNums: nums });
181
+ }
182
+ clearMatchSelection() {
183
+ this.hasFillInSelection = false;
184
+ if (this.matchItemsContainer) {
185
+ const inputs = this.matchItemsContainer.querySelectorAll('lottery-oddsbom-oddschart-input');
186
+ inputs.forEach((input) => {
187
+ input.clearValue();
188
+ });
189
+ }
190
+ }
191
+ fillInMatchSelection() {
192
+ const nums = [];
193
+ this.matchSelection.forEach((selection) => {
194
+ nums.push(`${selection[0]}:${selection[1]}`);
195
+ });
196
+ this.handleFillIn(nums);
197
+ }
198
+ render() {
199
+ var _a, _b;
200
+ return (h("div", { key: 'b160d1870184937cdd013a233a4841545d8f769a', class: "oddsbom-oddschart", ref: (el) => (this.stylingContainer = el) }, !((_a = this.matchInfo) === null || _a === void 0 ? void 0 : _a.length) || !((_b = this.oddsInfo) === null || _b === void 0 ? void 0 : _b.length) ? (h("div", { class: "empty-wrap" }, h("span", { innerHTML: infoIcon, style: { marginRight: '6px', height: '18px' } }), h("span", { class: "empty-wrap-text", style: { fontSize: '18px' } }, translate('noBets', this.language)))) : (this.matchInfo && (h("div", { class: "oddsbom-oddschart-container" }, h("div", { class: "oddsbom-oddschart-wrap" }, h("div", { class: "oddsbom-oddschart-match", ref: (el) => (this.matchItemsContainer = el) }, this.matchInfo.map((match, idx) => {
201
+ return (h("div", { class: "oddsbom-oddschart-match-item", key: idx }, h("div", { class: "oddsbom-oddschart-match-item-name" }, h("div", { class: "oddsbom-oddschart-match-item-name--home" }, `${idx + 1}. ${match.eventName.split('vs')[0]}`), h("div", { class: "oddsbom-oddschart-match-item-name--delimiter" }, "vs"), h("div", { class: "oddsbom-oddschart-match-item-name--away" }, `${match.eventName.split('vs')[1]}`)), h("div", { class: "oddsbom-oddschart-match-item-input" }, h("lottery-oddsbom-oddschart-input", null), h("lottery-oddsbom-oddschart-input", null))));
202
+ }), h("div", { class: "oddsbom-oddschart-match-search" }, h("lottery-oddsbom-ticket-button", { text: translate('search', this.language), variant: "outline", onClick: this.handleSearch }))), this.hasFillInSelection &&
203
+ !this.isSearching &&
204
+ (this.filterdOdds ? (h("div", { class: "oddsbom-oddschart-input-wrap" }, h("div", { class: "oddsbom-oddschart-input" }, this.matchSelection.map((arr) => {
205
+ return (h("div", { class: "oddsbom-oddschart-input-item" }, h("lottery-oddsbom-bullet", { text: arr[0], "is-reading": true, "is-selected": true }), h("lottery-oddsbom-bullet", { text: arr[1], "is-reading": true, "is-selected": true })));
206
+ }), h("div", { class: "oddsbom-oddschart-input-odds" }, formatNumber(this.filterdOdds))), h("div", { class: "oddsbom-oddschart-input-operation" }, h("lottery-oddsbom-ticket-button", { text: translate('clear', this.language), variant: "outline", size: "small", onClick: this.clearMatchSelection.bind(this) }), h("lottery-oddsbom-ticket-button", { text: translate('fillIn', this.language), variant: "outline", size: "small", onClick: this.fillInMatchSelection.bind(this) })))) : (h("div", { class: "oddsbom-oddschart-input-empty" }, h("div", null, h("span", { innerHTML: infoIcon1, style: { marginRight: '6px', height: '16px' } }), h("span", { style: { fontSize: '14px' } }, translate('noBets', this.language))), h("div", { class: "oddsbom-oddschart-input-empty-operation" }, h("lottery-oddsbom-ticket-button", { text: translate('clear', this.language), variant: "text", size: "small", onClick: this.clearMatchSelection.bind(this) }), h("lottery-oddsbom-ticket-button", { text: translate('fillIn', this.language), variant: "text", size: "small", onClick: this.fillInMatchSelection.bind(this) }))))), h("div", { class: "oddsbom-oddschart-match-filter" }, (this.isLoading || this.isSearching) && h("div", { class: "progress-bar" }), h("span", { onClick: this.toggleFilterIcon, class: `arrow ${this.isAscend ? 'ascend' : ''}`, innerHTML: upIcon })), h("div", { class: "oddsbom-oddschart-selection" }, this.oddsInfo.map((oddsItem, idx) => {
207
+ return this.generateBulletGroup(oddsItem.lineSelection, oddsItem.odds, idx);
208
+ })), h("div", { class: "oddsbom-oddschart-pagination" }, h("div", { class: "oddsbom-oddschart-pagination-wrap" }, h("div", { class: `oddsbom-oddschart-pagination-prev ${this.curPage < 1 ? 'disabled' : ''}`, onClick: this.handlePrevPage }, h("div", { class: "oddsbom-oddschart-pagination-icon", innerHTML: leftArrowIcon })), h("div", { class: "oddsbom-oddschart-pagination-page" }, `${this.curPage + 1} / ${this.totalPage}`), h("div", { class: `oddsbom-oddschart-pagination-next ${this.curPage >= this.totalPage - 1 ? 'disabled' : ''}`, onClick: this.handleNextPage }, h("div", { class: "oddsbom-oddschart-pagination-icon", innerHTML: rightArrowIcon }))))))))));
209
+ }
210
+ static get is() { return "lottery-oddsbom-oddschart"; }
211
+ static get encapsulation() { return "shadow"; }
212
+ static get originalStyleUrls() {
213
+ return {
214
+ "$": ["lottery-oddsbom-oddschart.scss"]
215
+ };
216
+ }
217
+ static get styleUrls() {
218
+ return {
219
+ "$": ["lottery-oddsbom-oddschart.css"]
220
+ };
221
+ }
222
+ static get properties() {
223
+ return {
224
+ "matchInfo": {
225
+ "type": "unknown",
226
+ "mutable": false,
227
+ "complexType": {
228
+ "original": "Array<DrawEvent>",
229
+ "resolved": "DrawEvent[]",
230
+ "references": {
231
+ "Array": {
232
+ "location": "global",
233
+ "id": "global::Array"
234
+ },
235
+ "DrawEvent": {
236
+ "location": "import",
237
+ "path": "../../model/index.type",
238
+ "id": "../../../../packages/stencil/lottery-oddsbom-ticket-bet/src/model/index.type.ts::DrawEvent"
239
+ }
240
+ }
241
+ },
242
+ "required": false,
243
+ "optional": false,
244
+ "docs": {
245
+ "tags": [],
246
+ "text": ""
247
+ }
248
+ },
249
+ "oddsInfo": {
250
+ "type": "unknown",
251
+ "mutable": false,
252
+ "complexType": {
253
+ "original": "Array<LineOddItem>",
254
+ "resolved": "LineOddItem[]",
255
+ "references": {
256
+ "Array": {
257
+ "location": "global",
258
+ "id": "global::Array"
259
+ },
260
+ "LineOddItem": {
261
+ "location": "import",
262
+ "path": "../../model/index.type",
263
+ "id": "../../../../packages/stencil/lottery-oddsbom-ticket-bet/src/model/index.type.ts::LineOddItem"
264
+ }
265
+ }
266
+ },
267
+ "required": false,
268
+ "optional": false,
269
+ "docs": {
270
+ "tags": [],
271
+ "text": ""
272
+ }
273
+ },
274
+ "total": {
275
+ "type": "number",
276
+ "mutable": false,
277
+ "complexType": {
278
+ "original": "number",
279
+ "resolved": "number",
280
+ "references": {}
281
+ },
282
+ "required": false,
283
+ "optional": false,
284
+ "docs": {
285
+ "tags": [],
286
+ "text": ""
287
+ },
288
+ "attribute": "total",
289
+ "reflect": false
290
+ },
291
+ "curPage": {
292
+ "type": "number",
293
+ "mutable": false,
294
+ "complexType": {
295
+ "original": "number",
296
+ "resolved": "number",
297
+ "references": {}
298
+ },
299
+ "required": false,
300
+ "optional": false,
301
+ "docs": {
302
+ "tags": [],
303
+ "text": ""
304
+ },
305
+ "attribute": "cur-page",
306
+ "reflect": false
307
+ },
308
+ "limit": {
309
+ "type": "number",
310
+ "mutable": false,
311
+ "complexType": {
312
+ "original": "number",
313
+ "resolved": "number",
314
+ "references": {}
315
+ },
316
+ "required": false,
317
+ "optional": false,
318
+ "docs": {
319
+ "tags": [],
320
+ "text": ""
321
+ },
322
+ "attribute": "limit",
323
+ "reflect": false
324
+ },
325
+ "offset": {
326
+ "type": "number",
327
+ "mutable": false,
328
+ "complexType": {
329
+ "original": "number",
330
+ "resolved": "number",
331
+ "references": {}
332
+ },
333
+ "required": false,
334
+ "optional": false,
335
+ "docs": {
336
+ "tags": [],
337
+ "text": ""
338
+ },
339
+ "attribute": "offset",
340
+ "reflect": false
341
+ },
342
+ "filterdOdds": {
343
+ "type": "string",
344
+ "mutable": false,
345
+ "complexType": {
346
+ "original": "string",
347
+ "resolved": "string",
348
+ "references": {}
349
+ },
350
+ "required": false,
351
+ "optional": false,
352
+ "docs": {
353
+ "tags": [],
354
+ "text": ""
355
+ },
356
+ "attribute": "filterd-odds",
357
+ "reflect": false
358
+ },
359
+ "isSearching": {
360
+ "type": "boolean",
361
+ "mutable": false,
362
+ "complexType": {
363
+ "original": "boolean",
364
+ "resolved": "boolean",
365
+ "references": {}
366
+ },
367
+ "required": false,
368
+ "optional": false,
369
+ "docs": {
370
+ "tags": [],
371
+ "text": ""
372
+ },
373
+ "attribute": "is-searching",
374
+ "reflect": false
375
+ },
376
+ "mbSource": {
377
+ "type": "string",
378
+ "mutable": false,
379
+ "complexType": {
380
+ "original": "string",
381
+ "resolved": "string",
382
+ "references": {}
383
+ },
384
+ "required": false,
385
+ "optional": false,
386
+ "docs": {
387
+ "tags": [],
388
+ "text": ""
389
+ },
390
+ "attribute": "mb-source",
391
+ "reflect": true
392
+ },
393
+ "clientStyling": {
394
+ "type": "string",
395
+ "mutable": false,
396
+ "complexType": {
397
+ "original": "string",
398
+ "resolved": "string",
399
+ "references": {}
400
+ },
401
+ "required": false,
402
+ "optional": false,
403
+ "docs": {
404
+ "tags": [],
405
+ "text": ""
406
+ },
407
+ "attribute": "client-styling",
408
+ "reflect": true
409
+ },
410
+ "clientStylingUrl": {
411
+ "type": "string",
412
+ "mutable": false,
413
+ "complexType": {
414
+ "original": "string",
415
+ "resolved": "string",
416
+ "references": {}
417
+ },
418
+ "required": false,
419
+ "optional": false,
420
+ "docs": {
421
+ "tags": [],
422
+ "text": ""
423
+ },
424
+ "attribute": "client-styling-url",
425
+ "reflect": true
426
+ },
427
+ "isLoading": {
428
+ "type": "boolean",
429
+ "mutable": false,
430
+ "complexType": {
431
+ "original": "boolean",
432
+ "resolved": "boolean",
433
+ "references": {}
434
+ },
435
+ "required": false,
436
+ "optional": false,
437
+ "docs": {
438
+ "tags": [],
439
+ "text": ""
440
+ },
441
+ "attribute": "is-loading",
442
+ "reflect": false,
443
+ "defaultValue": "false"
444
+ },
445
+ "language": {
446
+ "type": "string",
447
+ "mutable": false,
448
+ "complexType": {
449
+ "original": "string",
450
+ "resolved": "string",
451
+ "references": {}
452
+ },
453
+ "required": false,
454
+ "optional": false,
455
+ "docs": {
456
+ "tags": [],
457
+ "text": ""
458
+ },
459
+ "attribute": "language",
460
+ "reflect": true,
461
+ "defaultValue": "'en'"
462
+ },
463
+ "translationUrl": {
464
+ "type": "string",
465
+ "mutable": false,
466
+ "complexType": {
467
+ "original": "string",
468
+ "resolved": "string",
469
+ "references": {}
470
+ },
471
+ "required": false,
472
+ "optional": false,
473
+ "docs": {
474
+ "tags": [],
475
+ "text": ""
476
+ },
477
+ "attribute": "translation-url",
478
+ "reflect": true,
479
+ "defaultValue": "''"
480
+ }
481
+ };
482
+ }
483
+ static get states() {
484
+ return {
485
+ "isAscend": {},
486
+ "selectedGroupIndex": {},
487
+ "matchSelection": {},
488
+ "hasFillInSelection": {}
489
+ };
490
+ }
491
+ static get events() {
492
+ return [{
493
+ "method": "oddsQueryLineChangeEvent",
494
+ "name": "oddsQueryLineChange",
495
+ "bubbles": true,
496
+ "cancelable": true,
497
+ "composed": true,
498
+ "docs": {
499
+ "tags": [],
500
+ "text": ""
501
+ },
502
+ "complexType": {
503
+ "original": "OddsQuery",
504
+ "resolved": "OddsQuery",
505
+ "references": {
506
+ "OddsQuery": {
507
+ "location": "import",
508
+ "path": "../../model/index.type",
509
+ "id": "../../../../packages/stencil/lottery-oddsbom-ticket-bet/src/model/index.type.ts::OddsQuery"
510
+ }
511
+ }
512
+ }
513
+ }, {
514
+ "method": "oddschartFillInEvent",
515
+ "name": "oddschartFillIn",
516
+ "bubbles": true,
517
+ "cancelable": true,
518
+ "composed": true,
519
+ "docs": {
520
+ "tags": [],
521
+ "text": ""
522
+ },
523
+ "complexType": {
524
+ "original": "{\n fillInNums: Array<string>;\n }",
525
+ "resolved": "{ fillInNums: string[]; }",
526
+ "references": {
527
+ "Array": {
528
+ "location": "global",
529
+ "id": "global::Array"
530
+ }
531
+ }
532
+ }
533
+ }, {
534
+ "method": "oddsQueryChangeEvent",
535
+ "name": "oddsQueryChange",
536
+ "bubbles": true,
537
+ "cancelable": true,
538
+ "composed": true,
539
+ "docs": {
540
+ "tags": [],
541
+ "text": ""
542
+ },
543
+ "complexType": {
544
+ "original": "OddsQuery",
545
+ "resolved": "OddsQuery",
546
+ "references": {
547
+ "OddsQuery": {
548
+ "location": "import",
549
+ "path": "../../model/index.type",
550
+ "id": "../../../../packages/stencil/lottery-oddsbom-ticket-bet/src/model/index.type.ts::OddsQuery"
551
+ }
552
+ }
553
+ }
554
+ }];
555
+ }
556
+ static get methods() {
557
+ return {
558
+ "initOddsChart": {
559
+ "complexType": {
560
+ "signature": "() => Promise<void>",
561
+ "parameters": [],
562
+ "references": {
563
+ "Promise": {
564
+ "location": "global",
565
+ "id": "global::Promise"
566
+ }
567
+ },
568
+ "return": "Promise<void>"
569
+ },
570
+ "docs": {
571
+ "text": "",
572
+ "tags": []
573
+ }
574
+ },
575
+ "closeOddsChart": {
576
+ "complexType": {
577
+ "signature": "() => Promise<void>",
578
+ "parameters": [],
579
+ "references": {
580
+ "Promise": {
581
+ "location": "global",
582
+ "id": "global::Promise"
583
+ }
584
+ },
585
+ "return": "Promise<void>"
586
+ },
587
+ "docs": {
588
+ "text": "",
589
+ "tags": []
590
+ }
591
+ }
592
+ };
593
+ }
594
+ static get watchers() {
595
+ return [{
596
+ "propName": "clientStyling",
597
+ "methodName": "handleClientStylingChange"
598
+ }, {
599
+ "propName": "clientStylingUrl",
600
+ "methodName": "handleClientStylingUrlChange"
601
+ }, {
602
+ "propName": "mbSource",
603
+ "methodName": "handleMbSourceChange"
604
+ }, {
605
+ "propName": "matchInfo",
606
+ "methodName": "handleMatchInfoChange"
607
+ }];
608
+ }
609
+ }
@@ -0,0 +1,40 @@
1
+ .oddscharts-input {
2
+ display: inline-flex;
3
+ padding: 2px;
4
+ }
5
+ .oddscharts-input input {
6
+ width: 32px;
7
+ height: 32px;
8
+ text-align: center;
9
+ font-size: 14px;
10
+ font-weight: bold;
11
+ line-height: 32px;
12
+ border: 2px solid var(--emw--color-gray-100, #e6e6e6);
13
+ border-radius: 4px;
14
+ padding: 0;
15
+ margin: 0;
16
+ -webkit-appearance: none;
17
+ -moz-appearance: none;
18
+ appearance: none;
19
+ background-color: var(--emw--color-background, #fff);
20
+ color: var(--emw--color-typography, #000);
21
+ text-transform: uppercase;
22
+ }
23
+ .oddscharts-input input:focus {
24
+ outline: none;
25
+ border-color: var(--emw--color-primary, #0d196e);
26
+ box-shadow: 0 0 0 2px var(--emw--button-box-shadow-color-secondary, rgba(0, 0, 0, 0.15));
27
+ border-width: 2px;
28
+ }
29
+ .oddscharts-input input:disabled {
30
+ background-color: var(--emw--color-gray-50, #f5f5f5);
31
+ border-color: var(--emw--color-gray-100, #e6e6e6);
32
+ color: var(--emw--color-gray-150, #6f6f6f);
33
+ cursor: not-allowed;
34
+ }
35
+ .oddscharts-input input.error {
36
+ border-color: var(--emw--color-error, #ff3d00);
37
+ }
38
+ .oddscharts-input input.error:focus {
39
+ box-shadow: 0 0 0 2px var(--emw--button-box-shadow-color-secondary, rgba(0, 0, 0, 0.15));
40
+ }