@everymatrix/lottery-tipping-ticket-controller 1.86.27 → 1.86.28
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/general-tooltip_7.cjs.entry.js +36 -7
- package/dist/cjs/index.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{lottery-tipping-ticket-controller-0ac12c3a.js → lottery-tipping-ticket-controller-59ee8536.js} +368 -361
- package/dist/cjs/lottery-tipping-ticket-controller.cjs.js +1 -1
- package/dist/collection/components/lottery-tipping-ticket-controller/lottery-tipping-ticket-controller.js +21 -76
- package/dist/collection/utils/api.js +1 -1
- package/dist/collection/utils/utils.js +43 -38
- package/dist/esm/general-tooltip_7.entry.js +37 -8
- package/dist/esm/index.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{lottery-tipping-ticket-controller-d705ad02.js → lottery-tipping-ticket-controller-f0d23f7a.js} +368 -361
- package/dist/esm/lottery-tipping-ticket-controller.js +1 -1
- package/dist/lottery-tipping-ticket-controller/general-tooltip_7.entry.js +1 -1
- package/dist/lottery-tipping-ticket-controller/index.esm.js +1 -1
- package/dist/lottery-tipping-ticket-controller/{lottery-tipping-ticket-controller-d705ad02.js → lottery-tipping-ticket-controller-f0d23f7a.js} +241 -241
- package/dist/lottery-tipping-ticket-controller/lottery-tipping-ticket-controller.esm.js +1 -1
- package/dist/types/components/lottery-tipping-ticket-controller/lottery-tipping-ticket-controller.d.ts +2 -7
- package/dist/types/components.d.ts +0 -10
- package/dist/types/utils/api.d.ts +1 -1
- package/dist/types/utils/utils.d.ts +13 -7
- package/package.json +1 -1
|
@@ -19,7 +19,7 @@ var patchBrowser = () => {
|
|
|
19
19
|
|
|
20
20
|
patchBrowser().then(async (options) => {
|
|
21
21
|
await appGlobals.globalScripts();
|
|
22
|
-
return index.bootstrapLazy([["general-tooltip_7.cjs",[[1,"lottery-tipping-ticket-controller",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"logoUrl":[513,"logo-url"],"endpoint":[513],"
|
|
22
|
+
return index.bootstrapLazy([["general-tooltip_7.cjs",[[1,"lottery-tipping-ticket-controller",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"logoUrl":[513,"logo-url"],"endpoint":[513],"sessionId":[513,"session-id"],"gameId":[513,"game-id"],"playerId":[513,"player-id"],"drawId":[513,"draw-id"],"isLoading":[32],"bettingTypeOptions":[32],"playingModeOptions":[32],"selectedBettingType":[32],"selectedPlayingMode":[32],"hasSelectBullet":[32],"hasSelectAllBullet":[32],"totalLineCombination":[32],"submitLoading":[32],"rawData":[32],"saleStatisticsInfo":[32],"currentStake":[32],"dialogConfig":[32]},[[0,"lotteryTippingBulletBetSelect","lotteryTippingBulletGroupSelectionHandler"]],{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"]}],[1,"lottery-tipping-ticket-bet",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"sessionId":[513,"session-id"],"endpoint":[513],"gameId":[513,"game-id"],"drawId":[513,"draw-id"],"totalPages":[1538,"total-pages"],"minTotalPages":[514,"min-total-pages"],"maxTotalPages":[514,"max-total-pages"],"mode":[513],"readPretty":[516,"read-pretty"],"defaultBulletConfigLineGroup":[513,"default-bullet-config-line-group"],"translationData":[32],"clientStylingUrlContent":[32],"bulletConfigLineGroup":[32],"currentPage":[32],"isLoading":[32],"hasErrors":[32],"dialogConfig":[32],"ticketDataSource":[32],"resetBulletConfig":[64],"getData":[64]},[[0,"lotteryTippingBulletGroupToggle","lotteryTippingBulletGroupSelectionHandler"]],{"translationUrl":["handleNewTranslations"],"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"gameId":["fetchMatchData"],"sessionId":["fetchMatchData"],"drawId":["fetchMatchData"],"defaultBulletConfigLineGroup":["fetchMatchData"],"currentPage":["handleCurrentPageChange"]}],[1,"lottery-button",{"variant":[513],"size":[513],"color":[513],"disabled":[516],"loading":[516],"text":[513],"mbSource":[513,"mb-source"],"language":[513],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"ripples":[32]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"]}],[1,"lottery-tipping-ticket-banner",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"language":[513],"translationUrl":[513,"translation-url"],"logoUrl":[513,"logo-url"],"stopTime":[1,"stop-time"],"period":[1],"formattedTurnover":[1,"formatted-turnover"]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"]}],[1,"lottery-tipping-bullet-group",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"positionIdx":[513,"position-idx"],"theme":[513],"mode":[513],"bulletConfigContent":[513,"bullet-config-content"]},[[0,"lotteryTippingBulletToggle","lotteryTippingBulletSelectionHandler"]],{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"]}],[1,"general-tooltip",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"position":[1],"delay":[2],"isVisible":[32],"_tooltipId":[32]},[[1,"mouseenter","handleMouseEnterOrFocus"],[0,"focusin","handleMouseEnterOrFocus"],[1,"mouseleave","handleMouseLeaveOrBlur"],[0,"focusout","handleMouseLeaveOrBlur"],[0,"keydown","handleKeyDown"]],{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"]}],[1,"lottery-tipping-bullet",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"positionIdx":[514,"position-idx"],"theme":[513],"value":[513],"disabled":[516],"isSelected":[516,"is-selected"]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"]}]]]], options);
|
|
23
23
|
});
|
|
24
24
|
|
|
25
25
|
exports.setNonce = index.setNonce;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { h } from "@stencil/core";
|
|
2
|
-
import { setClientStyling, setClientStylingURL, setStreamStyling } from "../../../../../../../../libs/common/src/styling/index";
|
|
3
|
-
import "../../../../../../../libs/vaadin-facade/index";
|
|
4
1
|
import "../../../../../lottery-button/dist/types/index";
|
|
5
2
|
import "../../../../../lottery-tipping-ticket-bet/dist/types/index";
|
|
3
|
+
import { h } from "@stencil/core";
|
|
4
|
+
import "../../../../../../../libs/vaadin-facade/index";
|
|
5
|
+
import { setClientStyling, setClientStylingURL, setStreamStyling } from "../../../../../../../../libs/common/src/styling/index";
|
|
6
6
|
import { BettingTypeEnum, PlayModeEnum } from "../../models";
|
|
7
7
|
import { resolveTranslationUrl, translate } from "../../utils/locale.utils";
|
|
8
|
-
import { calculatePlayingModeOptions, fetchRequest,
|
|
8
|
+
import { buildSubmitParam, calculatePlayingModeOptions, fetchRequest, getCheckedCountForEachLineAndEachMatch, getDefaultType, getEnableOptions, getPlayTypeConfig, showNotification, thousandSeparator, getMinValue } from "../../utils/utils";
|
|
9
9
|
import { doSubmitTicket, fetchSaleStatistics, TICKET_INVALID_TOKEN } from "../../utils/api";
|
|
10
10
|
// value:
|
|
11
11
|
export class LotteryTippingTicketController {
|
|
@@ -21,8 +21,6 @@ export class LotteryTippingTicketController {
|
|
|
21
21
|
this.language = 'en';
|
|
22
22
|
this.logoUrl = undefined;
|
|
23
23
|
this.endpoint = '';
|
|
24
|
-
this.endpointLotteryBe = '';
|
|
25
|
-
this.endpointTicket = undefined;
|
|
26
24
|
this.sessionId = undefined;
|
|
27
25
|
this.gameId = undefined;
|
|
28
26
|
this.playerId = '';
|
|
@@ -258,7 +256,7 @@ export class LotteryTippingTicketController {
|
|
|
258
256
|
updateSaleStatistics() {
|
|
259
257
|
var _a;
|
|
260
258
|
return fetchSaleStatistics({
|
|
261
|
-
endpoint: this.
|
|
259
|
+
endpoint: this.endpoint,
|
|
262
260
|
gameId: (_a = this.rawData) === null || _a === void 0 ? void 0 : _a.type,
|
|
263
261
|
drawId: this.drawId
|
|
264
262
|
}).then((res) => {
|
|
@@ -272,35 +270,17 @@ export class LotteryTippingTicketController {
|
|
|
272
270
|
selectedBettingType: this.selectedBettingType,
|
|
273
271
|
selectedPlayingMode: this.selectedPlayingMode
|
|
274
272
|
});
|
|
275
|
-
const
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
gameId: this.gameId,
|
|
287
|
-
gameName: this.rawData.name,
|
|
288
|
-
currency: stake.currency,
|
|
289
|
-
selection: selections.map((i) => ({
|
|
290
|
-
betType: betTypeId,
|
|
291
|
-
stake: +stake.value,
|
|
292
|
-
selections: i,
|
|
293
|
-
quickPick: false,
|
|
294
|
-
betName: betType.name
|
|
295
|
-
})),
|
|
296
|
-
multiplier: false,
|
|
297
|
-
drawCount: 1,
|
|
298
|
-
quickPick: false
|
|
299
|
-
});
|
|
300
|
-
return body;
|
|
301
|
-
};
|
|
302
|
-
const url = new URL(`${this.endpointTicket}/tickets`);
|
|
303
|
-
const body = buildSubmitParam();
|
|
273
|
+
const url = new URL(`${this.endpoint}/tickets`);
|
|
274
|
+
const body = buildSubmitParam({
|
|
275
|
+
playerId: this.playerId,
|
|
276
|
+
rawResults,
|
|
277
|
+
gameId: this.gameId,
|
|
278
|
+
rawData: this.rawData,
|
|
279
|
+
amount: this.calculateTotalAmount().toString(),
|
|
280
|
+
currentStake: this.currentStake,
|
|
281
|
+
betTypeId,
|
|
282
|
+
betType
|
|
283
|
+
});
|
|
304
284
|
this.submitLoading = true;
|
|
305
285
|
doSubmitTicket({ body, sessionId: this.sessionId, url: url.href })
|
|
306
286
|
.then(() => {
|
|
@@ -328,7 +308,7 @@ export class LotteryTippingTicketController {
|
|
|
328
308
|
return _ + ' ' + unit;
|
|
329
309
|
}
|
|
330
310
|
renderBettingControls() {
|
|
331
|
-
var _a;
|
|
311
|
+
var _a, _b;
|
|
332
312
|
const renderSkeleton = () => (h("div", { class: "skeleton-content" }, h("div", { class: "skeleton-item skeleton-animated" })));
|
|
333
313
|
const renderBettingTypeOptions = () => (h("div", { class: "LotteryTippingTicketController__segmented-control" }, this.bettingTypeOptions.map((item) => (h("button", { class: {
|
|
334
314
|
LotteryTippingTicketController__segment: true,
|
|
@@ -342,15 +322,15 @@ export class LotteryTippingTicketController {
|
|
|
342
322
|
var _a;
|
|
343
323
|
return (h("div", null, h("vaadin-select", { items: this.stakeOptions || [], value: ((_a = this.currentStake) === null || _a === void 0 ? void 0 : _a.value) || '', "on-value-changed": this.onStakeChange.bind(this), "no-vertical-overlap": true })));
|
|
344
324
|
};
|
|
345
|
-
return (h("div", { class: "LotteryTippingTicketController__top" }, h("div", { class: "LotteryTippingTicketController__row" }, h("div", { class: "LotteryTippingTicketController__section" }, h("span", { class: "LotteryTippingTicketController__label" }, translate('bettingType', this.language)), !!this.bettingTypeOptions.length ? renderBettingTypeOptions() : renderSkeleton()), h("div", { class: "LotteryTippingTicketController__section" }, h("span", { class: "LotteryTippingTicketController__label" }, translate('playingMode', this.language)), !!this.playingModeOptions.length ? renderPlayingModeOptions() : renderSkeleton()), ((_a = this.stakeOptions) === null || _a === void 0 ? void 0 : _a.length) > 1 && (h("div", { class: "LotteryTippingTicketController__section" }, h("span", { class: "LotteryTippingTicketController__label" }, translate('stakePerLine', this.language)), renderingStakeOptions())))));
|
|
325
|
+
return (h("div", { class: "LotteryTippingTicketController__top" }, h("div", { class: "LotteryTippingTicketController__row" }, h("div", { class: "LotteryTippingTicketController__section" }, h("span", { class: "LotteryTippingTicketController__label" }, translate('bettingType', this.language)), !!this.bettingTypeOptions.length ? renderBettingTypeOptions() : renderSkeleton()), h("div", { class: "LotteryTippingTicketController__section" }, h("span", { class: "LotteryTippingTicketController__label" }, translate('playingMode', this.language)), !!this.playingModeOptions.length ? renderPlayingModeOptions() : renderSkeleton()), ((_a = this.stakeOptions) === null || _a === void 0 ? void 0 : _a.length) > 1 && (h("div", { class: "LotteryTippingTicketController__section" }, h("span", { class: "LotteryTippingTicketController__label" }, translate('stakePerLine', this.language)), renderingStakeOptions())), ((_b = this.stakeOptions) === null || _b === void 0 ? void 0 : _b.length) > 1 && (h("div", { class: "LotteryTippingTicketController__section" }, h("span", { class: "LotteryTippingTicketController__label" }, translate('stakePerLine', this.language)), renderingStakeOptions())))));
|
|
346
326
|
}
|
|
347
327
|
renderOrderSummary() {
|
|
348
328
|
var _a;
|
|
349
329
|
return (h("div", { class: "LotteryTippingTicketController__main--right order-summary" }, h("h3", { class: "order-summary__title" }, translate('orderSummaryTitle', this.language)), h("div", { class: "order-summary__ticket-info" }, h("div", { class: "order-summary__ticket" }, translate('orderSummaryTickets', this.language), ":"), h("div", { class: "order-summary__details" }, h("span", { class: "order-summary__line-count" }, this.lineCountRender), h("div", null, this.currentStake && h("span", { class: "order-summary__multiplier" }, "x"), h("span", { class: "order-summary__stake" }, this.currentStakeFormatted)), this.isBothBettingType && (h("div", null, h("span", { class: "order-summary__multiplier" }, "x"), h("span", { class: "order-summary__stake" }, this.bothBettingTypeMultiplier))))), h("hr", { class: "order-summary__divider" }), h("div", { class: "order-summary__ticket-info" }, h("div", { class: "order-summary__ticket" }, translate('orderSummaryTotal', this.language), ":"), h("span", { class: "order-summary__details" }, this.totalAmountFormatted)), h("div", { class: "order-summary__button-wrapper" }, h("lottery-button", { onClick: this.handleSubmit.bind(this), loading: this.submitLoading, disabled: !this.hasSelectAllBullet || this.submitLoading || ((_a = this.currentStake) === null || _a === void 0 ? void 0 : _a.value) === undefined, text: translate('orderSummarySubmit', this.language) }))));
|
|
350
330
|
}
|
|
351
331
|
get formattedTurnover() {
|
|
352
|
-
var _a, _b;
|
|
353
|
-
const turnover = (_b = (_a = this.saleStatisticsInfo) === null || _a === void 0 ? void 0 : _a.wagerSegment) === null || _b === void 0 ? void 0 : _b.totalSalesCrossDraw;
|
|
332
|
+
var _a, _b, _c;
|
|
333
|
+
const turnover = (_c = (_b = (_a = this.saleStatisticsInfo) === null || _a === void 0 ? void 0 : _a.wagerSegment) === null || _b === void 0 ? void 0 : _b.totalSalesCrossDraw) !== null && _c !== void 0 ? _c : 0;
|
|
354
334
|
if (turnover === null || turnover === undefined)
|
|
355
335
|
return '';
|
|
356
336
|
const unit = '€';
|
|
@@ -358,7 +338,7 @@ export class LotteryTippingTicketController {
|
|
|
358
338
|
}
|
|
359
339
|
render() {
|
|
360
340
|
var _a, _b, _c, _d, _e, _f, _g;
|
|
361
|
-
return (h("div", { key: '
|
|
341
|
+
return (h("div", { key: '353f56111a3dc6f6e7365d563163a38c850f2e88', class: "lottery-tipping-ticket-controller__container", ref: (el) => (this.stylingContainer = el) }, h("lottery-tipping-ticket-banner", { key: '3a2472f0bf9195547f5e4c6c2c0a2362c790aa27', "client-styling": this.clientStyling, "client-styling-Url": this.clientStylingUrl, stopTime: (_b = (_a = this.rawData) === null || _a === void 0 ? void 0 : _a.currentDraw) === null || _b === void 0 ? void 0 : _b.wagerCloseTime, period: (_d = (_c = this.rawData) === null || _c === void 0 ? void 0 : _c.currentDraw) === null || _d === void 0 ? void 0 : _d.date, "formatted-turnover": this.formattedTurnover, language: this.language, "translation-url": this.translationUrl, "logo-url": this.logoUrl }), this.renderBettingControls(), h("div", { key: '9d0a9391ccf79351959cc280e3c15efc657a966f', class: "flex flex-wrap LotteryTippingTicketController__main" }, h("div", { key: 'c61fdb41d41694227971478e193cc5162bff30c3', class: "LotteryTippingTicketController__main--left" }, h("lottery-tipping-ticket-bet", { key: '56964177a4366a366279b2ebfff2ee52d1e27de0', ref: (el) => (this.childRef = el), endpoint: this.endpoint, "session-id": this.sessionId, "game-id": (_e = this.rawData) === null || _e === void 0 ? void 0 : _e.type, "draw-id": this.drawId, language: this.language, "translation-url": this.translationUrl, "max-total-pages": this.lineNumberRange.maxLineNumber, "min-total-pages": this.lineNumberRange.minLineNumber, "total-pages": this.lineNumberRange.defaultBoards, mode: this.selectedPlayingMode === PlayModeEnum.SingleBet ? 'single' : 'multi', "client-styling": this.clientStyling, "client-styling-Url": this.clientStylingUrl })), this.renderOrderSummary()), this.dialogConfig.visible && (h("vaadin-confirm-dialog", { key: 'fe8eb6d26eecee3c6e10b20c4f2ad968f707d51c', rejectButtonVisible: true, rejectText: translate('cancel', this.language), confirmText: translate('confirm', this.language), opened: (_f = this.dialogConfig) === null || _f === void 0 ? void 0 : _f.visible, onConfirm: this.dialogConfig.onConfirm, onReject: this.dialogConfig.onCancel }, (_g = this.dialogConfig) === null || _g === void 0 ? void 0 : _g.content))));
|
|
362
342
|
}
|
|
363
343
|
static get is() { return "lottery-tipping-ticket-controller"; }
|
|
364
344
|
static get encapsulation() { return "shadow"; }
|
|
@@ -497,41 +477,6 @@ export class LotteryTippingTicketController {
|
|
|
497
477
|
"reflect": true,
|
|
498
478
|
"defaultValue": "''"
|
|
499
479
|
},
|
|
500
|
-
"endpointLotteryBe": {
|
|
501
|
-
"type": "string",
|
|
502
|
-
"mutable": false,
|
|
503
|
-
"complexType": {
|
|
504
|
-
"original": "string",
|
|
505
|
-
"resolved": "string",
|
|
506
|
-
"references": {}
|
|
507
|
-
},
|
|
508
|
-
"required": false,
|
|
509
|
-
"optional": false,
|
|
510
|
-
"docs": {
|
|
511
|
-
"tags": [],
|
|
512
|
-
"text": ""
|
|
513
|
-
},
|
|
514
|
-
"attribute": "endpoint-lottery-be",
|
|
515
|
-
"reflect": true,
|
|
516
|
-
"defaultValue": "''"
|
|
517
|
-
},
|
|
518
|
-
"endpointTicket": {
|
|
519
|
-
"type": "string",
|
|
520
|
-
"mutable": false,
|
|
521
|
-
"complexType": {
|
|
522
|
-
"original": "string",
|
|
523
|
-
"resolved": "string",
|
|
524
|
-
"references": {}
|
|
525
|
-
},
|
|
526
|
-
"required": false,
|
|
527
|
-
"optional": false,
|
|
528
|
-
"docs": {
|
|
529
|
-
"tags": [],
|
|
530
|
-
"text": "EndpointTicket URL for the source of ticket data"
|
|
531
|
-
},
|
|
532
|
-
"attribute": "endpoint-ticket",
|
|
533
|
-
"reflect": true
|
|
534
|
-
},
|
|
535
480
|
"sessionId": {
|
|
536
481
|
"type": "string",
|
|
537
482
|
"mutable": false,
|
|
@@ -29,7 +29,7 @@ export const doSubmitTicket = ({ body, sessionId, url }) => {
|
|
|
29
29
|
};
|
|
30
30
|
export async function fetchSaleStatistics({ endpoint, gameId, drawId }) {
|
|
31
31
|
try {
|
|
32
|
-
const res = await fetchRequest(`${endpoint}/
|
|
32
|
+
const res = await fetchRequest(`${endpoint}/games/${gameId}/draws/${drawId}/saleStatistics`);
|
|
33
33
|
return res;
|
|
34
34
|
}
|
|
35
35
|
catch (error) {
|
|
@@ -74,46 +74,51 @@ export const thousandSeparator = (value) => {
|
|
|
74
74
|
parts[0] = parts[0].replace(/\B(?=(\d{3})+(?!\d))/g, ',');
|
|
75
75
|
return parts.join('.');
|
|
76
76
|
};
|
|
77
|
-
|
|
78
|
-
// format results
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
const
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
77
|
+
const HomeDrawAwayArr = ['H', 'D', 'A'];
|
|
78
|
+
// Utility to format raw results into winning numbers (H/D/A)
|
|
79
|
+
const formatResultsToWinningNumbers = (rawResults) => {
|
|
80
|
+
// Convert each bullet item into binary (1 if selected, 0 otherwise)
|
|
81
|
+
const toBinarySelection = (matchRes) => matchRes.map((bulletItem) => (bulletItem.isSelected ? 1 : 0));
|
|
82
|
+
// Step 1: Convert rawResults into arrays of 0/1 flags
|
|
83
|
+
const binaryResults = rawResults.map((lineRes) => lineRes.map(toBinarySelection));
|
|
84
|
+
const resultLinesArr = [];
|
|
85
|
+
// Step 2: Iterate through each line of results
|
|
86
|
+
binaryResults.forEach((line, lineIdx) => {
|
|
87
|
+
const formattedLine = [];
|
|
88
|
+
// Step 3: Iterate through each match in a line
|
|
89
|
+
line.forEach((match, matchIdx) => {
|
|
90
|
+
// Step 4: Collect the winning outcomes (H/D/A) based on binary flags
|
|
91
|
+
const outcomes = match.map((isSelected, idx) => (isSelected ? HomeDrawAwayArr[idx] : null)).filter(Boolean);
|
|
92
|
+
// Wrap outcomes into the expected structure [[matchRes]]
|
|
93
|
+
formattedLine[matchIdx] = [outcomes];
|
|
94
|
+
});
|
|
95
|
+
resultLinesArr[lineIdx] = formattedLine;
|
|
96
|
+
});
|
|
97
|
+
return resultLinesArr;
|
|
96
98
|
};
|
|
97
|
-
export const
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
}
|
|
115
|
-
|
|
99
|
+
export const buildSubmitParam = ({ playerId, rawResults, gameId, rawData, amount, currentStake, betTypeId, betType }) => {
|
|
100
|
+
var _a;
|
|
101
|
+
const body = { playerId, tickets: [] };
|
|
102
|
+
const selections = formatResultsToWinningNumbers(rawResults);
|
|
103
|
+
const stake = currentStake || {};
|
|
104
|
+
body.tickets.push({
|
|
105
|
+
startingDrawId: (_a = rawData === null || rawData === void 0 ? void 0 : rawData.currentDraw) === null || _a === void 0 ? void 0 : _a.id,
|
|
106
|
+
amount,
|
|
107
|
+
gameId: gameId,
|
|
108
|
+
gameName: rawData.name,
|
|
109
|
+
currency: stake.currency,
|
|
110
|
+
selection: selections.map((i) => ({
|
|
111
|
+
betType: betTypeId,
|
|
112
|
+
stake: +stake.value,
|
|
113
|
+
poolGameSelections: i,
|
|
114
|
+
quickPick: false,
|
|
115
|
+
betName: betType.name
|
|
116
|
+
})),
|
|
117
|
+
multiplier: false,
|
|
118
|
+
drawCount: 1,
|
|
119
|
+
quickPick: false
|
|
116
120
|
});
|
|
121
|
+
return body;
|
|
117
122
|
};
|
|
118
123
|
// BettingTypes, playModes and playTypes
|
|
119
124
|
export const getEnableOptions = (raw = []) => raw.filter((i) => i.enabled);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { r as registerInstance, h, g as getElement, c as createEvent } from './index-e3ec645c.js';
|
|
2
|
-
import { r as requiredArgs, t as toDate, s as setClientStyling, a as setClientStylingURL, b as setStreamStyling, f as formatDate$1, c as resolveTranslationUrl$1, p as parseISO, d as format } from './lottery-tipping-ticket-controller-
|
|
3
|
-
export { L as lottery_tipping_ticket_controller } from './lottery-tipping-ticket-controller-
|
|
2
|
+
import { r as requiredArgs, t as toDate, s as setClientStyling, a as setClientStylingURL, b as setStreamStyling, f as formatDate$1, c as resolveTranslationUrl$1, p as parseISO, d as format } from './lottery-tipping-ticket-controller-f0d23f7a.js';
|
|
3
|
+
export { L as lottery_tipping_ticket_controller } from './lottery-tipping-ticket-controller-f0d23f7a.js';
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* @name startOfDay
|
|
@@ -216,7 +216,7 @@ const resolveTranslationUrl = async (translationUrl) => {
|
|
|
216
216
|
}
|
|
217
217
|
};
|
|
218
218
|
|
|
219
|
-
const lotteryButtonCss = ":host{display:inline-block
|
|
219
|
+
const lotteryButtonCss = ":host{display:inline-block}.btn{font:inherit;position:relative;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:var(--lottery-button-border-radius, 6px);font-weight:var(--lottery-button-font-weight, 500);cursor:pointer;outline:none;overflow:hidden;transition:var(--lottery-button-transition, background-color 0.2s, border-color 0.2s, color 0.2s, box-shadow 0.2s);user-select:none;-webkit-tap-highlight-color:transparent;box-shadow:var(--lottery-button-box-shadow, 0 2px 4px 0 rgba(0, 0, 0, 0.5))}.btn .content{position:relative;display:inline-flex;align-items:center;gap:var(--lottery-button-content-gap, 0.5em)}.btn .content ::slotted(span){display:inline-flex;align-items:center}.btn:hover:not(:disabled){box-shadow:var(--lottery-button-hover-box-shadow, 0 4px 8px 0 rgba(0, 0, 0, 0.5))}.btn:disabled{cursor:not-allowed;opacity:var(--lottery-button-disabled-opacity, 0.5)}.btn .loading-container{display:flex;align-items:center}.btn--loading{position:relative}.btn .spinner{display:inline-block;width:1em;height:1em;border:var(--lottery-button-spinner-border, 2px solid rgba(255, 255, 255, 0.3));border-radius:50%;border-top-color:var(--lottery-button-spinner-color, white);animation:spin 1s ease-in-out infinite;margin-left:0.5em;vertical-align:middle}.btn--small .spinner{width:0.8em;height:0.8em}.btn--large .spinner{width:1.2em;height:1.2em}@keyframes spin{to{transform:rotate(360deg)}}.btn--primary{background-color:var(--emw--color-primary, #0d196e);color:var(--emw--color-typography-inverse, #fff)}.btn--primary:hover:not(:disabled){background-color:var(--emw--color-primary-variant, #1367e7)}.btn--primary:active:not(:disabled){background-color:var(--lottery-button-primary-active-bg, #08104a)}.btn--outline .spinner,.btn--dashed .spinner,.btn--text .spinner{border-top-color:currentColor;border-color:var(--lottery-button-spinner-inverse-border-color, rgba(0, 0, 0, 0.2))}.btn--outline{background-color:var(--emw--color-background, #fff);border-color:var(--lottery-button-outline-border-color, #dcdcdc);color:var(--emw--color-typography, #000)}.btn--outline:hover:not(:disabled){background-color:var(--emw--color-background-tertiary, #ccc);border-color:var(--lottery-button-outline-hover-border-color, #a6a6a6)}.btn--outline:active:not(:disabled){background-color:var(--lottery-button-outline-active-bg, #e6e6e6)}.btn--dashed{background-color:transparent;border-style:dashed;border-color:var(--lottery-button-dashed-border-color, #dcdcdc);color:var(--lottery-button-dashed-color, #333)}.btn--dashed:hover:not(:disabled){border-color:var(--lottery-button-dashed-hover-border-color, #a6a6a6);color:var(--lottery-button-dashed-hover-color, #0052d9)}.btn--text{background-color:transparent;color:var(--lottery-button-text-color, #0052d9);border-color:transparent}.btn--text:hover:not(:disabled){background-color:var(--lottery-button-text-hover-bg, #f2f2f2)}.btn--text:active:not(:disabled){background-color:var(--lottery-button-text-active-bg, #e6e6e6)}.btn--custom-color:hover:not(:disabled){opacity:var(--lottery-button-custom-hover-opacity, 0.9)}.btn--custom-color:active:not(:disabled){opacity:var(--lottery-button-custom-active-opacity, 0.8)}.btn--small{height:var(--lottery-button-small-height, 28px);font-size:var(--lottery-button-small-font-size, 12px);padding:var(--lottery-button-small-padding, 0 12px)}.btn--medium{height:var(--lottery-button-medium-height, 34px);font-size:var(--lottery-button-medium-font-size, 14px);padding:var(--lottery-button-medium-padding, 0 18px)}.btn--large{height:var(--lottery-button-large-height, 40px);font-size:var(--lottery-button-large-font-size, 16px);padding:var(--lottery-button-large-padding, 0 24px)}.ripple-container{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;pointer-events:none;border-radius:inherit}.ripple{position:absolute;border-radius:50%;background-color:var(--lottery-button-ripple-light, rgba(255, 255, 255, 0.3));transform:scale(0);animation:ripple-animation 600ms linear}.btn--outline .ripple,.btn--dashed .ripple,.btn--text .ripple{background-color:var(--lottery-button-ripple-dark, rgba(0, 0, 0, 0.03))}@keyframes ripple-animation{to{transform:scale(4);opacity:0}}";
|
|
220
220
|
const LotteryButtonStyle0 = lotteryButtonCss;
|
|
221
221
|
|
|
222
222
|
const LotteryButton = class {
|
|
@@ -245,6 +245,7 @@ const LotteryButton = class {
|
|
|
245
245
|
};
|
|
246
246
|
this.variant = 'primary';
|
|
247
247
|
this.size = 'medium';
|
|
248
|
+
this.color = undefined;
|
|
248
249
|
this.disabled = false;
|
|
249
250
|
this.loading = false;
|
|
250
251
|
this.text = undefined;
|
|
@@ -289,14 +290,43 @@ const LotteryButton = class {
|
|
|
289
290
|
}
|
|
290
291
|
}
|
|
291
292
|
render() {
|
|
292
|
-
const { variant, disabled, size } = this;
|
|
293
|
+
const { variant, disabled, size, color } = this;
|
|
293
294
|
const isDisabled = disabled || this.loading;
|
|
294
|
-
|
|
295
|
+
// Calculate styles based on variant and color
|
|
296
|
+
const buttonStyles = {};
|
|
297
|
+
if (color) {
|
|
298
|
+
switch (variant) {
|
|
299
|
+
case 'primary':
|
|
300
|
+
Object.assign(buttonStyles, {
|
|
301
|
+
backgroundColor: color,
|
|
302
|
+
borderColor: color
|
|
303
|
+
});
|
|
304
|
+
break;
|
|
305
|
+
case 'outline':
|
|
306
|
+
case 'dashed':
|
|
307
|
+
Object.assign(buttonStyles, {
|
|
308
|
+
color: color,
|
|
309
|
+
borderColor: color
|
|
310
|
+
});
|
|
311
|
+
break;
|
|
312
|
+
case 'text':
|
|
313
|
+
Object.assign(buttonStyles, {
|
|
314
|
+
color: color
|
|
315
|
+
});
|
|
316
|
+
break;
|
|
317
|
+
default:
|
|
318
|
+
Object.assign(buttonStyles, {
|
|
319
|
+
backgroundColor: color,
|
|
320
|
+
borderColor: color
|
|
321
|
+
});
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
return (h("button", { key: 'aa74ad98c90e7548228557bf8a8d26b125d4a83a', class: {
|
|
295
325
|
btn: true,
|
|
296
326
|
[`btn--${variant}`]: true,
|
|
297
327
|
[`btn--${size}`]: true,
|
|
298
328
|
'btn--loading': this.loading
|
|
299
|
-
}, disabled: isDisabled, onClick: this.handleClick }, this.loading ? (h("div", { class: "loading-container" }, h("span", { class: "content" }, this.text || translate$2('loading', this.language)), h("span", { class: "spinner" }))) : (h("span", { class: "content" }, this.text)), h("div", { key: '
|
|
329
|
+
}, style: color ? buttonStyles : undefined, disabled: isDisabled, onClick: this.handleClick, ref: (el) => (this.stylingContainer = el) }, this.loading ? (h("div", { class: "loading-container" }, h("span", { class: "content" }, this.text || translate$2('loading', this.language)), h("span", { class: "spinner" }))) : (h("span", { class: "content" }, h("slot", { name: "icon-left" }), this.text || h("slot", null), h("slot", { name: "icon-right" }))), h("div", { key: '302ea02be395bb24989d4abc040a513e23fa029a', class: "ripple-container" }, this.ripples.map((ripple, index) => (h("span", { key: index, class: "ripple", style: {
|
|
300
330
|
top: `${ripple.top}px`,
|
|
301
331
|
left: `${ripple.left}px`,
|
|
302
332
|
width: `${ripple.size}px`,
|
|
@@ -885,7 +915,6 @@ const LotteryTippingTicketBet = class {
|
|
|
885
915
|
}
|
|
886
916
|
}
|
|
887
917
|
componentDidLoad() {
|
|
888
|
-
console.log(111, this.stylingContainer);
|
|
889
918
|
if (this.stylingContainer) {
|
|
890
919
|
if (this.mbSource)
|
|
891
920
|
setStreamStyling(this.stylingContainer, `${this.mbSource}.Style`);
|
|
@@ -928,7 +957,7 @@ const LotteryTippingTicketBet = class {
|
|
|
928
957
|
}
|
|
929
958
|
fetchMatchData() {
|
|
930
959
|
// get match
|
|
931
|
-
let url = new URL(`${this.endpoint}/
|
|
960
|
+
let url = new URL(`${this.endpoint}/poolgames/${this.gameId}/draws/${this.drawId}/matchConfig`);
|
|
932
961
|
if (!this.gameId || !this.drawId)
|
|
933
962
|
return;
|
|
934
963
|
this.isLoading = true;
|
package/dist/esm/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { L as LotteryTippingTicketController } from './lottery-tipping-ticket-controller-
|
|
1
|
+
export { L as LotteryTippingTicketController } from './lottery-tipping-ticket-controller-f0d23f7a.js';
|
|
2
2
|
import './index-e3ec645c.js';
|
package/dist/esm/loader.js
CHANGED
|
@@ -5,7 +5,7 @@ import { g as globalScripts } from './app-globals-0f993ce5.js';
|
|
|
5
5
|
const defineCustomElements = async (win, options) => {
|
|
6
6
|
if (typeof window === 'undefined') return undefined;
|
|
7
7
|
await globalScripts();
|
|
8
|
-
return bootstrapLazy([["general-tooltip_7",[[1,"lottery-tipping-ticket-controller",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"logoUrl":[513,"logo-url"],"endpoint":[513],"
|
|
8
|
+
return bootstrapLazy([["general-tooltip_7",[[1,"lottery-tipping-ticket-controller",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"logoUrl":[513,"logo-url"],"endpoint":[513],"sessionId":[513,"session-id"],"gameId":[513,"game-id"],"playerId":[513,"player-id"],"drawId":[513,"draw-id"],"isLoading":[32],"bettingTypeOptions":[32],"playingModeOptions":[32],"selectedBettingType":[32],"selectedPlayingMode":[32],"hasSelectBullet":[32],"hasSelectAllBullet":[32],"totalLineCombination":[32],"submitLoading":[32],"rawData":[32],"saleStatisticsInfo":[32],"currentStake":[32],"dialogConfig":[32]},[[0,"lotteryTippingBulletBetSelect","lotteryTippingBulletGroupSelectionHandler"]],{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"]}],[1,"lottery-tipping-ticket-bet",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"language":[513],"sessionId":[513,"session-id"],"endpoint":[513],"gameId":[513,"game-id"],"drawId":[513,"draw-id"],"totalPages":[1538,"total-pages"],"minTotalPages":[514,"min-total-pages"],"maxTotalPages":[514,"max-total-pages"],"mode":[513],"readPretty":[516,"read-pretty"],"defaultBulletConfigLineGroup":[513,"default-bullet-config-line-group"],"translationData":[32],"clientStylingUrlContent":[32],"bulletConfigLineGroup":[32],"currentPage":[32],"isLoading":[32],"hasErrors":[32],"dialogConfig":[32],"ticketDataSource":[32],"resetBulletConfig":[64],"getData":[64]},[[0,"lotteryTippingBulletGroupToggle","lotteryTippingBulletGroupSelectionHandler"]],{"translationUrl":["handleNewTranslations"],"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"],"gameId":["fetchMatchData"],"sessionId":["fetchMatchData"],"drawId":["fetchMatchData"],"defaultBulletConfigLineGroup":["fetchMatchData"],"currentPage":["handleCurrentPageChange"]}],[1,"lottery-button",{"variant":[513],"size":[513],"color":[513],"disabled":[516],"loading":[516],"text":[513],"mbSource":[513,"mb-source"],"language":[513],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"ripples":[32]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"]}],[1,"lottery-tipping-ticket-banner",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"language":[513],"translationUrl":[513,"translation-url"],"logoUrl":[513,"logo-url"],"stopTime":[1,"stop-time"],"period":[1],"formattedTurnover":[1,"formatted-turnover"]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"]}],[1,"lottery-tipping-bullet-group",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"positionIdx":[513,"position-idx"],"theme":[513],"mode":[513],"bulletConfigContent":[513,"bullet-config-content"]},[[0,"lotteryTippingBulletToggle","lotteryTippingBulletSelectionHandler"]],{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"]}],[1,"general-tooltip",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"position":[1],"delay":[2],"isVisible":[32],"_tooltipId":[32]},[[1,"mouseenter","handleMouseEnterOrFocus"],[0,"focusin","handleMouseEnterOrFocus"],[1,"mouseleave","handleMouseLeaveOrBlur"],[0,"focusout","handleMouseLeaveOrBlur"],[0,"keydown","handleKeyDown"]],{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"]}],[1,"lottery-tipping-bullet",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"positionIdx":[514,"position-idx"],"theme":[513],"value":[513],"disabled":[516],"isSelected":[516,"is-selected"]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"]}]]]], options);
|
|
9
9
|
};
|
|
10
10
|
|
|
11
11
|
export { defineCustomElements };
|