@seatlayer/core 0.53.0 → 0.55.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 (78) hide show
  1. package/README.md +2 -2
  2. package/dist/categoryInventory-BwarniiK.d.ts +109 -0
  3. package/dist/categoryInventory-D3qPwfKz.d.cts +109 -0
  4. package/dist/chunk-55NOSZK5.js +1 -0
  5. package/dist/chunk-6VTTBC5F.js +1 -0
  6. package/dist/chunk-6XJN4REG.js +1 -0
  7. package/dist/chunk-7PT7OQUO.js +1 -0
  8. package/dist/chunk-AQKYUJBX.js +1 -0
  9. package/dist/chunk-CXF32VPG.js +1 -0
  10. package/dist/chunk-DNGP2HDT.js +1 -0
  11. package/dist/chunk-EQM4FFN5.js +1 -0
  12. package/dist/chunk-HHM3PB66.js +1 -0
  13. package/dist/chunk-PXWKSYCK.js +1 -0
  14. package/dist/chunk-VDZ24QVV.js +1 -0
  15. package/dist/chunk-VI2CLV3Y.js +1 -0
  16. package/dist/core/chart-ops/index.cjs +1 -0
  17. package/dist/core/chart-ops/index.d.cts +1235 -0
  18. package/dist/core/chart-ops/index.d.ts +1235 -0
  19. package/dist/core/chart-ops/index.js +1 -0
  20. package/dist/core/color.cjs +1 -0
  21. package/dist/core/color.d.cts +192 -0
  22. package/dist/core/color.d.ts +192 -0
  23. package/dist/core/color.js +1 -0
  24. package/dist/core/inventory/index.cjs +1 -0
  25. package/dist/core/inventory/index.d.cts +209 -0
  26. package/dist/core/inventory/index.d.ts +209 -0
  27. package/dist/core/inventory/index.js +1 -0
  28. package/dist/core/layout/index.cjs +1 -0
  29. package/dist/core/layout/index.d.cts +376 -0
  30. package/dist/core/layout/index.d.ts +376 -0
  31. package/dist/core/layout/index.js +1 -0
  32. package/dist/core/quality/index.cjs +1 -0
  33. package/dist/core/quality/index.d.cts +132 -0
  34. package/dist/core/quality/index.d.ts +132 -0
  35. package/dist/core/quality/index.js +1 -0
  36. package/dist/core/render-assets/index.cjs +1 -0
  37. package/dist/core/render-assets/index.d.cts +99 -0
  38. package/dist/core/render-assets/index.d.ts +99 -0
  39. package/dist/core/render-assets/index.js +1 -0
  40. package/dist/core/seatConfidence.cjs +1 -1
  41. package/dist/core/seatConfidence.d.cts +1 -1
  42. package/dist/core/seatConfidence.d.ts +1 -1
  43. package/dist/core/seatConfidence.js +1 -1
  44. package/dist/core/sections/index.cjs +1 -0
  45. package/dist/core/sections/index.d.cts +346 -0
  46. package/dist/core/sections/index.d.ts +346 -0
  47. package/dist/core/sections/index.js +1 -0
  48. package/dist/{de-75NWRKC5.js → de-WPX4D3SY.js} +1 -1
  49. package/dist/{es-BM7EJ7PW.js → es-6KAJQVVX.js} +1 -1
  50. package/dist/{fr-HPXQHIB4.js → fr-5DTMRBN5.js} +1 -1
  51. package/dist/index.cjs +1 -1
  52. package/dist/index.d.cts +85 -534
  53. package/dist/index.d.ts +85 -534
  54. package/dist/index.js +1 -1
  55. package/dist/labeling-BmCzW50y.d.ts +90 -0
  56. package/dist/labeling-VfJBEOn0.d.cts +90 -0
  57. package/dist/layout-ClQkmixY.d.ts +181 -0
  58. package/dist/layout-Dlv5bIf2.d.cts +181 -0
  59. package/dist/renderedQuality-B3jgdgPO.d.ts +113 -0
  60. package/dist/renderedQuality-bDkUOyBL.d.cts +113 -0
  61. package/dist/renderer-B_g-W_QB.d.ts +534 -0
  62. package/dist/renderer-DySMcKAR.d.cts +534 -0
  63. package/dist/sections-DIzgtDjF.d.ts +123 -0
  64. package/dist/sections-Dna1nZgR.d.cts +123 -0
  65. package/dist/segmentedRowModel-BNXEUeHp.d.cts +75 -0
  66. package/dist/segmentedRowModel-COXw4GCh.d.ts +75 -0
  67. package/dist/ticketRestrictions-CzchbX_o.d.cts +72 -0
  68. package/dist/ticketRestrictions-DaYOCpEw.d.ts +72 -0
  69. package/dist/{types-tLOunI-B.d.cts → types-DTSG6_Hq.d.cts} +238 -761
  70. package/dist/{types-tLOunI-B.d.ts → types-DTSG6_Hq.d.ts} +238 -761
  71. package/dist/view3d/crossfade/panorama.d.cts +1 -1
  72. package/dist/view3d/crossfade/panorama.d.ts +1 -1
  73. package/dist/view3d/index.cjs +27 -27
  74. package/dist/view3d/index.d.cts +109 -2
  75. package/dist/view3d/index.d.ts +109 -2
  76. package/dist/view3d/index.js +26 -26
  77. package/package.json +94 -5
  78. package/dist/chunk-54A7LIL5.js +0 -1
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@seatlayer/core",
3
- "version": "0.53.0",
4
- "description": "Framework-agnostic seat-rendering engine (Konva) shared by the SeatLayer SDKs.",
3
+ "version": "0.55.0",
4
+ "description": "Framework-agnostic seat-rendering runtime shared by the SeatLayer SDKs.",
5
5
  "license": "SEE LICENSE IN LICENSE",
6
6
  "homepage": "https://docs.seatlayer.io/buyer-sdk/install/",
7
7
  "bugs": {
@@ -11,7 +11,7 @@
11
11
  "main": "./dist/index.cjs",
12
12
  "module": "./dist/index.js",
13
13
  "types": "./dist/index.d.ts",
14
- "//deep-subpaths": "`./core/seatConfidence`, `./view/panoramaDelivery`, and `./view3d/crossfade/panorama` are engine modules the buyer widget imports by their path inside the mirrored src/ tree instead of through a barrel. The app's vendored widget resolves the same modules relatively, and scripts/sync-widget.mjs rewrites package deep paths into matching app-relative paths because dist/ mirrors src/ and src/ mirrors the app src/. Renaming a subpath silently breaks that rewrite. NOTE: keys inside `exports` must be subpaths or conditions, so this note lives here; a comment key in exports makes Node and TypeScript reject the whole map.",
14
+ "//deep-subpaths": "`./core/seatConfidence`, `./core/inventory`, `./core/sections`, `./core/layout`, `./core/quality`, `./core/render-assets`, `./core/chart-ops`, `./core/color`, `./view/panoramaDelivery`, and `./view3d/crossfade/panorama` are engine modules exposed as stable deep subpaths. Some are imported by the buyer widget through the mirrored src/ tree instead of a barrel; the app's vendored widget resolves those modules relatively, and scripts/sync-widget.mjs rewrites package deep paths into matching app-relative paths because dist/ mirrors src/ and src/ mirrors the app src/. Renaming a subpath silently breaks that rewrite. NOTE: keys inside `exports` must be subpaths or conditions, so this note lives here; a comment key in exports makes Node and TypeScript reject the whole map.",
15
15
  "typesVersions": {
16
16
  "*": {
17
17
  "view3d": [
@@ -20,6 +20,27 @@
20
20
  "core/seatConfidence": [
21
21
  "./dist/core/seatConfidence.d.ts"
22
22
  ],
23
+ "core/color": [
24
+ "./dist/core/color.d.ts"
25
+ ],
26
+ "core/inventory": [
27
+ "./dist/core/inventory/index.d.ts"
28
+ ],
29
+ "core/sections": [
30
+ "./dist/core/sections/index.d.ts"
31
+ ],
32
+ "core/layout": [
33
+ "./dist/core/layout/index.d.ts"
34
+ ],
35
+ "core/quality": [
36
+ "./dist/core/quality/index.d.ts"
37
+ ],
38
+ "core/render-assets": [
39
+ "./dist/core/render-assets/index.d.ts"
40
+ ],
41
+ "core/chart-ops": [
42
+ "./dist/core/chart-ops/index.d.ts"
43
+ ],
23
44
  "view/panoramaDelivery": [
24
45
  "./dist/view/panoramaDelivery.d.ts"
25
46
  ],
@@ -62,6 +83,76 @@
62
83
  "default": "./dist/core/seatConfidence.cjs"
63
84
  }
64
85
  },
86
+ "./core/color": {
87
+ "import": {
88
+ "types": "./dist/core/color.d.ts",
89
+ "default": "./dist/core/color.js"
90
+ },
91
+ "require": {
92
+ "types": "./dist/core/color.d.cts",
93
+ "default": "./dist/core/color.cjs"
94
+ }
95
+ },
96
+ "./core/inventory": {
97
+ "import": {
98
+ "types": "./dist/core/inventory/index.d.ts",
99
+ "default": "./dist/core/inventory/index.js"
100
+ },
101
+ "require": {
102
+ "types": "./dist/core/inventory/index.d.cts",
103
+ "default": "./dist/core/inventory/index.cjs"
104
+ }
105
+ },
106
+ "./core/sections": {
107
+ "import": {
108
+ "types": "./dist/core/sections/index.d.ts",
109
+ "default": "./dist/core/sections/index.js"
110
+ },
111
+ "require": {
112
+ "types": "./dist/core/sections/index.d.cts",
113
+ "default": "./dist/core/sections/index.cjs"
114
+ }
115
+ },
116
+ "./core/layout": {
117
+ "import": {
118
+ "types": "./dist/core/layout/index.d.ts",
119
+ "default": "./dist/core/layout/index.js"
120
+ },
121
+ "require": {
122
+ "types": "./dist/core/layout/index.d.cts",
123
+ "default": "./dist/core/layout/index.cjs"
124
+ }
125
+ },
126
+ "./core/quality": {
127
+ "import": {
128
+ "types": "./dist/core/quality/index.d.ts",
129
+ "default": "./dist/core/quality/index.js"
130
+ },
131
+ "require": {
132
+ "types": "./dist/core/quality/index.d.cts",
133
+ "default": "./dist/core/quality/index.cjs"
134
+ }
135
+ },
136
+ "./core/render-assets": {
137
+ "import": {
138
+ "types": "./dist/core/render-assets/index.d.ts",
139
+ "default": "./dist/core/render-assets/index.js"
140
+ },
141
+ "require": {
142
+ "types": "./dist/core/render-assets/index.d.cts",
143
+ "default": "./dist/core/render-assets/index.cjs"
144
+ }
145
+ },
146
+ "./core/chart-ops": {
147
+ "import": {
148
+ "types": "./dist/core/chart-ops/index.d.ts",
149
+ "default": "./dist/core/chart-ops/index.js"
150
+ },
151
+ "require": {
152
+ "types": "./dist/core/chart-ops/index.d.cts",
153
+ "default": "./dist/core/chart-ops/index.cjs"
154
+ }
155
+ },
65
156
  "./view/panoramaDelivery": {
66
157
  "import": {
67
158
  "types": "./dist/view/panoramaDelivery.d.ts",
@@ -101,8 +192,6 @@
101
192
  "seating",
102
193
  "seat-map",
103
194
  "seatlayer",
104
- "konva",
105
- "canvas",
106
195
  "seating-chart",
107
196
  "reserved-seating"
108
197
  ],
@@ -1 +0,0 @@
1
- var Ie=[{key:"wheelchair",label:"Wheelchair space",short:"Wheelchair",icon:"\u267F"},{key:"companion",label:"Companion seat",short:"Companion",icon:"\u{1F9D1}\u200D\u{1F91D}\u200D\u{1F9D1}"},{key:"semi-ambulatory",label:"Semi-ambulatory (limited mobility)",short:"Limited mobility",icon:"\u{1F9AF}"},{key:"hearing",label:"Assistive listening",short:"Hearing",icon:"\u{1F9BB}"},{key:"cart",label:"CART live-caption view",short:"CART captions",icon:"CC"},{key:"sign-language",label:"Sign-language view",short:"Sign language",icon:"\u{1F91F}"},{key:"plus-size",label:"Plus-size seat",short:"Plus-size",icon:"\u{1F4BA}"},{key:"lift-armrest",label:"Lift-up armrest",short:"Lift armrest",icon:"\u2195\uFE0F"}],Ce=new Map(Ie.map(e=>[e.key,e]));function It(e){return Ce.get(e)}var Ee={wheelchair:"#3b82f6",companion:"#8b5cf6","semi-ambulatory":"#0ea5e9",hearing:"#14b8a6",cart:"#7c3aed","sign-language":"#f59e0b","plus-size":"#ec4899","lift-armrest":"#22c55e"};function Ct(e){let t=e?.[0];return t&&Ee[t]||"#3b82f6"}var Te=[{key:"obstructedView",label:"Obstructed view",short:"Obstructed",icon:"\u26D4"},{key:"restrictedView",label:"Restricted view",short:"Restricted",icon:"\u{1F441}"},{key:"premium",label:"Premium seat",short:"Premium",icon:"\u2605"}],Ae=new Map(Te.map(e=>[e.key,e]));function Et(e){return Ae.get(e)}var Tt=8,At=24,Oe=["reference-focal","bar","entrance","exit","restroom","screen","sound","concession","coat","wall","rail","suite","obstruction"],ke=new Set(Oe);function Ot(e){switch(e.type){case"row":case"table":case"gaArea":case"booth":case"section":return"interactive";case"decorImage":return e.layer==="foreground"?"foreground":"background";case"shape":return e.role&&ke.has(e.role)?"surroundings":"background";case"text":return"background";default:return"interactive"}}var kt="seatmap.chart";var L=.02291666666666667,_t=1/L,Le=58,_e=Le*L,q=0,J=3,Z=0,D=120,je=0,Fe=45,De=7,_=1.2;function N(e,t,n,r){return Number.isFinite(e)?Math.max(t,Math.min(n,e)):r}function jt(e){return Number.isFinite(e)?Math.max(q,Math.min(J,Math.round(e))):q}function Ne(e){return!Number.isFinite(e)||!Number.isInteger(e)||e<0?0:e<=De?e:J}function Q(e,t={}){let n=N(t.floorBaseHeightM,Z,D,0),r=Math.min(D,n+Ne(e.elevation)*_e),o=e.height===void 0?r:N(e.height,Z,D,r),s=N(e.rake,je,Fe,0);return{height:o,rake:s}}var ee=e=>Math.max(1,e.fontSize*.6+(e.letterSpacing??0));function Be(e,t){let n=e.text.split(/\r?\n/);if(!e.width)return Math.max(1,n.length);let r=Math.max(1,Math.floor(t/ee(e))),o=0;for(let s of n){if(!s.length){o+=1;continue}let i=0;for(let a of s.split(/\s+/)){let m=a.length;i&&i+1+m<=r?i+=1+m:(o+=Math.max(1,Math.ceil(m/r)),i=m%r)}}return Math.max(1,o)}function te(e){let t=e.background?.padding??0,n=e.text.split(/\r?\n/),r=Math.max(1,...n.map(a=>a.length))*ee(e),o=e.width??r+t*2,s=Math.max(1,o-t*2),i=Be(e,s);return{width:o,height:i*e.fontSize*(e.lineHeight??1.2)+t*2,lineCount:i,padding:t}}var Nt=Math.PI/180;function He(e){let t=0,n=0;for(let o of e)t+=o.x,n+=o.y;let r=e.length||1;return{x:t/r,y:n/r}}function Bt(e){return e.length?He(e):null}function ne(e,t){let n=1-t,r=n*n*n,o=3*n*n*t,s=3*n*t*t,i=t*t*t;return{x:r*e.start.x+o*e.control1.x+s*e.control2.x+i*e.end.x,y:r*e.start.y+o*e.control1.y+s*e.control2.y+i*e.end.y}}function re(e,t,n=192){if(!Number.isInteger(t)||t<1)throw new Error("Path point count must be a positive integer");if(t===1)return[ne(e,.5)];let r=Array.from({length:n+1},(m,x)=>ne(e,x/n)),o=new Float64Array(r.length);for(let m=1;m<r.length;m+=1){let x=r[m].x-r[m-1].x,c=r[m].y-r[m-1].y;o[m]=o[m-1]+Math.hypot(x,c)}let s=o[o.length-1];if(s<=1e-9)return Array.from({length:t},()=>({...e.start}));let i=[],a=1;for(let m=0;m<t;m+=1){let x=s*m/(t-1);for(;a<o.length-1&&o[a]<x;)a+=1;let c=o[a-1],u=o[a],l=u===c?0:(x-c)/(u-c);i.push({x:r[a-1].x+(r[a].x-r[a-1].x)*l,y:r[a-1].y+(r[a].y-r[a-1].y)*l})}return i}function Ue(e,t,n){let r=n.x-t.x,o=n.y-t.y,s=r*r+o*o,i=s?Math.max(0,Math.min(1,((e.x-t.x)*r+(e.y-t.y)*o)/s)):0;return Math.hypot(e.x-(t.x+i*r),e.y-(t.y+i*o))}function Xe(e,t){let n=1/0;for(let r of t)if(!(r.length<2))for(let o=0,s=r.length-1;o<r.length;s=o++){let i=Ue(e,r[s],r[o]);i<n&&(n=i)}return n}function oe(e,t){let n=!1;for(let r=0,o=t.length-1;r<t.length;o=r++){let s=t[r].x,i=t[r].y,a=t[o].x,m=t[o].y;i>e.y!=m>e.y&&e.x<(a-s)*(e.y-i)/(m-i)+s&&(n=!n)}return n}function Ge(e,t,n){let r=oe(e,t)&&!n.some(s=>oe(e,s)),o=Xe(e,[t,...n]);return r?o:-o}function E(e,t,n,r,o){let s=Ge({x:e,y:t},r,o);return{x:e,y:t,h:n,d:s,max:s+n*Math.SQRT2}}var B=class{constructor(){this.items=[]}get size(){return this.items.length}push(t){let n=this.items;n.push(t);let r=n.length-1;for(;r>0;){let o=r-1>>1;if(n[o].max>=n[r].max)break;[n[o],n[r]]=[n[r],n[o]],r=o}}pop(){let t=this.items,n=t[0],r=t.pop();if(t.length&&r){t[0]=r;let o=0;for(;;){let s=o*2+1,i=s+1,a=o;if(s<t.length&&t[s].max>t[a].max&&(a=s),i<t.length&&t[i].max>t[a].max&&(a=i),a===o)break;[t[a],t[o]]=[t[o],t[a]],o=a}}return n}};function ie(e){if(e.length<3)return 0;let t=0;for(let n=0,r=e.length-1;n<e.length;r=n++)t+=(e[r].x+e[n].x)*(e[r].y-e[n].y);return Math.abs(t)/2}function Xt(e,t){return Math.max(0,ie(e)-(t??[]).reduce((n,r)=>n+ie(r),0))}function se(e,t){let n=t??[];if(!e.length)return{point:{x:0,y:0},radius:0};if(e.length<3){let y=e.reduce((d,g)=>d+g.x,0)/e.length,b=e.reduce((d,g)=>d+g.y,0)/e.length;return{point:{x:y,y:b},radius:0}}let r=1/0,o=1/0,s=-1/0,i=-1/0;for(let y of e)y.x<r&&(r=y.x),y.y<o&&(o=y.y),y.x>s&&(s=y.x),y.y>i&&(i=y.y);let a=s-r,m=i-o,x=Math.min(a,m);if(!(x>0))return{point:{x:(r+s)/2,y:(o+i)/2},radius:0};let c=Math.max(a,m)/150,u=new B,l=x/2;for(let y=r;y<s;y+=x)for(let b=o;b<i;b+=x)u.push(E(y+l,b+l,l,e,n));let p=E(r+a/2,o+m/2,0,e,n),S=0;for(;u.size;){let y=u.pop();if(!y)break;y.d>p.d&&(p=y),!(y.max-p.d<=c)&&(S>=4e3||(S+=1,l=y.h/2,u.push(E(y.x-l,y.y-l,l,e,n)),u.push(E(y.x+l,y.y-l,l,e,n)),u.push(E(y.x-l,y.y+l,l,e,n)),u.push(E(y.x+l,y.y+l,l,e,n))))}return{point:{x:p.x,y:p.y},radius:Math.max(0,p.d)}}function zt(e,t,n){return Math.max(t,Math.min(n,e))}function Vt(e,t,n){return e<t?t:e>n?n:e}var Kt=Math.PI*2;function ae(e,t,n){return ze(e,o=>({x:o.x+t,y:o.y+n}))}function ze(e,t,n=1,r=!1){return{...e,start:t(e.start),segments:e.segments.map(o=>o.kind==="line"?{...o,end:t(o.end)}:o.kind==="arc"?{...o,center:t(o.center),radius:o.radius*Math.abs(n),clockwise:r?!o.clockwise:o.clockwise,end:t(o.end)}:{...o,control1:t(o.control1),control2:t(o.control2),end:t(o.end)})}}var $t=4/3;function ce(e){let t=new Map,n=new Map;for(let r of e){if(r.type!=="row"||!r.segmentedRow)continue;let o=n.get(r.segmentedRow.groupId)??[];o.push(r),n.set(r.segmentedRow.groupId,o)}for(let[r,o]of n){let s=o.slice().sort((l,p)=>l.segmentedRow.componentIndex-p.segmentedRow.componentIndex),i=s[0]?.segmentedRow?.componentCount??0,a=s[0]?.segmentedRow;if(!a||!(i>=2&&s.length===i&&a?.boundaryBefore==="start"&&s.every((l,p)=>l.segmentedRow?.kind==="segmented-row-v1"&&l.segmentedRow.groupId===r&&l.segmentedRow.componentCount===i&&l.segmentedRow.componentIndex===p&&l.segmentedRow.repeatLabelOnComponents===a.repeatLabelOnComponents&&(p===0?l.segmentedRow.boundaryBefore==="start":l.segmentedRow.boundaryBefore!=="start")&&l.segmentedRow.displayLabel===a.displayLabel)))continue;let x=s.reduce((l,p)=>l+p.seatCount,0),c=0,u=0;for(let l of s)l.segmentedRow.boundaryBefore==="break"&&(c+=1),t.set(l.id,{groupId:r,adjacencyOffset:c,displayOffset:u,displayLabel:a.displayLabel,totalSeats:x,canonical:s[0],viewFromSeatUrl:a.viewFromSeatUrl,viewFromSeatMeta:a.viewFromSeatMeta,confidenceEvidence:a.confidenceEvidence}),c+=l.seatCount,u+=l.seatCount}return t}var Ve="ABCDEFGHIJKLMNOPQRSTUVWXYZ";var Ye="abcdefghijklmnopqrstuvwxyz";function Ke(e,t){let n=t.length,r=e+1,o="";for(;r>0;){r-=1;let s=r%n;o=t[s]+o,r=Math.floor(r/n)}return o}function H(e,t=!1){let n=t?Ye:Ve;return Ke(Math.max(0,Math.floor(e)-1),n)}var $e=[[1e3,"M"],[900,"CM"],[500,"D"],[400,"CD"],[100,"C"],[90,"XC"],[50,"L"],[40,"XL"],[10,"X"],[9,"IX"],[5,"V"],[4,"IV"],[1,"I"]];function le(e){if(!Number.isFinite(e)||e<=0)return String(e);let t=Math.floor(e),n="";for(let[r,o]of $e)for(;t>=r;)n+=o,t-=r;return n}function We(e){let t=new Array(e);return Array.from({length:e},(n,r)=>r).sort((n,r)=>Math.abs(2*n-(e-1))-Math.abs(2*r-(e-1))||n-r).forEach((n,r)=>t[n]=r),t}function U(e,t){let n=e.seatLabelStart??1,r=e.seatNumbering?.direction??"ltr",o=e.seatNumbering?.step??1,s=e.seatNumbering?.scheme??"decimal",i=e.seatNumbering?.prefix??"",a=e.seatNumbering?.endAt,m=e.seatCount;if(s==="updown"||s==="updown-descending"){let p=Math.ceil(m/2),S=s==="updown"?t<p?n+2*t:n-1+2*(m-t):t<p?n+2*(p-1-t):n+1+2*(t-p);return`${i}${S}`}let x=s==="odd"||s==="even"?2:o,c=a!=null&&Number.isFinite(a)?a-(m-1)*x:n,u=r==="center"?We(m)[t]:r==="rtl"?m-1-t:t,l;switch(s){case"odd":{let p=c%2===1?c:c+1;l=String(p+u*2);break}case"even":{let p=c%2===0?c:c+1;l=String(p+u*2);break}case"roman":l=le(c+u*o);break;case"letters-upper":l=H(c+u*o,!1);break;case"letters-lower":l=H(c+u*o,!0);break;default:l=String(c+u*o);break}return`${i}${l}`}function qe(e){return{...e.canonical,seatCount:e.totalSeats,label:e.displayLabel,displayLabel:e.displayLabel}}function ue(e,t,n){return n?.label??`${e.label}-${U(e,t)}`}function X(e,t,n,r){if(r?.displayLabel)return r.displayLabel;if(!n)return`${e.displayLabel??e.label}-${U(e,t)}`;let o=qe(n),s=n.displayOffset+t;return`${n.displayLabel}-${U(o,s)}`}function de(e){let t=e.length;return t<=3?[...e]:[e[Math.floor(t*.25)],e[Math.floor(t*.5)],e[Math.floor(t*.75)]]}function me(e,t,n){if(!e.length)return 1/0;if(e.length===1)return Math.hypot(t-e[0].x,n-e[0].y);let r=1/0;for(let o=0;o+1<e.length;o++){let s=e[o],i=e[o+1],a=i.x-s.x,m=i.y-s.y,x=a*a+m*m,c=x>1e-12?((t-s.x)*a+(n-s.y)*m)/x:0;c<0?c=0:c>1&&(c=1);let u=Math.hypot(t-(s.x+c*a),n-(s.y+c*m));u<r&&(r=u)}return r}function Ze(e){let t=0,n=0;for(let s of e)t+=s.x,n+=s.y;let r=e.length||1;t/=r,n/=r;let o=0;for(let s of e){let i=Math.hypot(s.x-t,s.y-n);i>o&&(o=i)}return{cx:t,cy:n,r:o}}function be(e,t){return Math.hypot(e.cx-t.cx,e.cy-t.cy)-e.r-t.r}function G(e,t){let n=1/0;for(let r of de(e)){let o=me(t,r.x,r.y);o<n&&(n=o)}for(let r of de(t)){let o=me(e,r.x,r.y);o<n&&(n=o)}return n}function Je(e,t){if(e.length<3)return{pts:e,seatIndices:t};let n=0,r=0;for(let c of e)n+=c.x,r+=c.y;n/=e.length,r/=e.length;let o=-1,s=e[0];for(let c of e){let u=Math.hypot(c.x-n,c.y-r);u>o&&(o=u,s=c)}let i=s.x-n,a=s.y-r,m=Math.hypot(i,a);m>1e-9?(i/=m,a/=m):(i=1,a=0);let x=e.map((c,u)=>({p:c,i:u,t:(c.x-n)*i+(c.y-r)*a})).sort((c,u)=>c.t-u.t);return{pts:x.map(c=>c.p),seatIndices:x.map(c=>t[c.i])}}function Qe(e){let t=e.length;if(t<3)return null;let n=0,r=0;for(let g of e)n+=g.x,r+=g.y;n/=t,r/=t;let o=0,s=0,i=0,a=0,m=0,x=0,c=0;for(let g of e){let f=g.x-n,h=g.y-r;o+=f*f,i+=h*h,s+=f*h,a+=f*f*f,m+=h*h*h,x+=f*h*h,c+=h*f*f}let u=o*i-s*s;if(Math.abs(u)<1e-9)return null;let l=(a+x)/2,p=(m+c)/2,S=(l*i-p*s)/u,y=(p*o-l*s)/u,b=S+n,d=y+r;return!Number.isFinite(b)||!Number.isFinite(d)?null:{cx:b,cy:d}}var et=.15;function tt(e){if(e.length<2)return null;let t=e.map(g=>{let f=0,h=0;for(let w of g.pts)f+=w.x,h+=w.y;return{x:f/g.pts.length,y:h/g.pts.length}}),n=0,r=0;for(let g of t)n+=g.x,r+=g.y;n/=t.length,r/=t.length;let o=0,s=0,i=0;for(let g of t){let f=g.x-n,h=g.y-r;o+=f*f,s+=f*h,i+=h*h}let a=o+i,m=o*i-s*s,x=a/2+Math.sqrt(Math.max(0,a*a/4-m)),c,u;Math.abs(s)>1e-12?(c=x-i,u=s):o>=i?(c=1,u=0):(c=0,u=1);let l=Math.hypot(c,u);if(!(l>1e-12))return null;c/=l,u/=l;let p=1/0,S=-1/0,y=[];for(let g of e){let f=1/0,h=-1/0;for(let w of g.pts){let v=w.x*c+w.y*u;v<f&&(f=v),v>h&&(h=v),v<p&&(p=v),v>S&&(S=v)}y.push(h-f)}let b=S-p;return b>1e-9?(y.sort((g,f)=>g-f),y[Math.min(y.length-1,Math.floor(y.length*.9))]/b<=nt?{x:c,y:u}:null):null}var nt=.35;function fe(e,t,n,r){let o=new Map;for(let b of n){let d=t[b],g=d.rowId||`__seat-${b}`,f=o.get(g);f||(f={pts:[],idx:[]},o.set(g,f)),f.pts.push({x:d.x,y:d.y}),f.idx.push(b)}if(!o.size)return{sectionId:e,rows:[],blockCount:0};let s=[];for(let[b,d]of o){let g=Je(d.pts,d.idx),f=0;for(let h of g.pts)f+=Math.hypot(h.x-r.x,h.y-r.y);s.push({id:b,pts:g.pts,seatIndices:g.seatIndices,blockId:-1,ordinal:0,blockDepth:0,focalDistance:f/g.pts.length})}let i=s.map(b=>Ze(b.pts)),a=[];for(let b=0;b<s.length;b++){let d=1/0;for(let g=0;g<s.length;g++){if(b===g||be(i[b],i[g])>=d)continue;let f=G(s[b].pts,s[g].pts);f<d&&(d=f)}Number.isFinite(d)&&a.push(d)}a.sort((b,d)=>b-d);let m=a.length?a[Math.floor(a.length/2)]:1,x=Math.max(m*1.8,1e-6),c=s.map(()=>[]);for(let b=0;b<s.length;b++)for(let d=b+1;d<s.length;d++)be(i[b],i[d])>x||G(s[b].pts,s[d].pts)<=x&&(c[b].push(d),c[d].push(b));let u=0;for(let b=0;b<s.length;b++){if(s[b].blockId!==-1)continue;let d=u++,g=[b];for(s[b].blockId=d;g.length;){let f=g.pop();for(let h of c[f])s[h].blockId===-1&&(s[h].blockId=d,g.push(h))}}let l=new Map;for(let b of s){let d=l.get(b.blockId)??[];d.push(b),l.set(b.blockId,d)}let p=[];for(let b of s){if(b.pts.length<4)continue;let d=Qe(b.pts);d&&(!Number.isFinite(d.cx)||!Number.isFinite(d.cy)||p.push({x:d.cx,y:d.cy}))}let S=p.length>=2?(()=>{let b=p.map(f=>f.x).sort((f,h)=>f-h),d=p.map(f=>f.y).sort((f,h)=>f-h),g=Math.floor(p.length/2);return{cx:b[g],cy:d[g]}})():null;if(S){let b=v=>Math.hypot(v.x-S.cx,v.y-S.cy),d=1/0,g=-1/0,f=[];for(let v of s){let M=1/0,I=-1/0;for(let O of v.pts){let C=b(O);C<M&&(M=C),C>I&&(I=C)}f.push(I-M),M<d&&(d=M),I>g&&(g=I)}let h=g-d;f.sort((v,M)=>v-M);let w=f[Math.min(f.length-1,Math.floor(f.length*.9))];if(h>1e-9&&w/h<=et){let v=s.map(P=>{let k=0;for(let Re of P.pts)k+=b(Re);return{row:P,radius:k/P.pts.length}}),M=1/0;for(let P of v)P.radius<M&&(M=P.radius);v.sort((P,k)=>P.radius-k.radius);let I=-1,O=-1/0,C=h/Math.max(1,v.length)*.5,W=[];for(let P of v)P.radius-O>C&&(I++,O=P.radius),P.row.ordinal=I,P.row.blockDepth=P.radius-M,W.push(P.row);return{sectionId:e,rows:W,blockCount:u}}}let y=[];for(let[,b]of l){let d=tt(b);if(d){let g=h=>{let w=0;for(let v of h.pts)w+=v.x*d.x+v.y*d.y;return w/h.pts.length};b.sort((h,w)=>g(h)-g(w));let f=0;for(let h=0;h<b.length;h++)h>0&&(f+=G(b[h-1].pts,b[h].pts)),b[h].ordinal=h,b[h].blockDepth=f,y.push(b[h])}else{let g=1/0;for(let f of b)f.focalDistance<g&&(g=f.focalDistance);b.sort((f,h)=>f.focalDistance-h.focalDistance);for(let f=0;f<b.length;f++)b[f].ordinal=f,b[f].blockDepth=Math.max(0,b[f].focalDistance-g),y.push(b[f])}}return{sectionId:e,rows:y,blockCount:u}}function xe(e){return e?e.accessibility&&e.accessibility.length?e.wheelchairSpaceType&&!e.accessibility.includes("wheelchair")?["wheelchair",...e.accessibility]:e.accessibility:e.wheelchairSpaceType?["wheelchair"]:e.accessible?["wheelchair"]:[]:[]}var F=Math.PI/180,rt=9,T=16;function V(e,t,n,r){let o=n*F,s=Math.cos(o),i=Math.sin(o);return{x:r.x+e*s-t*i,y:r.y+e*i+t*s}}function Se(e){let{seatCount:t,seatSpacing:n,curve:r,rotation:o,origin:s}=e,i=[];if(e.path)return re(e.path,t);if(t<=1)return t===1&&i.push({x:s.x,y:s.y}),i;if(r===0){for(let x=0;x<t;x++)i.push(V(x*n,0,o,s));return i}let a=r/(t-1)*F,m=n/(2*Math.sin(Math.abs(a)/2));for(let x=0;x<t;x++){let c=x*a,u=m*Math.sin(c),l=-m+m*Math.cos(c);i.push(V(u,l,o,s))}return i}function ot(e){let t=new Map;if(e.overrides)for(let n of e.overrides)t.set(n.index,n);return t}function un(e){let t=new Set((e.overrides??[]).filter(n=>n.skip&&Number.isInteger(n.index)&&n.index>=0&&n.index<e.seatCount).map(n=>n.index));return Math.max(0,e.seatCount-t.size)}function it(e,t){let n=ot(e);return Se(e).map((r,o)=>{let s=n.get(o),i=xe(s),a=ue(e,o,s),m={...e.commercial,...s?.commercial};return{index:o,x:r.x+(s?.dx??0),y:r.y+(s?.dy??0),label:a,displayLabel:X(e,o,t,s),categoryKey:s?.categoryKey??e.categoryKey,skipped:!!s?.skip,accessible:i.length>0,accessibility:i,wheelchairSpaceType:s?.wheelchairSpaceType,commercial:Object.values(m).some(x=>x!==void 0&&x!==!1&&x!=="")?m:void 0,viewUrl:s?.viewFromSeatUrl??e.viewFromSeatUrl,viewMeta:s?.viewFromSeatUrl?s.viewFromSeatMeta:e.viewFromSeatMeta,labelStyle:s?.labelStyle}})}function ve(e){let t=[];for(let n of it(e))n.skipped||t.push({id:`${e.id}:${n.index}`,label:n.label,displayLabel:n.displayLabel===n.label?void 0:n.displayLabel,x:n.x,y:n.y,rowId:e.id,categoryKey:n.categoryKey,accessible:n.accessible||void 0,accessibility:n.accessibility.length?n.accessibility:void 0,wheelchairSpaceType:n.wheelchairSpaceType,commercial:n.commercial,viewUrl:n.viewUrl,viewMeta:n.viewMeta,labelStyle:n.labelStyle});return t}function st(e){if(e.seatCountsBySide)return{...e.seatCountsBySide};let t=e.sides&&e.sides.length?e.sides:["top","bottom"],n=["top","bottom","left","right"].filter(s=>t.includes(s)),r={top:0,bottom:0,left:0,right:0};if(!n.length)return r;let o=Math.max(0,Math.round(e.seatCount));for(let s=0;s<o;s++)r[n[s%n.length]]+=1;return r}function we(e){let t=[],n=Math.max(0,Math.round(e.seatCount));if(n===0)return t;let r=new Map((e.overrides??[]).map(c=>[c.index,c])),o=(c,u,l,p)=>{let S=r.get(c),y=xe(S),b=S?.label??`${e.label}-${c+1}`,d=e.displayLabel??e.label;return{index:c,label:b,displayLabel:S?.displayLabel??`${d}-${c+1}`,x:u+(S?.dx??0),y:l+(S?.dy??0),categoryKey:S?.categoryKey??e.categoryKey,skipped:!!S?.skip,accessible:y.length>0,accessibility:y,wheelchairSpaceType:S?.wheelchairSpaceType,commercial:S?.commercial,viewUrl:S?.viewFromSeatUrl,viewMeta:S?.viewFromSeatUrl?S.viewFromSeatMeta:void 0,labelStyle:S?.labelStyle,...p?{side:p}:{}}};if(e.shape==="round"){let c=(e.radius??40)+T,u=e.rotation*F,l=Math.max(0,Math.min(360,e.seatArc??360));if(l>=360||n===1){for(let b=0;b<n;b++){let d=u+b/n*2*Math.PI;t.push(o(b,e.center.x+c*Math.cos(d),e.center.y+c*Math.sin(d)))}return t}let p=l*F,S=(2*Math.PI-p)/2,y=u+S;for(let b=0;b<n;b++){let d=y+b/(n-1)*p;t.push(o(b,e.center.x+c*Math.cos(d),e.center.y+c*Math.sin(d)))}return t}let s=e.width??80,i=e.height??50,a=st(e),m=["top","bottom","left","right"],x=0;for(let c of m){let u=a[c];for(let l=0;l<u;l++){let p,S;c==="top"?(p=-s/2+(l+.5)*s/u,S=-i/2-T):c==="bottom"?(p=-s/2+(l+.5)*s/u,S=i/2+T):c==="left"?(p=-s/2-T,S=-i/2+(l+.5)*i/u):(p=s/2+T,S=-i/2+(l+.5)*i/u);let y=V(p,S,e.rotation,e.center);t.push(o(x++,y.x,y.y,c))}}return t}function dn(e){return e.bookAsWhole||e.variableOccupancy?Math.max(0,Math.round(e.seatCount)):we(e).filter(t=>!t.skipped).length}function at(e){return we(e).filter(t=>!t.skipped).map(t=>({id:`${e.id}:${t.index}`,label:t.label,...t.displayLabel!==t.label?{displayLabel:t.displayLabel}:{},x:t.x,y:t.y,rowId:e.id,categoryKey:t.categoryKey,...t.accessible?{accessible:!0}:{},...t.accessibility.length?{accessibility:t.accessibility}:{},...t.wheelchairSpaceType?{wheelchairSpaceType:t.wheelchairSpaceType}:{},...t.commercial?{commercial:t.commercial}:{},...t.viewUrl?{viewUrl:t.viewUrl}:{},...t.viewUrl&&t.viewMeta?{viewMeta:t.viewMeta}:{},...t.labelStyle?{labelStyle:t.labelStyle}:{}}))}function ct(e){return[{id:`${e.id}:0`,label:e.label,...e.displayLabel&&e.displayLabel!==e.label?{displayLabel:e.displayLabel}:{},x:e.center.x,y:e.center.y,rowId:e.id,categoryKey:e.categoryKey,kind:"booth"}]}function pe(e,t){let n=!1;for(let r=0,o=t.length-1;r<t.length;o=r++){let s=t[r].x,i=t[r].y,a=t[o].x,m=t[o].y;i>e.y!=m>e.y&&e.x<(a-s)*(e.y-i)/(m-i)+s&&(n=!n)}return n}function lt(e,t){return t.some((n,r)=>{let o=t[(r+1)%t.length],s=(e.y-n.y)*(o.x-n.x)-(e.x-n.x)*(o.y-n.y);if(Math.abs(s)>1e-7)return!1;let i=(e.x-n.x)*(o.x-n.x)+(e.y-n.y)*(o.y-n.y),a=(o.x-n.x)**2+(o.y-n.y)**2;return i>=-1e-7&&i<=a+1e-7})}function Y(e,t,n){return pe(e,t)&&!(n??[]).some(r=>pe(e,r)||lt(e,r))}function mn(e,t){return se(e,t).point}function z(e){if(!e.length)return{x:0,y:0};let t=0,n=0;for(let r of e)t+=r.x,n+=r.y;return{x:t/e.length,y:n/e.length}}function ut(e){switch(e.type){case"row":{let t=ve(e);if(!t.length)return{x:e.origin.x,y:e.origin.y};let n=0,r=0;for(let o of t)n+=o.x,r+=o.y;return{x:n/t.length,y:r/t.length}}case"table":case"booth":return{x:e.center.x,y:e.center.y};case"gaArea":return z(e.points);case"section":return z(e.outline);case"text":return{x:e.position.x,y:e.position.y};case"shape":return e.points&&e.points.length?z(e.points):e.x!=null&&e.y!=null&&e.width!=null&&e.height!=null?{x:e.x+e.width/2,y:e.y+e.height/2}:{x:e.x??0,y:e.y??0};case"decorImage":return{x:e.x+e.width/2,y:e.y+e.height/2}}}function ge(e,t){return e.length===t.length&&e.every((n,r)=>n.x===t[r].x&&n.y===t[r].y)}function dt(e,t){if(e.type!=="gaArea"||!ge(e.points,t.outline))return!1;let n=e.holes??[],r=t.holes??[];return n.length===r.length&&n.every((o,s)=>ge(o,r[s]))}function mt(e,t){let n=e.filter(i=>i.type==="section"),r="referenceInventorySource"in t?t.referenceInventorySource?.logicalSectionId:void 0,o=ut(t);return(r?n.find(i=>(i.logicalSectionId??i.id)===r&&(dt(t,i)||Y(o,i.outline,i.holes))):void 0)??n.find(i=>Y(o,i.outline,i.holes))}function bt(e){return e.floors&&e.floors.length?e.floors:[{id:"floor-0",name:"Main",objects:e.objects,focalPoint:e.focalPoint,referenceImage:e.referenceImage,backgroundImage:e.backgroundImage}]}function bn(e,t){let n=bt(e);return(t?n.find(r=>r.id===t):n[0])?.objects??[]}function ft(e){return e.floors&&e.floors.length?e.floors.flatMap(t=>t.objects):e.objects}function Pe(e,t,n){let r=s=>({x:s.x+t,y:s.y+n}),o=s=>s.map(r);switch(e.type){case"row":return{...e,origin:r(e.origin)};case"table":case"booth":return{...e,center:r(e.center)};case"gaArea":return{...e,points:o(e.points),...e.holes?{holes:e.holes.map(o)}:{}};case"section":return{...e,outline:o(e.outline),...e.outlinePath?{outlinePath:ae(e.outlinePath,t,n)}:{},...e.holes?{holes:e.holes.map(o)}:{}};case"text":return{...e,position:r(e.position)};case"shape":return{...e,...e.points?{points:o(e.points)}:{},...e.x!=null?{x:e.x+t}:{},...e.y!=null?{y:e.y+n}:{}};case"decorImage":return{...e,x:e.x+t,y:e.y+n}}}function fn(e,t=900){if(!e.floors||e.floors.length<2)return e;let n=[];return e.floors.forEach((r,o)=>{let s=-o*t;for(let i of r.objects)n.push(s===0?i:Pe(i,0,s))}),{...e,objects:n,floors:void 0}}function pn(e){let t=e.floors;if(!t||t.length<2)return e;let n=pt(e),r=[];return t.forEach((o,s)=>{let{x:i,y:a}=n[s];for(let m of o.objects)r.push(Pe(m,i,a))}),{...e,objects:r,floors:void 0,referenceImage:void 0,backgroundImage:void 0}}function pt(e){let t=e.floors;if(!t?.length)return[{x:0,y:0}];if(t.length<2)return t.map(()=>({x:0,y:0}));let n=t.map(l=>gt({...e,objects:l.objects,floors:void 0,focalPoint:l.focalPoint,referenceImage:void 0,backgroundImage:void 0})),r=Math.max(1,...n.map(l=>Math.max(l.width,l.height))),o=Math.max(64,Math.min(240,r*.08)),s=16/10,i=null;for(let l=1;l<=t.length;l+=1){let p=Math.ceil(t.length/l),S=new Array(l).fill(0),y=new Array(p).fill(0);n.forEach((h,w)=>{let v=w%l,M=Math.floor(w/l);S[v]=Math.max(S[v],h.width),y[M]=Math.max(y[M],h.height)});let b=S.reduce((h,w)=>h+w,0)+o*(l-1),d=y.reduce((h,w)=>h+w,0)+o*(p-1),g=l*p-t.length,f=Math.abs(Math.log(b/Math.max(1,d)/s))+g*.04;(!i||f<i.score)&&(i={columns:l,columnWidths:S,rowHeights:y,score:f})}let{columns:a,columnWidths:m,rowHeights:x}=i,c=[],u=[];return m.reduce((l,p,S)=>(c[S]=l,l+p+o),0),x.reduce((l,p,S)=>(u[S]=l,l+p+o),0),t.map((l,p)=>{let S=n[p],y=p%a,b=Math.floor(p/a),d=c[y]+(m[y]-S.width)/2,g=u[b]+(x[b]-S.height)/2;return{x:d-S.x,y:g-S.y}})}function he(e,t,n,r,o,s){let i=[],a=ce(e),m=u=>!u?.eventConfigurationId||u.eventConfigurationId===r,x=u=>!!u&&(!u.eventConfigurationId||u.eventConfigurationId===r),c=(u,l)=>x(u)?{...u,coverage:l}:void 0;for(let u of e){let l=[];if(u.type==="row"?l=ve(u):u.type==="table"?l=at(u):u.type==="booth"&&(l=ct(u)),!l.length)continue;for(let d of l)d.viewUrl&&!m(d.viewMeta)&&(d.viewUrl=void 0,d.viewMeta=void 0);if(u.type==="row"){let d=a.get(u.id);if(d){let g=new Map((u.overrides??[]).map(f=>[f.index,f]));for(let f of l){let h=Number(f.id.slice(f.id.lastIndexOf(":")+1));if(!Number.isInteger(h))continue;f.logicalRowId=d.groupId,f.logicalSeatIndex=d.adjacencyOffset+h,g.get(h)?.displayLabel||(f.displayLabel=X(u,h,d)),!f.viewUrl&&d.viewFromSeatUrl&&m(d.viewFromSeatMeta)&&(f.viewUrl=d.viewFromSeatUrl,f.viewMeta=d.viewFromSeatMeta);let w=g.get(h)?.confidenceEvidence;f.confidenceEvidence=c(w,"exact-seat")??c(u.confidenceEvidence,"row-representative")??c(d.confidenceEvidence,"row-representative")}}}let p=mt(e,u),S=p?.viewFromSeatUrl,b=(p?.zone?t?.find(d=>d.id===p.zone):void 0)?.focalPoint??n;for(let d of l){if(!d.confidenceEvidence){let g=Number(d.id.slice(d.id.lastIndexOf(":")+1)),f=(u.type==="row"||u.type==="table")&&Number.isInteger(g)?u.overrides?.find(h=>h.index===g)?.confidenceEvidence:void 0;d.confidenceEvidence=c(f,"exact-seat")??(u.type==="row"?c(u.confidenceEvidence,"row-representative"):void 0)}d.confidenceEvidence??=c(p?.confidenceEvidence,"section-representative")??(s?c(s.evidence,s.coverage):void 0),!d.viewUrl&&S&&m(p?.viewFromSeatMeta)&&(d.viewUrl=S,d.viewMeta=p?.viewFromSeatMeta),!d.viewUrl&&o&&m(o.meta)&&(d.viewUrl=o.url,d.viewMeta=o.meta),p&&(d.sectionId=p.logicalSectionId??p.id),p?.zone&&(d.zoneId=p.zone),b&&(d.focalPoint={...b})}i.push(...l)}return i}function gn(e,t={}){if(e.floors?.length){let r=[];for(let o of e.floors){let s=o.focalPoint??e.focalPoint,i=o.viewFromSeatUrl?{url:o.viewFromSeatUrl,meta:o.viewFromSeatMeta}:e.viewFromSeatUrl?{url:e.viewFromSeatUrl,meta:e.viewFromSeatMeta}:void 0,a=o.confidenceEvidence?{evidence:o.confidenceEvidence,coverage:"floor-representative"}:e.confidenceEvidence?{evidence:e.confidenceEvidence,coverage:"venue-representative"}:void 0,m=he(o.objects,e.zones,s,e.eventConfigurationId,i,a);t.resolveEyeHeights!==!1&&ye(o.objects,o.focalPoint??e.focalPoint,o.baseHeightM??0,m),r.push(...m)}return r}let n=he(e.objects,e.zones,e.focalPoint,e.eventConfigurationId,e.viewFromSeatUrl?{url:e.viewFromSeatUrl,meta:e.viewFromSeatMeta}:void 0,e.confidenceEvidence?{evidence:e.confidenceEvidence,coverage:"venue-representative"}:void 0);return t.resolveEyeHeights!==!1&&ye(e.objects,e.focalPoint,t.floorBaseHeightM??0,n),n}function ye(e,t,n,r){let o=e.filter(c=>c.type==="section"),s=n>0||o.some(c=>c.height!==void 0||c.rake!==void 0||(c.elevation??0)>0);if(!o.length||!s||!t){for(let c of r)c.eyeHeightM=n+_;return}let i=new Array(r.length),a=new Map,m=new Map;for(let c=0;c<r.length;c++){let u=r[c],l=o.find(S=>Y({x:u.x,y:u.y},S.outline,S.holes))??null;if(i[c]=l,!l)continue;a.has(l.id)||a.set(l.id,Q(l,{floorBaseHeightM:n}));let p=m.get(l.id);p?p.push(c):m.set(l.id,[c])}let x=new Array(r.length).fill(void 0);for(let[c,u]of m){let l=a.get(c);if(!l)continue;let p=l.rake>0?Math.tan(l.rake*Math.PI/180):0,S=fe(c,r,u,t);for(let y of S.rows){let b=y.blockDepth*L*p,d=l.height+b;for(let g of y.seatIndices)x[g]=d}}for(let c=0;c<r.length;c++){let u=r[c],l=i[c];if(!l){u.eyeHeightM=n+_;continue}let p=a.get(l.id);u.eyeHeightM=(x[c]??p.height)+_}}var j=40;function gt(e){let t=1/0,n=1/0,r=-1/0,o=-1/0,s=(i,a)=>{i<t&&(t=i),a<n&&(n=a),i>r&&(r=i),a>o&&(o=a)};for(let i of ft(e))if(i.type==="row"){let a=new Map((i.overrides??[]).map(m=>[m.index,m]));Se(i).forEach((m,x)=>{let c=a.get(x);c?.skip||s(m.x+(c?.dx??0),m.y+(c?.dy??0))})}else if(i.type==="gaArea")for(let a of i.points)s(a.x,a.y);else if(i.type==="section")for(let a of i.outline)s(a.x,a.y);else if(i.type==="decorImage")s(i.x,i.y),s(i.x+i.width,i.y+i.height);else if(i.type==="shape")if(i.points&&i.points.length)for(let a of i.points)s(a.x,a.y);else i.x!=null&&i.y!=null&&i.width!=null&&i.height!=null&&(s(i.x,i.y),s(i.x+i.width,i.y+i.height));else if(i.type==="table"){let a=T+rt,m=i.shape==="round"?(i.radius??40)+a:Math.max((i.width??80)/2,(i.height??50)/2)+a;s(i.center.x-m,i.center.y-m),s(i.center.x+m,i.center.y+m)}else if(i.type==="booth"){let a=Math.max(i.width,i.height)/2;s(i.center.x-a,i.center.y-a),s(i.center.x+a,i.center.y+a)}else if(i.type==="text"){let a=te(i);s(i.position.x,i.position.y),s(i.position.x+a.width,i.position.y+a.height)}for(let i of[e.referenceImage,e.backgroundImage]){if(!i)continue;let{center:a,width:m}=i,x=m*3/4;s(a.x-m/2,a.y-x/2),s(a.x+m/2,a.y+x/2)}if(!isFinite(t)){let i=e.focalPoint??{x:0,y:0};return{x:i.x-200,y:i.y-200,width:400,height:400}}return{x:t-j,y:n-j,width:r-t+j*2,height:o-n+j*2}}var Me=/^#?([\da-f]{3}|[\da-f]{6})$/i,ht=/^rgba?\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)(?:\s*,\s*([\d.]+))?\s*\)$/i;function R(e){let t=Me.exec((e??"").trim());if(!t)return null;let n=t[1].length===3?t[1].split("").map(o=>o+o).join(""):t[1],r=parseInt(n,16);return[r>>16&255,r>>8&255,r&255]}function yn(e){let t=R(e);return t?[t[0]/255,t[1]/255,t[2]/255]:null}function yt({r:e,g:t,b:n}){let r=o=>Math.max(0,Math.min(255,Math.round(o))).toString(16).padStart(2,"0");return`#${r(e)}${r(t)}${r(n)}`}function A(e,t,n){return yt({r:e,g:t,b:n})}function xn(e){let t=e.trim(),n=Me.exec(t);if(n&&t.startsWith("#"))return`#${(n[1].length===3?n[1].split("").map(i=>i+i).join(""):n[1]).toLowerCase()}`;let r=ht.exec(t);if(!r||r[4]!=null&&Number(r[4])<.999)return null;let o=[Number(r[1]),Number(r[2]),Number(r[3])];return o.some(s=>!Number.isInteger(s)||s<0||s>255)?null:`#${o.map(s=>s.toString(16).padStart(2,"0")).join("")}`}function K(e){let t=e/255;return t<=.04045?t/12.92:((t+.055)/1.055)**2.4}function $(e){return .2126*K(e[0])+.7152*K(e[1])+.0722*K(e[2])}function Sn(e){return $([e[0]*255,e[1]*255,e[2]*255])}function vn(e,t){let n=R(e),r=R(t);if(!n||!r)return null;let o=$(n),s=$(r);return(Math.max(o,s)+.05)/(Math.min(o,s)+.05)}function xt(e){let t=e.trim();if(t.startsWith("#")){let r=R(t);return r?(.2126*r[0]+.7152*r[1]+.0722*r[2])/255:NaN}let n=/^rgba?\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)/.exec(t);return n?(.2126*+n[1]+.7152*+n[2]+.0722*+n[3])/255:NaN}function St(e){return .2126*e[0]+.7152*e[1]+.0722*e[2]}function wn(e,t=.6){let n=xt(e);return!Number.isNaN(n)&&n>t}function Pn(e,t){let n=R(e);return n?A(...n.map(r=>r+(255-r)*t)):e}function Mn(e,t){let n=R(e);return n?A(...n.map(r=>r*(1-t))):e}function Rn(e,t,n){let r=R(e),o=R(t);return!r||!o?e:A(r[0]+(o[0]-r[0])*n,r[1]+(o[1]-r[1])*n,r[2]+(o[2]-r[2])*n)}function In(e,t){let n=0,r=0,o=0,s=0;for(let i of e){let a=R(i.hex);!a||i.w<=0||(n+=a[0]*i.w,r+=a[1]*i.w,o+=a[2]*i.w,s+=i.w)}return s>0?A(n/s,r/s,o/s):t}function vt(e,t,n){return[e[0]+(t[0]-e[0])*n,e[1]+(t[1]-e[1])*n,e[2]+(t[2]-e[2])*n]}function Cn(e,t){let n=R(e);if(!n)return e;let r=.2126*n[0]+.7152*n[1]+.0722*n[2];return A(...n.map(o=>o+(r-o)*t))}function En(e,t){let n=St(e);return vt(e,[n,n,n],t)}function wt(e,t){let n=R(e);return n?`rgba(${n[0]},${n[1]},${n[2]},${t})`:e}var Tn=wt;function Pt(e){let t=0;for(let n=0,r=e.length;n<r;n+=1){let o=e[n],s=e[(n+1)%r];t+=o.x*s.y-s.x*o.y}return t/2}function On(e){return Pt(e)*2}function kn(e,t,n){let r=!1;for(let o=0,s=e.length-1;o<e.length;s=o++){let i=e[o],a=e[s];i.y>n!=a.y>n&&t<(a.x-i.x)*(n-i.y)/(a.y-i.y)+i.x&&(r=!r)}return r}function Mt(e){let t=1/0,n=1/0,r=-1/0,o=-1/0,s=!1;for(let i of e)!Number.isFinite(i.x)||!Number.isFinite(i.y)||(s=!0,i.x<t&&(t=i.x),i.y<n&&(n=i.y),i.x>r&&(r=i.x),i.y>o&&(o=i.y));return s?{minX:t,minY:n,maxX:r,maxY:o}:null}function _n(e){let t=Mt(e);return t?Rt(t):null}function Rt(e){return{x:e.minX,y:e.minY,width:e.maxX-e.minX,height:e.maxY-e.minY}}function jn(e,t){return e.minX<=t.maxX&&t.minX<=e.maxX&&e.minY<=t.maxY&&t.minY<=e.maxY}export{Ie as a,It as b,Ee as c,Ct as d,Te as e,Et as f,Tt as g,At as h,Oe as i,Ot as j,kt as k,He as l,Bt as m,Xe as n,Xt as o,zt as p,Vt as q,L as r,_t as s,_e as t,_ as u,jt as v,Q as w,me as x,Qe as y,fe as z,Se as A,un as B,it as C,ve as D,st as E,we as F,dn as G,at as H,ct as I,pe as J,Y as K,mn as L,ut as M,mt as N,bt as O,bn as P,ft as Q,Pe as R,fn as S,pn as T,pt as U,gn as V,gt as W,R as X,yn as Y,xn as Z,Sn as _,vn as $,wn as aa,Pn as ba,Mn as ca,Rn as da,In as ea,vt as fa,Cn as ga,En as ha,Tn as ia,Pt as ja,On as ka,kn as la,Mt as ma,_n as na,jn as oa};