@ticketlayer/elements 0.2.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.
Files changed (195) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +55 -0
  3. package/dist/cjs/index-DfzcrE9-.js +3598 -0
  4. package/dist/cjs/index.cjs.js +16 -0
  5. package/dist/cjs/loader.cjs.js +12 -0
  6. package/dist/cjs/order-summary-ZMkJ5bez.js +116 -0
  7. package/dist/cjs/sdk-connector-ClDF3013.js +108 -0
  8. package/dist/cjs/ticketlayer-elements.cjs.js +24 -0
  9. package/dist/cjs/tl-buy-modal.cjs.entry.js +127 -0
  10. package/dist/cjs/tl-buy-tickets-button.cjs.entry.js +131 -0
  11. package/dist/cjs/tl-buy-tickets-wrapper.cjs.entry.js +58 -0
  12. package/dist/cjs/tl-cart-badge.cjs.entry.js +109 -0
  13. package/dist/cjs/tl-cart-drawer.cjs.entry.js +67 -0
  14. package/dist/cjs/tl-cart.cjs.entry.js +148 -0
  15. package/dist/cjs/tl-checkout-wrapper.cjs.entry.js +57 -0
  16. package/dist/cjs/tl-event-card.cjs.entry.js +140 -0
  17. package/dist/cjs/tl-event-list.cjs.entry.js +80 -0
  18. package/dist/cjs/tl-login.cjs.entry.js +184 -0
  19. package/dist/cjs/tl-my-orders.cjs.entry.js +123 -0
  20. package/dist/cjs/tl-occurrence-selector_2.cjs.entry.js +754 -0
  21. package/dist/cjs/tl-order-confirmation.cjs.entry.js +146 -0
  22. package/dist/cjs/tl-order-tickets_2.cjs.entry.js +3198 -0
  23. package/dist/cjs/tl-promo-code.cjs.entry.js +75 -0
  24. package/dist/cjs/tl-seat-map.cjs.entry.js +147 -0
  25. package/dist/collection/collection-manifest.json +29 -0
  26. package/dist/collection/components/tl-buy-modal/tl-buy-modal.css +264 -0
  27. package/dist/collection/components/tl-buy-modal/tl-buy-modal.js +249 -0
  28. package/dist/collection/components/tl-buy-tickets-button/tl-buy-tickets-button.css +120 -0
  29. package/dist/collection/components/tl-buy-tickets-button/tl-buy-tickets-button.js +412 -0
  30. package/dist/collection/components/tl-buy-tickets-wrapper/tl-buy-tickets-wrapper.css +23 -0
  31. package/dist/collection/components/tl-buy-tickets-wrapper/tl-buy-tickets-wrapper.js +192 -0
  32. package/dist/collection/components/tl-cart/tl-cart.css +251 -0
  33. package/dist/collection/components/tl-cart/tl-cart.js +314 -0
  34. package/dist/collection/components/tl-cart-badge/tl-cart-badge.css +138 -0
  35. package/dist/collection/components/tl-cart-badge/tl-cart-badge.js +217 -0
  36. package/dist/collection/components/tl-cart-drawer/tl-cart-drawer.css +98 -0
  37. package/dist/collection/components/tl-cart-drawer/tl-cart-drawer.js +185 -0
  38. package/dist/collection/components/tl-checkout-wrapper/tl-checkout-wrapper.css +23 -0
  39. package/dist/collection/components/tl-checkout-wrapper/tl-checkout-wrapper.js +148 -0
  40. package/dist/collection/components/tl-event-card/event-card-adapter.js +23 -0
  41. package/dist/collection/components/tl-event-card/tl-event-card.css +175 -0
  42. package/dist/collection/components/tl-event-card/tl-event-card.js +205 -0
  43. package/dist/collection/components/tl-event-list/tl-event-list.css +134 -0
  44. package/dist/collection/components/tl-event-list/tl-event-list.js +171 -0
  45. package/dist/collection/components/tl-login/tl-login.css +133 -0
  46. package/dist/collection/components/tl-login/tl-login.js +309 -0
  47. package/dist/collection/components/tl-my-orders/tl-my-orders.css +204 -0
  48. package/dist/collection/components/tl-my-orders/tl-my-orders.js +221 -0
  49. package/dist/collection/components/tl-occurrence-selector/tl-occurrence-selector.css +658 -0
  50. package/dist/collection/components/tl-occurrence-selector/tl-occurrence-selector.js +707 -0
  51. package/dist/collection/components/tl-order-confirmation/tl-order-confirmation.css +176 -0
  52. package/dist/collection/components/tl-order-confirmation/tl-order-confirmation.js +298 -0
  53. package/dist/collection/components/tl-order-tickets/tl-order-tickets.css +30 -0
  54. package/dist/collection/components/tl-order-tickets/tl-order-tickets.js +122 -0
  55. package/dist/collection/components/tl-promo-code/tl-promo-code.css +106 -0
  56. package/dist/collection/components/tl-promo-code/tl-promo-code.js +181 -0
  57. package/dist/collection/components/tl-seat-map/tl-seat-map.css +85 -0
  58. package/dist/collection/components/tl-seat-map/tl-seat-map.js +366 -0
  59. package/dist/collection/components/tl-ticket/tl-ticket.css +90 -0
  60. package/dist/collection/components/tl-ticket/tl-ticket.js +129 -0
  61. package/dist/collection/components/tl-ticket-selector/tl-ticket-selector.css +205 -0
  62. package/dist/collection/components/tl-ticket-selector/tl-ticket-selector.js +332 -0
  63. package/dist/collection/index.js +10 -0
  64. package/dist/collection/utils/order-summary.js +101 -0
  65. package/dist/collection/utils/sdk-connector.js +100 -0
  66. package/dist/collection/utils/testing/mock-sdk.js +95 -0
  67. package/dist/components/index.d.ts +35 -0
  68. package/dist/components/index.js +1 -0
  69. package/dist/components/order-summary.js +1 -0
  70. package/dist/components/sdk-connector.js +1 -0
  71. package/dist/components/tl-buy-modal.d.ts +11 -0
  72. package/dist/components/tl-buy-modal.js +1 -0
  73. package/dist/components/tl-buy-tickets-button.d.ts +11 -0
  74. package/dist/components/tl-buy-tickets-button.js +1 -0
  75. package/dist/components/tl-buy-tickets-wrapper.d.ts +11 -0
  76. package/dist/components/tl-buy-tickets-wrapper.js +1 -0
  77. package/dist/components/tl-buy-tickets-wrapper2.js +1 -0
  78. package/dist/components/tl-cart-badge.d.ts +11 -0
  79. package/dist/components/tl-cart-badge.js +1 -0
  80. package/dist/components/tl-cart-drawer.d.ts +11 -0
  81. package/dist/components/tl-cart-drawer.js +1 -0
  82. package/dist/components/tl-cart.d.ts +11 -0
  83. package/dist/components/tl-cart.js +1 -0
  84. package/dist/components/tl-cart2.js +1 -0
  85. package/dist/components/tl-checkout-wrapper.d.ts +11 -0
  86. package/dist/components/tl-checkout-wrapper.js +1 -0
  87. package/dist/components/tl-checkout-wrapper2.js +1 -0
  88. package/dist/components/tl-event-card.d.ts +11 -0
  89. package/dist/components/tl-event-card.js +1 -0
  90. package/dist/components/tl-event-card2.js +1 -0
  91. package/dist/components/tl-event-list.d.ts +11 -0
  92. package/dist/components/tl-event-list.js +1 -0
  93. package/dist/components/tl-login.d.ts +11 -0
  94. package/dist/components/tl-login.js +1 -0
  95. package/dist/components/tl-login2.js +1 -0
  96. package/dist/components/tl-my-orders.d.ts +11 -0
  97. package/dist/components/tl-my-orders.js +1 -0
  98. package/dist/components/tl-occurrence-selector.d.ts +11 -0
  99. package/dist/components/tl-occurrence-selector.js +1 -0
  100. package/dist/components/tl-occurrence-selector2.js +1 -0
  101. package/dist/components/tl-order-confirmation.d.ts +11 -0
  102. package/dist/components/tl-order-confirmation.js +1 -0
  103. package/dist/components/tl-order-tickets.d.ts +11 -0
  104. package/dist/components/tl-order-tickets.js +1 -0
  105. package/dist/components/tl-order-tickets2.js +1 -0
  106. package/dist/components/tl-promo-code.d.ts +11 -0
  107. package/dist/components/tl-promo-code.js +1 -0
  108. package/dist/components/tl-seat-map.d.ts +11 -0
  109. package/dist/components/tl-seat-map.js +1 -0
  110. package/dist/components/tl-ticket-selector.d.ts +11 -0
  111. package/dist/components/tl-ticket-selector.js +1 -0
  112. package/dist/components/tl-ticket-selector2.js +1 -0
  113. package/dist/components/tl-ticket.d.ts +11 -0
  114. package/dist/components/tl-ticket.js +1 -0
  115. package/dist/components/tl-ticket2.js +1 -0
  116. package/dist/elements.docs.d.ts +454 -0
  117. package/dist/elements.docs.json +3008 -0
  118. package/dist/esm/index-Ba-RZTFI.js +3588 -0
  119. package/dist/esm/index.js +4 -0
  120. package/dist/esm/loader.js +10 -0
  121. package/dist/esm/order-summary-BGekdjN9.js +103 -0
  122. package/dist/esm/sdk-connector-CqhvfyKV.js +102 -0
  123. package/dist/esm/ticketlayer-elements.js +20 -0
  124. package/dist/esm/tl-buy-modal.entry.js +125 -0
  125. package/dist/esm/tl-buy-tickets-button.entry.js +129 -0
  126. package/dist/esm/tl-buy-tickets-wrapper.entry.js +56 -0
  127. package/dist/esm/tl-cart-badge.entry.js +107 -0
  128. package/dist/esm/tl-cart-drawer.entry.js +65 -0
  129. package/dist/esm/tl-cart.entry.js +146 -0
  130. package/dist/esm/tl-checkout-wrapper.entry.js +55 -0
  131. package/dist/esm/tl-event-card.entry.js +138 -0
  132. package/dist/esm/tl-event-list.entry.js +78 -0
  133. package/dist/esm/tl-login.entry.js +182 -0
  134. package/dist/esm/tl-my-orders.entry.js +121 -0
  135. package/dist/esm/tl-occurrence-selector_2.entry.js +751 -0
  136. package/dist/esm/tl-order-confirmation.entry.js +144 -0
  137. package/dist/esm/tl-order-tickets_2.entry.js +3195 -0
  138. package/dist/esm/tl-promo-code.entry.js +73 -0
  139. package/dist/esm/tl-seat-map.entry.js +145 -0
  140. package/dist/index.cjs.js +1 -0
  141. package/dist/index.js +1 -0
  142. package/dist/ticketlayer-elements/index.esm.js +1 -0
  143. package/dist/ticketlayer-elements/p-0291df4c.entry.js +1 -0
  144. package/dist/ticketlayer-elements/p-10f01a1f.entry.js +1 -0
  145. package/dist/ticketlayer-elements/p-11273f8f.entry.js +1 -0
  146. package/dist/ticketlayer-elements/p-340ab4f5.entry.js +1 -0
  147. package/dist/ticketlayer-elements/p-41d22d7c.entry.js +1 -0
  148. package/dist/ticketlayer-elements/p-82752e3b.entry.js +1 -0
  149. package/dist/ticketlayer-elements/p-976770f3.entry.js +1 -0
  150. package/dist/ticketlayer-elements/p-9a903ff6.entry.js +1 -0
  151. package/dist/ticketlayer-elements/p-9c9072c8.entry.js +1 -0
  152. package/dist/ticketlayer-elements/p-9d8163d6.entry.js +1 -0
  153. package/dist/ticketlayer-elements/p-BGekdjN9.js +1 -0
  154. package/dist/ticketlayer-elements/p-Ba-RZTFI.js +2 -0
  155. package/dist/ticketlayer-elements/p-CqhvfyKV.js +1 -0
  156. package/dist/ticketlayer-elements/p-a5c90b68.entry.js +1 -0
  157. package/dist/ticketlayer-elements/p-b6d479ad.entry.js +1 -0
  158. package/dist/ticketlayer-elements/p-dd43f015.entry.js +1 -0
  159. package/dist/ticketlayer-elements/p-eb640760.entry.js +1 -0
  160. package/dist/ticketlayer-elements/p-ee3aa227.entry.js +1 -0
  161. package/dist/ticketlayer-elements/p-fb9444c4.entry.js +1 -0
  162. package/dist/ticketlayer-elements/ticketlayer-elements.css +1 -0
  163. package/dist/ticketlayer-elements/ticketlayer-elements.esm.js +1 -0
  164. package/dist/types/components/tl-buy-modal/tl-buy-modal.d.ts +54 -0
  165. package/dist/types/components/tl-buy-tickets-button/tl-buy-tickets-button.d.ts +61 -0
  166. package/dist/types/components/tl-buy-tickets-wrapper/tl-buy-tickets-wrapper.d.ts +52 -0
  167. package/dist/types/components/tl-cart/tl-cart.d.ts +80 -0
  168. package/dist/types/components/tl-cart-badge/tl-cart-badge.d.ts +36 -0
  169. package/dist/types/components/tl-cart-drawer/tl-cart-drawer.d.ts +35 -0
  170. package/dist/types/components/tl-checkout-wrapper/tl-checkout-wrapper.d.ts +39 -0
  171. package/dist/types/components/tl-event-card/event-card-adapter.d.ts +23 -0
  172. package/dist/types/components/tl-event-card/tl-event-card.d.ts +55 -0
  173. package/dist/types/components/tl-event-list/tl-event-list.d.ts +30 -0
  174. package/dist/types/components/tl-login/tl-login.d.ts +59 -0
  175. package/dist/types/components/tl-my-orders/tl-my-orders.d.ts +39 -0
  176. package/dist/types/components/tl-occurrence-selector/tl-occurrence-selector.d.ts +208 -0
  177. package/dist/types/components/tl-order-confirmation/tl-order-confirmation.d.ts +54 -0
  178. package/dist/types/components/tl-order-tickets/tl-order-tickets.d.ts +21 -0
  179. package/dist/types/components/tl-promo-code/tl-promo-code.d.ts +39 -0
  180. package/dist/types/components/tl-seat-map/tl-seat-map.d.ts +68 -0
  181. package/dist/types/components/tl-ticket/tl-ticket.d.ts +28 -0
  182. package/dist/types/components/tl-ticket-selector/tl-ticket-selector.d.ts +78 -0
  183. package/dist/types/components.d.ts +1629 -0
  184. package/dist/types/index.d.ts +14 -0
  185. package/dist/types/stencil-public-runtime.d.ts +1839 -0
  186. package/dist/types/utils/order-summary.d.ts +67 -0
  187. package/dist/types/utils/sdk-connector.d.ts +113 -0
  188. package/dist/types/utils/testing/mock-sdk.d.ts +36 -0
  189. package/elements.catalogue.json +968 -0
  190. package/loader/cdn.js +1 -0
  191. package/loader/index.cjs.js +1 -0
  192. package/loader/index.d.ts +24 -0
  193. package/loader/index.es2017.js +1 -0
  194. package/loader/index.js +2 -0
  195. package/package.json +101 -0
@@ -0,0 +1,3008 @@
1
+ {
2
+ "timestamp": "2026-09-15T02:29:24",
3
+ "compiler": {
4
+ "name": "@stencil/core",
5
+ "version": "4.41.1",
6
+ "typescriptVersion": "5.8.3"
7
+ },
8
+ "components": [
9
+ {
10
+ "filePath": "src/components/tl-buy-modal/tl-buy-modal.tsx",
11
+ "encapsulation": "shadow",
12
+ "tag": "tl-buy-modal",
13
+ "readme": "# tl-buy-modal\n\n\n",
14
+ "docs": "",
15
+ "docsTags": [
16
+ {
17
+ "name": "component",
18
+ "text": "tl-buy-modal\n\nThe in-page buy-tickets funnel: occurrence → ticket selection → added.\nA NATIVE Elements overlay (no iframe) - it simply composes the existing\n`tl-occurrence-selector` and `tl-ticket-selector`, which already bind to the\nSDK and add to the cart. Because it's pure browse/cart (zero PCI surface), it\nrenders in-page identically on HBO and on any third-party embed bound to\n`window.Ticketlayer`. Only the *checkout* step crosses into an iframe.\n\nIt is not placed in markup by hosts: the SDK's buy-modal manager mounts it on\ndemand when something emits `ui:event-modal-requested` (e.g. a\n`tl-buy-tickets-button` or a calendar date click), and removes it on close."
19
+ },
20
+ {
21
+ "name": "event",
22
+ "text": "tlClose - user dismissed the modal (keep browsing)"
23
+ },
24
+ {
25
+ "name": "event",
26
+ "text": "tlCheckout - user chose to proceed to checkout (manager hands off to\n the checkout intent: iframe on embeds, /checkout on HBO)"
27
+ },
28
+ {
29
+ "name": "event",
30
+ "text": "tlError - the event couldn't be loaded"
31
+ }
32
+ ],
33
+ "usage": {},
34
+ "props": [
35
+ {
36
+ "name": "eventId",
37
+ "type": "string",
38
+ "complexType": {
39
+ "original": "string",
40
+ "resolved": "string",
41
+ "references": {}
42
+ },
43
+ "mutable": false,
44
+ "attr": "event-id",
45
+ "reflectToAttr": false,
46
+ "docs": "Event to sell tickets for.",
47
+ "docsTags": [],
48
+ "values": [
49
+ {
50
+ "type": "string"
51
+ }
52
+ ],
53
+ "optional": false,
54
+ "required": true,
55
+ "getter": false,
56
+ "setter": false
57
+ },
58
+ {
59
+ "name": "occurrenceId",
60
+ "type": "string | undefined",
61
+ "complexType": {
62
+ "original": "string",
63
+ "resolved": "string | undefined",
64
+ "references": {}
65
+ },
66
+ "mutable": false,
67
+ "attr": "occurrence-id",
68
+ "reflectToAttr": false,
69
+ "docs": "Optionally open straight to ticket selection for this occurrence.",
70
+ "docsTags": [],
71
+ "values": [
72
+ {
73
+ "type": "string"
74
+ },
75
+ {
76
+ "type": "undefined"
77
+ }
78
+ ],
79
+ "optional": true,
80
+ "required": false,
81
+ "getter": false,
82
+ "setter": false
83
+ }
84
+ ],
85
+ "methods": [],
86
+ "events": [
87
+ {
88
+ "event": "tlCheckout",
89
+ "detail": "void",
90
+ "bubbles": true,
91
+ "complexType": {
92
+ "original": "void",
93
+ "resolved": "void",
94
+ "references": {}
95
+ },
96
+ "cancelable": true,
97
+ "composed": true,
98
+ "docs": "",
99
+ "docsTags": []
100
+ },
101
+ {
102
+ "event": "tlClose",
103
+ "detail": "void",
104
+ "bubbles": true,
105
+ "complexType": {
106
+ "original": "void",
107
+ "resolved": "void",
108
+ "references": {}
109
+ },
110
+ "cancelable": true,
111
+ "composed": true,
112
+ "docs": "",
113
+ "docsTags": []
114
+ },
115
+ {
116
+ "event": "tlError",
117
+ "detail": "{ message: string; }",
118
+ "bubbles": true,
119
+ "complexType": {
120
+ "original": "{ message: string }",
121
+ "resolved": "{ message: string; }",
122
+ "references": {}
123
+ },
124
+ "cancelable": true,
125
+ "composed": true,
126
+ "docs": "",
127
+ "docsTags": []
128
+ }
129
+ ],
130
+ "listeners": [],
131
+ "styles": [],
132
+ "slots": [],
133
+ "parts": [],
134
+ "dependents": [],
135
+ "dependencies": [
136
+ "tl-occurrence-selector",
137
+ "tl-ticket-selector"
138
+ ],
139
+ "dependencyGraph": {
140
+ "tl-buy-modal": [
141
+ "tl-occurrence-selector",
142
+ "tl-ticket-selector"
143
+ ]
144
+ }
145
+ },
146
+ {
147
+ "filePath": "src/components/tl-buy-tickets-button/tl-buy-tickets-button.tsx",
148
+ "encapsulation": "shadow",
149
+ "tag": "tl-buy-tickets-button",
150
+ "readme": "# tl-buy-tickets-button\n\n\n",
151
+ "docs": "",
152
+ "docsTags": [],
153
+ "usage": {},
154
+ "props": [
155
+ {
156
+ "name": "currency",
157
+ "type": "string",
158
+ "complexType": {
159
+ "original": "string",
160
+ "resolved": "string",
161
+ "references": {}
162
+ },
163
+ "mutable": false,
164
+ "attr": "currency",
165
+ "reflectToAttr": false,
166
+ "docs": "Currency code for price formatting",
167
+ "docsTags": [
168
+ {
169
+ "name": "default",
170
+ "text": "'GBP'"
171
+ }
172
+ ],
173
+ "default": "'GBP'",
174
+ "values": [
175
+ {
176
+ "type": "string"
177
+ }
178
+ ],
179
+ "optional": false,
180
+ "required": false,
181
+ "getter": false,
182
+ "setter": false
183
+ },
184
+ {
185
+ "name": "disabled",
186
+ "type": "boolean",
187
+ "complexType": {
188
+ "original": "boolean",
189
+ "resolved": "boolean",
190
+ "references": {}
191
+ },
192
+ "mutable": false,
193
+ "attr": "disabled",
194
+ "reflectToAttr": false,
195
+ "docs": "Disabled state",
196
+ "docsTags": [
197
+ {
198
+ "name": "default",
199
+ "text": "false"
200
+ }
201
+ ],
202
+ "default": "false",
203
+ "values": [
204
+ {
205
+ "type": "boolean"
206
+ }
207
+ ],
208
+ "optional": false,
209
+ "required": false,
210
+ "getter": false,
211
+ "setter": false
212
+ },
213
+ {
214
+ "name": "eventId",
215
+ "type": "string",
216
+ "complexType": {
217
+ "original": "string",
218
+ "resolved": "string",
219
+ "references": {}
220
+ },
221
+ "mutable": false,
222
+ "attr": "event-id",
223
+ "reflectToAttr": false,
224
+ "docs": "Event ID to purchase tickets for",
225
+ "docsTags": [],
226
+ "values": [
227
+ {
228
+ "type": "string"
229
+ }
230
+ ],
231
+ "optional": false,
232
+ "required": true,
233
+ "getter": false,
234
+ "setter": false
235
+ },
236
+ {
237
+ "name": "fullWidth",
238
+ "type": "boolean",
239
+ "complexType": {
240
+ "original": "boolean",
241
+ "resolved": "boolean",
242
+ "references": {}
243
+ },
244
+ "mutable": false,
245
+ "attr": "full-width",
246
+ "reflectToAttr": false,
247
+ "docs": "Full width button",
248
+ "docsTags": [
249
+ {
250
+ "name": "default",
251
+ "text": "false"
252
+ }
253
+ ],
254
+ "default": "false",
255
+ "values": [
256
+ {
257
+ "type": "boolean"
258
+ }
259
+ ],
260
+ "optional": false,
261
+ "required": false,
262
+ "getter": false,
263
+ "setter": false
264
+ },
265
+ {
266
+ "name": "label",
267
+ "type": "string | undefined",
268
+ "complexType": {
269
+ "original": "string",
270
+ "resolved": "string | undefined",
271
+ "references": {}
272
+ },
273
+ "mutable": false,
274
+ "attr": "label",
275
+ "reflectToAttr": false,
276
+ "docs": "Button label override (default depends on state)",
277
+ "docsTags": [],
278
+ "values": [
279
+ {
280
+ "type": "string"
281
+ },
282
+ {
283
+ "type": "undefined"
284
+ }
285
+ ],
286
+ "optional": true,
287
+ "required": false,
288
+ "getter": false,
289
+ "setter": false
290
+ },
291
+ {
292
+ "name": "occurrenceId",
293
+ "type": "string | undefined",
294
+ "complexType": {
295
+ "original": "string",
296
+ "resolved": "string | undefined",
297
+ "references": {}
298
+ },
299
+ "mutable": false,
300
+ "attr": "occurrence-id",
301
+ "reflectToAttr": false,
302
+ "docs": "Optional pre-selected occurrence ID",
303
+ "docsTags": [],
304
+ "values": [
305
+ {
306
+ "type": "string"
307
+ },
308
+ {
309
+ "type": "undefined"
310
+ }
311
+ ],
312
+ "optional": true,
313
+ "required": false,
314
+ "getter": false,
315
+ "setter": false
316
+ },
317
+ {
318
+ "name": "price",
319
+ "type": "number | undefined",
320
+ "complexType": {
321
+ "original": "number",
322
+ "resolved": "number | undefined",
323
+ "references": {}
324
+ },
325
+ "mutable": false,
326
+ "attr": "price",
327
+ "reflectToAttr": false,
328
+ "docs": "Price to display (in minor units e.g. pence)",
329
+ "docsTags": [],
330
+ "values": [
331
+ {
332
+ "type": "number"
333
+ },
334
+ {
335
+ "type": "undefined"
336
+ }
337
+ ],
338
+ "optional": true,
339
+ "required": false,
340
+ "getter": false,
341
+ "setter": false
342
+ },
343
+ {
344
+ "name": "pricePrefix",
345
+ "type": "string",
346
+ "complexType": {
347
+ "original": "string",
348
+ "resolved": "string",
349
+ "references": {}
350
+ },
351
+ "mutable": false,
352
+ "attr": "price-prefix",
353
+ "reflectToAttr": false,
354
+ "docs": "Show price prefix text",
355
+ "docsTags": [
356
+ {
357
+ "name": "default",
358
+ "text": "'From'"
359
+ }
360
+ ],
361
+ "default": "'From'",
362
+ "values": [
363
+ {
364
+ "type": "string"
365
+ }
366
+ ],
367
+ "optional": false,
368
+ "required": false,
369
+ "getter": false,
370
+ "setter": false
371
+ },
372
+ {
373
+ "name": "size",
374
+ "type": "\"lg\" | \"md\" | \"sm\"",
375
+ "complexType": {
376
+ "original": "ButtonSize",
377
+ "resolved": "\"lg\" | \"md\" | \"sm\"",
378
+ "references": {
379
+ "ButtonSize": {
380
+ "location": "local",
381
+ "path": "/home/runner/work/live-elements/live-elements/src/components/tl-buy-tickets-button/tl-buy-tickets-button.tsx",
382
+ "id": "src/components/tl-buy-tickets-button/tl-buy-tickets-button.tsx::ButtonSize"
383
+ }
384
+ }
385
+ },
386
+ "mutable": false,
387
+ "attr": "size",
388
+ "reflectToAttr": false,
389
+ "docs": "Button size",
390
+ "docsTags": [
391
+ {
392
+ "name": "default",
393
+ "text": "'md'"
394
+ }
395
+ ],
396
+ "default": "'md'",
397
+ "values": [
398
+ {
399
+ "value": "lg",
400
+ "type": "string"
401
+ },
402
+ {
403
+ "value": "md",
404
+ "type": "string"
405
+ },
406
+ {
407
+ "value": "sm",
408
+ "type": "string"
409
+ }
410
+ ],
411
+ "optional": false,
412
+ "required": false,
413
+ "getter": false,
414
+ "setter": false
415
+ },
416
+ {
417
+ "name": "state",
418
+ "type": "\"available\" | \"comingSoon\" | \"soldOut\" | \"waitlist\"",
419
+ "complexType": {
420
+ "original": "ButtonState",
421
+ "resolved": "\"available\" | \"comingSoon\" | \"soldOut\" | \"waitlist\"",
422
+ "references": {
423
+ "ButtonState": {
424
+ "location": "local",
425
+ "path": "/home/runner/work/live-elements/live-elements/src/components/tl-buy-tickets-button/tl-buy-tickets-button.tsx",
426
+ "id": "src/components/tl-buy-tickets-button/tl-buy-tickets-button.tsx::ButtonState"
427
+ }
428
+ }
429
+ },
430
+ "mutable": false,
431
+ "attr": "state",
432
+ "reflectToAttr": false,
433
+ "docs": "Button state - determines colour, label, and icon",
434
+ "docsTags": [
435
+ {
436
+ "name": "default",
437
+ "text": "'available'"
438
+ }
439
+ ],
440
+ "default": "'available'",
441
+ "values": [
442
+ {
443
+ "value": "available",
444
+ "type": "string"
445
+ },
446
+ {
447
+ "value": "comingSoon",
448
+ "type": "string"
449
+ },
450
+ {
451
+ "value": "soldOut",
452
+ "type": "string"
453
+ },
454
+ {
455
+ "value": "waitlist",
456
+ "type": "string"
457
+ }
458
+ ],
459
+ "optional": false,
460
+ "required": false,
461
+ "getter": false,
462
+ "setter": false
463
+ },
464
+ {
465
+ "name": "variant",
466
+ "type": "\"outline\" | \"primary\" | \"secondary\"",
467
+ "complexType": {
468
+ "original": "ButtonVariant",
469
+ "resolved": "\"outline\" | \"primary\" | \"secondary\"",
470
+ "references": {
471
+ "ButtonVariant": {
472
+ "location": "local",
473
+ "path": "/home/runner/work/live-elements/live-elements/src/components/tl-buy-tickets-button/tl-buy-tickets-button.tsx",
474
+ "id": "src/components/tl-buy-tickets-button/tl-buy-tickets-button.tsx::ButtonVariant"
475
+ }
476
+ }
477
+ },
478
+ "mutable": false,
479
+ "attr": "variant",
480
+ "reflectToAttr": false,
481
+ "docs": "Button variant",
482
+ "docsTags": [
483
+ {
484
+ "name": "default",
485
+ "text": "'primary'"
486
+ }
487
+ ],
488
+ "default": "'primary'",
489
+ "values": [
490
+ {
491
+ "value": "outline",
492
+ "type": "string"
493
+ },
494
+ {
495
+ "value": "primary",
496
+ "type": "string"
497
+ },
498
+ {
499
+ "value": "secondary",
500
+ "type": "string"
501
+ }
502
+ ],
503
+ "optional": false,
504
+ "required": false,
505
+ "getter": false,
506
+ "setter": false
507
+ }
508
+ ],
509
+ "methods": [],
510
+ "events": [
511
+ {
512
+ "event": "tlClick",
513
+ "detail": "{ eventId: string; occurrenceId?: string | undefined; }",
514
+ "bubbles": true,
515
+ "complexType": {
516
+ "original": "{ eventId: string; occurrenceId?: string }",
517
+ "resolved": "{ eventId: string; occurrenceId?: string | undefined; }",
518
+ "references": {}
519
+ },
520
+ "cancelable": true,
521
+ "composed": true,
522
+ "docs": "Emitted when button is clicked (before modal opens)",
523
+ "docsTags": []
524
+ }
525
+ ],
526
+ "listeners": [],
527
+ "styles": [],
528
+ "slots": [],
529
+ "parts": [],
530
+ "dependents": [],
531
+ "dependencies": [],
532
+ "dependencyGraph": {}
533
+ },
534
+ {
535
+ "filePath": "src/components/tl-buy-tickets-wrapper/tl-buy-tickets-wrapper.tsx",
536
+ "encapsulation": "none",
537
+ "tag": "tl-buy-tickets-wrapper",
538
+ "readme": "# tl-buy-tickets-wrapper\n\n\n",
539
+ "docs": "",
540
+ "docsTags": [
541
+ {
542
+ "name": "component",
543
+ "text": "tl-buy-tickets-wrapper\n\nWraps any content and opens the Ticketlayer modal when clicked.\nUses the SDK's modal manager which handles the iframe overlay."
544
+ },
545
+ {
546
+ "name": "slot",
547
+ "text": "- Content to display (typically a button)"
548
+ },
549
+ {
550
+ "name": "example",
551
+ "text": "<tl-buy-tickets-wrapper event-id=\"evt_001\">\n <button>Buy Tickets</button>\n</tl-buy-tickets-wrapper>"
552
+ },
553
+ {
554
+ "name": "example",
555
+ "text": "<tl-buy-tickets-wrapper event-id=\"evt_001\" occurrence-id=\"occ_001\">\n <button>Get Tickets for Saturday</button>\n</tl-buy-tickets-wrapper>"
556
+ }
557
+ ],
558
+ "usage": {},
559
+ "props": [
560
+ {
561
+ "name": "disabled",
562
+ "type": "boolean",
563
+ "complexType": {
564
+ "original": "boolean",
565
+ "resolved": "boolean",
566
+ "references": {}
567
+ },
568
+ "mutable": false,
569
+ "attr": "disabled",
570
+ "reflectToAttr": false,
571
+ "docs": "Whether the wrapper is disabled",
572
+ "docsTags": [
573
+ {
574
+ "name": "default",
575
+ "text": "false"
576
+ }
577
+ ],
578
+ "default": "false",
579
+ "values": [
580
+ {
581
+ "type": "boolean"
582
+ }
583
+ ],
584
+ "optional": false,
585
+ "required": false,
586
+ "getter": false,
587
+ "setter": false
588
+ },
589
+ {
590
+ "name": "eventId",
591
+ "type": "string",
592
+ "complexType": {
593
+ "original": "string",
594
+ "resolved": "string",
595
+ "references": {}
596
+ },
597
+ "mutable": false,
598
+ "attr": "event-id",
599
+ "reflectToAttr": false,
600
+ "docs": "The event ID to purchase tickets for",
601
+ "docsTags": [],
602
+ "values": [
603
+ {
604
+ "type": "string"
605
+ }
606
+ ],
607
+ "optional": false,
608
+ "required": true,
609
+ "getter": false,
610
+ "setter": false
611
+ },
612
+ {
613
+ "name": "occurrenceId",
614
+ "type": "string | undefined",
615
+ "complexType": {
616
+ "original": "string",
617
+ "resolved": "string | undefined",
618
+ "references": {}
619
+ },
620
+ "mutable": false,
621
+ "attr": "occurrence-id",
622
+ "reflectToAttr": false,
623
+ "docs": "Optional specific occurrence ID (skips occurrence selector)",
624
+ "docsTags": [],
625
+ "values": [
626
+ {
627
+ "type": "string"
628
+ },
629
+ {
630
+ "type": "undefined"
631
+ }
632
+ ],
633
+ "optional": true,
634
+ "required": false,
635
+ "getter": false,
636
+ "setter": false
637
+ }
638
+ ],
639
+ "methods": [],
640
+ "events": [
641
+ {
642
+ "event": "tl-close",
643
+ "detail": "void",
644
+ "bubbles": true,
645
+ "complexType": {
646
+ "original": "void",
647
+ "resolved": "void",
648
+ "references": {}
649
+ },
650
+ "cancelable": true,
651
+ "composed": true,
652
+ "docs": "Emitted when the modal closes",
653
+ "docsTags": []
654
+ },
655
+ {
656
+ "event": "tl-complete",
657
+ "detail": "OrderResult",
658
+ "bubbles": true,
659
+ "complexType": {
660
+ "original": "OrderResult",
661
+ "resolved": "OrderResult",
662
+ "references": {
663
+ "OrderResult": {
664
+ "location": "import",
665
+ "path": "../../utils/sdk-connector",
666
+ "id": "src/utils/sdk-connector.ts::OrderResult",
667
+ "referenceLocation": "OrderResult"
668
+ }
669
+ }
670
+ },
671
+ "cancelable": true,
672
+ "composed": true,
673
+ "docs": "Emitted when purchase completes successfully",
674
+ "docsTags": []
675
+ },
676
+ {
677
+ "event": "tl-error",
678
+ "detail": "{ message: string; }",
679
+ "bubbles": true,
680
+ "complexType": {
681
+ "original": "{ message: string }",
682
+ "resolved": "{ message: string; }",
683
+ "references": {}
684
+ },
685
+ "cancelable": true,
686
+ "composed": true,
687
+ "docs": "Emitted when an error occurs",
688
+ "docsTags": []
689
+ }
690
+ ],
691
+ "listeners": [],
692
+ "styles": [],
693
+ "slots": [
694
+ {
695
+ "name": "",
696
+ "docs": "Content to display (typically a button)"
697
+ }
698
+ ],
699
+ "parts": [],
700
+ "dependents": [],
701
+ "dependencies": [],
702
+ "dependencyGraph": {}
703
+ },
704
+ {
705
+ "filePath": "src/components/tl-cart/tl-cart.tsx",
706
+ "encapsulation": "shadow",
707
+ "tag": "tl-cart",
708
+ "readme": "# tl-cart\n\n\n",
709
+ "docs": "",
710
+ "docsTags": [],
711
+ "usage": {},
712
+ "props": [
713
+ {
714
+ "name": "checkoutLabel",
715
+ "type": "string",
716
+ "complexType": {
717
+ "original": "string",
718
+ "resolved": "string",
719
+ "references": {}
720
+ },
721
+ "mutable": false,
722
+ "attr": "checkout-label",
723
+ "reflectToAttr": false,
724
+ "docs": "Checkout button label",
725
+ "docsTags": [
726
+ {
727
+ "name": "default",
728
+ "text": "'Checkout'"
729
+ }
730
+ ],
731
+ "default": "'Checkout'",
732
+ "values": [
733
+ {
734
+ "type": "string"
735
+ }
736
+ ],
737
+ "optional": false,
738
+ "required": false,
739
+ "getter": false,
740
+ "setter": false
741
+ },
742
+ {
743
+ "name": "compact",
744
+ "type": "boolean",
745
+ "complexType": {
746
+ "original": "boolean",
747
+ "resolved": "boolean",
748
+ "references": {}
749
+ },
750
+ "mutable": false,
751
+ "attr": "compact",
752
+ "reflectToAttr": false,
753
+ "docs": "Compact mode - hides some details",
754
+ "docsTags": [
755
+ {
756
+ "name": "default",
757
+ "text": "false"
758
+ }
759
+ ],
760
+ "default": "false",
761
+ "values": [
762
+ {
763
+ "type": "boolean"
764
+ }
765
+ ],
766
+ "optional": false,
767
+ "required": false,
768
+ "getter": false,
769
+ "setter": false
770
+ },
771
+ {
772
+ "name": "showCheckoutButton",
773
+ "type": "boolean",
774
+ "complexType": {
775
+ "original": "boolean",
776
+ "resolved": "boolean",
777
+ "references": {}
778
+ },
779
+ "mutable": false,
780
+ "attr": "show-checkout-button",
781
+ "reflectToAttr": false,
782
+ "docs": "Show checkout button",
783
+ "docsTags": [
784
+ {
785
+ "name": "default",
786
+ "text": "true"
787
+ }
788
+ ],
789
+ "default": "true",
790
+ "values": [
791
+ {
792
+ "type": "boolean"
793
+ }
794
+ ],
795
+ "optional": false,
796
+ "required": false,
797
+ "getter": false,
798
+ "setter": false
799
+ },
800
+ {
801
+ "name": "showRemoveButtons",
802
+ "type": "boolean",
803
+ "complexType": {
804
+ "original": "boolean",
805
+ "resolved": "boolean",
806
+ "references": {}
807
+ },
808
+ "mutable": false,
809
+ "attr": "show-remove-buttons",
810
+ "reflectToAttr": false,
811
+ "docs": "Show remove item buttons",
812
+ "docsTags": [
813
+ {
814
+ "name": "default",
815
+ "text": "true"
816
+ }
817
+ ],
818
+ "default": "true",
819
+ "values": [
820
+ {
821
+ "type": "boolean"
822
+ }
823
+ ],
824
+ "optional": false,
825
+ "required": false,
826
+ "getter": false,
827
+ "setter": false
828
+ }
829
+ ],
830
+ "methods": [],
831
+ "events": [
832
+ {
833
+ "event": "tlCartUpdated",
834
+ "detail": "{ cart: TlCartData; }",
835
+ "bubbles": true,
836
+ "complexType": {
837
+ "original": "{ cart: TlCartData }",
838
+ "resolved": "{ cart: TlCartData; }",
839
+ "references": {
840
+ "TlCartData": {
841
+ "location": "local",
842
+ "path": "/home/runner/work/live-elements/live-elements/src/components/tl-cart/tl-cart.tsx",
843
+ "id": "src/components/tl-cart/tl-cart.tsx::TlCartData"
844
+ }
845
+ }
846
+ },
847
+ "cancelable": true,
848
+ "composed": true,
849
+ "docs": "Emitted when cart is updated",
850
+ "docsTags": []
851
+ },
852
+ {
853
+ "event": "tlCheckout",
854
+ "detail": "{ cart: TlCartData; }",
855
+ "bubbles": true,
856
+ "complexType": {
857
+ "original": "{ cart: TlCartData }",
858
+ "resolved": "{ cart: TlCartData; }",
859
+ "references": {
860
+ "TlCartData": {
861
+ "location": "local",
862
+ "path": "/home/runner/work/live-elements/live-elements/src/components/tl-cart/tl-cart.tsx",
863
+ "id": "src/components/tl-cart/tl-cart.tsx::TlCartData"
864
+ }
865
+ }
866
+ },
867
+ "cancelable": true,
868
+ "composed": true,
869
+ "docs": "Emitted when checkout is clicked",
870
+ "docsTags": []
871
+ },
872
+ {
873
+ "event": "tlError",
874
+ "detail": "{ message: string; }",
875
+ "bubbles": true,
876
+ "complexType": {
877
+ "original": "{ message: string }",
878
+ "resolved": "{ message: string; }",
879
+ "references": {}
880
+ },
881
+ "cancelable": true,
882
+ "composed": true,
883
+ "docs": "Emitted on error",
884
+ "docsTags": []
885
+ },
886
+ {
887
+ "event": "tlItemRemoved",
888
+ "detail": "{ itemId: string; }",
889
+ "bubbles": true,
890
+ "complexType": {
891
+ "original": "{ itemId: string }",
892
+ "resolved": "{ itemId: string; }",
893
+ "references": {}
894
+ },
895
+ "cancelable": true,
896
+ "composed": true,
897
+ "docs": "Emitted when item is removed",
898
+ "docsTags": []
899
+ }
900
+ ],
901
+ "listeners": [],
902
+ "styles": [],
903
+ "slots": [],
904
+ "parts": [],
905
+ "dependents": [
906
+ "tl-cart-drawer"
907
+ ],
908
+ "dependencies": [],
909
+ "dependencyGraph": {
910
+ "tl-cart-drawer": [
911
+ "tl-cart"
912
+ ]
913
+ }
914
+ },
915
+ {
916
+ "filePath": "src/components/tl-cart-badge/tl-cart-badge.tsx",
917
+ "encapsulation": "shadow",
918
+ "tag": "tl-cart-badge",
919
+ "readme": "# tl-cart-badge\n\n\n",
920
+ "docs": "",
921
+ "docsTags": [],
922
+ "usage": {},
923
+ "props": [
924
+ {
925
+ "name": "badgeOnly",
926
+ "type": "boolean",
927
+ "complexType": {
928
+ "original": "boolean",
929
+ "resolved": "boolean",
930
+ "references": {}
931
+ },
932
+ "mutable": false,
933
+ "attr": "badge-only",
934
+ "reflectToAttr": false,
935
+ "docs": "Badge only mode - only shows the count bubble, no icon or button",
936
+ "docsTags": [
937
+ {
938
+ "name": "default",
939
+ "text": "false"
940
+ }
941
+ ],
942
+ "default": "false",
943
+ "values": [
944
+ {
945
+ "type": "boolean"
946
+ }
947
+ ],
948
+ "optional": false,
949
+ "required": false,
950
+ "getter": false,
951
+ "setter": false
952
+ },
953
+ {
954
+ "name": "icon",
955
+ "type": "string | undefined",
956
+ "complexType": {
957
+ "original": "string",
958
+ "resolved": "string | undefined",
959
+ "references": {}
960
+ },
961
+ "mutable": false,
962
+ "attr": "icon",
963
+ "reflectToAttr": false,
964
+ "docs": "Custom icon (emoji or text). If not provided, uses cart SVG",
965
+ "docsTags": [],
966
+ "values": [
967
+ {
968
+ "type": "string"
969
+ },
970
+ {
971
+ "type": "undefined"
972
+ }
973
+ ],
974
+ "optional": true,
975
+ "required": false,
976
+ "getter": false,
977
+ "setter": false
978
+ },
979
+ {
980
+ "name": "showEmpty",
981
+ "type": "boolean",
982
+ "complexType": {
983
+ "original": "boolean",
984
+ "resolved": "boolean",
985
+ "references": {}
986
+ },
987
+ "mutable": false,
988
+ "attr": "show-empty",
989
+ "reflectToAttr": false,
990
+ "docs": "Show the badge even when count is 0",
991
+ "docsTags": [
992
+ {
993
+ "name": "default",
994
+ "text": "false"
995
+ }
996
+ ],
997
+ "default": "false",
998
+ "values": [
999
+ {
1000
+ "type": "boolean"
1001
+ }
1002
+ ],
1003
+ "optional": false,
1004
+ "required": false,
1005
+ "getter": false,
1006
+ "setter": false
1007
+ },
1008
+ {
1009
+ "name": "size",
1010
+ "type": "\"lg\" | \"md\" | \"sm\"",
1011
+ "complexType": {
1012
+ "original": "'sm' | 'md' | 'lg'",
1013
+ "resolved": "\"lg\" | \"md\" | \"sm\"",
1014
+ "references": {}
1015
+ },
1016
+ "mutable": false,
1017
+ "attr": "size",
1018
+ "reflectToAttr": false,
1019
+ "docs": "Size variant",
1020
+ "docsTags": [
1021
+ {
1022
+ "name": "default",
1023
+ "text": "'md'"
1024
+ }
1025
+ ],
1026
+ "default": "'md'",
1027
+ "values": [
1028
+ {
1029
+ "value": "lg",
1030
+ "type": "string"
1031
+ },
1032
+ {
1033
+ "value": "md",
1034
+ "type": "string"
1035
+ },
1036
+ {
1037
+ "value": "sm",
1038
+ "type": "string"
1039
+ }
1040
+ ],
1041
+ "optional": false,
1042
+ "required": false,
1043
+ "getter": false,
1044
+ "setter": false
1045
+ }
1046
+ ],
1047
+ "methods": [],
1048
+ "events": [
1049
+ {
1050
+ "event": "tlClick",
1051
+ "detail": "{ itemCount: number; }",
1052
+ "bubbles": true,
1053
+ "complexType": {
1054
+ "original": "{ itemCount: number }",
1055
+ "resolved": "{ itemCount: number; }",
1056
+ "references": {}
1057
+ },
1058
+ "cancelable": true,
1059
+ "composed": true,
1060
+ "docs": "Emitted when the badge is clicked",
1061
+ "docsTags": []
1062
+ }
1063
+ ],
1064
+ "listeners": [],
1065
+ "styles": [],
1066
+ "slots": [],
1067
+ "parts": [],
1068
+ "dependents": [],
1069
+ "dependencies": [],
1070
+ "dependencyGraph": {}
1071
+ },
1072
+ {
1073
+ "filePath": "src/components/tl-cart-drawer/tl-cart-drawer.tsx",
1074
+ "encapsulation": "shadow",
1075
+ "tag": "tl-cart-drawer",
1076
+ "readme": "# tl-cart-drawer\n\n\n",
1077
+ "docs": "",
1078
+ "docsTags": [
1079
+ {
1080
+ "name": "component",
1081
+ "text": "tl-cart-drawer\n\nA slide-in cart panel (off-canvas) showing the current cart. It opens when\nanything raises the `ui:cart-requested` bus intent - e.g. wire a\n`tl-cart-badge`'s click to emit it - and closes on the backdrop, the close\nbutton, Escape, or `ui:modal-close-requested`. The panel embeds `<tl-cart>`,\nso the actual cart rendering / remove / checkout is shared with the inline\ncart; the drawer only adds the off-canvas chrome."
1082
+ },
1083
+ {
1084
+ "name": "prop",
1085
+ "text": "side - which edge the panel slides from (default 'right')"
1086
+ },
1087
+ {
1088
+ "name": "event",
1089
+ "text": "tlOpen - the drawer opened"
1090
+ },
1091
+ {
1092
+ "name": "event",
1093
+ "text": "tlClose - the drawer closed"
1094
+ }
1095
+ ],
1096
+ "usage": {},
1097
+ "props": [
1098
+ {
1099
+ "name": "heading",
1100
+ "type": "string",
1101
+ "complexType": {
1102
+ "original": "string",
1103
+ "resolved": "string",
1104
+ "references": {}
1105
+ },
1106
+ "mutable": false,
1107
+ "attr": "heading",
1108
+ "reflectToAttr": false,
1109
+ "docs": "Heading shown at the top of the panel.",
1110
+ "docsTags": [
1111
+ {
1112
+ "name": "default",
1113
+ "text": "'Your cart'"
1114
+ }
1115
+ ],
1116
+ "default": "'Your cart'",
1117
+ "values": [
1118
+ {
1119
+ "type": "string"
1120
+ }
1121
+ ],
1122
+ "optional": false,
1123
+ "required": false,
1124
+ "getter": false,
1125
+ "setter": false
1126
+ },
1127
+ {
1128
+ "name": "open",
1129
+ "type": "boolean",
1130
+ "complexType": {
1131
+ "original": "boolean",
1132
+ "resolved": "boolean",
1133
+ "references": {}
1134
+ },
1135
+ "mutable": true,
1136
+ "attr": "open",
1137
+ "reflectToAttr": false,
1138
+ "docs": "Controlled open state (also driven by the `ui:cart-requested` intent).",
1139
+ "docsTags": [
1140
+ {
1141
+ "name": "default",
1142
+ "text": "false"
1143
+ }
1144
+ ],
1145
+ "default": "false",
1146
+ "values": [
1147
+ {
1148
+ "type": "boolean"
1149
+ }
1150
+ ],
1151
+ "optional": false,
1152
+ "required": false,
1153
+ "getter": false,
1154
+ "setter": false
1155
+ },
1156
+ {
1157
+ "name": "side",
1158
+ "type": "\"left\" | \"right\"",
1159
+ "complexType": {
1160
+ "original": "'right' | 'left'",
1161
+ "resolved": "\"left\" | \"right\"",
1162
+ "references": {}
1163
+ },
1164
+ "mutable": false,
1165
+ "attr": "side",
1166
+ "reflectToAttr": false,
1167
+ "docs": "Edge the panel slides in from.",
1168
+ "docsTags": [
1169
+ {
1170
+ "name": "default",
1171
+ "text": "'right'"
1172
+ }
1173
+ ],
1174
+ "default": "'right'",
1175
+ "values": [
1176
+ {
1177
+ "value": "left",
1178
+ "type": "string"
1179
+ },
1180
+ {
1181
+ "value": "right",
1182
+ "type": "string"
1183
+ }
1184
+ ],
1185
+ "optional": false,
1186
+ "required": false,
1187
+ "getter": false,
1188
+ "setter": false
1189
+ }
1190
+ ],
1191
+ "methods": [],
1192
+ "events": [
1193
+ {
1194
+ "event": "tlClose",
1195
+ "detail": "void",
1196
+ "bubbles": true,
1197
+ "complexType": {
1198
+ "original": "void",
1199
+ "resolved": "void",
1200
+ "references": {}
1201
+ },
1202
+ "cancelable": true,
1203
+ "composed": true,
1204
+ "docs": "",
1205
+ "docsTags": []
1206
+ },
1207
+ {
1208
+ "event": "tlOpen",
1209
+ "detail": "void",
1210
+ "bubbles": true,
1211
+ "complexType": {
1212
+ "original": "void",
1213
+ "resolved": "void",
1214
+ "references": {}
1215
+ },
1216
+ "cancelable": true,
1217
+ "composed": true,
1218
+ "docs": "",
1219
+ "docsTags": []
1220
+ }
1221
+ ],
1222
+ "listeners": [],
1223
+ "styles": [],
1224
+ "slots": [],
1225
+ "parts": [],
1226
+ "dependents": [],
1227
+ "dependencies": [
1228
+ "tl-cart"
1229
+ ],
1230
+ "dependencyGraph": {
1231
+ "tl-cart-drawer": [
1232
+ "tl-cart"
1233
+ ]
1234
+ }
1235
+ },
1236
+ {
1237
+ "filePath": "src/components/tl-checkout-wrapper/tl-checkout-wrapper.tsx",
1238
+ "encapsulation": "none",
1239
+ "tag": "tl-checkout-wrapper",
1240
+ "readme": "# tl-checkout-wrapper\n\n\n",
1241
+ "docs": "",
1242
+ "docsTags": [
1243
+ {
1244
+ "name": "component",
1245
+ "text": "tl-checkout-wrapper\n\nWraps any content and opens the Ticketlayer checkout modal when clicked.\nUses the SDK's modal manager which handles the iframe overlay."
1246
+ },
1247
+ {
1248
+ "name": "slot",
1249
+ "text": "- Content to display (typically a checkout button)"
1250
+ },
1251
+ {
1252
+ "name": "example",
1253
+ "text": "<tl-checkout-wrapper>\n <button>Proceed to Checkout</button>\n</tl-checkout-wrapper>"
1254
+ }
1255
+ ],
1256
+ "usage": {},
1257
+ "props": [
1258
+ {
1259
+ "name": "disabled",
1260
+ "type": "boolean",
1261
+ "complexType": {
1262
+ "original": "boolean",
1263
+ "resolved": "boolean",
1264
+ "references": {}
1265
+ },
1266
+ "mutable": false,
1267
+ "attr": "disabled",
1268
+ "reflectToAttr": false,
1269
+ "docs": "Whether the wrapper is disabled",
1270
+ "docsTags": [
1271
+ {
1272
+ "name": "default",
1273
+ "text": "false"
1274
+ }
1275
+ ],
1276
+ "default": "false",
1277
+ "values": [
1278
+ {
1279
+ "type": "boolean"
1280
+ }
1281
+ ],
1282
+ "optional": false,
1283
+ "required": false,
1284
+ "getter": false,
1285
+ "setter": false
1286
+ }
1287
+ ],
1288
+ "methods": [],
1289
+ "events": [
1290
+ {
1291
+ "event": "tl-close",
1292
+ "detail": "void",
1293
+ "bubbles": true,
1294
+ "complexType": {
1295
+ "original": "void",
1296
+ "resolved": "void",
1297
+ "references": {}
1298
+ },
1299
+ "cancelable": true,
1300
+ "composed": true,
1301
+ "docs": "Emitted when the modal closes",
1302
+ "docsTags": []
1303
+ },
1304
+ {
1305
+ "event": "tl-complete",
1306
+ "detail": "OrderResult",
1307
+ "bubbles": true,
1308
+ "complexType": {
1309
+ "original": "OrderResult",
1310
+ "resolved": "OrderResult",
1311
+ "references": {
1312
+ "OrderResult": {
1313
+ "location": "import",
1314
+ "path": "../../utils/sdk-connector",
1315
+ "id": "src/utils/sdk-connector.ts::OrderResult",
1316
+ "referenceLocation": "OrderResult"
1317
+ }
1318
+ }
1319
+ },
1320
+ "cancelable": true,
1321
+ "composed": true,
1322
+ "docs": "Emitted when checkout completes successfully",
1323
+ "docsTags": []
1324
+ },
1325
+ {
1326
+ "event": "tl-error",
1327
+ "detail": "{ message: string; }",
1328
+ "bubbles": true,
1329
+ "complexType": {
1330
+ "original": "{ message: string }",
1331
+ "resolved": "{ message: string; }",
1332
+ "references": {}
1333
+ },
1334
+ "cancelable": true,
1335
+ "composed": true,
1336
+ "docs": "Emitted when an error occurs",
1337
+ "docsTags": []
1338
+ }
1339
+ ],
1340
+ "listeners": [],
1341
+ "styles": [],
1342
+ "slots": [
1343
+ {
1344
+ "name": "",
1345
+ "docs": "Content to display (typically a checkout button)"
1346
+ }
1347
+ ],
1348
+ "parts": [],
1349
+ "dependents": [],
1350
+ "dependencies": [],
1351
+ "dependencyGraph": {}
1352
+ },
1353
+ {
1354
+ "filePath": "src/components/tl-event-card/tl-event-card.tsx",
1355
+ "encapsulation": "shadow",
1356
+ "tag": "tl-event-card",
1357
+ "readme": "# tl-event-card\n\n\n",
1358
+ "docs": "",
1359
+ "docsTags": [],
1360
+ "usage": {},
1361
+ "props": [
1362
+ {
1363
+ "name": "event",
1364
+ "type": "TlEventCardEvent | undefined",
1365
+ "complexType": {
1366
+ "original": "TlEventCardEvent",
1367
+ "resolved": "TlEventCardEvent | undefined",
1368
+ "references": {
1369
+ "TlEventCardEvent": {
1370
+ "location": "local",
1371
+ "path": "/home/runner/work/live-elements/live-elements/src/components/tl-event-card/tl-event-card.tsx",
1372
+ "id": "src/components/tl-event-card/tl-event-card.tsx::TlEventCardEvent"
1373
+ }
1374
+ }
1375
+ },
1376
+ "mutable": false,
1377
+ "reflectToAttr": false,
1378
+ "docs": "Event data to display (tl-event-list passes this)",
1379
+ "docsTags": [],
1380
+ "values": [
1381
+ {
1382
+ "type": "TlEventCardEvent"
1383
+ },
1384
+ {
1385
+ "type": "undefined"
1386
+ }
1387
+ ],
1388
+ "optional": true,
1389
+ "required": false,
1390
+ "getter": false,
1391
+ "setter": false
1392
+ },
1393
+ {
1394
+ "name": "eventId",
1395
+ "type": "string | undefined",
1396
+ "complexType": {
1397
+ "original": "string",
1398
+ "resolved": "string | undefined",
1399
+ "references": {}
1400
+ },
1401
+ "mutable": false,
1402
+ "attr": "event-id",
1403
+ "reflectToAttr": false,
1404
+ "docs": "Load the event from the SDK by id when no `event` is given, so a single\ncard works standalone (e.g. on a Webflow page).",
1405
+ "docsTags": [],
1406
+ "values": [
1407
+ {
1408
+ "type": "string"
1409
+ },
1410
+ {
1411
+ "type": "undefined"
1412
+ }
1413
+ ],
1414
+ "optional": true,
1415
+ "required": false,
1416
+ "getter": false,
1417
+ "setter": false
1418
+ }
1419
+ ],
1420
+ "methods": [],
1421
+ "events": [
1422
+ {
1423
+ "event": "tlClick",
1424
+ "detail": "{ eventId: string; }",
1425
+ "bubbles": true,
1426
+ "complexType": {
1427
+ "original": "{ eventId: string }",
1428
+ "resolved": "{ eventId: string; }",
1429
+ "references": {}
1430
+ },
1431
+ "cancelable": true,
1432
+ "composed": true,
1433
+ "docs": "Emitted when the card is clicked",
1434
+ "docsTags": []
1435
+ },
1436
+ {
1437
+ "event": "tlError",
1438
+ "detail": "{ message: string; }",
1439
+ "bubbles": true,
1440
+ "complexType": {
1441
+ "original": "{ message: string }",
1442
+ "resolved": "{ message: string; }",
1443
+ "references": {}
1444
+ },
1445
+ "cancelable": true,
1446
+ "composed": true,
1447
+ "docs": "Emitted when the event could not be loaded by id",
1448
+ "docsTags": []
1449
+ }
1450
+ ],
1451
+ "listeners": [],
1452
+ "styles": [],
1453
+ "slots": [],
1454
+ "parts": [],
1455
+ "dependents": [
1456
+ "tl-event-list"
1457
+ ],
1458
+ "dependencies": [],
1459
+ "dependencyGraph": {
1460
+ "tl-event-list": [
1461
+ "tl-event-card"
1462
+ ]
1463
+ }
1464
+ },
1465
+ {
1466
+ "filePath": "src/components/tl-event-list/tl-event-list.tsx",
1467
+ "encapsulation": "shadow",
1468
+ "tag": "tl-event-list",
1469
+ "readme": "# tl-event-list\n\n\n",
1470
+ "docs": "",
1471
+ "docsTags": [],
1472
+ "usage": {},
1473
+ "props": [
1474
+ {
1475
+ "name": "category",
1476
+ "type": "string | undefined",
1477
+ "complexType": {
1478
+ "original": "string",
1479
+ "resolved": "string | undefined",
1480
+ "references": {}
1481
+ },
1482
+ "mutable": false,
1483
+ "attr": "category",
1484
+ "reflectToAttr": false,
1485
+ "docs": "Category filter",
1486
+ "docsTags": [],
1487
+ "values": [
1488
+ {
1489
+ "type": "string"
1490
+ },
1491
+ {
1492
+ "type": "undefined"
1493
+ }
1494
+ ],
1495
+ "optional": true,
1496
+ "required": false,
1497
+ "getter": false,
1498
+ "setter": false
1499
+ },
1500
+ {
1501
+ "name": "columns",
1502
+ "type": "number",
1503
+ "complexType": {
1504
+ "original": "number",
1505
+ "resolved": "number",
1506
+ "references": {}
1507
+ },
1508
+ "mutable": false,
1509
+ "attr": "columns",
1510
+ "reflectToAttr": false,
1511
+ "docs": "Columns for grid layout (1, 2, 3, or 4)",
1512
+ "docsTags": [
1513
+ {
1514
+ "name": "default",
1515
+ "text": "3"
1516
+ }
1517
+ ],
1518
+ "default": "3",
1519
+ "values": [
1520
+ {
1521
+ "type": "number"
1522
+ }
1523
+ ],
1524
+ "optional": false,
1525
+ "required": false,
1526
+ "getter": false,
1527
+ "setter": false
1528
+ },
1529
+ {
1530
+ "name": "limit",
1531
+ "type": "number",
1532
+ "complexType": {
1533
+ "original": "number",
1534
+ "resolved": "number",
1535
+ "references": {}
1536
+ },
1537
+ "mutable": false,
1538
+ "attr": "limit",
1539
+ "reflectToAttr": false,
1540
+ "docs": "Maximum number of events to display",
1541
+ "docsTags": [
1542
+ {
1543
+ "name": "default",
1544
+ "text": "12"
1545
+ }
1546
+ ],
1547
+ "default": "12",
1548
+ "values": [
1549
+ {
1550
+ "type": "number"
1551
+ }
1552
+ ],
1553
+ "optional": false,
1554
+ "required": false,
1555
+ "getter": false,
1556
+ "setter": false
1557
+ }
1558
+ ],
1559
+ "methods": [],
1560
+ "events": [
1561
+ {
1562
+ "event": "tlEventClick",
1563
+ "detail": "{ eventId: string; }",
1564
+ "bubbles": true,
1565
+ "complexType": {
1566
+ "original": "{ eventId: string }",
1567
+ "resolved": "{ eventId: string; }",
1568
+ "references": {}
1569
+ },
1570
+ "cancelable": true,
1571
+ "composed": true,
1572
+ "docs": "Emitted when an event card is clicked",
1573
+ "docsTags": []
1574
+ }
1575
+ ],
1576
+ "listeners": [],
1577
+ "styles": [],
1578
+ "slots": [],
1579
+ "parts": [],
1580
+ "dependents": [],
1581
+ "dependencies": [
1582
+ "tl-event-card"
1583
+ ],
1584
+ "dependencyGraph": {
1585
+ "tl-event-list": [
1586
+ "tl-event-card"
1587
+ ]
1588
+ }
1589
+ },
1590
+ {
1591
+ "filePath": "src/components/tl-login/tl-login.tsx",
1592
+ "encapsulation": "shadow",
1593
+ "tag": "tl-login",
1594
+ "readme": "# tl-login\n\n\n",
1595
+ "docs": "tl-login - magic-link sign-in. The customer enters an email, we ask the SDK\nto send a link (POST /sales/customer-auth/magic-link), then either the link\nlands back on this page with `?code=` or the customer types the code from\nthe email; both exchange through the SDK (POST /sales/customer-tokens). No\npassword is ever handled here.\n\nStates: enter email -> check your inbox (resend, enter code) -> signed in\n(email + sign out).\n\nUsage: <tl-login></tl-login>",
1596
+ "docsTags": [
1597
+ {
1598
+ "name": "event",
1599
+ "text": "tlAuthChanged - signed in or out ({ customer, authenticated })"
1600
+ },
1601
+ {
1602
+ "name": "event",
1603
+ "text": "tlMagicLinkSent - a link was requested for an email"
1604
+ },
1605
+ {
1606
+ "name": "event",
1607
+ "text": "tlError - request or code exchange failed"
1608
+ }
1609
+ ],
1610
+ "usage": {},
1611
+ "props": [
1612
+ {
1613
+ "name": "allowCodeEntry",
1614
+ "type": "boolean",
1615
+ "complexType": {
1616
+ "original": "boolean",
1617
+ "resolved": "boolean",
1618
+ "references": {}
1619
+ },
1620
+ "mutable": false,
1621
+ "attr": "allow-code-entry",
1622
+ "reflectToAttr": false,
1623
+ "docs": "Offer a \"enter the code\" path alongside the emailed link (default true).",
1624
+ "docsTags": [
1625
+ {
1626
+ "name": "default",
1627
+ "text": "true"
1628
+ }
1629
+ ],
1630
+ "default": "true",
1631
+ "values": [
1632
+ {
1633
+ "type": "boolean"
1634
+ }
1635
+ ],
1636
+ "optional": false,
1637
+ "required": false,
1638
+ "getter": false,
1639
+ "setter": false
1640
+ },
1641
+ {
1642
+ "name": "heading",
1643
+ "type": "string",
1644
+ "complexType": {
1645
+ "original": "string",
1646
+ "resolved": "string",
1647
+ "references": {}
1648
+ },
1649
+ "mutable": false,
1650
+ "attr": "heading",
1651
+ "reflectToAttr": false,
1652
+ "docs": "Heading for the email step.",
1653
+ "docsTags": [
1654
+ {
1655
+ "name": "default",
1656
+ "text": "'Sign in'"
1657
+ }
1658
+ ],
1659
+ "default": "'Sign in'",
1660
+ "values": [
1661
+ {
1662
+ "type": "string"
1663
+ }
1664
+ ],
1665
+ "optional": false,
1666
+ "required": false,
1667
+ "getter": false,
1668
+ "setter": false
1669
+ }
1670
+ ],
1671
+ "methods": [],
1672
+ "events": [
1673
+ {
1674
+ "event": "tlAuthChanged",
1675
+ "detail": "TlAuthChanged",
1676
+ "bubbles": true,
1677
+ "complexType": {
1678
+ "original": "TlAuthChanged",
1679
+ "resolved": "TlAuthChanged",
1680
+ "references": {
1681
+ "TlAuthChanged": {
1682
+ "location": "local",
1683
+ "path": "/home/runner/work/live-elements/live-elements/src/components/tl-login/tl-login.tsx",
1684
+ "id": "src/components/tl-login/tl-login.tsx::TlAuthChanged"
1685
+ }
1686
+ }
1687
+ },
1688
+ "cancelable": true,
1689
+ "composed": true,
1690
+ "docs": "",
1691
+ "docsTags": []
1692
+ },
1693
+ {
1694
+ "event": "tlError",
1695
+ "detail": "{ message: string; }",
1696
+ "bubbles": true,
1697
+ "complexType": {
1698
+ "original": "{ message: string }",
1699
+ "resolved": "{ message: string; }",
1700
+ "references": {}
1701
+ },
1702
+ "cancelable": true,
1703
+ "composed": true,
1704
+ "docs": "",
1705
+ "docsTags": []
1706
+ },
1707
+ {
1708
+ "event": "tlMagicLinkSent",
1709
+ "detail": "{ email: string; }",
1710
+ "bubbles": true,
1711
+ "complexType": {
1712
+ "original": "{ email: string }",
1713
+ "resolved": "{ email: string; }",
1714
+ "references": {}
1715
+ },
1716
+ "cancelable": true,
1717
+ "composed": true,
1718
+ "docs": "",
1719
+ "docsTags": []
1720
+ }
1721
+ ],
1722
+ "listeners": [],
1723
+ "styles": [],
1724
+ "slots": [],
1725
+ "parts": [],
1726
+ "dependents": [
1727
+ "tl-my-orders"
1728
+ ],
1729
+ "dependencies": [],
1730
+ "dependencyGraph": {
1731
+ "tl-my-orders": [
1732
+ "tl-login"
1733
+ ]
1734
+ }
1735
+ },
1736
+ {
1737
+ "filePath": "src/components/tl-my-orders/tl-my-orders.tsx",
1738
+ "encapsulation": "shadow",
1739
+ "tag": "tl-my-orders",
1740
+ "readme": "# tl-my-orders\n\n\n",
1741
+ "docs": "tl-my-orders - the signed-in customer's orders (GET /sales/my-orders through\nthe SDK): event, date, ticket count, total and status per row. Clicking a\nrow expands it to show the order's tickets (tl-order-tickets). Shows\ntl-login inline when nobody is signed in.\n\nUsage: <tl-my-orders></tl-my-orders>",
1742
+ "docsTags": [
1743
+ {
1744
+ "name": "event",
1745
+ "text": "tlOrderSelect - a row was expanded ({ orderId })"
1746
+ },
1747
+ {
1748
+ "name": "event",
1749
+ "text": "tlError - the orders could not be loaded"
1750
+ }
1751
+ ],
1752
+ "usage": {},
1753
+ "props": [
1754
+ {
1755
+ "name": "columns",
1756
+ "type": "number",
1757
+ "complexType": {
1758
+ "original": "number",
1759
+ "resolved": "number",
1760
+ "references": {}
1761
+ },
1762
+ "mutable": false,
1763
+ "attr": "columns",
1764
+ "reflectToAttr": false,
1765
+ "docs": "Columns for the expanded ticket grid.",
1766
+ "docsTags": [
1767
+ {
1768
+ "name": "default",
1769
+ "text": "2"
1770
+ }
1771
+ ],
1772
+ "default": "2",
1773
+ "values": [
1774
+ {
1775
+ "type": "number"
1776
+ }
1777
+ ],
1778
+ "optional": false,
1779
+ "required": false,
1780
+ "getter": false,
1781
+ "setter": false
1782
+ },
1783
+ {
1784
+ "name": "emptyMessage",
1785
+ "type": "string",
1786
+ "complexType": {
1787
+ "original": "string",
1788
+ "resolved": "string",
1789
+ "references": {}
1790
+ },
1791
+ "mutable": false,
1792
+ "attr": "empty-message",
1793
+ "reflectToAttr": false,
1794
+ "docs": "Copy for the empty state.",
1795
+ "docsTags": [
1796
+ {
1797
+ "name": "default",
1798
+ "text": "\"When you buy tickets they'll show up here, ready to view and download.\""
1799
+ }
1800
+ ],
1801
+ "default": "\"When you buy tickets they'll show up here, ready to view and download.\"",
1802
+ "values": [
1803
+ {
1804
+ "type": "string"
1805
+ }
1806
+ ],
1807
+ "optional": false,
1808
+ "required": false,
1809
+ "getter": false,
1810
+ "setter": false
1811
+ }
1812
+ ],
1813
+ "methods": [],
1814
+ "events": [
1815
+ {
1816
+ "event": "tlError",
1817
+ "detail": "{ message: string; }",
1818
+ "bubbles": true,
1819
+ "complexType": {
1820
+ "original": "{ message: string }",
1821
+ "resolved": "{ message: string; }",
1822
+ "references": {}
1823
+ },
1824
+ "cancelable": true,
1825
+ "composed": true,
1826
+ "docs": "",
1827
+ "docsTags": []
1828
+ },
1829
+ {
1830
+ "event": "tlOrderSelect",
1831
+ "detail": "{ orderId: string; }",
1832
+ "bubbles": true,
1833
+ "complexType": {
1834
+ "original": "{ orderId: string }",
1835
+ "resolved": "{ orderId: string; }",
1836
+ "references": {}
1837
+ },
1838
+ "cancelable": true,
1839
+ "composed": true,
1840
+ "docs": "",
1841
+ "docsTags": []
1842
+ }
1843
+ ],
1844
+ "listeners": [],
1845
+ "styles": [],
1846
+ "slots": [],
1847
+ "parts": [],
1848
+ "dependents": [],
1849
+ "dependencies": [
1850
+ "tl-order-tickets",
1851
+ "tl-login"
1852
+ ],
1853
+ "dependencyGraph": {
1854
+ "tl-my-orders": [
1855
+ "tl-order-tickets",
1856
+ "tl-login"
1857
+ ],
1858
+ "tl-order-tickets": [
1859
+ "tl-ticket"
1860
+ ]
1861
+ }
1862
+ },
1863
+ {
1864
+ "filePath": "src/components/tl-occurrence-selector/tl-occurrence-selector.tsx",
1865
+ "encapsulation": "shadow",
1866
+ "tag": "tl-occurrence-selector",
1867
+ "readme": "# tl-occurrence-selector\n\nA smart occurrence selector component that fetches and displays event occurrences from the Ticketlayer API.\n\n## Features\n\n- **Automatic data fetching** - Fetches occurrences via the Ticketlayer SDK\n- **Adaptive display modes** - Automatically chooses list, slots, or calendar view based on occurrence count\n- **Loading & error states** - Built-in spinner and error handling with retry\n- **Responsive** - Works on mobile and desktop with auto-adjusting layouts\n- **Themeable** - Fully customizable via CSS custom properties\n\n## Usage\n\n```tsx\nimport { TlOccurrenceSelector } from '@ticketlayer/elements-react';\n\n<TlOccurrenceSelector\n eventId=\"evt_001\"\n onTlSelect={(e) => console.log('Selected:', e.detail.occurrence)}\n/>\n```\n",
1868
+ "docs": "A smart occurrence selector component that fetches and displays event occurrences from the Ticketlayer API.",
1869
+ "docsTags": [],
1870
+ "usage": {},
1871
+ "props": [
1872
+ {
1873
+ "name": "displayMode",
1874
+ "type": "\"calendar\" | \"list\" | \"slots\" | undefined",
1875
+ "complexType": {
1876
+ "original": "DisplayMode",
1877
+ "resolved": "\"calendar\" | \"list\" | \"slots\" | undefined",
1878
+ "references": {
1879
+ "DisplayMode": {
1880
+ "location": "global",
1881
+ "id": "global::DisplayMode"
1882
+ }
1883
+ }
1884
+ },
1885
+ "mutable": false,
1886
+ "attr": "display-mode",
1887
+ "reflectToAttr": false,
1888
+ "docs": "Force a specific display mode (auto-detected if not set)",
1889
+ "docsTags": [],
1890
+ "values": [
1891
+ {
1892
+ "value": "calendar",
1893
+ "type": "string"
1894
+ },
1895
+ {
1896
+ "value": "list",
1897
+ "type": "string"
1898
+ },
1899
+ {
1900
+ "value": "slots",
1901
+ "type": "string"
1902
+ },
1903
+ {
1904
+ "type": "undefined"
1905
+ }
1906
+ ],
1907
+ "optional": true,
1908
+ "required": false,
1909
+ "getter": false,
1910
+ "setter": false
1911
+ },
1912
+ {
1913
+ "name": "eventId",
1914
+ "type": "string",
1915
+ "complexType": {
1916
+ "original": "string",
1917
+ "resolved": "string",
1918
+ "references": {}
1919
+ },
1920
+ "mutable": false,
1921
+ "attr": "event-id",
1922
+ "reflectToAttr": false,
1923
+ "docs": "Event ID to fetch occurrences for",
1924
+ "docsTags": [],
1925
+ "values": [
1926
+ {
1927
+ "type": "string"
1928
+ }
1929
+ ],
1930
+ "optional": false,
1931
+ "required": true,
1932
+ "getter": false,
1933
+ "setter": false
1934
+ },
1935
+ {
1936
+ "name": "orientation",
1937
+ "type": "\"auto\" | \"horizontal\" | \"vertical\"",
1938
+ "complexType": {
1939
+ "original": "Orientation",
1940
+ "resolved": "\"auto\" | \"horizontal\" | \"vertical\"",
1941
+ "references": {
1942
+ "Orientation": {
1943
+ "location": "global",
1944
+ "id": "global::Orientation"
1945
+ }
1946
+ }
1947
+ },
1948
+ "mutable": false,
1949
+ "attr": "orientation",
1950
+ "reflectToAttr": false,
1951
+ "docs": "Layout orientation (auto = horizontal on desktop, vertical on mobile)",
1952
+ "docsTags": [
1953
+ {
1954
+ "name": "default",
1955
+ "text": "'auto'"
1956
+ }
1957
+ ],
1958
+ "default": "'auto'",
1959
+ "values": [
1960
+ {
1961
+ "value": "auto",
1962
+ "type": "string"
1963
+ },
1964
+ {
1965
+ "value": "horizontal",
1966
+ "type": "string"
1967
+ },
1968
+ {
1969
+ "value": "vertical",
1970
+ "type": "string"
1971
+ }
1972
+ ],
1973
+ "optional": false,
1974
+ "required": false,
1975
+ "getter": false,
1976
+ "setter": false
1977
+ },
1978
+ {
1979
+ "name": "theme",
1980
+ "type": "TlOccurrenceSelectorTheme | undefined",
1981
+ "complexType": {
1982
+ "original": "TlOccurrenceSelectorTheme",
1983
+ "resolved": "TlOccurrenceSelectorTheme | undefined",
1984
+ "references": {
1985
+ "TlOccurrenceSelectorTheme": {
1986
+ "location": "local",
1987
+ "path": "/home/runner/work/live-elements/live-elements/src/components/tl-occurrence-selector/tl-occurrence-selector.tsx",
1988
+ "id": "src/components/tl-occurrence-selector/tl-occurrence-selector.tsx::TlOccurrenceSelectorTheme"
1989
+ }
1990
+ }
1991
+ },
1992
+ "mutable": false,
1993
+ "reflectToAttr": false,
1994
+ "docs": "Theme configuration",
1995
+ "docsTags": [],
1996
+ "values": [
1997
+ {
1998
+ "type": "TlOccurrenceSelectorTheme"
1999
+ },
2000
+ {
2001
+ "type": "undefined"
2002
+ }
2003
+ ],
2004
+ "optional": true,
2005
+ "required": false,
2006
+ "getter": false,
2007
+ "setter": false
2008
+ }
2009
+ ],
2010
+ "methods": [],
2011
+ "events": [
2012
+ {
2013
+ "event": "tlSelect",
2014
+ "detail": "{ occurrence: TlOccurrence; }",
2015
+ "bubbles": true,
2016
+ "complexType": {
2017
+ "original": "{ occurrence: TlOccurrence }",
2018
+ "resolved": "{ occurrence: TlOccurrence; }",
2019
+ "references": {
2020
+ "TlOccurrence": {
2021
+ "location": "local",
2022
+ "path": "/home/runner/work/live-elements/live-elements/src/components/tl-occurrence-selector/tl-occurrence-selector.tsx",
2023
+ "id": "src/components/tl-occurrence-selector/tl-occurrence-selector.tsx::TlOccurrence"
2024
+ }
2025
+ }
2026
+ },
2027
+ "cancelable": true,
2028
+ "composed": true,
2029
+ "docs": "Emitted when an occurrence is selected",
2030
+ "docsTags": []
2031
+ }
2032
+ ],
2033
+ "listeners": [],
2034
+ "styles": [],
2035
+ "slots": [],
2036
+ "parts": [],
2037
+ "dependents": [
2038
+ "tl-buy-modal"
2039
+ ],
2040
+ "dependencies": [],
2041
+ "dependencyGraph": {
2042
+ "tl-buy-modal": [
2043
+ "tl-occurrence-selector"
2044
+ ]
2045
+ }
2046
+ },
2047
+ {
2048
+ "filePath": "src/components/tl-order-confirmation/tl-order-confirmation.tsx",
2049
+ "encapsulation": "shadow",
2050
+ "tag": "tl-order-confirmation",
2051
+ "readme": "# tl-order-confirmation\n\n\n",
2052
+ "docs": "tl-order-confirmation - the \"thank you\" page block: order reference,\ncustomer email, event and date, ticket lines, totals, then the tickets\nthemselves (tl-order-tickets, each with a Download PDF link).\n\nFinds its order three ways, in priority order:\n 1. the `order-id` prop\n 2. the URL (`?orderId=`), the contract the hosted box office confirmation\n page uses; `?redirect_status=` from a Stripe return is honoured too\n 3. the SDK's `checkout:completed` event, for a page that mounts this before\n the customer pays\n\nUsage: <tl-order-confirmation order-id=\"ord_xxx\"></tl-order-confirmation>",
2053
+ "docsTags": [
2054
+ {
2055
+ "name": "event",
2056
+ "text": "tlOrderLoaded - the order was loaded"
2057
+ },
2058
+ {
2059
+ "name": "event",
2060
+ "text": "tlError - the order could not be loaded"
2061
+ }
2062
+ ],
2063
+ "usage": {},
2064
+ "props": [
2065
+ {
2066
+ "name": "columns",
2067
+ "type": "number",
2068
+ "complexType": {
2069
+ "original": "number",
2070
+ "resolved": "number",
2071
+ "references": {}
2072
+ },
2073
+ "mutable": false,
2074
+ "attr": "columns",
2075
+ "reflectToAttr": false,
2076
+ "docs": "Columns for the ticket grid.",
2077
+ "docsTags": [
2078
+ {
2079
+ "name": "default",
2080
+ "text": "2"
2081
+ }
2082
+ ],
2083
+ "default": "2",
2084
+ "values": [
2085
+ {
2086
+ "type": "number"
2087
+ }
2088
+ ],
2089
+ "optional": false,
2090
+ "required": false,
2091
+ "getter": false,
2092
+ "setter": false
2093
+ },
2094
+ {
2095
+ "name": "customerEmail",
2096
+ "type": "string | undefined",
2097
+ "complexType": {
2098
+ "original": "string",
2099
+ "resolved": "string | undefined",
2100
+ "references": {}
2101
+ },
2102
+ "mutable": false,
2103
+ "attr": "customer-email",
2104
+ "reflectToAttr": false,
2105
+ "docs": "Email to show when the order view carries none (a host that collected it at checkout).",
2106
+ "docsTags": [],
2107
+ "values": [
2108
+ {
2109
+ "type": "string"
2110
+ },
2111
+ {
2112
+ "type": "undefined"
2113
+ }
2114
+ ],
2115
+ "optional": true,
2116
+ "required": false,
2117
+ "getter": false,
2118
+ "setter": false
2119
+ },
2120
+ {
2121
+ "name": "orderId",
2122
+ "type": "string | undefined",
2123
+ "complexType": {
2124
+ "original": "string",
2125
+ "resolved": "string | undefined",
2126
+ "references": {}
2127
+ },
2128
+ "mutable": false,
2129
+ "attr": "order-id",
2130
+ "reflectToAttr": false,
2131
+ "docs": "The order to show. Falls back to `?orderId=` in the page URL.",
2132
+ "docsTags": [],
2133
+ "values": [
2134
+ {
2135
+ "type": "string"
2136
+ },
2137
+ {
2138
+ "type": "undefined"
2139
+ }
2140
+ ],
2141
+ "optional": true,
2142
+ "required": false,
2143
+ "getter": false,
2144
+ "setter": false
2145
+ },
2146
+ {
2147
+ "name": "showTickets",
2148
+ "type": "boolean",
2149
+ "complexType": {
2150
+ "original": "boolean",
2151
+ "resolved": "boolean",
2152
+ "references": {}
2153
+ },
2154
+ "mutable": false,
2155
+ "attr": "show-tickets",
2156
+ "reflectToAttr": false,
2157
+ "docs": "Mount tl-order-tickets under the summary (default true).",
2158
+ "docsTags": [
2159
+ {
2160
+ "name": "default",
2161
+ "text": "true"
2162
+ }
2163
+ ],
2164
+ "default": "true",
2165
+ "values": [
2166
+ {
2167
+ "type": "boolean"
2168
+ }
2169
+ ],
2170
+ "optional": false,
2171
+ "required": false,
2172
+ "getter": false,
2173
+ "setter": false
2174
+ }
2175
+ ],
2176
+ "methods": [],
2177
+ "events": [
2178
+ {
2179
+ "event": "tlError",
2180
+ "detail": "{ message: string; }",
2181
+ "bubbles": true,
2182
+ "complexType": {
2183
+ "original": "{ message: string }",
2184
+ "resolved": "{ message: string; }",
2185
+ "references": {}
2186
+ },
2187
+ "cancelable": true,
2188
+ "composed": true,
2189
+ "docs": "",
2190
+ "docsTags": []
2191
+ },
2192
+ {
2193
+ "event": "tlOrderLoaded",
2194
+ "detail": "{ order: TlOrderData; }",
2195
+ "bubbles": true,
2196
+ "complexType": {
2197
+ "original": "{ order: TlOrderData }",
2198
+ "resolved": "{ order: TlOrderData; }",
2199
+ "references": {
2200
+ "TlOrderData": {
2201
+ "location": "import",
2202
+ "path": "../../utils/order-summary",
2203
+ "id": "src/utils/order-summary.ts::TlOrderData",
2204
+ "referenceLocation": "TlOrderData"
2205
+ }
2206
+ }
2207
+ },
2208
+ "cancelable": true,
2209
+ "composed": true,
2210
+ "docs": "",
2211
+ "docsTags": []
2212
+ }
2213
+ ],
2214
+ "listeners": [],
2215
+ "styles": [],
2216
+ "slots": [],
2217
+ "parts": [],
2218
+ "dependents": [],
2219
+ "dependencies": [
2220
+ "tl-order-tickets"
2221
+ ],
2222
+ "dependencyGraph": {
2223
+ "tl-order-confirmation": [
2224
+ "tl-order-tickets"
2225
+ ],
2226
+ "tl-order-tickets": [
2227
+ "tl-ticket"
2228
+ ]
2229
+ }
2230
+ },
2231
+ {
2232
+ "filePath": "src/components/tl-order-tickets/tl-order-tickets.tsx",
2233
+ "encapsulation": "shadow",
2234
+ "tag": "tl-order-tickets",
2235
+ "readme": "# tl-order-tickets\n\n\n",
2236
+ "docs": "tl-order-tickets - renders all the tickets for an order as scannable QR\ncards with PDF download. Fetches the order through the SDK (order-access\ngated by the session), so it works on a confirmation page or in an account.\n\nUsage: <tl-order-tickets order-id=\"ord_xxx\"></tl-order-tickets>",
2237
+ "docsTags": [],
2238
+ "usage": {},
2239
+ "props": [
2240
+ {
2241
+ "name": "columns",
2242
+ "type": "number",
2243
+ "complexType": {
2244
+ "original": "number",
2245
+ "resolved": "number",
2246
+ "references": {}
2247
+ },
2248
+ "mutable": false,
2249
+ "attr": "columns",
2250
+ "reflectToAttr": false,
2251
+ "docs": "Columns in the grid (default 2).",
2252
+ "docsTags": [
2253
+ {
2254
+ "name": "default",
2255
+ "text": "2"
2256
+ }
2257
+ ],
2258
+ "default": "2",
2259
+ "values": [
2260
+ {
2261
+ "type": "number"
2262
+ }
2263
+ ],
2264
+ "optional": false,
2265
+ "required": false,
2266
+ "getter": false,
2267
+ "setter": false
2268
+ },
2269
+ {
2270
+ "name": "orderId",
2271
+ "type": "string",
2272
+ "complexType": {
2273
+ "original": "string",
2274
+ "resolved": "string",
2275
+ "references": {}
2276
+ },
2277
+ "mutable": false,
2278
+ "attr": "order-id",
2279
+ "reflectToAttr": false,
2280
+ "docs": "The order whose tickets to show.",
2281
+ "docsTags": [],
2282
+ "values": [
2283
+ {
2284
+ "type": "string"
2285
+ }
2286
+ ],
2287
+ "optional": false,
2288
+ "required": true,
2289
+ "getter": false,
2290
+ "setter": false
2291
+ }
2292
+ ],
2293
+ "methods": [],
2294
+ "events": [],
2295
+ "listeners": [],
2296
+ "styles": [],
2297
+ "slots": [],
2298
+ "parts": [],
2299
+ "dependents": [
2300
+ "tl-my-orders",
2301
+ "tl-order-confirmation"
2302
+ ],
2303
+ "dependencies": [
2304
+ "tl-ticket"
2305
+ ],
2306
+ "dependencyGraph": {
2307
+ "tl-order-tickets": [
2308
+ "tl-ticket"
2309
+ ],
2310
+ "tl-my-orders": [
2311
+ "tl-order-tickets"
2312
+ ],
2313
+ "tl-order-confirmation": [
2314
+ "tl-order-tickets"
2315
+ ]
2316
+ }
2317
+ },
2318
+ {
2319
+ "filePath": "src/components/tl-promo-code/tl-promo-code.tsx",
2320
+ "encapsulation": "shadow",
2321
+ "tag": "tl-promo-code",
2322
+ "readme": "# tl-promo-code\n\n\n",
2323
+ "docs": "tl-promo-code - an input plus Apply button that redeems a presale or promo\ncode for the current cart (POST /sales/presale-codes/redeem through the\nSDK). Redemption unlocks gated pricing on the customer; the SDK re-reads the\ncart and publishes cart:updated, so tl-cart and badges re-render on their own.\n\nThe API has no un-redeem, so the applied state offers only \"use a different\ncode\", which clears the input for another redemption.\n\nUsage: <tl-promo-code></tl-promo-code>",
2324
+ "docsTags": [
2325
+ {
2326
+ "name": "event",
2327
+ "text": "tlPromoApplied - a code was redeemed ({ code, benefit, alreadyHeld, cart })"
2328
+ },
2329
+ {
2330
+ "name": "event",
2331
+ "text": "tlError - the code was rejected"
2332
+ }
2333
+ ],
2334
+ "usage": {},
2335
+ "props": [
2336
+ {
2337
+ "name": "buttonLabel",
2338
+ "type": "string",
2339
+ "complexType": {
2340
+ "original": "string",
2341
+ "resolved": "string",
2342
+ "references": {}
2343
+ },
2344
+ "mutable": false,
2345
+ "attr": "button-label",
2346
+ "reflectToAttr": false,
2347
+ "docs": "Apply button label.",
2348
+ "docsTags": [
2349
+ {
2350
+ "name": "default",
2351
+ "text": "'Apply'"
2352
+ }
2353
+ ],
2354
+ "default": "'Apply'",
2355
+ "values": [
2356
+ {
2357
+ "type": "string"
2358
+ }
2359
+ ],
2360
+ "optional": false,
2361
+ "required": false,
2362
+ "getter": false,
2363
+ "setter": false
2364
+ },
2365
+ {
2366
+ "name": "placeholder",
2367
+ "type": "string",
2368
+ "complexType": {
2369
+ "original": "string",
2370
+ "resolved": "string",
2371
+ "references": {}
2372
+ },
2373
+ "mutable": false,
2374
+ "attr": "placeholder",
2375
+ "reflectToAttr": false,
2376
+ "docs": "Input placeholder.",
2377
+ "docsTags": [
2378
+ {
2379
+ "name": "default",
2380
+ "text": "'Promo or presale code'"
2381
+ }
2382
+ ],
2383
+ "default": "'Promo or presale code'",
2384
+ "values": [
2385
+ {
2386
+ "type": "string"
2387
+ }
2388
+ ],
2389
+ "optional": false,
2390
+ "required": false,
2391
+ "getter": false,
2392
+ "setter": false
2393
+ }
2394
+ ],
2395
+ "methods": [],
2396
+ "events": [
2397
+ {
2398
+ "event": "tlError",
2399
+ "detail": "{ message: string; }",
2400
+ "bubbles": true,
2401
+ "complexType": {
2402
+ "original": "{ message: string }",
2403
+ "resolved": "{ message: string; }",
2404
+ "references": {}
2405
+ },
2406
+ "cancelable": true,
2407
+ "composed": true,
2408
+ "docs": "",
2409
+ "docsTags": []
2410
+ },
2411
+ {
2412
+ "event": "tlPromoApplied",
2413
+ "detail": "TlPromoApplied",
2414
+ "bubbles": true,
2415
+ "complexType": {
2416
+ "original": "TlPromoApplied",
2417
+ "resolved": "TlPromoApplied",
2418
+ "references": {
2419
+ "TlPromoApplied": {
2420
+ "location": "local",
2421
+ "path": "/home/runner/work/live-elements/live-elements/src/components/tl-promo-code/tl-promo-code.tsx",
2422
+ "id": "src/components/tl-promo-code/tl-promo-code.tsx::TlPromoApplied"
2423
+ }
2424
+ }
2425
+ },
2426
+ "cancelable": true,
2427
+ "composed": true,
2428
+ "docs": "",
2429
+ "docsTags": []
2430
+ }
2431
+ ],
2432
+ "listeners": [],
2433
+ "styles": [],
2434
+ "slots": [],
2435
+ "parts": [],
2436
+ "dependents": [],
2437
+ "dependencies": [],
2438
+ "dependencyGraph": {}
2439
+ },
2440
+ {
2441
+ "filePath": "src/components/tl-seat-map/tl-seat-map.tsx",
2442
+ "encapsulation": "shadow",
2443
+ "tag": "tl-seat-map",
2444
+ "readme": "# tl-seat-map\n\n\n",
2445
+ "docs": "",
2446
+ "docsTags": [],
2447
+ "usage": {},
2448
+ "props": [
2449
+ {
2450
+ "name": "apiUrl",
2451
+ "type": "string",
2452
+ "complexType": {
2453
+ "original": "string",
2454
+ "resolved": "string",
2455
+ "references": {}
2456
+ },
2457
+ "mutable": false,
2458
+ "attr": "api-url",
2459
+ "reflectToAttr": false,
2460
+ "docs": "API URL for the seat map data",
2461
+ "docsTags": [
2462
+ {
2463
+ "name": "default",
2464
+ "text": "'https://api.ticketlayer.com'"
2465
+ }
2466
+ ],
2467
+ "default": "'https://api.ticketlayer.com'",
2468
+ "values": [
2469
+ {
2470
+ "type": "string"
2471
+ }
2472
+ ],
2473
+ "optional": false,
2474
+ "required": false,
2475
+ "getter": false,
2476
+ "setter": false
2477
+ },
2478
+ {
2479
+ "name": "hboUrl",
2480
+ "type": "string",
2481
+ "complexType": {
2482
+ "original": "string",
2483
+ "resolved": "string",
2484
+ "references": {}
2485
+ },
2486
+ "mutable": false,
2487
+ "attr": "hbo-url",
2488
+ "reflectToAttr": false,
2489
+ "docs": "Base URL for the hosted seat map (HBO URL)",
2490
+ "docsTags": [
2491
+ {
2492
+ "name": "default",
2493
+ "text": "'https://checkout.ticketlayer.com'"
2494
+ }
2495
+ ],
2496
+ "default": "'https://checkout.ticketlayer.com'",
2497
+ "values": [
2498
+ {
2499
+ "type": "string"
2500
+ }
2501
+ ],
2502
+ "optional": false,
2503
+ "required": false,
2504
+ "getter": false,
2505
+ "setter": false
2506
+ },
2507
+ {
2508
+ "name": "height",
2509
+ "type": "string",
2510
+ "complexType": {
2511
+ "original": "string",
2512
+ "resolved": "string",
2513
+ "references": {}
2514
+ },
2515
+ "mutable": false,
2516
+ "attr": "height",
2517
+ "reflectToAttr": false,
2518
+ "docs": "Height of the seat map",
2519
+ "docsTags": [
2520
+ {
2521
+ "name": "default",
2522
+ "text": "'600px'"
2523
+ }
2524
+ ],
2525
+ "default": "'600px'",
2526
+ "values": [
2527
+ {
2528
+ "type": "string"
2529
+ }
2530
+ ],
2531
+ "optional": false,
2532
+ "required": false,
2533
+ "getter": false,
2534
+ "setter": false
2535
+ },
2536
+ {
2537
+ "name": "occurrenceId",
2538
+ "type": "string",
2539
+ "complexType": {
2540
+ "original": "string",
2541
+ "resolved": "string",
2542
+ "references": {}
2543
+ },
2544
+ "mutable": false,
2545
+ "attr": "occurrence-id",
2546
+ "reflectToAttr": false,
2547
+ "docs": "Occurrence ID to show seat map for",
2548
+ "docsTags": [],
2549
+ "values": [
2550
+ {
2551
+ "type": "string"
2552
+ }
2553
+ ],
2554
+ "optional": false,
2555
+ "required": true,
2556
+ "getter": false,
2557
+ "setter": false
2558
+ },
2559
+ {
2560
+ "name": "width",
2561
+ "type": "string",
2562
+ "complexType": {
2563
+ "original": "string",
2564
+ "resolved": "string",
2565
+ "references": {}
2566
+ },
2567
+ "mutable": false,
2568
+ "attr": "width",
2569
+ "reflectToAttr": false,
2570
+ "docs": "Width of the seat map",
2571
+ "docsTags": [
2572
+ {
2573
+ "name": "default",
2574
+ "text": "'100%'"
2575
+ }
2576
+ ],
2577
+ "default": "'100%'",
2578
+ "values": [
2579
+ {
2580
+ "type": "string"
2581
+ }
2582
+ ],
2583
+ "optional": false,
2584
+ "required": false,
2585
+ "getter": false,
2586
+ "setter": false
2587
+ }
2588
+ ],
2589
+ "methods": [],
2590
+ "events": [
2591
+ {
2592
+ "event": "tlCartChange",
2593
+ "detail": "{ seatIds: string[]; }",
2594
+ "bubbles": true,
2595
+ "complexType": {
2596
+ "original": "{ seatIds: string[] }",
2597
+ "resolved": "{ seatIds: string[]; }",
2598
+ "references": {}
2599
+ },
2600
+ "cancelable": true,
2601
+ "composed": true,
2602
+ "docs": "Emitted when cart seats change",
2603
+ "docsTags": []
2604
+ },
2605
+ {
2606
+ "event": "tlError",
2607
+ "detail": "{ error: string; }",
2608
+ "bubbles": true,
2609
+ "complexType": {
2610
+ "original": "{ error: string }",
2611
+ "resolved": "{ error: string; }",
2612
+ "references": {}
2613
+ },
2614
+ "cancelable": true,
2615
+ "composed": true,
2616
+ "docs": "Emitted when an error occurs",
2617
+ "docsTags": []
2618
+ },
2619
+ {
2620
+ "event": "tlLoad",
2621
+ "detail": "{ seatMapId: string; }",
2622
+ "bubbles": true,
2623
+ "complexType": {
2624
+ "original": "{ seatMapId: string }",
2625
+ "resolved": "{ seatMapId: string; }",
2626
+ "references": {}
2627
+ },
2628
+ "cancelable": true,
2629
+ "composed": true,
2630
+ "docs": "Emitted when seat map is loaded",
2631
+ "docsTags": []
2632
+ },
2633
+ {
2634
+ "event": "tlReady",
2635
+ "detail": "void",
2636
+ "bubbles": true,
2637
+ "complexType": {
2638
+ "original": "void",
2639
+ "resolved": "void",
2640
+ "references": {}
2641
+ },
2642
+ "cancelable": true,
2643
+ "composed": true,
2644
+ "docs": "Emitted when seat map is ready",
2645
+ "docsTags": []
2646
+ },
2647
+ {
2648
+ "event": "tlSeatAdded",
2649
+ "detail": "{ seatId: string; ticketTypeId: string; }",
2650
+ "bubbles": true,
2651
+ "complexType": {
2652
+ "original": "{ seatId: string; ticketTypeId: string }",
2653
+ "resolved": "{ seatId: string; ticketTypeId: string; }",
2654
+ "references": {}
2655
+ },
2656
+ "cancelable": true,
2657
+ "composed": true,
2658
+ "docs": "Emitted when a seat is added to cart",
2659
+ "docsTags": []
2660
+ },
2661
+ {
2662
+ "event": "tlSeatRemoved",
2663
+ "detail": "{ seatId: string; }",
2664
+ "bubbles": true,
2665
+ "complexType": {
2666
+ "original": "{ seatId: string }",
2667
+ "resolved": "{ seatId: string; }",
2668
+ "references": {}
2669
+ },
2670
+ "cancelable": true,
2671
+ "composed": true,
2672
+ "docs": "Emitted when a seat is removed from cart",
2673
+ "docsTags": []
2674
+ }
2675
+ ],
2676
+ "listeners": [],
2677
+ "styles": [],
2678
+ "slots": [],
2679
+ "parts": [],
2680
+ "dependents": [],
2681
+ "dependencies": [],
2682
+ "dependencyGraph": {}
2683
+ },
2684
+ {
2685
+ "filePath": "src/components/tl-ticket/tl-ticket.tsx",
2686
+ "encapsulation": "shadow",
2687
+ "tag": "tl-ticket",
2688
+ "readme": "# tl-ticket\n\n\n",
2689
+ "docs": "tl-ticket - a single event ticket: a scannable QR (the redemption token),\nticket name / seat / holder, and a PDF download. Greys out + stamps\nUsed/Void when redeemed or cancelled.",
2690
+ "docsTags": [],
2691
+ "usage": {},
2692
+ "props": [
2693
+ {
2694
+ "name": "orderId",
2695
+ "type": "string",
2696
+ "complexType": {
2697
+ "original": "string",
2698
+ "resolved": "string",
2699
+ "references": {}
2700
+ },
2701
+ "mutable": false,
2702
+ "attr": "order-id",
2703
+ "reflectToAttr": false,
2704
+ "docs": "Order id this ticket belongs to (for the PDF download).",
2705
+ "docsTags": [],
2706
+ "values": [
2707
+ {
2708
+ "type": "string"
2709
+ }
2710
+ ],
2711
+ "optional": false,
2712
+ "required": true,
2713
+ "getter": false,
2714
+ "setter": false
2715
+ },
2716
+ {
2717
+ "name": "ticket",
2718
+ "type": "TlTicketData",
2719
+ "complexType": {
2720
+ "original": "TlTicketData",
2721
+ "resolved": "TlTicketData",
2722
+ "references": {
2723
+ "TlTicketData": {
2724
+ "location": "local",
2725
+ "path": "/home/runner/work/live-elements/live-elements/src/components/tl-ticket/tl-ticket.tsx",
2726
+ "id": "src/components/tl-ticket/tl-ticket.tsx::TlTicketData"
2727
+ }
2728
+ }
2729
+ },
2730
+ "mutable": false,
2731
+ "reflectToAttr": false,
2732
+ "docs": "The ticket to render.",
2733
+ "docsTags": [],
2734
+ "values": [
2735
+ {
2736
+ "type": "TlTicketData"
2737
+ }
2738
+ ],
2739
+ "optional": false,
2740
+ "required": true,
2741
+ "getter": false,
2742
+ "setter": false
2743
+ }
2744
+ ],
2745
+ "methods": [],
2746
+ "events": [],
2747
+ "listeners": [],
2748
+ "styles": [],
2749
+ "slots": [],
2750
+ "parts": [],
2751
+ "dependents": [
2752
+ "tl-order-tickets"
2753
+ ],
2754
+ "dependencies": [],
2755
+ "dependencyGraph": {
2756
+ "tl-order-tickets": [
2757
+ "tl-ticket"
2758
+ ]
2759
+ }
2760
+ },
2761
+ {
2762
+ "filePath": "src/components/tl-ticket-selector/tl-ticket-selector.tsx",
2763
+ "encapsulation": "shadow",
2764
+ "tag": "tl-ticket-selector",
2765
+ "readme": "# tl-ticket-selector\n\n\n",
2766
+ "docs": "",
2767
+ "docsTags": [],
2768
+ "usage": {},
2769
+ "props": [
2770
+ {
2771
+ "name": "buttonLabel",
2772
+ "type": "string",
2773
+ "complexType": {
2774
+ "original": "string",
2775
+ "resolved": "string",
2776
+ "references": {}
2777
+ },
2778
+ "mutable": false,
2779
+ "attr": "button-label",
2780
+ "reflectToAttr": false,
2781
+ "docs": "Button label",
2782
+ "docsTags": [
2783
+ {
2784
+ "name": "default",
2785
+ "text": "'Add to Cart'"
2786
+ }
2787
+ ],
2788
+ "default": "'Add to Cart'",
2789
+ "values": [
2790
+ {
2791
+ "type": "string"
2792
+ }
2793
+ ],
2794
+ "optional": false,
2795
+ "required": false,
2796
+ "getter": false,
2797
+ "setter": false
2798
+ },
2799
+ {
2800
+ "name": "eventId",
2801
+ "type": "string",
2802
+ "complexType": {
2803
+ "original": "string",
2804
+ "resolved": "string",
2805
+ "references": {}
2806
+ },
2807
+ "mutable": false,
2808
+ "attr": "event-id",
2809
+ "reflectToAttr": false,
2810
+ "docs": "Event ID",
2811
+ "docsTags": [],
2812
+ "values": [
2813
+ {
2814
+ "type": "string"
2815
+ }
2816
+ ],
2817
+ "optional": false,
2818
+ "required": true,
2819
+ "getter": false,
2820
+ "setter": false
2821
+ },
2822
+ {
2823
+ "name": "occurrenceId",
2824
+ "type": "string",
2825
+ "complexType": {
2826
+ "original": "string",
2827
+ "resolved": "string",
2828
+ "references": {}
2829
+ },
2830
+ "mutable": false,
2831
+ "attr": "occurrence-id",
2832
+ "reflectToAttr": false,
2833
+ "docs": "Occurrence ID",
2834
+ "docsTags": [],
2835
+ "values": [
2836
+ {
2837
+ "type": "string"
2838
+ }
2839
+ ],
2840
+ "optional": false,
2841
+ "required": true,
2842
+ "getter": false,
2843
+ "setter": false
2844
+ },
2845
+ {
2846
+ "name": "showButton",
2847
+ "type": "boolean",
2848
+ "complexType": {
2849
+ "original": "boolean",
2850
+ "resolved": "boolean",
2851
+ "references": {}
2852
+ },
2853
+ "mutable": false,
2854
+ "attr": "show-button",
2855
+ "reflectToAttr": false,
2856
+ "docs": "Show add to cart button",
2857
+ "docsTags": [
2858
+ {
2859
+ "name": "default",
2860
+ "text": "true"
2861
+ }
2862
+ ],
2863
+ "default": "true",
2864
+ "values": [
2865
+ {
2866
+ "type": "boolean"
2867
+ }
2868
+ ],
2869
+ "optional": false,
2870
+ "required": false,
2871
+ "getter": false,
2872
+ "setter": false
2873
+ }
2874
+ ],
2875
+ "methods": [],
2876
+ "events": [
2877
+ {
2878
+ "event": "tlAddToCart",
2879
+ "detail": "{ items: AddToCartItem[]; }",
2880
+ "bubbles": true,
2881
+ "complexType": {
2882
+ "original": "{ items: AddToCartItem[] }",
2883
+ "resolved": "{ items: AddToCartItem[]; }",
2884
+ "references": {
2885
+ "AddToCartItem": {
2886
+ "location": "local",
2887
+ "path": "/home/runner/work/live-elements/live-elements/src/components/tl-ticket-selector/tl-ticket-selector.tsx",
2888
+ "id": "src/components/tl-ticket-selector/tl-ticket-selector.tsx::AddToCartItem"
2889
+ }
2890
+ }
2891
+ },
2892
+ "cancelable": true,
2893
+ "composed": true,
2894
+ "docs": "Emitted when items are added to cart",
2895
+ "docsTags": []
2896
+ },
2897
+ {
2898
+ "event": "tlError",
2899
+ "detail": "{ message: string; }",
2900
+ "bubbles": true,
2901
+ "complexType": {
2902
+ "original": "{ message: string }",
2903
+ "resolved": "{ message: string; }",
2904
+ "references": {}
2905
+ },
2906
+ "cancelable": true,
2907
+ "composed": true,
2908
+ "docs": "Emitted on error",
2909
+ "docsTags": []
2910
+ },
2911
+ {
2912
+ "event": "tlQuantityChange",
2913
+ "detail": "{ ticketTypeId: string; quantity: number; total: number; }",
2914
+ "bubbles": true,
2915
+ "complexType": {
2916
+ "original": "{ ticketTypeId: string; quantity: number; total: number }",
2917
+ "resolved": "{ ticketTypeId: string; quantity: number; total: number; }",
2918
+ "references": {}
2919
+ },
2920
+ "cancelable": true,
2921
+ "composed": true,
2922
+ "docs": "Emitted when quantity changes",
2923
+ "docsTags": []
2924
+ }
2925
+ ],
2926
+ "listeners": [],
2927
+ "styles": [],
2928
+ "slots": [],
2929
+ "parts": [],
2930
+ "dependents": [
2931
+ "tl-buy-modal"
2932
+ ],
2933
+ "dependencies": [],
2934
+ "dependencyGraph": {
2935
+ "tl-buy-modal": [
2936
+ "tl-ticket-selector"
2937
+ ]
2938
+ }
2939
+ }
2940
+ ],
2941
+ "typeLibrary": {
2942
+ "src/components/tl-buy-tickets-button/tl-buy-tickets-button.tsx::ButtonState": {
2943
+ "declaration": "export type ButtonState = 'available' | 'soldOut' | 'waitlist' | 'comingSoon';",
2944
+ "docstring": "",
2945
+ "path": "src/components/tl-buy-tickets-button/tl-buy-tickets-button.tsx"
2946
+ },
2947
+ "src/components/tl-buy-tickets-button/tl-buy-tickets-button.tsx::ButtonVariant": {
2948
+ "declaration": "export type ButtonVariant = 'primary' | 'secondary' | 'outline';",
2949
+ "docstring": "",
2950
+ "path": "src/components/tl-buy-tickets-button/tl-buy-tickets-button.tsx"
2951
+ },
2952
+ "src/components/tl-buy-tickets-button/tl-buy-tickets-button.tsx::ButtonSize": {
2953
+ "declaration": "export type ButtonSize = 'sm' | 'md' | 'lg';",
2954
+ "docstring": "",
2955
+ "path": "src/components/tl-buy-tickets-button/tl-buy-tickets-button.tsx"
2956
+ },
2957
+ "src/components/tl-cart/tl-cart.tsx::TlCartData": {
2958
+ "declaration": "export interface TlCartData {\n items: TlCartItem[];\n subtotal: number;\n fees: number;\n total: number;\n currency: string;\n itemCount: number;\n}",
2959
+ "docstring": "",
2960
+ "path": "src/components/tl-cart/tl-cart.tsx"
2961
+ },
2962
+ "src/components/tl-event-card/tl-event-card.tsx::TlEventCardEvent": {
2963
+ "declaration": "export interface TlEventCardEvent {\n id: string;\n name: string;\n slug?: string;\n description?: string;\n shortDescription?: string;\n imageUrl?: string;\n thumbnailUrl?: string;\n category?: string;\n venue?: {\n id: string;\n name: string;\n city: string;\n };\n nextOccurrence?: {\n startsAt: string;\n };\n availabilityStatus: 'available' | 'limited' | 'sold_out';\n}",
2964
+ "docstring": "",
2965
+ "path": "src/components/tl-event-card/tl-event-card.tsx"
2966
+ },
2967
+ "src/components/tl-login/tl-login.tsx::TlAuthChanged": {
2968
+ "declaration": "export interface TlAuthChanged {\n customer: SDKCustomer | null;\n authenticated: boolean;\n}",
2969
+ "docstring": "",
2970
+ "path": "src/components/tl-login/tl-login.tsx"
2971
+ },
2972
+ "src/components/tl-occurrence-selector/tl-occurrence-selector.tsx::TlOccurrenceSelectorTheme": {
2973
+ "declaration": "export interface TlOccurrenceSelectorTheme {\n primaryColor?: string;\n primaryForeground?: string;\n backgroundColor?: string;\n foregroundColor?: string;\n mutedColor?: string;\n mutedForeground?: string;\n borderColor?: string;\n borderRadius?: string;\n fontFamily?: string;\n}",
2974
+ "docstring": "Theme configuration for styling",
2975
+ "path": "src/components/tl-occurrence-selector/tl-occurrence-selector.tsx"
2976
+ },
2977
+ "src/components/tl-occurrence-selector/tl-occurrence-selector.tsx::TlOccurrence": {
2978
+ "declaration": "export interface TlOccurrence {\n id: string;\n startsAt: string;\n endsAt?: string;\n status?: string;\n availableCapacity?: number;\n soldOut?: boolean;\n}",
2979
+ "docstring": "Occurrence data structure",
2980
+ "path": "src/components/tl-occurrence-selector/tl-occurrence-selector.tsx"
2981
+ },
2982
+ "src/components/tl-promo-code/tl-promo-code.tsx::TlPromoApplied": {
2983
+ "declaration": "export interface TlPromoApplied extends PresaleRedemption {\n code: string;\n cart: unknown | null;\n}",
2984
+ "docstring": "",
2985
+ "path": "src/components/tl-promo-code/tl-promo-code.tsx"
2986
+ },
2987
+ "src/components/tl-ticket/tl-ticket.tsx::TlTicketData": {
2988
+ "declaration": "export interface TlTicketData {\n id: string;\n barcode: string;\n type: string;\n status: string;\n holderName: string | null;\n name: string;\n admissionStatus: string;\n eventOccurrenceId: string | null;\n seatLabel: string | null;\n}",
2989
+ "docstring": "",
2990
+ "path": "src/components/tl-ticket/tl-ticket.tsx"
2991
+ },
2992
+ "src/components/tl-ticket-selector/tl-ticket-selector.tsx::AddToCartItem": {
2993
+ "declaration": "export interface AddToCartItem {\n ticketTypeId: string;\n quantity: number;\n}",
2994
+ "docstring": "",
2995
+ "path": "src/components/tl-ticket-selector/tl-ticket-selector.tsx"
2996
+ },
2997
+ "src/utils/sdk-connector.ts::OrderResult": {
2998
+ "declaration": "export interface OrderResult {\n orderId: string;\n orderNumber: string;\n}",
2999
+ "docstring": "",
3000
+ "path": "src/utils/sdk-connector.ts"
3001
+ },
3002
+ "src/utils/order-summary.ts::TlOrderData": {
3003
+ "declaration": "export interface TlOrderData {\n id: string;\n orderNumber: string;\n status: string;\n paymentStatus?: string;\n currency: string;\n items: TlOrderItem[];\n subtotal: number | string;\n totalFees?: number | string;\n totalTax?: number | string;\n totalDiscounts?: number | string;\n total: number | string;\n tickets?: TlOrderTicketRef[];\n createdAt?: string;\n // Not on the sales order view today; read defensively if a later view adds them.\n eventName?: string | null;\n customerEmail?: string | null;\n customer?: { email?: string | null } | null;\n}",
3004
+ "docstring": "",
3005
+ "path": "src/utils/order-summary.ts"
3006
+ }
3007
+ }
3008
+ }