@gomusdev/web-components 4.8.1 → 4.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 CHANGED
@@ -1,5 +1,18 @@
1
1
  # Changelog
2
2
 
3
+ ## 4.9.0 (2026-07-16)
4
+
5
+ ### Features
6
+
7
+ * **auth:** add go-set-password to complete the password reset flow, closes [#96](https://gitlab.giantmonkey.de/gomus/frontend/issues/96)
8
+
9
+ ## 4.8.2 (2026-07-16)
10
+
11
+ ### Bug Fixes
12
+
13
+ * **mr2:** expand spec detection to include sibling `spec/` subdirectory
14
+ * **ticket-selection:** derive day-ticket time per ticket, not from first quota (TC-04), closes [#136](https://gitlab.giantmonkey.de/gomus/frontend/issues/136)
15
+
3
16
  ## 4.8.1 (2026-07-16)
4
17
 
5
18
  ### Bug Fixes
@@ -0,0 +1 @@
1
+ export { SvelteComponent as default } from 'svelte';
@@ -11860,6 +11860,17 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
11860
11860
  function initUITimeslotTickets(tickets, selectedTime = "") {
11861
11861
  return sort(Object.values(tickets).map((ticket) => createUITicket(ticket, { selectedTime })), (f) => f.shop_order);
11862
11862
  }
11863
+ /**
11864
+ * Day tickets (TC-04): each day quota keys its capacity at its OWN first-entry time, so
11865
+ * capacity keys differ across quotas. The day 'time' must be derived per ticket — the
11866
+ * first positive key of the ticket's own total_capacities — never from one global quota
11867
+ * key. A ticket with capacity keys that are all zero is sold out and dropped; a ticket
11868
+ * with no keys at all (no quota) is kept and gets `fallbackTime`.
11869
+ */
11870
+ function initUIDayTickets(tickets, fallbackTime) {
11871
+ const ownDayTime = (t) => Object.keys(t.total_capacities ?? {}).find((key) => (t.total_capacities?.[key] ?? 0) > 0);
11872
+ return sort(Object.values(tickets).filter((t) => ownDayTime(t) || Object.keys(t.total_capacities ?? {}).length === 0).map((t) => createUITicket(t, { selectedTime: ownDayTime(t) ?? fallbackTime })), (f) => f.shop_order);
11873
+ }
11863
11874
  function filterAvailabletickets(tickets, selectedTime = "") {
11864
11875
  let available = Object.entries(tickets);
11865
11876
  if (selectedTime !== "") available = available.filter(([, t]) => t.total_capacities?.[selectedTime] && t.total_capacities[selectedTime] > 0);
@@ -13867,6 +13878,20 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
13867
13878
  requiredFields: ["email"]
13868
13879
  });
13869
13880
  }
13881
+ /**
13882
+ * Sets a new password using the one-time credentials the backend appends to
13883
+ * the reset-mail redirect (`access-token`, `client`, `uid` query params).
13884
+ * Unlike `updatePassword` no `current_password` is needed — the reset link
13885
+ * flags the session with `allow_password_change`. The 200 response carries
13886
+ * fresh auth headers which AuthMiddleware ingests, signing the customer in.
13887
+ */
13888
+ setNewPassword(params, headers) {
13889
+ return this.apiPut("/api/v4/auth/password", {
13890
+ body: params,
13891
+ requiredFields: ["password", "password_confirmation"],
13892
+ params: { header: headers }
13893
+ });
13894
+ }
13870
13895
  activateMembership(params) {
13871
13896
  return this.apiPost(MEMBERSHIP_ACTIVATION_ENDPOINT, {
13872
13897
  body: params,
@@ -14247,7 +14272,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
14247
14272
  var getPersonalizationDetails = createGetDetails(KEY$5);
14248
14273
  //#endregion
14249
14274
  //#region src/components/annualTicketPersonalization/components/AnnualTicketPersonalization.svelte
14250
- var root$57 = /* @__PURE__ */ from_html(`<li><a> </a></li>`);
14275
+ var root$58 = /* @__PURE__ */ from_html(`<li><a> </a></li>`);
14251
14276
  var root_1$21 = /* @__PURE__ */ from_html(`<ul class="go-annual-ticket"><li class="go-annual-ticket-title"> </li> <li class="go-annual-ticket-personalization-count"> </li> <!></ul>`);
14252
14277
  function AnnualTicketPersonalization($$anchor, $$props) {
14253
14278
  push($$props, true);
@@ -14282,7 +14307,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
14282
14307
  reset(li_1);
14283
14308
  var node_2 = sibling(li_1, 2);
14284
14309
  var consequent = ($$anchor) => {
14285
- var li_2 = root$57();
14310
+ var li_2 = root$58();
14286
14311
  var a = child(li_2);
14287
14312
  var text_2 = child(a, true);
14288
14313
  reset(a);
@@ -14968,7 +14993,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
14968
14993
  }
14969
14994
  //#endregion
14970
14995
  //#region src/components/forms/ui/generic/Form.svelte
14971
- var root$56 = /* @__PURE__ */ from_html(`<go-all-fields></go-all-fields> <go-form-feedback><go-errors-feedback></go-errors-feedback> <go-success-feedback></go-success-feedback></go-form-feedback> <go-submit> </go-submit>`, 3);
14996
+ var root$57 = /* @__PURE__ */ from_html(`<go-all-fields></go-all-fields> <go-form-feedback><go-errors-feedback></go-errors-feedback> <go-success-feedback></go-success-feedback></go-form-feedback> <go-submit> </go-submit>`, 3);
14972
14997
  function Form($$anchor, $$props) {
14973
14998
  push($$props, true);
14974
14999
  let formId = prop($$props, "formId", 7), custom = prop($$props, "custom", 7);
@@ -15014,7 +15039,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
15014
15039
  var fragment = comment();
15015
15040
  var node = first_child(fragment);
15016
15041
  var consequent = ($$anchor) => {
15017
- var fragment_1 = root$56();
15042
+ var fragment_1 = root$57();
15018
15043
  var go_submit = sibling(sibling(first_child(fragment_1), 2), 2);
15019
15044
  var text = child(go_submit, true);
15020
15045
  reset(go_submit);
@@ -15041,10 +15066,10 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
15041
15066
  }, [], ["details"]));
15042
15067
  //#endregion
15043
15068
  //#region src/components/auth/passwordReset/PasswordReset.svelte
15044
- var root$55 = /* @__PURE__ */ from_html(`<go-form></go-form>`, 2);
15069
+ var root$56 = /* @__PURE__ */ from_html(`<go-form></go-form>`, 2);
15045
15070
  function PasswordReset($$anchor, $$props) {
15046
15071
  push($$props, true);
15047
- let custom = prop($$props, "custom", 7, false);
15072
+ let custom = prop($$props, "custom", 7, false), redirectUrl = prop($$props, "redirectUrl", 7, "");
15048
15073
  Forms.defineForm({
15049
15074
  id: "passwordReset",
15050
15075
  submitLabel: "user.passwordReset.actions.requestPasswordReset",
@@ -15055,7 +15080,11 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
15055
15080
  });
15056
15081
  async function passwordReset(event) {
15057
15082
  const details = event.target.details;
15058
- const result = await shop.passwordReset(details.formData);
15083
+ const params = details.formData;
15084
+ const result = await shop.passwordReset(redirectUrl() ? {
15085
+ ...params,
15086
+ redirect_url: redirectUrl()
15087
+ } : params);
15059
15088
  if (result.data) {
15060
15089
  $$props.$$host.dispatchEvent(new Event("go-success", {
15061
15090
  bubbles: true,
@@ -15072,16 +15101,105 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
15072
15101
  set custom($$value = false) {
15073
15102
  custom($$value);
15074
15103
  flushSync();
15104
+ },
15105
+ get redirectUrl() {
15106
+ return redirectUrl();
15107
+ },
15108
+ set redirectUrl($$value = "") {
15109
+ redirectUrl($$value);
15110
+ flushSync();
15075
15111
  }
15076
15112
  };
15077
- var go_form = root$55();
15113
+ var go_form = root$56();
15078
15114
  set_custom_element_data(go_form, "formId", "passwordReset");
15079
15115
  template_effect(() => set_custom_element_data(go_form, "custom", custom()));
15080
15116
  event("submit", go_form, passwordReset);
15081
15117
  append($$anchor, go_form);
15082
15118
  return pop($$exports);
15083
15119
  }
15084
- customElements.define("go-password-reset", create_custom_element(PasswordReset, { custom: {} }, [], []));
15120
+ customElements.define("go-password-reset", create_custom_element(PasswordReset, {
15121
+ redirectUrl: {
15122
+ attribute: "redirect-url",
15123
+ type: "String"
15124
+ },
15125
+ custom: {}
15126
+ }, [], []));
15127
+ //#endregion
15128
+ //#region src/components/auth/setPassword/SetPassword.svelte
15129
+ var root$55 = /* @__PURE__ */ from_html(`<go-form></go-form>`, 2);
15130
+ function SetPassword($$anchor, $$props) {
15131
+ push($$props, true);
15132
+ let accessToken = prop($$props, "accessToken", 7, ""), client = prop($$props, "client", 7, ""), uid = prop($$props, "uid", 7, "");
15133
+ Forms.defineForm({
15134
+ id: "setPassword",
15135
+ submitLabel: "user.passwordReset.actions.resetPassword",
15136
+ fields: [{
15137
+ key: "newPassword",
15138
+ required: true
15139
+ }, {
15140
+ key: "confirmPassword",
15141
+ required: true
15142
+ }]
15143
+ });
15144
+ async function setNewPassword(event) {
15145
+ const details = event.target.details;
15146
+ const result = await shop.setNewPassword(details.formData, {
15147
+ "access-token": accessToken(),
15148
+ client: client(),
15149
+ uid: uid()
15150
+ });
15151
+ if (result.data) {
15152
+ $$props.$$host.dispatchEvent(new Event("go-success", {
15153
+ bubbles: true,
15154
+ composed: true
15155
+ }));
15156
+ details.successMessage = result.data.message;
15157
+ details.apiErrors = [];
15158
+ } else details.apiErrors = result.error.errors;
15159
+ }
15160
+ var $$exports = {
15161
+ get accessToken() {
15162
+ return accessToken();
15163
+ },
15164
+ set accessToken($$value = "") {
15165
+ accessToken($$value);
15166
+ flushSync();
15167
+ },
15168
+ get client() {
15169
+ return client();
15170
+ },
15171
+ set client($$value = "") {
15172
+ client($$value);
15173
+ flushSync();
15174
+ },
15175
+ get uid() {
15176
+ return uid();
15177
+ },
15178
+ set uid($$value = "") {
15179
+ uid($$value);
15180
+ flushSync();
15181
+ }
15182
+ };
15183
+ var go_form = root$55();
15184
+ set_custom_element_data(go_form, "formId", "setPassword");
15185
+ event("submit", go_form, setNewPassword);
15186
+ append($$anchor, go_form);
15187
+ return pop($$exports);
15188
+ }
15189
+ customElements.define("go-set-password", create_custom_element(SetPassword, {
15190
+ accessToken: {
15191
+ attribute: "access-token",
15192
+ type: "String"
15193
+ },
15194
+ client: {
15195
+ attribute: "client",
15196
+ type: "String"
15197
+ },
15198
+ uid: {
15199
+ attribute: "uid",
15200
+ type: "String"
15201
+ }
15202
+ }, [], []));
15085
15203
  //#endregion
15086
15204
  //#region src/components/auth/signIn/SignIn.svelte
15087
15205
  function SignIn($$anchor, $$props) {
@@ -35403,11 +35521,9 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
35403
35521
  "by_ticket_group_ids[]": segment.ticketGroupIds ?? tsd.ticketGroupIds
35404
35522
  }));
35405
35523
  shop.capacityManager.addQuotas(quotas);
35406
- const firstQuota = Object.values(quotas)[0];
35407
- const timeslot = firstQuota ? Object.keys(firstQuota.capacities)[0] : void 0;
35408
- const uiTickets = initUITimeslotTickets(filterAvailabletickets(tickets, timeslot), timeslot);
35524
+ const uiTickets = initUIDayTickets(tickets);
35409
35525
  await enrichTicketsWithContent(segment, uiTickets);
35410
- for (const ticket of uiTickets) segment.preCart.addItem(createCartItem(ticket, { time: timeslot }));
35526
+ for (const ticket of uiTickets) segment.preCart.addItem(createCartItem(ticket, { time: ticket.selectedTime }));
35411
35527
  }
35412
35528
  },
35413
35529
  "ticket:annual": {
@@ -35499,11 +35615,9 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
35499
35615
  valid_at: tsd.selectedDate.toString()
35500
35616
  }));
35501
35617
  shop.capacityManager.addQuotas(quotas);
35502
- const firstQuota = Object.values(quotas)[0];
35503
- const time = firstQuota ? Object.keys(firstQuota.capacities)[0] : void 0;
35504
- const uiTickets = initUITimeslotTickets(filterAvailabletickets(tickets, time), time);
35618
+ const uiTickets = initUIDayTickets(tickets);
35505
35619
  await enrichTicketsWithContent(segment, uiTickets);
35506
- for (const t of uiTickets) segment.preCart.addItem(createCartItem(t, { time }));
35620
+ for (const t of uiTickets) segment.preCart.addItem(createCartItem(t, { time: t.selectedTime }));
35507
35621
  }
35508
35622
  },
35509
35623
  "event:admission:timeslot": {
@@ -35662,11 +35776,9 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
35662
35776
  valid_at: date.start_time.slice(0, 10)
35663
35777
  }));
35664
35778
  shop.capacityManager.addQuotas(quotas);
35665
- const firstQuota = Object.values(quotas)[0];
35666
- const time = firstQuota ? Object.keys(firstQuota.capacities)[0] : date.start_time;
35667
- const uiTickets = initUITimeslotTickets(filterAvailabletickets(tickets, time), time);
35779
+ const uiTickets = initUIDayTickets(tickets, date.start_time);
35668
35780
  await enrichTicketsWithContent(segment, uiTickets);
35669
- for (const t of uiTickets) segment.preCart.addItem(createCartItem(t, { time }));
35781
+ for (const t of uiTickets) segment.preCart.addItem(createCartItem(t, { time: t.selectedTime }));
35670
35782
  }
35671
35783
  }
35672
35784
  },
@@ -11859,6 +11859,17 @@ function createUITicket(apiTicket, options) {
11859
11859
  function initUITimeslotTickets(tickets, selectedTime = "") {
11860
11860
  return sort(Object.values(tickets).map((ticket) => createUITicket(ticket, { selectedTime })), (f) => f.shop_order);
11861
11861
  }
11862
+ /**
11863
+ * Day tickets (TC-04): each day quota keys its capacity at its OWN first-entry time, so
11864
+ * capacity keys differ across quotas. The day 'time' must be derived per ticket — the
11865
+ * first positive key of the ticket's own total_capacities — never from one global quota
11866
+ * key. A ticket with capacity keys that are all zero is sold out and dropped; a ticket
11867
+ * with no keys at all (no quota) is kept and gets `fallbackTime`.
11868
+ */
11869
+ function initUIDayTickets(tickets, fallbackTime) {
11870
+ const ownDayTime = (t) => Object.keys(t.total_capacities ?? {}).find((key) => (t.total_capacities?.[key] ?? 0) > 0);
11871
+ return sort(Object.values(tickets).filter((t) => ownDayTime(t) || Object.keys(t.total_capacities ?? {}).length === 0).map((t) => createUITicket(t, { selectedTime: ownDayTime(t) ?? fallbackTime })), (f) => f.shop_order);
11872
+ }
11862
11873
  function filterAvailabletickets(tickets, selectedTime = "") {
11863
11874
  let available = Object.entries(tickets);
11864
11875
  if (selectedTime !== "") available = available.filter(([, t]) => t.total_capacities?.[selectedTime] && t.total_capacities[selectedTime] > 0);
@@ -13866,6 +13877,20 @@ var Shop = class {
13866
13877
  requiredFields: ["email"]
13867
13878
  });
13868
13879
  }
13880
+ /**
13881
+ * Sets a new password using the one-time credentials the backend appends to
13882
+ * the reset-mail redirect (`access-token`, `client`, `uid` query params).
13883
+ * Unlike `updatePassword` no `current_password` is needed — the reset link
13884
+ * flags the session with `allow_password_change`. The 200 response carries
13885
+ * fresh auth headers which AuthMiddleware ingests, signing the customer in.
13886
+ */
13887
+ setNewPassword(params, headers) {
13888
+ return this.apiPut("/api/v4/auth/password", {
13889
+ body: params,
13890
+ requiredFields: ["password", "password_confirmation"],
13891
+ params: { header: headers }
13892
+ });
13893
+ }
13869
13894
  activateMembership(params) {
13870
13895
  return this.apiPost(MEMBERSHIP_ACTIVATION_ENDPOINT, {
13871
13896
  body: params,
@@ -14246,7 +14271,7 @@ var setPersonalizationDetails = createSetDetails(KEY$5);
14246
14271
  var getPersonalizationDetails = createGetDetails(KEY$5);
14247
14272
  //#endregion
14248
14273
  //#region src/components/annualTicketPersonalization/components/AnnualTicketPersonalization.svelte
14249
- var root$57 = /* @__PURE__ */ from_html(`<li><a> </a></li>`);
14274
+ var root$58 = /* @__PURE__ */ from_html(`<li><a> </a></li>`);
14250
14275
  var root_1$21 = /* @__PURE__ */ from_html(`<ul class="go-annual-ticket"><li class="go-annual-ticket-title"> </li> <li class="go-annual-ticket-personalization-count"> </li> <!></ul>`);
14251
14276
  function AnnualTicketPersonalization($$anchor, $$props) {
14252
14277
  push($$props, true);
@@ -14281,7 +14306,7 @@ function AnnualTicketPersonalization($$anchor, $$props) {
14281
14306
  reset(li_1);
14282
14307
  var node_2 = sibling(li_1, 2);
14283
14308
  var consequent = ($$anchor) => {
14284
- var li_2 = root$57();
14309
+ var li_2 = root$58();
14285
14310
  var a = child(li_2);
14286
14311
  var text_2 = child(a, true);
14287
14312
  reset(a);
@@ -14967,7 +14992,7 @@ function wrapInElement(host, tag, props) {
14967
14992
  }
14968
14993
  //#endregion
14969
14994
  //#region src/components/forms/ui/generic/Form.svelte
14970
- var root$56 = /* @__PURE__ */ from_html(`<go-all-fields></go-all-fields> <go-form-feedback><go-errors-feedback></go-errors-feedback> <go-success-feedback></go-success-feedback></go-form-feedback> <go-submit> </go-submit>`, 3);
14995
+ var root$57 = /* @__PURE__ */ from_html(`<go-all-fields></go-all-fields> <go-form-feedback><go-errors-feedback></go-errors-feedback> <go-success-feedback></go-success-feedback></go-form-feedback> <go-submit> </go-submit>`, 3);
14971
14996
  function Form($$anchor, $$props) {
14972
14997
  push($$props, true);
14973
14998
  let formId = prop($$props, "formId", 7), custom = prop($$props, "custom", 7);
@@ -15013,7 +15038,7 @@ function Form($$anchor, $$props) {
15013
15038
  var fragment = comment();
15014
15039
  var node = first_child(fragment);
15015
15040
  var consequent = ($$anchor) => {
15016
- var fragment_1 = root$56();
15041
+ var fragment_1 = root$57();
15017
15042
  var go_submit = sibling(sibling(first_child(fragment_1), 2), 2);
15018
15043
  var text = child(go_submit, true);
15019
15044
  reset(go_submit);
@@ -15040,10 +15065,10 @@ customElements.define("go-form", create_custom_element(Form, {
15040
15065
  }, [], ["details"]));
15041
15066
  //#endregion
15042
15067
  //#region src/components/auth/passwordReset/PasswordReset.svelte
15043
- var root$55 = /* @__PURE__ */ from_html(`<go-form></go-form>`, 2);
15068
+ var root$56 = /* @__PURE__ */ from_html(`<go-form></go-form>`, 2);
15044
15069
  function PasswordReset($$anchor, $$props) {
15045
15070
  push($$props, true);
15046
- let custom = prop($$props, "custom", 7, false);
15071
+ let custom = prop($$props, "custom", 7, false), redirectUrl = prop($$props, "redirectUrl", 7, "");
15047
15072
  Forms.defineForm({
15048
15073
  id: "passwordReset",
15049
15074
  submitLabel: "user.passwordReset.actions.requestPasswordReset",
@@ -15054,7 +15079,11 @@ function PasswordReset($$anchor, $$props) {
15054
15079
  });
15055
15080
  async function passwordReset(event) {
15056
15081
  const details = event.target.details;
15057
- const result = await shop.passwordReset(details.formData);
15082
+ const params = details.formData;
15083
+ const result = await shop.passwordReset(redirectUrl() ? {
15084
+ ...params,
15085
+ redirect_url: redirectUrl()
15086
+ } : params);
15058
15087
  if (result.data) {
15059
15088
  $$props.$$host.dispatchEvent(new Event("go-success", {
15060
15089
  bubbles: true,
@@ -15071,16 +15100,105 @@ function PasswordReset($$anchor, $$props) {
15071
15100
  set custom($$value = false) {
15072
15101
  custom($$value);
15073
15102
  flushSync();
15103
+ },
15104
+ get redirectUrl() {
15105
+ return redirectUrl();
15106
+ },
15107
+ set redirectUrl($$value = "") {
15108
+ redirectUrl($$value);
15109
+ flushSync();
15074
15110
  }
15075
15111
  };
15076
- var go_form = root$55();
15112
+ var go_form = root$56();
15077
15113
  set_custom_element_data(go_form, "formId", "passwordReset");
15078
15114
  template_effect(() => set_custom_element_data(go_form, "custom", custom()));
15079
15115
  event("submit", go_form, passwordReset);
15080
15116
  append($$anchor, go_form);
15081
15117
  return pop($$exports);
15082
15118
  }
15083
- customElements.define("go-password-reset", create_custom_element(PasswordReset, { custom: {} }, [], []));
15119
+ customElements.define("go-password-reset", create_custom_element(PasswordReset, {
15120
+ redirectUrl: {
15121
+ attribute: "redirect-url",
15122
+ type: "String"
15123
+ },
15124
+ custom: {}
15125
+ }, [], []));
15126
+ //#endregion
15127
+ //#region src/components/auth/setPassword/SetPassword.svelte
15128
+ var root$55 = /* @__PURE__ */ from_html(`<go-form></go-form>`, 2);
15129
+ function SetPassword($$anchor, $$props) {
15130
+ push($$props, true);
15131
+ let accessToken = prop($$props, "accessToken", 7, ""), client = prop($$props, "client", 7, ""), uid = prop($$props, "uid", 7, "");
15132
+ Forms.defineForm({
15133
+ id: "setPassword",
15134
+ submitLabel: "user.passwordReset.actions.resetPassword",
15135
+ fields: [{
15136
+ key: "newPassword",
15137
+ required: true
15138
+ }, {
15139
+ key: "confirmPassword",
15140
+ required: true
15141
+ }]
15142
+ });
15143
+ async function setNewPassword(event) {
15144
+ const details = event.target.details;
15145
+ const result = await shop.setNewPassword(details.formData, {
15146
+ "access-token": accessToken(),
15147
+ client: client(),
15148
+ uid: uid()
15149
+ });
15150
+ if (result.data) {
15151
+ $$props.$$host.dispatchEvent(new Event("go-success", {
15152
+ bubbles: true,
15153
+ composed: true
15154
+ }));
15155
+ details.successMessage = result.data.message;
15156
+ details.apiErrors = [];
15157
+ } else details.apiErrors = result.error.errors;
15158
+ }
15159
+ var $$exports = {
15160
+ get accessToken() {
15161
+ return accessToken();
15162
+ },
15163
+ set accessToken($$value = "") {
15164
+ accessToken($$value);
15165
+ flushSync();
15166
+ },
15167
+ get client() {
15168
+ return client();
15169
+ },
15170
+ set client($$value = "") {
15171
+ client($$value);
15172
+ flushSync();
15173
+ },
15174
+ get uid() {
15175
+ return uid();
15176
+ },
15177
+ set uid($$value = "") {
15178
+ uid($$value);
15179
+ flushSync();
15180
+ }
15181
+ };
15182
+ var go_form = root$55();
15183
+ set_custom_element_data(go_form, "formId", "setPassword");
15184
+ event("submit", go_form, setNewPassword);
15185
+ append($$anchor, go_form);
15186
+ return pop($$exports);
15187
+ }
15188
+ customElements.define("go-set-password", create_custom_element(SetPassword, {
15189
+ accessToken: {
15190
+ attribute: "access-token",
15191
+ type: "String"
15192
+ },
15193
+ client: {
15194
+ attribute: "client",
15195
+ type: "String"
15196
+ },
15197
+ uid: {
15198
+ attribute: "uid",
15199
+ type: "String"
15200
+ }
15201
+ }, [], []));
15084
15202
  //#endregion
15085
15203
  //#region src/components/auth/signIn/SignIn.svelte
15086
15204
  function SignIn($$anchor, $$props) {
@@ -35402,11 +35520,9 @@ var REGISTRY = {
35402
35520
  "by_ticket_group_ids[]": segment.ticketGroupIds ?? tsd.ticketGroupIds
35403
35521
  }));
35404
35522
  shop.capacityManager.addQuotas(quotas);
35405
- const firstQuota = Object.values(quotas)[0];
35406
- const timeslot = firstQuota ? Object.keys(firstQuota.capacities)[0] : void 0;
35407
- const uiTickets = initUITimeslotTickets(filterAvailabletickets(tickets, timeslot), timeslot);
35523
+ const uiTickets = initUIDayTickets(tickets);
35408
35524
  await enrichTicketsWithContent(segment, uiTickets);
35409
- for (const ticket of uiTickets) segment.preCart.addItem(createCartItem(ticket, { time: timeslot }));
35525
+ for (const ticket of uiTickets) segment.preCart.addItem(createCartItem(ticket, { time: ticket.selectedTime }));
35410
35526
  }
35411
35527
  },
35412
35528
  "ticket:annual": {
@@ -35498,11 +35614,9 @@ var REGISTRY = {
35498
35614
  valid_at: tsd.selectedDate.toString()
35499
35615
  }));
35500
35616
  shop.capacityManager.addQuotas(quotas);
35501
- const firstQuota = Object.values(quotas)[0];
35502
- const time = firstQuota ? Object.keys(firstQuota.capacities)[0] : void 0;
35503
- const uiTickets = initUITimeslotTickets(filterAvailabletickets(tickets, time), time);
35617
+ const uiTickets = initUIDayTickets(tickets);
35504
35618
  await enrichTicketsWithContent(segment, uiTickets);
35505
- for (const t of uiTickets) segment.preCart.addItem(createCartItem(t, { time }));
35619
+ for (const t of uiTickets) segment.preCart.addItem(createCartItem(t, { time: t.selectedTime }));
35506
35620
  }
35507
35621
  },
35508
35622
  "event:admission:timeslot": {
@@ -35661,11 +35775,9 @@ var REGISTRY = {
35661
35775
  valid_at: date.start_time.slice(0, 10)
35662
35776
  }));
35663
35777
  shop.capacityManager.addQuotas(quotas);
35664
- const firstQuota = Object.values(quotas)[0];
35665
- const time = firstQuota ? Object.keys(firstQuota.capacities)[0] : date.start_time;
35666
- const uiTickets = initUITimeslotTickets(filterAvailabletickets(tickets, time), time);
35778
+ const uiTickets = initUIDayTickets(tickets, date.start_time);
35667
35779
  await enrichTicketsWithContent(segment, uiTickets);
35668
- for (const t of uiTickets) segment.preCart.addItem(createCartItem(t, { time }));
35780
+ for (const t of uiTickets) segment.preCart.addItem(createCartItem(t, { time: t.selectedTime }));
35669
35781
  }
35670
35782
  }
35671
35783
  },