@getmicdrop/venue-calendar 4.0.64 → 4.0.65

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/dist/{CarouselView.legacy-CHlVZ-nC.js → CarouselView.legacy-CejJbK0e.js} +3 -3
  2. package/dist/{CarouselView.legacy-CHlVZ-nC.js.map → CarouselView.legacy-CejJbK0e.js.map} +1 -1
  3. package/dist/{CartView-BAeAbkEa.js → CartView-DKpsKj2N.js} +3 -3
  4. package/dist/{CartView-BAeAbkEa.js.map → CartView-DKpsKj2N.js.map} +1 -1
  5. package/dist/{Checkout-2oWblXIZ.js → Checkout-CXfFabtp.js} +5 -5
  6. package/dist/{Checkout-2oWblXIZ.js.map → Checkout-CXfFabtp.js.map} +1 -1
  7. package/dist/{Checkout-BbAroeeC.js → Checkout-zR2LPgmX.js} +62 -62
  8. package/dist/Checkout-zR2LPgmX.js.map +1 -0
  9. package/dist/{Checkout.legacy-Caboro1G.js → Checkout.legacy-CDqjvIxB.js} +5 -5
  10. package/dist/{Checkout.legacy-Caboro1G.js.map → Checkout.legacy-CDqjvIxB.js.map} +1 -1
  11. package/dist/{CheckoutTimer-Cz5G7vxK.js → CheckoutTimer-D1wyacc5.js} +2 -2
  12. package/dist/{CheckoutTimer-Cz5G7vxK.js.map → CheckoutTimer-D1wyacc5.js.map} +1 -1
  13. package/dist/{CollectionView-DEKutvzz.js → CollectionView-DU3Rkjvr.js} +5 -5
  14. package/dist/{CollectionView-DEKutvzz.js.map → CollectionView-DU3Rkjvr.js.map} +1 -1
  15. package/dist/{CollectionView.legacy-BTwbPnx9.js → CollectionView.legacy-DfXDsEqF.js} +3 -3
  16. package/dist/{CollectionView.legacy-BTwbPnx9.js.map → CollectionView.legacy-DfXDsEqF.js.map} +1 -1
  17. package/dist/{Event-CjaJ5o3v.js → Event-DBmvRsu8.js} +4 -4
  18. package/dist/{Event-CjaJ5o3v.js.map → Event-DBmvRsu8.js.map} +1 -1
  19. package/dist/{EventDetailsView-DXnhlk3-.js → EventDetailsView-CIR9vl2Q.js} +6 -6
  20. package/dist/{EventDetailsView-DXnhlk3-.js.map → EventDetailsView-CIR9vl2Q.js.map} +1 -1
  21. package/dist/{EventPage-C0lONi_3.js → EventPage-BEh2QNPL.js} +5 -5
  22. package/dist/{EventPage-C0lONi_3.js.map → EventPage-BEh2QNPL.js.map} +1 -1
  23. package/dist/{EventPage.legacy-BEKcjbI4.js → EventPage.legacy-AeHwkFwN.js} +5 -5
  24. package/dist/{EventPage.legacy-BEKcjbI4.js.map → EventPage.legacy-AeHwkFwN.js.map} +1 -1
  25. package/dist/{FeaturedView.legacy-BkepqGg3.js → FeaturedView.legacy-DKJDwuwQ.js} +2 -2
  26. package/dist/{FeaturedView.legacy-BkepqGg3.js.map → FeaturedView.legacy-DKJDwuwQ.js.map} +1 -1
  27. package/dist/{GalleryCard-DceWAls1.js → GalleryCard-CG3tCBwa.js} +2 -2
  28. package/dist/{GalleryCard-DceWAls1.js.map → GalleryCard-CG3tCBwa.js.map} +1 -1
  29. package/dist/{GalleryView.legacy-CA95oQGJ.js → GalleryView.legacy-BVBblLTv.js} +3 -3
  30. package/dist/{GalleryView.legacy-CA95oQGJ.js.map → GalleryView.legacy-BVBblLTv.js.map} +1 -1
  31. package/dist/{GroupedListView.legacy-oOoTwXPq.js → GroupedListView.legacy-bxfuoVIx.js} +2 -2
  32. package/dist/{GroupedListView.legacy-oOoTwXPq.js.map → GroupedListView.legacy-bxfuoVIx.js.map} +1 -1
  33. package/dist/{OrderSummary-DRXcg2M_.js → OrderSummary-CB03zYc9.js} +2 -2
  34. package/dist/{OrderSummary-DRXcg2M_.js.map → OrderSummary-CB03zYc9.js.map} +1 -1
  35. package/dist/{PromoCodeInput-wPJjGt_v.js → PromoCodeInput-Db6sjP0w.js} +3 -3
  36. package/dist/{PromoCodeInput-wPJjGt_v.js.map → PromoCodeInput-Db6sjP0w.js.map} +1 -1
  37. package/dist/{SeriesPage-BRrpv4-3.js → SeriesPage-BJclJLCZ.js} +5 -5
  38. package/dist/{SeriesPage-BRrpv4-3.js.map → SeriesPage-BJclJLCZ.js.map} +1 -1
  39. package/dist/{SeriesPage.legacy-BIKd6SYo.js → SeriesPage.legacy-DTq4mcUR.js} +2 -2
  40. package/dist/{SeriesPage.legacy-BIKd6SYo.js.map → SeriesPage.legacy-DTq4mcUR.js.map} +1 -1
  41. package/dist/{Success-fMTg0QHe.js → Success-ECRExX_Z.js} +7 -7
  42. package/dist/Success-ECRExX_Z.js.map +1 -0
  43. package/dist/{Success.legacy-DwLdwq_g.js → Success.legacy-P9mcS21c.js} +2 -2
  44. package/dist/{Success.legacy-DwLdwq_g.js.map → Success.legacy-P9mcS21c.js.map} +1 -1
  45. package/dist/{VenueCalendar-ySqncMTn.js → VenueCalendar-DweCc8I9.js} +259 -252
  46. package/dist/{VenueCalendar-ySqncMTn.js.map → VenueCalendar-DweCc8I9.js.map} +1 -1
  47. package/dist/{ViewTicketsEmbed-1X1K2UGI.js → ViewTicketsEmbed-xMyAlSnT.js} +3 -3
  48. package/dist/{ViewTicketsEmbed-1X1K2UGI.js.map → ViewTicketsEmbed-xMyAlSnT.js.map} +1 -1
  49. package/dist/{WaitlistModal-DqPbCdOl.js → WaitlistModal-Cd-3AkNr.js} +107 -107
  50. package/dist/WaitlistModal-Cd-3AkNr.js.map +1 -0
  51. package/dist/{api-ohGBZw0r.js → api-CV_GBl7b.js} +2 -2
  52. package/dist/{api-ohGBZw0r.js.map → api-CV_GBl7b.js.map} +1 -1
  53. package/dist/{data-toggle-store.svelte-CxjHrCmm.js → data-toggle-store.svelte-CqcDkRSv.js} +2 -2
  54. package/dist/{data-toggle-store.svelte-CxjHrCmm.js.map → data-toggle-store.svelte-CqcDkRSv.js.map} +1 -1
  55. package/dist/seo/helpers.d.ts +23 -0
  56. package/dist/seo/index.d.ts +2 -1
  57. package/dist/seo/seo.cjs +1 -1
  58. package/dist/seo/seo.cjs.map +1 -1
  59. package/dist/seo/seo.mjs +185 -177
  60. package/dist/seo/seo.mjs.map +1 -1
  61. package/dist/seo/types.d.ts +13 -0
  62. package/dist/{transform-CmXbkRWL.js → transform-_Mlec4Vr.js} +2 -2
  63. package/dist/{transform-CmXbkRWL.js.map → transform-_Mlec4Vr.js.map} +1 -1
  64. package/dist/venue-calendar.css +1 -1
  65. package/dist/venue-calendar.es.js +2 -2
  66. package/dist/venue-calendar.iife.js +43 -43
  67. package/dist/venue-calendar.iife.js.map +1 -1
  68. package/dist/venue-calendar.umd.js +27 -27
  69. package/dist/venue-calendar.umd.js.map +1 -1
  70. package/package.json +1 -1
  71. package/dist/Checkout-BbAroeeC.js.map +0 -1
  72. package/dist/Success-fMTg0QHe.js.map +0 -1
  73. package/dist/WaitlistModal-DqPbCdOl.js.map +0 -1
package/dist/seo/seo.mjs CHANGED
@@ -1,12 +1,12 @@
1
- function N() {
1
+ function A() {
2
2
  return "America/Los_Angeles";
3
3
  }
4
- function _(i, e) {
4
+ function v(i, t) {
5
5
  if (!i) return null;
6
- const t = new Date(i);
7
- if (isNaN(t.getTime())) return null;
6
+ const e = new Date(i);
7
+ if (isNaN(e.getTime())) return null;
8
8
  const s = new Intl.DateTimeFormat("en-US", {
9
- timeZone: e,
9
+ timeZone: t,
10
10
  year: "numeric",
11
11
  month: "2-digit",
12
12
  day: "2-digit",
@@ -15,60 +15,67 @@ function _(i, e) {
15
15
  second: "2-digit",
16
16
  hour12: !1,
17
17
  timeZoneName: "shortOffset"
18
- }).formatToParts(t), r = (d) => s.find((p) => p.type === d)?.value || "", o = r("year"), a = r("month"), c = r("day"), l = r("hour"), u = r("minute"), m = r("second"), h = r("timeZoneName");
18
+ }).formatToParts(e), r = (u) => s.find((p) => p.type === u)?.value || "", o = r("year"), l = r("month"), c = r("day"), a = r("hour"), d = r("minute"), m = r("second"), h = r("timeZoneName");
19
19
  let g = "+00:00";
20
20
  if (h) {
21
- const d = h.match(/GMT([+-])(\d+)(?::(\d+))?/);
22
- if (d) {
23
- const p = d[1], y = d[2].padStart(2, "0"), I = d[3] || "00";
24
- g = `${p}${y}:${I}`;
21
+ const u = h.match(/GMT([+-])(\d+)(?::(\d+))?/);
22
+ if (u) {
23
+ const p = u[1], E = u[2].padStart(2, "0"), P = u[3] || "00";
24
+ g = `${p}${E}:${P}`;
25
25
  }
26
26
  }
27
- return `${o}-${a}-${c}T${l}:${u}:${m}${g}`;
27
+ return `${o}-${l}-${c}T${a}:${d}:${m}${g}`;
28
28
  }
29
- function T(i) {
29
+ function I(i) {
30
30
  if (!i) return null;
31
- const e = i.split(",").map((s) => s.trim());
32
- if (e.length < 2)
31
+ const t = i.split(",").map((s) => s.trim());
32
+ if (t.length < 2)
33
33
  return {
34
34
  "@type": "PostalAddress",
35
35
  streetAddress: i,
36
36
  addressCountry: "US"
37
37
  };
38
- const n = e[e.length - 1].match(/^([A-Z]{2})\s+(\d{5}(?:-\d{4})?)$/);
39
- return n && e.length >= 3 ? {
38
+ const n = t[t.length - 1].match(/^([A-Z]{2})\s+(\d{5}(?:-\d{4})?)$/);
39
+ return n && t.length >= 3 ? {
40
40
  "@type": "PostalAddress",
41
- streetAddress: e.slice(0, -2).join(", "),
42
- addressLocality: e[e.length - 2],
41
+ streetAddress: t.slice(0, -2).join(", "),
42
+ addressLocality: t[t.length - 2],
43
43
  addressRegion: n[1],
44
44
  postalCode: n[2],
45
45
  addressCountry: "US"
46
46
  } : {
47
47
  "@type": "PostalAddress",
48
- streetAddress: e[0],
49
- addressLocality: e.slice(1).join(", "),
48
+ streetAddress: t[0],
49
+ addressLocality: t.slice(1).join(", "),
50
50
  addressCountry: "US"
51
51
  };
52
52
  }
53
- function E(i) {
53
+ function N(i, t) {
54
+ if (i && (i.city || i.state || i.postalCode)) {
55
+ const e = { "@type": "PostalAddress" };
56
+ return i.address && (e.streetAddress = i.address), i.city && (e.addressLocality = i.city), i.state && (e.addressRegion = i.state), i.postalCode && (e.postalCode = i.postalCode), e.addressCountry = i.country || "US", e;
57
+ }
58
+ return I(i && i.address || t || null);
59
+ }
60
+ function T(i) {
54
61
  if (!i) return "https://schema.org/EventScheduled";
55
- const e = i.toLowerCase();
56
- return e === "cancelled" || e === "canceled" ? "https://schema.org/EventCancelled" : e === "postponed" ? "https://schema.org/EventPostponed" : e === "rescheduled" ? "https://schema.org/EventRescheduled" : "https://schema.org/EventScheduled";
62
+ const t = i.toLowerCase();
63
+ return t === "cancelled" || t === "canceled" ? "https://schema.org/EventCancelled" : t === "postponed" ? "https://schema.org/EventPostponed" : t === "rescheduled" ? "https://schema.org/EventRescheduled" : "https://schema.org/EventScheduled";
57
64
  }
58
- function b(i) {
65
+ function _(i) {
59
66
  if ((i.remainingCapacity ?? i.quantityRemaining ?? i.quantity) === 0 || i.soldOut)
60
67
  return "https://schema.org/SoldOut";
61
- const t = /* @__PURE__ */ new Date(), n = i.salesBegin || i.salesStart || i.saleBegin || i.onSaleStart, s = i.salesEnd || i.saleEnd || i.onSaleEnd;
62
- return n && new Date(n) > t ? "https://schema.org/PreOrder" : s && new Date(s) < t ? "https://schema.org/SoldOut" : "https://schema.org/InStock";
68
+ const e = /* @__PURE__ */ new Date(), n = i.salesBegin || i.salesStart || i.saleBegin || i.onSaleStart, s = i.salesEnd || i.saleEnd || i.onSaleEnd;
69
+ return n && new Date(n) > e ? "https://schema.org/PreOrder" : s && new Date(s) < e ? "https://schema.org/SoldOut" : "https://schema.org/InStock";
63
70
  }
64
- function P(i, e) {
71
+ function L(i, t) {
65
72
  if (!i || i.length === 0) return null;
66
- const t = i.filter((a) => {
67
- const c = a.visibility ?? 0, l = c === 0 || c === 1, u = a.salesChannel !== 2;
68
- return l && u;
73
+ const e = i.filter((l) => {
74
+ const c = l.visibility ?? 0, a = c === 0 || c === 1, d = l.salesChannel !== 2;
75
+ return a && d;
69
76
  });
70
- if (t.length === 0) return null;
71
- const n = t.map((a) => parseFloat(String(a.price ?? 0))).filter((a) => !isNaN(a));
77
+ if (e.length === 0) return null;
78
+ const n = e.map((l) => parseFloat(String(l.price ?? 0))).filter((l) => !isNaN(l));
72
79
  if (n.length === 0) return null;
73
80
  const s = Math.min(...n), r = Math.max(...n);
74
81
  if (s !== r)
@@ -77,78 +84,78 @@ function P(i, e) {
77
84
  lowPrice: s,
78
85
  highPrice: r,
79
86
  priceCurrency: "USD",
80
- availability: b(t[0]),
81
- url: e || void 0,
82
- validFrom: t[0]?.salesBegin || t[0]?.salesStart || void 0
87
+ availability: _(e[0]),
88
+ url: t || void 0,
89
+ validFrom: e[0]?.salesBegin || e[0]?.salesStart || void 0
83
90
  };
84
- const o = t[0];
91
+ const o = e[0];
85
92
  return {
86
93
  "@type": "Offer",
87
94
  price: s,
88
95
  priceCurrency: "USD",
89
- availability: b(o),
90
- url: e || void 0,
96
+ availability: _(o),
97
+ url: t || void 0,
91
98
  validFrom: o?.salesBegin || o?.salesStart || void 0
92
99
  };
93
100
  }
94
101
  function $(i) {
95
102
  if (!i || i.length === 0) return null;
96
- const e = i.filter((t) => {
97
- const n = t.acceptedState === 2, s = !t.shouldBeHidden, r = t.RosterPerformer?.User?.performerProfile, o = r?.firstName || r?.lastName || r?.displayName;
103
+ const t = i.filter((e) => {
104
+ const n = e.acceptedState === 2, s = !e.shouldBeHidden, r = e.RosterPerformer?.User?.performerProfile, o = r?.firstName || r?.lastName || r?.displayName;
98
105
  return n && s && o;
99
106
  });
100
- return e.length === 0 ? null : e.map((t) => {
101
- const n = t.RosterPerformer?.User?.performerProfile;
107
+ return t.length === 0 ? null : t.map((e) => {
108
+ const n = e.RosterPerformer?.User?.performerProfile;
102
109
  return {
103
110
  "@type": "PerformingGroup",
104
111
  name: n?.displayName || [n?.firstName, n?.lastName].filter(Boolean).join(" ")
105
112
  };
106
113
  });
107
114
  }
108
- function L(i) {
115
+ function O(i) {
109
116
  const {
110
- event: e,
111
- venue: t,
112
- venueTimeZone: n = N(),
117
+ event: t,
118
+ venue: e,
119
+ venueTimeZone: n = A(),
113
120
  eventUrl: s,
114
121
  organizer: r
115
122
  } = i;
116
- if (!e) return null;
117
- const o = t?.address || t?.googleLocationNameCache || "", a = _(e.startDateTime, n);
118
- if (!e.name || !a || !t?.name)
123
+ if (!t) return null;
124
+ const o = v(t.startDateTime, n);
125
+ if (!t.name || !o || !e?.name)
119
126
  return null;
120
- const c = T(o), l = {
127
+ const l = N(e, e?.googleLocationNameCache), c = {
121
128
  "@type": "Place",
122
- name: t.name
129
+ name: e.name
123
130
  };
124
- c && (l.address = c);
125
- const u = {
131
+ l && (c.address = l);
132
+ const a = {
126
133
  "@context": "https://schema.org",
127
134
  "@type": "Event",
128
- name: e.name,
129
- startDate: a,
130
- eventStatus: E(e.status),
135
+ name: t.name,
136
+ startDate: o,
137
+ eventStatus: T(t.status),
131
138
  eventAttendanceMode: "https://schema.org/OfflineEventAttendanceMode",
132
- location: l
133
- }, m = _(e.endDateTime, n);
134
- m && (u.endDate = m);
135
- const h = e.description || e.eventSummary;
136
- h && (u.description = h);
137
- const g = e.image || e.coverImage || e.ShowImage;
138
- g && (u.image = [g]);
139
- const d = P(e.availableTickets, s);
140
- d && (u.offers = d);
141
- const p = $(e.performers);
142
- if (p && p.length > 0 && (u.performer = p), r?.name) {
143
- const y = {
139
+ location: c
140
+ }, d = v(t.endDateTime, n);
141
+ d && (a.endDate = d);
142
+ const m = t.description || t.eventSummary;
143
+ m && (a.description = m);
144
+ const h = t.image || t.coverImage || t.ShowImage;
145
+ h && (a.image = [h]);
146
+ const g = L(t.availableTickets, s);
147
+ g && (a.offers = g);
148
+ const u = $(t.performers);
149
+ if (u && u.length > 0 && (a.performer = u), r?.name) {
150
+ const p = {
144
151
  "@type": "Organization",
145
152
  name: r.name
146
153
  };
147
- r.url && (y.url = r.url), u.organizer = y;
154
+ r.url && (p.url = r.url), a.organizer = p;
148
155
  }
149
- return s && (u.url = s), u;
156
+ return s && (a.url = s), a;
150
157
  }
151
- function S(i) {
158
+ function b(i) {
152
159
  switch (i) {
153
160
  case "available":
154
161
  return "https://schema.org/InStock";
@@ -162,29 +169,29 @@ function S(i) {
162
169
  return "https://schema.org/InStock";
163
170
  }
164
171
  }
165
- function O(i, e) {
172
+ function U(i, t) {
166
173
  if (!i || i.length === 0) return null;
167
- const t = i.filter(
174
+ const e = i.filter(
168
175
  (o) => o.status !== "sold_out" && o.status !== "ended"
169
176
  );
170
- if (t.length === 0) {
171
- const o = i.map((l) => l.price).filter((l) => !isNaN(l));
177
+ if (e.length === 0) {
178
+ const o = i.map((a) => a.price).filter((a) => !isNaN(a));
172
179
  if (o.length === 0) return null;
173
- const a = Math.min(...o), c = Math.max(...o);
174
- return a !== c ? {
180
+ const l = Math.min(...o), c = Math.max(...o);
181
+ return l !== c ? {
175
182
  "@type": "AggregateOffer",
176
- lowPrice: a,
183
+ lowPrice: l,
177
184
  highPrice: c,
178
185
  priceCurrency: "USD",
179
186
  availability: "https://schema.org/SoldOut"
180
187
  } : {
181
188
  "@type": "Offer",
182
- price: a,
189
+ price: l,
183
190
  priceCurrency: "USD",
184
191
  availability: "https://schema.org/SoldOut"
185
192
  };
186
193
  }
187
- const n = t.map((o) => o.price).filter((o) => !isNaN(o));
194
+ const n = e.map((o) => o.price).filter((o) => !isNaN(o));
188
195
  if (n.length === 0) return null;
189
196
  const s = Math.min(...n), r = Math.max(...n);
190
197
  return s !== r ? {
@@ -192,160 +199,160 @@ function O(i, e) {
192
199
  lowPrice: s,
193
200
  highPrice: r,
194
201
  priceCurrency: "USD",
195
- availability: S(t[0].status)
202
+ availability: b(e[0].status)
196
203
  } : {
197
204
  "@type": "Offer",
198
205
  price: s,
199
206
  priceCurrency: "USD",
200
- availability: S(t[0].status)
207
+ availability: b(e[0].status)
201
208
  };
202
209
  }
203
210
  function D(i) {
204
- const { series: e, baseEventUrl: t } = i;
205
- if (!e.title || !e.occurrences || e.occurrences.length === 0 || !e.venue?.name) return null;
206
- const n = T(e.venue.googleLocationNameCache || ""), s = {
211
+ const { series: t, baseEventUrl: e } = i;
212
+ if (!t.title || !t.occurrences || t.occurrences.length === 0 || !t.venue?.name) return null;
213
+ const n = N(t.venue, t.venue.googleLocationNameCache), s = {
207
214
  "@type": "Place",
208
- name: e.venue.name
215
+ name: t.venue.name
209
216
  };
210
217
  n && (s.address = n);
211
218
  const r = {
212
219
  "@context": "https://schema.org",
213
220
  "@type": "EventSeries",
214
- name: e.title,
221
+ name: t.title,
215
222
  location: s
216
- }, o = e.description || e.eventSummary;
217
- o && (r.description = o), e.image && (r.image = [e.image]);
218
- const a = e.performers?.filter((l) => l.displayName);
219
- a && a.length > 0 && (r.performer = a.map((l) => ({
223
+ }, o = t.description || t.eventSummary;
224
+ o && (r.description = o), t.image && (r.image = [t.image]);
225
+ const l = t.performers?.filter((a) => a.displayName);
226
+ l && l.length > 0 && (r.performer = l.map((a) => ({
220
227
  "@type": "PerformingGroup",
221
- name: l.displayName
228
+ name: a.displayName
222
229
  })));
223
230
  const c = [];
224
- for (const l of e.occurrences) {
225
- const u = _(l.startDateTime, e.timeZone);
226
- if (!u) continue;
231
+ for (const a of t.occurrences) {
232
+ const d = v(a.startDateTime, t.timeZone);
233
+ if (!d) continue;
227
234
  const m = {
228
235
  "@type": "Event",
229
- name: l.title,
230
- startDate: u,
231
- eventStatus: E(l.status),
236
+ name: a.title,
237
+ startDate: d,
238
+ eventStatus: T(a.status),
232
239
  location: s
233
240
  };
234
- t && (m["@id"] = `${t}/${l.id}-${l.slug}`);
235
- const h = _(l.endDateTime, e.timeZone);
241
+ e && (m["@id"] = `${e}/${a.id}-${a.slug}`);
242
+ const h = v(a.endDateTime, t.timeZone);
236
243
  h && (m.endDate = h);
237
- const g = O(l.tickets, l.status);
244
+ const g = U(a.tickets, a.status);
238
245
  g && (m.offers = g), c.push(m);
239
246
  }
240
247
  return c.length === 0 ? null : (r.subEvent = c, r);
241
248
  }
242
- function U(i) {
243
- const { collection: e, baseEventUrl: t } = i;
244
- if (!e.collectionTitle || !e.events || e.events.length === 0) return null;
249
+ function C(i) {
250
+ const { collection: t, baseEventUrl: e } = i;
251
+ if (!t.collectionTitle || !t.events || t.events.length === 0) return null;
245
252
  const n = [];
246
- for (const o of e.events) {
253
+ for (const o of t.events) {
247
254
  if (!o.title) continue;
248
- const a = {
255
+ const l = {
249
256
  "@type": "ListItem",
250
257
  position: n.length + 1,
251
258
  name: o.title
252
259
  };
253
- t && (a.url = o.slug ? `${t}/${o.id}-${o.slug}` : `${t}/${o.id}`), n.push(a);
260
+ e && (l.url = o.slug ? `${e}/${o.id}-${o.slug}` : `${e}/${o.id}`), n.push(l);
254
261
  }
255
262
  if (n.length === 0) return null;
256
263
  const s = {
257
264
  "@context": "https://schema.org",
258
265
  "@type": "CollectionPage",
259
- name: e.collectionTitle
260
- }, r = e.description || e.summary;
261
- return r && (s.description = r), e.coverImage && (s.image = [e.coverImage]), s.mainEntity = {
266
+ name: t.collectionTitle
267
+ }, r = t.description || t.summary;
268
+ return r && (s.description = r), t.coverImage && (s.image = [t.coverImage]), s.mainEntity = {
262
269
  "@type": "ItemList",
263
270
  numberOfItems: n.length,
264
271
  itemListElement: n
265
272
  }, s;
266
273
  }
267
- function v(i) {
274
+ function y(i) {
268
275
  return i ? i.toLowerCase().trim().replace(/[^\w\s-]/g, "").replace(/\s+/g, "-").replace(/--+/g, "-").replace(/^-+|-+$/g, "") : "";
269
276
  }
270
277
  const f = class f {
271
- constructor(e) {
272
- this._state = "idle", this._originals = null, this._originalsSaved = !1, this._events = [], !(typeof document > "u") && (f._activeInstance && f._activeInstance !== this && f._activeInstance.destroy(), this._venueName = e.venueName, this._venueAddress = e.venueAddress, this._venueTimeZone = e.venueTimeZone || N(), this._baseUrl = e.baseUrl || window.location.origin + window.location.pathname, this._saveOriginals(), f._activeInstance = this);
278
+ constructor(t) {
279
+ this._state = "idle", this._originals = null, this._originalsSaved = !1, this._events = [], !(typeof document > "u") && (f._activeInstance && f._activeInstance !== this && f._activeInstance.destroy(), this._venueName = t.venueName, this._venueAddress = t.venueAddress, this._venueTimeZone = t.venueTimeZone || A(), this._baseUrl = t.baseUrl || window.location.origin + window.location.pathname, this._saveOriginals(), f._activeInstance = this);
273
280
  }
274
281
  // ---------------------------------------------------------------------------
275
282
  // Private helpers
276
283
  // ---------------------------------------------------------------------------
277
284
  _saveOriginals() {
278
285
  if (this._originalsSaved) return;
279
- const e = document.querySelector('link[rel="canonical"]'), t = document.querySelector('meta[property="og:title"]'), n = document.querySelector('meta[property="og:description"]'), s = document.querySelector('meta[property="og:image"]'), r = document.querySelector('meta[property="og:url"]'), o = document.querySelector('meta[property="og:type"]'), a = document.querySelector('meta[name="description"]');
286
+ const t = document.querySelector('link[rel="canonical"]'), e = document.querySelector('meta[property="og:title"]'), n = document.querySelector('meta[property="og:description"]'), s = document.querySelector('meta[property="og:image"]'), r = document.querySelector('meta[property="og:url"]'), o = document.querySelector('meta[property="og:type"]'), l = document.querySelector('meta[name="description"]');
280
287
  this._originals = {
281
288
  title: document.title,
282
- canonicalHref: e?.getAttribute("href") ?? null,
283
- ogTitle: t?.getAttribute("content") ?? null,
289
+ canonicalHref: t?.getAttribute("href") ?? null,
290
+ ogTitle: e?.getAttribute("content") ?? null,
284
291
  ogDescription: n?.getAttribute("content") ?? null,
285
292
  ogImage: s?.getAttribute("content") ?? null,
286
293
  ogUrl: r?.getAttribute("content") ?? null,
287
294
  ogType: o?.getAttribute("content") ?? null,
288
- metaDescription: a?.getAttribute("content") ?? null
295
+ metaDescription: l?.getAttribute("content") ?? null
289
296
  }, this._originalsSaved = !0;
290
297
  }
291
- _injectJsonLd(e) {
298
+ _injectJsonLd(t) {
292
299
  if (typeof document > "u") return;
293
300
  document.querySelectorAll('script[data-micdrop="jsonld"]').forEach((n) => n.remove());
294
- const t = document.createElement("script");
295
- t.setAttribute("type", "application/ld+json"), t.setAttribute("data-micdrop", "jsonld"), t.textContent = JSON.stringify(e), document.head.appendChild(t);
301
+ const e = document.createElement("script");
302
+ e.setAttribute("type", "application/ld+json"), e.setAttribute("data-micdrop", "jsonld"), e.textContent = JSON.stringify(t), document.head.appendChild(e);
296
303
  }
297
- _setMeta(e, t) {
304
+ _setMeta(t, e) {
298
305
  if (!(typeof document > "u"))
299
- if (e.startsWith("og:")) {
300
- let n = document.querySelector(`meta[property="${e}"]`);
301
- n ? n.setAttribute("content", t) : (n = document.createElement("meta"), n.setAttribute("property", e), n.setAttribute("content", t), n.setAttribute("data-micdrop", "og"), document.head.appendChild(n));
306
+ if (t.startsWith("og:")) {
307
+ let n = document.querySelector(`meta[property="${t}"]`);
308
+ n ? n.setAttribute("content", e) : (n = document.createElement("meta"), n.setAttribute("property", t), n.setAttribute("content", e), n.setAttribute("data-micdrop", "og"), document.head.appendChild(n));
302
309
  } else {
303
- let n = document.querySelector(`meta[name="${e}"]`);
304
- n ? n.setAttribute("content", t) : (n = document.createElement("meta"), n.setAttribute("name", e), n.setAttribute("content", t), n.setAttribute("data-micdrop", "meta"), document.head.appendChild(n));
310
+ let n = document.querySelector(`meta[name="${t}"]`);
311
+ n ? n.setAttribute("content", e) : (n = document.createElement("meta"), n.setAttribute("name", t), n.setAttribute("content", e), n.setAttribute("data-micdrop", "meta"), document.head.appendChild(n));
305
312
  }
306
313
  }
307
- _setCanonical(e) {
314
+ _setCanonical(t) {
308
315
  if (typeof document > "u") return;
309
- let t = document.querySelector('link[rel="canonical"]');
310
- t ? t.setAttribute("href", e) : (t = document.createElement("link"), t.setAttribute("rel", "canonical"), t.setAttribute("href", e), t.setAttribute("data-micdrop", "canonical"), document.head.appendChild(t));
316
+ let e = document.querySelector('link[rel="canonical"]');
317
+ e ? e.setAttribute("href", t) : (e = document.createElement("link"), e.setAttribute("rel", "canonical"), e.setAttribute("href", t), e.setAttribute("data-micdrop", "canonical"), document.head.appendChild(e));
311
318
  }
312
319
  _removeAllInjected() {
313
- typeof document > "u" || document.querySelectorAll("[data-micdrop]").forEach((e) => e.remove());
320
+ typeof document > "u" || document.querySelectorAll("[data-micdrop]").forEach((t) => t.remove());
314
321
  }
315
322
  _restoreOriginals() {
316
323
  if (!(typeof document > "u" || !this._originals)) {
317
324
  if (document.title = this._originals.title, this._originals.canonicalHref !== null) {
318
- const e = document.querySelector('link[rel="canonical"]');
319
- e && e.setAttribute("href", this._originals.canonicalHref);
325
+ const t = document.querySelector('link[rel="canonical"]');
326
+ t && t.setAttribute("href", this._originals.canonicalHref);
320
327
  }
321
328
  this._restoreMetaProperty("og:title", this._originals.ogTitle), this._restoreMetaProperty("og:description", this._originals.ogDescription), this._restoreMetaProperty("og:image", this._originals.ogImage), this._restoreMetaProperty("og:url", this._originals.ogUrl), this._restoreMetaProperty("og:type", this._originals.ogType), this._restoreMetaName("description", this._originals.metaDescription), this._originalsSaved = !1;
322
329
  }
323
330
  }
324
- _restoreMetaProperty(e, t) {
325
- const n = document.querySelector(`meta[property="${e}"]`);
326
- t !== null && n ? n.setAttribute("content", t) : t === null && n?.hasAttribute("data-micdrop") && n.remove();
331
+ _restoreMetaProperty(t, e) {
332
+ const n = document.querySelector(`meta[property="${t}"]`);
333
+ e !== null && n ? n.setAttribute("content", e) : e === null && n?.hasAttribute("data-micdrop") && n.remove();
327
334
  }
328
- _restoreMetaName(e, t) {
329
- const n = document.querySelector(`meta[name="${e}"]`);
330
- t !== null && n ? n.setAttribute("content", t) : t === null && n?.hasAttribute("data-micdrop") && n.remove();
335
+ _restoreMetaName(t, e) {
336
+ const n = document.querySelector(`meta[name="${t}"]`);
337
+ e !== null && n ? n.setAttribute("content", e) : e === null && n?.hasAttribute("data-micdrop") && n.remove();
331
338
  }
332
- _buildItemList(e) {
339
+ _buildItemList(t) {
333
340
  return {
334
341
  "@context": "https://schema.org",
335
342
  "@type": "ItemList",
336
- itemListElement: e.map((t, n) => {
337
- const s = t.slug || v(t.name);
343
+ itemListElement: t.map((e, n) => {
344
+ const s = e.slug || y(e.name);
338
345
  return {
339
346
  "@type": "ListItem",
340
347
  position: n + 1,
341
- url: `${this._baseUrl}?e=${t.id}-${s}`
348
+ url: `${this._baseUrl}?e=${e.id}-${s}`
342
349
  };
343
350
  })
344
351
  };
345
352
  }
346
- _buildEntityUrl(e, t, n) {
347
- const s = e === "event" ? "e" : e === "series" ? "s" : "c";
348
- return `${this._baseUrl}?${s}=${t}-${n}`;
353
+ _buildEntityUrl(t, e, n) {
354
+ const s = t === "event" ? "e" : t === "series" ? "s" : "c";
355
+ return `${this._baseUrl}?${s}=${e}-${n}`;
349
356
  }
350
357
  // ---------------------------------------------------------------------------
351
358
  // Public API
@@ -354,10 +361,10 @@ const f = class f {
354
361
  * Called when events finish loading from the API.
355
362
  * Injects an ItemList JSON-LD for the listing. Does not modify OG/canonical/title.
356
363
  */
357
- onEventsLoaded(e, t) {
364
+ onEventsLoaded(t, e) {
358
365
  if (typeof document > "u" || this._state === "destroyed") return;
359
- t && (this._venueName = t.name || this._venueName, this._venueAddress = t.address || t.googleLocationNameCache || this._venueAddress, t.timeZone && (this._venueTimeZone = t.timeZone)), this._events = e;
360
- const n = this._buildItemList(e);
366
+ e && (this._venueName = e.name || this._venueName, this._venueAddress = e.address || e.googleLocationNameCache || this._venueAddress, e.timeZone && (this._venueTimeZone = e.timeZone)), this._events = t;
367
+ const n = this._buildItemList(t);
361
368
  this._injectJsonLd(n), this._state = "listing";
362
369
  }
363
370
  /**
@@ -365,26 +372,26 @@ const f = class f {
365
372
  * Replaces ItemList JSON-LD with entity-specific JSON-LD and updates
366
373
  * all head tags (canonical, OG, meta description, title).
367
374
  */
368
- onEntitySelected(e, t, n) {
375
+ onEntitySelected(t, e, n) {
369
376
  if (typeof document > "u" || this._state === "destroyed") return;
370
377
  this._saveOriginals(), n && (this._venueName = n.name || this._venueName, this._venueAddress = n.address || n.googleLocationNameCache || this._venueAddress, n.timeZone && (this._venueTimeZone = n.timeZone));
371
- let s = null, r = "", o = "", a = "", c = "";
372
- if (e === "event") {
373
- const l = t.slug || v(t.name || "");
374
- c = this._buildEntityUrl("event", t.id || t.eventID || "", l), s = L({
375
- event: t,
378
+ let s = null, r = "", o = "", l = "", c = "";
379
+ if (t === "event") {
380
+ const a = e.slug || y(e.name || "");
381
+ c = this._buildEntityUrl("event", e.id || e.eventID || "", a), s = O({
382
+ event: e,
376
383
  venue: {
377
384
  name: this._venueName,
378
385
  googleLocationNameCache: this._venueAddress
379
386
  },
380
387
  venueTimeZone: this._venueTimeZone,
381
388
  eventUrl: c
382
- }), r = t.name || "", o = t.description || t.eventSummary || "", a = t.image || t.coverImage || t.ShowImage || "";
383
- } else if (e === "series") {
384
- const l = t.slug || v(t.title || "");
385
- c = this._buildEntityUrl("series", t.id || "", l), s = D({
389
+ }), r = e.name || "", o = e.description || e.eventSummary || "", l = e.image || e.coverImage || e.ShowImage || "";
390
+ } else if (t === "series") {
391
+ const a = e.slug || y(e.title || "");
392
+ c = this._buildEntityUrl("series", e.id || "", a), s = D({
386
393
  series: {
387
- ...t,
394
+ ...e,
388
395
  venue: {
389
396
  name: this._venueName,
390
397
  googleLocationNameCache: this._venueAddress
@@ -392,16 +399,16 @@ const f = class f {
392
399
  timeZone: this._venueTimeZone
393
400
  },
394
401
  baseEventUrl: c
395
- }), r = t.title || "", o = t.description || t.eventSummary || "", a = t.image || "";
396
- } else if (e === "collection") {
397
- const l = t.slug || v(t.collectionTitle || "");
398
- c = this._buildEntityUrl("collection", t.id || "", l), s = U({
399
- collection: t,
402
+ }), r = e.title || "", o = e.description || e.eventSummary || "", l = e.image || "";
403
+ } else if (t === "collection") {
404
+ const a = e.slug || y(e.collectionTitle || "");
405
+ c = this._buildEntityUrl("collection", e.id || "", a), s = C({
406
+ collection: e,
400
407
  baseEventUrl: c,
401
408
  defaultTimeZone: this._venueTimeZone
402
- }), r = t.collectionTitle || "", o = t.description || t.summary || "", a = t.coverImage || "";
409
+ }), r = e.collectionTitle || "", o = e.description || e.summary || "", l = e.coverImage || "";
403
410
  }
404
- s && this._injectJsonLd(s), c && this._setCanonical(c), r && this._setMeta("og:title", r), o && this._setMeta("og:description", o), a && this._setMeta("og:image", a), c && this._setMeta("og:url", c), this._setMeta("og:type", "website"), this._setMeta("twitter:card", "summary_large_image"), o && this._setMeta("description", o), r && (document.title = `${r} | ${this._venueName}`), this._state = "entity";
411
+ s && this._injectJsonLd(s), c && this._setCanonical(c), r && this._setMeta("og:title", r), o && this._setMeta("og:description", o), l && this._setMeta("og:image", l), c && this._setMeta("og:url", c), this._setMeta("og:type", "website"), this._setMeta("twitter:card", "summary_large_image"), o && this._setMeta("description", o), r && (document.title = `${r} | ${this._venueName}`), this._state = "entity";
405
412
  }
406
413
  /**
407
414
  * Called when the user navigates back to the event listing.
@@ -410,8 +417,8 @@ const f = class f {
410
417
  onBackToListing() {
411
418
  if (!(typeof document > "u") && this._state !== "destroyed") {
412
419
  if (this._restoreOriginals(), this._removeAllInjected(), this._events.length > 0) {
413
- const e = this._buildItemList(this._events);
414
- this._injectJsonLd(e);
420
+ const t = this._buildItemList(this._events);
421
+ this._injectJsonLd(t);
415
422
  }
416
423
  this._saveOriginals(), this._state = "listing";
417
424
  }
@@ -425,17 +432,18 @@ const f = class f {
425
432
  }
426
433
  };
427
434
  f._activeInstance = null;
428
- let A = f;
435
+ let S = f;
429
436
  export {
430
- A as HostSeoController,
431
- U as buildCollectionJsonLd,
432
- L as buildEventJsonLd,
433
- P as buildOffers,
437
+ S as HostSeoController,
438
+ C as buildCollectionJsonLd,
439
+ O as buildEventJsonLd,
440
+ L as buildOffers,
434
441
  $ as buildPerformers,
442
+ N as buildPostalAddress,
435
443
  D as buildSeriesJsonLd,
436
- _ as formatDateTimeWithOffset,
437
- E as getEventStatus,
438
- b as getTicketAvailability,
439
- T as parseAddressToPostal
444
+ v as formatDateTimeWithOffset,
445
+ T as getEventStatus,
446
+ _ as getTicketAvailability,
447
+ I as parseAddressToPostal
440
448
  };
441
449
  //# sourceMappingURL=seo.mjs.map