@gomusdev/web-components 3.8.3 → 3.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +12 -0
- package/dist-js/gomus-webcomponents.iife.js +142 -39
- package/dist-js/gomus-webcomponents.js +142 -39
- package/dist-js/gomus-webcomponents.min.iife.js +36 -36
- package/dist-js/gomus-webcomponents.min.js +5858 -5790
- package/dist-js/src/components/cart/mocks/gomusTicketMocks.d.ts +3 -0
- package/dist-js/src/components/ticketSelection/filters/_helpers.d.ts +16 -0
- package/dist-js/src/components/ticketSelection/filters/_helpers.spec.d.ts +1 -0
- package/dist-js/src/components/ticketSelection/subcomponents/tickets/subcomponents/segment/SegmentDetails.svelte.d.ts +1 -0
- package/dist-js/src/lib/helpers/translations.d.ts +1 -0
- package/dist-js/src/lib/models/ticket/UITicket.svelte.d.ts +4 -1
- package/dist-js/src/lib/stores/shop.svelte.d.ts +2 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 3.9.0 (2026-06-30)
|
|
4
|
+
|
|
5
|
+
### Features
|
|
6
|
+
|
|
7
|
+
* **ticket-selection:** add per-ticket info button via with-content
|
|
8
|
+
* **ticket-selection:** extend with-content info button to event-admission filters
|
|
9
|
+
|
|
10
|
+
### Bug Fixes
|
|
11
|
+
|
|
12
|
+
* Add per_page to TicketContent endpoint
|
|
13
|
+
* **ticket-selection:** info toggle aria-controls resolves while collapsed (IB-02)
|
|
14
|
+
|
|
3
15
|
## 3.8.3 (2026-06-30)
|
|
4
16
|
|
|
5
17
|
### Bug Fixes
|
|
@@ -11804,7 +11804,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
11804
11804
|
normal: "day",
|
|
11805
11805
|
annual: "annual"
|
|
11806
11806
|
}[apiTicket.ticket_type],
|
|
11807
|
-
shop_order: apiTicket.shop_order ?? 0
|
|
11807
|
+
shop_order: apiTicket.shop_order ?? 0,
|
|
11808
|
+
content: void 0
|
|
11808
11809
|
};
|
|
11809
11810
|
}
|
|
11810
11811
|
function initUITimeslotTickets(tickets, selectedTime = "") {
|
|
@@ -13545,6 +13546,12 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
13545
13546
|
query: assign({ per_page: 100 }, params ?? {})
|
|
13546
13547
|
});
|
|
13547
13548
|
}
|
|
13549
|
+
ticketsContent(ticketIds) {
|
|
13550
|
+
return this.fetchAndCache("/api/v4/tickets/content", `ticketsContent-${JSON.stringify(ticketIds)}`, "data", {
|
|
13551
|
+
cache: 300,
|
|
13552
|
+
query: assign({ "ticket_ids[]": ticketIds }, { per_page: 100 })
|
|
13553
|
+
});
|
|
13554
|
+
}
|
|
13548
13555
|
signIn(params) {
|
|
13549
13556
|
return this.apiPost(SIGN_IN_ENDPOINT, {
|
|
13550
13557
|
body: params,
|
|
@@ -15195,8 +15202,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
15195
15202
|
var root$46 = /* @__PURE__ */ from_html(`<s class="go-cart-item-price-original"> </s> <span class="go-cart-item-price-discounted"> </span>`, 1);
|
|
15196
15203
|
var root_1$14 = /* @__PURE__ */ from_html(`<span class="go-cart-item-price-discounted"> </span>`);
|
|
15197
15204
|
var root_2$10 = /* @__PURE__ */ from_html(`<span> </span>`);
|
|
15198
|
-
var root_3$
|
|
15199
|
-
var root_4$
|
|
15205
|
+
var root_3$7 = /* @__PURE__ */ from_html(`<option> </option>`);
|
|
15206
|
+
var root_4$4 = /* @__PURE__ */ from_html(`<select class="go-cart-item-select"></select>`);
|
|
15200
15207
|
var root_5$2 = /* @__PURE__ */ from_html(`<li class="go-cart-item-remove"><button class="go-cart-remove">⨉</button></li>`);
|
|
15201
15208
|
var root_6$2 = /* @__PURE__ */ from_html(`<article class="go-cart-item-content"><ul><li class="go-cart-item-title-container"><!></li> <li class="go-cart-item-price"><!></li> <li class="go-cart-item-count"><!></li> <!> <li class="go-cart-item-sum"> </li></ul></article>`);
|
|
15202
15209
|
function Item$1($$anchor, $$props) {
|
|
@@ -15318,9 +15325,9 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
15318
15325
|
append($$anchor, span_2);
|
|
15319
15326
|
};
|
|
15320
15327
|
var alternate_1 = ($$anchor) => {
|
|
15321
|
-
var select = root_4$
|
|
15328
|
+
var select = root_4$4();
|
|
15322
15329
|
each(select, 21, () => generateQuantityOptions(get$2(capacity).min, get$2(capacity).max, { floor: 1 }), (q) => q.value, ($$anchor, q) => {
|
|
15323
|
-
var option = root_3$
|
|
15330
|
+
var option = root_3$7();
|
|
15324
15331
|
var text_4 = child(option, true);
|
|
15325
15332
|
reset(option);
|
|
15326
15333
|
var option_value = {};
|
|
@@ -30305,8 +30312,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
30305
30312
|
var root$15 = /* @__PURE__ */ from_html(`<span class="go-field-star" aria-hidden="true">*</span>`);
|
|
30306
30313
|
var root_1$7 = /* @__PURE__ */ from_html(` <!>`, 1);
|
|
30307
30314
|
var root_2$6 = /* @__PURE__ */ from_html(`<label><!></label> <input/>`, 1);
|
|
30308
|
-
var root_3$
|
|
30309
|
-
var root_4$
|
|
30315
|
+
var root_3$6 = /* @__PURE__ */ from_html(`<label><!></label> <textarea></textarea>`, 1);
|
|
30316
|
+
var root_4$3 = /* @__PURE__ */ from_html(`<figure role="status" aria-live="polite"><img class="go-file-preview"/> <figcaption class="go-file-preview-caption"> </figcaption></figure>`);
|
|
30310
30317
|
var root_5$1 = /* @__PURE__ */ from_html(`<label><!></label> <input/> <!>`, 1);
|
|
30311
30318
|
var root_6$1 = /* @__PURE__ */ from_html(`<label><input/> <span class="go-checkbox-label"><!></span></label>`);
|
|
30312
30319
|
var root_7$1 = /* @__PURE__ */ from_html(`<img src="" alt=""/> <option> </option>`, 1);
|
|
@@ -30357,7 +30364,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
30357
30364
|
append($$anchor, fragment_1);
|
|
30358
30365
|
};
|
|
30359
30366
|
const textarea = ($$anchor) => {
|
|
30360
|
-
var fragment_2 = root_3$
|
|
30367
|
+
var fragment_2 = root_3$6();
|
|
30361
30368
|
var label_2 = first_child(fragment_2);
|
|
30362
30369
|
labelText(child(label_2));
|
|
30363
30370
|
reset(label_2);
|
|
@@ -30400,7 +30407,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
30400
30407
|
}), void 0, void 0, void 0, void 0, true);
|
|
30401
30408
|
var node_4 = sibling(input_2, 2);
|
|
30402
30409
|
var consequent_1 = ($$anchor) => {
|
|
30403
|
-
var figure = root_4$
|
|
30410
|
+
var figure = root_4$3();
|
|
30404
30411
|
var img = child(figure);
|
|
30405
30412
|
var figcaption = sibling(img, 2);
|
|
30406
30413
|
var text_1 = child(figcaption, true);
|
|
@@ -30717,7 +30724,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
30717
30724
|
var root$14 = /* @__PURE__ */ from_html(`<span> </span>`);
|
|
30718
30725
|
var root_1$6 = /* @__PURE__ */ from_html(`<li> </li>`);
|
|
30719
30726
|
var root_2$5 = /* @__PURE__ */ from_html(`<ul class="go-field-errors"></ul>`);
|
|
30720
|
-
var root_3$
|
|
30727
|
+
var root_3$5 = /* @__PURE__ */ from_html(`<!> <!> <!>`, 1);
|
|
30721
30728
|
function Field($$anchor, $$props) {
|
|
30722
30729
|
push($$props, true);
|
|
30723
30730
|
let key = prop($$props, "key", 7), required = prop($$props, "required", 7, false), labelClass = prop($$props, "labelClass", 7), inputClass = prop($$props, "inputClass", 7);
|
|
@@ -30775,7 +30782,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
30775
30782
|
flushSync();
|
|
30776
30783
|
}
|
|
30777
30784
|
};
|
|
30778
|
-
var fragment = root_3$
|
|
30785
|
+
var fragment = root_3$5();
|
|
30779
30786
|
var node = first_child(fragment);
|
|
30780
30787
|
InputAndLabel(node, {
|
|
30781
30788
|
get describedByIds() {
|
|
@@ -30875,7 +30882,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
30875
30882
|
var root$12 = /* @__PURE__ */ from_html(`<p aria-hidden="true"> </p>`);
|
|
30876
30883
|
var root_1$5 = /* @__PURE__ */ from_html(`<li> </li>`);
|
|
30877
30884
|
var root_2$4 = /* @__PURE__ */ from_html(`<ul class="go-error-feedback-api-errors"></ul>`);
|
|
30878
|
-
var root_3$
|
|
30885
|
+
var root_3$4 = /* @__PURE__ */ from_html(`<div><p aria-live="assertive" class="sr-only"><!></p> <!> <!></div>`);
|
|
30879
30886
|
function ErrorsFeedback($$anchor, $$props) {
|
|
30880
30887
|
push($$props, true);
|
|
30881
30888
|
const _details = getDetails$1($$props.$$host);
|
|
@@ -30896,7 +30903,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
30896
30903
|
$$props.$$host.classList.toggle("go-feedback", true);
|
|
30897
30904
|
$$props.$$host.setAttribute("data-num-errors", get$2(numErrors).toString());
|
|
30898
30905
|
});
|
|
30899
|
-
var div = root_3$
|
|
30906
|
+
var div = root_3$4();
|
|
30900
30907
|
var p = child(div);
|
|
30901
30908
|
var node = child(p);
|
|
30902
30909
|
var consequent = ($$anchor) => {
|
|
@@ -32437,6 +32444,33 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
32437
32444
|
//#region src/components/ticketSelection/filters/_helpers.ts
|
|
32438
32445
|
var TWO_HOURS_MS = 7200 * 1e3;
|
|
32439
32446
|
/**
|
|
32447
|
+
* When a segment opts into content attributes (with-content), batch-fetch
|
|
32448
|
+
* tickets/content for the given tickets and merge each entry's `content` onto
|
|
32449
|
+
* the matching ticket by id (mirrors the legacy `ticket.content = item.content`).
|
|
32450
|
+
* Mutates the tickets in place; call before adding them to the preCart so the
|
|
32451
|
+
* content is present on first render. No-op — and no request — when the segment
|
|
32452
|
+
* hasn't enabled the feature or there are no tickets to enrich.
|
|
32453
|
+
*
|
|
32454
|
+
* Best-effort: the content is an optional, additive sidecar, so a failed or
|
|
32455
|
+
* absent fetch degrades to "no info buttons" and must never empty the ticket
|
|
32456
|
+
* list (see audit finding IB-01). Note this does NOT cover a hung request — a
|
|
32457
|
+
* never-settling fetch is a separate core-infra concern (IB-05).
|
|
32458
|
+
*/
|
|
32459
|
+
async function enrichTicketsWithContent(segment, tickets) {
|
|
32460
|
+
if (!segment.withContent) return;
|
|
32461
|
+
const ids = tickets.map((t) => t.id).filter((id) => typeof id === "number");
|
|
32462
|
+
if (!ids.length) return;
|
|
32463
|
+
try {
|
|
32464
|
+
const entries = await shop.asyncFetch(() => shop.ticketsContent(ids)) ?? [];
|
|
32465
|
+
const byId = new Map(entries.map((e) => [e.id, e.content]));
|
|
32466
|
+
for (const ticket of tickets) {
|
|
32467
|
+
if (typeof ticket.id !== "number") continue;
|
|
32468
|
+
const content = byId.get(ticket.id);
|
|
32469
|
+
if (content) ticket.content = content;
|
|
32470
|
+
}
|
|
32471
|
+
} catch {}
|
|
32472
|
+
}
|
|
32473
|
+
/**
|
|
32440
32474
|
* Load quotas fetched by a filter's loadTimeslots into the shared quota store and
|
|
32441
32475
|
* record which ticket ids this selection loaded for its picker. timeslotsOn() reads
|
|
32442
32476
|
* tsd.timeslotTicketIds, so only these tickets' slots render — a foreign
|
|
@@ -32512,6 +32546,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
32512
32546
|
}));
|
|
32513
32547
|
shop.capacityManager.addQuotas(quotas);
|
|
32514
32548
|
const uiTickets = initUITimeslotTickets(filterAvailabletickets(tickets, tsd.selectedTime), tsd.selectedTime);
|
|
32549
|
+
await enrichTicketsWithContent(segment, uiTickets);
|
|
32515
32550
|
for (const ticket of uiTickets) segment.preCart.addItem(createCartItem(ticket, { time: tsd.selectedTime }));
|
|
32516
32551
|
}
|
|
32517
32552
|
},
|
|
@@ -32543,6 +32578,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
32543
32578
|
const firstQuota = Object.values(quotas)[0];
|
|
32544
32579
|
const timeslot = firstQuota ? Object.keys(firstQuota.capacities)[0] : void 0;
|
|
32545
32580
|
const uiTickets = initUITimeslotTickets(filterAvailabletickets(tickets, timeslot), timeslot);
|
|
32581
|
+
await enrichTicketsWithContent(segment, uiTickets);
|
|
32546
32582
|
for (const ticket of uiTickets) segment.preCart.addItem(createCartItem(ticket, { time: timeslot }));
|
|
32547
32583
|
}
|
|
32548
32584
|
},
|
|
@@ -32564,7 +32600,9 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
32564
32600
|
"by_ticket_ids[]": tsd.ticketIds,
|
|
32565
32601
|
"by_ticket_group_ids[]": segment.ticketGroupIds ?? tsd.ticketGroupIds
|
|
32566
32602
|
}));
|
|
32567
|
-
|
|
32603
|
+
const uiTickets = Object.values(tickets).map((t) => createUITicket(t));
|
|
32604
|
+
await enrichTicketsWithContent(segment, uiTickets);
|
|
32605
|
+
for (const ticket of uiTickets) segment.preCart.addItem(createCartItem(ticket));
|
|
32568
32606
|
}
|
|
32569
32607
|
},
|
|
32570
32608
|
"event:admission": {
|
|
@@ -32603,6 +32641,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
32603
32641
|
}));
|
|
32604
32642
|
shop.capacityManager.addQuotas(quotas);
|
|
32605
32643
|
const uiTickets = initUITimeslotTickets(filterAvailabletickets(tickets, tsd.selectedTime), tsd.selectedTime);
|
|
32644
|
+
await enrichTicketsWithContent(segment, uiTickets);
|
|
32606
32645
|
for (const ticket of uiTickets) segment.preCart.addItem(createCartItem(ticket, { time: tsd.selectedTime }));
|
|
32607
32646
|
}
|
|
32608
32647
|
},
|
|
@@ -32635,6 +32674,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
32635
32674
|
const firstQuota = Object.values(quotas)[0];
|
|
32636
32675
|
const time = firstQuota ? Object.keys(firstQuota.capacities)[0] : void 0;
|
|
32637
32676
|
const uiTickets = initUITimeslotTickets(filterAvailabletickets(tickets, time), time);
|
|
32677
|
+
await enrichTicketsWithContent(segment, uiTickets);
|
|
32638
32678
|
for (const t of uiTickets) segment.preCart.addItem(createCartItem(t, { time }));
|
|
32639
32679
|
}
|
|
32640
32680
|
},
|
|
@@ -32683,6 +32723,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
32683
32723
|
}));
|
|
32684
32724
|
shop.capacityManager.addQuotas(quotas);
|
|
32685
32725
|
const uiTickets = initUITimeslotTickets(filterAvailabletickets(tickets, tsd.selectedTime), tsd.selectedTime);
|
|
32726
|
+
await enrichTicketsWithContent(segment, uiTickets);
|
|
32686
32727
|
for (const t of uiTickets) segment.preCart.addItem(createCartItem(t, { time: tsd.selectedTime }));
|
|
32687
32728
|
}
|
|
32688
32729
|
},
|
|
@@ -32750,6 +32791,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
32750
32791
|
}));
|
|
32751
32792
|
shop.capacityManager.addQuotas(quotas);
|
|
32752
32793
|
const uiTickets = initUITimeslotTickets(filterAvailabletickets(tickets, date.start_time), date.start_time);
|
|
32794
|
+
await enrichTicketsWithContent(segment, uiTickets);
|
|
32753
32795
|
for (const ticket of uiTickets) segment.preCart.addItem(createCartItem(ticket, { time: date.start_time }));
|
|
32754
32796
|
}
|
|
32755
32797
|
}
|
|
@@ -32795,6 +32837,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
32795
32837
|
const firstQuota = Object.values(quotas)[0];
|
|
32796
32838
|
const time = firstQuota ? Object.keys(firstQuota.capacities)[0] : date.start_time;
|
|
32797
32839
|
const uiTickets = initUITimeslotTickets(filterAvailabletickets(tickets, time), time);
|
|
32840
|
+
await enrichTicketsWithContent(segment, uiTickets);
|
|
32798
32841
|
for (const t of uiTickets) segment.preCart.addItem(createCartItem(t, { time }));
|
|
32799
32842
|
}
|
|
32800
32843
|
}
|
|
@@ -32838,6 +32881,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
32838
32881
|
}));
|
|
32839
32882
|
shop.capacityManager.addQuotas(quotas);
|
|
32840
32883
|
const uiTickets = initUITimeslotTickets(filterAvailabletickets(tickets, date.start_time), date.start_time);
|
|
32884
|
+
await enrichTicketsWithContent(segment, uiTickets);
|
|
32841
32885
|
for (const t of uiTickets) segment.preCart.addItem(createCartItem(t, { time: date.start_time }));
|
|
32842
32886
|
}
|
|
32843
32887
|
}
|
|
@@ -33287,7 +33331,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
33287
33331
|
var root$9 = /* @__PURE__ */ from_html(`<span class="go-cart-item-date" data-testid="cart-item-date"> </span> <span class="go-cart-item-time" data-testid="cart-item-time"> </span>`, 1);
|
|
33288
33332
|
var root_1$4 = /* @__PURE__ */ from_html(`<br/> <span class="go-order-item-quantities"> </span>`, 1);
|
|
33289
33333
|
var root_2$3 = /* @__PURE__ */ from_html(`<a aria-label="iCal link"> </a>`);
|
|
33290
|
-
var root_3$
|
|
33334
|
+
var root_3$3 = /* @__PURE__ */ from_html(`<li><article><ul><li class="go-order-breakdown-count">1</li> <li class="go-order-breakdown-product"><span class="go-order-item-title"> </span> <!> <!> <a class="go-ticket-download" target="_blank" rel="noopener noreferrer"> </a></li> <li class="go-order-breakdown-item-price"> </li> <li class="go-order-breakdown-passbook"></li> <li class="go-order-breakdown-ical"><!></li></ul></article></li>`);
|
|
33291
33335
|
function Event$1($$anchor, $$props) {
|
|
33292
33336
|
push($$props, true);
|
|
33293
33337
|
let item = prop($$props, "item", 7), orderDetails = prop($$props, "orderDetails", 7);
|
|
@@ -33307,7 +33351,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
33307
33351
|
flushSync();
|
|
33308
33352
|
}
|
|
33309
33353
|
};
|
|
33310
|
-
var li = root_3$
|
|
33354
|
+
var li = root_3$3();
|
|
33311
33355
|
var article = child(li);
|
|
33312
33356
|
var ul = child(article);
|
|
33313
33357
|
var li_1 = sibling(child(ul), 2);
|
|
@@ -33392,8 +33436,8 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
33392
33436
|
var root$8 = /* @__PURE__ */ from_html(`<span class="go-cart-item-date"> </span> <span class="go-cart-item-time"> </span>`, 1);
|
|
33393
33437
|
var root_1$3 = /* @__PURE__ */ from_html(`<span class="go-cart-item-date"> </span>`);
|
|
33394
33438
|
var root_2$2 = /* @__PURE__ */ from_html(`<!> <br/> <a class="go-ticket-download" target="_blank" rel="noopener noreferrer"> </a>`, 1);
|
|
33395
|
-
var root_3$
|
|
33396
|
-
var root_4$
|
|
33439
|
+
var root_3$2 = /* @__PURE__ */ from_html(`<br/> <a class="go-ticket-personalization"> </a>`, 1);
|
|
33440
|
+
var root_4$2 = /* @__PURE__ */ from_html(`<a aria-label="passbook link"><img alt="apple wallet icon"/></a>`);
|
|
33397
33441
|
var root_5 = /* @__PURE__ */ from_html(`<a aria-label="iCal link"> </a>`);
|
|
33398
33442
|
var root_6 = /* @__PURE__ */ from_html(`<li><article><ul><li class="go-order-breakdown-count"></li> <li class="go-order-breakdown-product"><span class="go-order-item-title"> </span> <!></li> <li class="go-order-breakdown-item-price"> </li> <li class="go-order-breakdown-passbook"><!></li> <li class="go-order-breakdown-ical"><!></li></ul></article></li>`);
|
|
33399
33443
|
var root_7 = /* @__PURE__ */ from_html(`<a class="go-ticket-download" target="_blank" rel="noopener noreferrer"> </a>`);
|
|
@@ -33479,7 +33523,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
33479
33523
|
append($$anchor, fragment_2);
|
|
33480
33524
|
};
|
|
33481
33525
|
var alternate = ($$anchor) => {
|
|
33482
|
-
var fragment_4 = root_3$
|
|
33526
|
+
var fragment_4 = root_3$2();
|
|
33483
33527
|
var a_1 = sibling(first_child(fragment_4), 2);
|
|
33484
33528
|
var text_5 = child(a_1, true);
|
|
33485
33529
|
reset(a_1);
|
|
@@ -33500,7 +33544,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
33500
33544
|
var li_4 = sibling(li_3, 2);
|
|
33501
33545
|
var node_4 = child(li_4);
|
|
33502
33546
|
var consequent_3 = ($$anchor) => {
|
|
33503
|
-
var a_2 = root_4$
|
|
33547
|
+
var a_2 = root_4$2();
|
|
33504
33548
|
var img = child(a_2);
|
|
33505
33549
|
reset(a_2);
|
|
33506
33550
|
template_effect(() => {
|
|
@@ -34086,6 +34130,13 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
34086
34130
|
set museumIds(value) {
|
|
34087
34131
|
set(this.#museumIds, value, true);
|
|
34088
34132
|
}
|
|
34133
|
+
#withContent = /* @__PURE__ */ state(false);
|
|
34134
|
+
get withContent() {
|
|
34135
|
+
return get$2(this.#withContent);
|
|
34136
|
+
}
|
|
34137
|
+
set withContent(value) {
|
|
34138
|
+
set(this.#withContent, value, true);
|
|
34139
|
+
}
|
|
34089
34140
|
constructor(filters, tsdWrapper) {
|
|
34090
34141
|
this.filters = filters === void 0 ? void 0 : Array.isArray(filters) ? filters : [filters];
|
|
34091
34142
|
this.#ticketSelectionDetails = /* @__PURE__ */ user_derived(() => tsdWrapper.value);
|
|
@@ -34116,7 +34167,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
34116
34167
|
//#region src/components/ticketSelection/subcomponents/tickets/subcomponents/segment/TicketSegment.svelte
|
|
34117
34168
|
function TicketSegment($$anchor, $$props) {
|
|
34118
34169
|
push($$props, true);
|
|
34119
|
-
const filters = prop($$props, "filters", 7), dateId = prop($$props, "dateId", 7), query = prop($$props, "query", 7), limit = prop($$props, "limit", 7), ticketGroupIds = prop($$props, "ticketGroupIds", 7), languageIds = prop($$props, "languageIds", 7), catchWordIds = prop($$props, "catchWordIds", 7), museumIds = prop($$props, "museumIds", 7);
|
|
34170
|
+
const filters = prop($$props, "filters", 7), dateId = prop($$props, "dateId", 7), query = prop($$props, "query", 7), limit = prop($$props, "limit", 7), ticketGroupIds = prop($$props, "ticketGroupIds", 7), languageIds = prop($$props, "languageIds", 7), catchWordIds = prop($$props, "catchWordIds", 7), museumIds = prop($$props, "museumIds", 7), withContent = prop($$props, "withContent", 7);
|
|
34120
34171
|
function parseFilters(value) {
|
|
34121
34172
|
if (!value) return void 0;
|
|
34122
34173
|
const out = value.split(",").map((s) => s.trim()).filter(Boolean);
|
|
@@ -34135,6 +34186,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
34135
34186
|
details.languageIds = parseIds(languageIds());
|
|
34136
34187
|
details.catchWordIds = parseIds(catchWordIds());
|
|
34137
34188
|
details.museumIds = parseIds(museumIds());
|
|
34189
|
+
details.withContent = Boolean(withContent());
|
|
34138
34190
|
});
|
|
34139
34191
|
user_effect(() => {
|
|
34140
34192
|
details.dateId;
|
|
@@ -34145,6 +34197,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
34145
34197
|
details.catchWordIds;
|
|
34146
34198
|
details.query;
|
|
34147
34199
|
details.limit;
|
|
34200
|
+
details.withContent;
|
|
34148
34201
|
tsd?.filters;
|
|
34149
34202
|
tsd?.selectedTimeslot;
|
|
34150
34203
|
tsd?.selectedTime;
|
|
@@ -34219,6 +34272,13 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
34219
34272
|
set museumIds($$value) {
|
|
34220
34273
|
museumIds($$value);
|
|
34221
34274
|
flushSync();
|
|
34275
|
+
},
|
|
34276
|
+
get withContent() {
|
|
34277
|
+
return withContent();
|
|
34278
|
+
},
|
|
34279
|
+
set withContent($$value) {
|
|
34280
|
+
withContent($$value);
|
|
34281
|
+
flushSync();
|
|
34222
34282
|
}
|
|
34223
34283
|
});
|
|
34224
34284
|
}
|
|
@@ -34262,6 +34322,11 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
34262
34322
|
attribute: "museum-ids",
|
|
34263
34323
|
reflect: true,
|
|
34264
34324
|
type: "String"
|
|
34325
|
+
},
|
|
34326
|
+
withContent: {
|
|
34327
|
+
attribute: "with-content",
|
|
34328
|
+
reflect: true,
|
|
34329
|
+
type: "Boolean"
|
|
34265
34330
|
}
|
|
34266
34331
|
}, [], ["details"]));
|
|
34267
34332
|
//#endregion
|
|
@@ -36132,9 +36197,12 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
36132
36197
|
//#endregion
|
|
36133
36198
|
//#region src/components/ticketSelection/subcomponents/tickets/subcomponents/segment/Item.svelte
|
|
36134
36199
|
var root$3 = /* @__PURE__ */ from_html(`<span class="go-tickets-item-title-event-title"> </span> <span class="go-tickets-item-title-product-title"> </span>`, 1);
|
|
36135
|
-
var root_1$2 = /* @__PURE__ */ from_html(`<
|
|
36136
|
-
var root_2$1 = /* @__PURE__ */ from_html(`<li
|
|
36200
|
+
var root_1$2 = /* @__PURE__ */ from_html(`<li class="go-tickets-item-info"><button type="button" data-testid="ticket-info-toggle"></button></li>`);
|
|
36201
|
+
var root_2$1 = /* @__PURE__ */ from_html(`<li class="go-ticket-additional-info" data-testid="ticket-additional-info"> </li>`);
|
|
36202
|
+
var root_3$1 = /* @__PURE__ */ from_html(`<option> </option>`);
|
|
36203
|
+
var root_4$1 = /* @__PURE__ */ from_html(`<li><article><ul><li class="go-tickets-item-title"><!></li> <!> <li class="go-tickets-item-description" data-go-tickets-description=""></li> <!> <li class="go-tickets-item-price" data-go-tickets-price=""> </li> <li class="go-tickets-item-quality" data-go-tickets-quality=""><select class="go-tickets-item-select"></select></li></ul></article></li>`);
|
|
36137
36204
|
function Item($$anchor, $$props) {
|
|
36205
|
+
const uid = props_id();
|
|
36138
36206
|
push($$props, true);
|
|
36139
36207
|
const scaled_title = ($$anchor) => {
|
|
36140
36208
|
var fragment = root$3();
|
|
@@ -36158,6 +36226,9 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
36158
36226
|
};
|
|
36159
36227
|
let item = prop($$props, "item", 7), details = prop($$props, "details", 7);
|
|
36160
36228
|
let capacity = /* @__PURE__ */ state(void 0);
|
|
36229
|
+
let infoExpanded = /* @__PURE__ */ state(false);
|
|
36230
|
+
const reductionReason = /* @__PURE__ */ user_derived(() => item().product?.content?.reduction_reason);
|
|
36231
|
+
const infoPanelId = `go-ticket-info-${uid}`;
|
|
36161
36232
|
user_effect(() => {
|
|
36162
36233
|
details().preCart.items.map((i) => i.quantity);
|
|
36163
36234
|
untrack(() => {
|
|
@@ -36187,55 +36258,87 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
|
|
|
36187
36258
|
};
|
|
36188
36259
|
var fragment_2 = comment();
|
|
36189
36260
|
var node = first_child(fragment_2);
|
|
36190
|
-
var
|
|
36191
|
-
var li =
|
|
36261
|
+
var consequent_2 = ($$anchor) => {
|
|
36262
|
+
var li = root_4$1();
|
|
36192
36263
|
var article = child(li);
|
|
36193
36264
|
var ul = child(article);
|
|
36194
36265
|
var li_1 = child(ul);
|
|
36195
36266
|
var node_1 = child(li_1);
|
|
36196
36267
|
titleSnippet(node_1);
|
|
36197
36268
|
reset(li_1);
|
|
36198
|
-
var
|
|
36199
|
-
|
|
36200
|
-
|
|
36201
|
-
|
|
36202
|
-
|
|
36269
|
+
var node_2 = sibling(li_1, 2);
|
|
36270
|
+
var consequent = ($$anchor) => {
|
|
36271
|
+
var li_2 = root_1$2();
|
|
36272
|
+
var button = child(li_2);
|
|
36273
|
+
reset(li_2);
|
|
36274
|
+
template_effect(($0) => {
|
|
36275
|
+
set_class(button, 1, clsx(["go-ticket-info-icon", get$2(infoExpanded) && "is-active"]));
|
|
36276
|
+
set_attribute(button, "aria-expanded", get$2(infoExpanded));
|
|
36277
|
+
set_attribute(button, "aria-controls", infoPanelId);
|
|
36278
|
+
set_attribute(button, "aria-label", $0);
|
|
36279
|
+
}, [() => shop.t("ticket.list.additionalInfo")]);
|
|
36280
|
+
delegated("click", button, () => set(infoExpanded, !get$2(infoExpanded)));
|
|
36281
|
+
append($$anchor, li_2);
|
|
36282
|
+
};
|
|
36283
|
+
if_block(node_2, ($$render) => {
|
|
36284
|
+
if (get$2(reductionReason)) $$render(consequent);
|
|
36285
|
+
});
|
|
36286
|
+
var li_3 = sibling(node_2, 2);
|
|
36287
|
+
html$2(li_3, () => purify.sanitize(item().product.description), true);
|
|
36203
36288
|
reset(li_3);
|
|
36204
|
-
var
|
|
36205
|
-
var
|
|
36289
|
+
var node_3 = sibling(li_3, 2);
|
|
36290
|
+
var consequent_1 = ($$anchor) => {
|
|
36291
|
+
var li_4 = root_2$1();
|
|
36292
|
+
var text_3 = child(li_4, true);
|
|
36293
|
+
reset(li_4);
|
|
36294
|
+
template_effect(($0) => {
|
|
36295
|
+
set_attribute(li_4, "id", infoPanelId);
|
|
36296
|
+
set_attribute(li_4, "hidden", !get$2(infoExpanded));
|
|
36297
|
+
set_text(text_3, $0);
|
|
36298
|
+
}, [() => shop.t(get$2(reductionReason))]);
|
|
36299
|
+
append($$anchor, li_4);
|
|
36300
|
+
};
|
|
36301
|
+
if_block(node_3, ($$render) => {
|
|
36302
|
+
if (get$2(reductionReason)) $$render(consequent_1);
|
|
36303
|
+
});
|
|
36304
|
+
var li_5 = sibling(node_3, 2);
|
|
36305
|
+
var text_4 = child(li_5, true);
|
|
36306
|
+
reset(li_5);
|
|
36307
|
+
var li_6 = sibling(li_5, 2);
|
|
36308
|
+
var select = child(li_6);
|
|
36206
36309
|
each(select, 21, () => generateQuantityOptions(get$2(capacity).min, get$2(capacity).max), (q) => q.value, ($$anchor, q) => {
|
|
36207
|
-
var option =
|
|
36208
|
-
var
|
|
36310
|
+
var option = root_3$1();
|
|
36311
|
+
var text_5 = child(option, true);
|
|
36209
36312
|
reset(option);
|
|
36210
36313
|
var option_value = {};
|
|
36211
36314
|
template_effect(() => {
|
|
36212
36315
|
set_selected(option, item().quantity === get$2(q).value);
|
|
36213
|
-
set_text(
|
|
36316
|
+
set_text(text_5, get$2(q).label);
|
|
36214
36317
|
if (option_value !== (option_value = get$2(q).value)) option.value = (option.__value = get$2(q).value) ?? "";
|
|
36215
36318
|
});
|
|
36216
36319
|
append($$anchor, option);
|
|
36217
36320
|
});
|
|
36218
36321
|
reset(select);
|
|
36219
|
-
reset(
|
|
36322
|
+
reset(li_6);
|
|
36220
36323
|
reset(ul);
|
|
36221
36324
|
reset(article);
|
|
36222
36325
|
reset(li);
|
|
36223
36326
|
template_effect(($0) => {
|
|
36224
36327
|
set_class(article, 1, clsx(["go-tickets-item", get$2(capacity).bookedOut && "is-booked-out"]));
|
|
36225
36328
|
set_attribute(article, "data-testid", item().uuid);
|
|
36226
|
-
set_text(
|
|
36329
|
+
set_text(text_4, item().price_formatted);
|
|
36227
36330
|
set_attribute(select, "aria-label", $0);
|
|
36228
36331
|
}, [() => shop.t("cart.content.table.edit")]);
|
|
36229
36332
|
delegated("change", select, (e) => update(item(), e.target, details()?.ticketSelectionDetails));
|
|
36230
36333
|
append($$anchor, li);
|
|
36231
36334
|
};
|
|
36232
36335
|
if_block(node, ($$render) => {
|
|
36233
|
-
if (get$2(capacity) && !get$2(capacity).unavailable) $$render(
|
|
36336
|
+
if (get$2(capacity) && !get$2(capacity).unavailable) $$render(consequent_2);
|
|
36234
36337
|
});
|
|
36235
36338
|
append($$anchor, fragment_2);
|
|
36236
36339
|
return pop($$exports);
|
|
36237
36340
|
}
|
|
36238
|
-
delegate(["change"]);
|
|
36341
|
+
delegate(["click", "change"]);
|
|
36239
36342
|
create_custom_element(Item, {
|
|
36240
36343
|
item: {},
|
|
36241
36344
|
details: {}
|