@flamingo-stack/openframe-frontend-core 0.0.720 → 0.0.721

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 (164) hide show
  1. package/dist/assets/index.cjs +6 -0
  2. package/dist/assets/index.d.ts +1 -0
  3. package/dist/assets/index.d.ts.map +1 -1
  4. package/dist/assets/index.js +5 -1
  5. package/dist/assets/mobile-app-qr.d.ts +17 -0
  6. package/dist/assets/mobile-app-qr.d.ts.map +1 -0
  7. package/dist/{chunk-7IOU6BJE.js → chunk-2P2M27EW.js} +2393 -2367
  8. package/dist/{chunk-3HZ6XSZC.js → chunk-2TXGR7IK.js} +136 -59
  9. package/dist/{chunk-LO3KCLEF.js → chunk-3LY7V3RF.js} +3 -3
  10. package/dist/{chunk-6BLN5WDS.cjs → chunk-3R32ZNA2.cjs} +40 -40
  11. package/dist/{chunk-WSDT7LYL.js → chunk-3UBWDR65.js} +1 -1
  12. package/dist/{chunk-XW3Q623Q.js → chunk-44Q6MV7C.js} +2 -2
  13. package/dist/{chunk-CMZ3QTFQ.js → chunk-4I3K6LEH.js} +24 -0
  14. package/dist/{chunk-4SIZCHVZ.cjs → chunk-4LY6R4TN.cjs} +126 -49
  15. package/dist/{chunk-TORERAXD.js → chunk-57UTI7ZH.js} +6 -6
  16. package/dist/{chunk-K2BYVPGR.js → chunk-5QXE5HMV.js} +4 -4
  17. package/dist/{chunk-QF464PPL.cjs → chunk-6AJIOW3S.cjs} +57 -57
  18. package/dist/{chunk-B2N4YX66.js → chunk-6YBUQAOH.js} +1 -1
  19. package/dist/{chunk-6W46LVK4.js → chunk-74N742ZG.js} +6 -6
  20. package/dist/{chunk-4HJRHEXD.cjs → chunk-7Z5FMQYR.cjs} +22 -22
  21. package/dist/{chunk-WBNAEYTQ.cjs → chunk-BYUIFT7Q.cjs} +6 -6
  22. package/dist/{chunk-VF2CJXZ2.cjs → chunk-BYVVE7HP.cjs} +58 -58
  23. package/dist/{chunk-AZRI4XBP.js → chunk-CO3FOZIH.js} +1 -1
  24. package/dist/{chunk-XSM46FHD.cjs → chunk-D2DH6VZL.cjs} +3 -3
  25. package/dist/{chunk-KSGMZHVV.cjs → chunk-DFM572VH.cjs} +2 -2
  26. package/dist/{chunk-YDPKUAP4.js → chunk-DJ4IFQNQ.js} +2 -0
  27. package/dist/{chunk-VBHGJFA3.js → chunk-E6SMMMKV.js} +12 -12
  28. package/dist/{chunk-DHNJSQGX.cjs → chunk-F7ORKKEF.cjs} +103 -103
  29. package/dist/{chunk-RFUOIQSG.cjs → chunk-GCK75D7F.cjs} +9 -9
  30. package/dist/{chunk-ZHD3F2TH.cjs → chunk-GGBYZKMS.cjs} +11 -11
  31. package/dist/{chunk-YK3X74SF.js → chunk-GYAXV3MZ.js} +3 -3
  32. package/dist/{chunk-RDP5UZXQ.cjs → chunk-HJMSNOBT.cjs} +344 -323
  33. package/dist/{chunk-DFQYAYBH.cjs → chunk-HQIOMFJH.cjs} +2 -0
  34. package/dist/{chunk-PXAKSPLZ.js → chunk-HXB7SEYG.js} +27 -6
  35. package/dist/{chunk-HTS46FFY.cjs → chunk-I2254QN6.cjs} +16 -16
  36. package/dist/{chunk-ILNN6QRW.js → chunk-JDBZ4ZHU.js} +3 -3
  37. package/dist/{chunk-GQ7JJUIT.cjs → chunk-K2JUJ37D.cjs} +25 -1
  38. package/dist/{chunk-URW23QUM.js → chunk-K76ACBR3.js} +2 -2
  39. package/dist/{chunk-2NASBO7O.js → chunk-KFOAV77K.js} +2 -2
  40. package/dist/{chunk-Q5327DXK.js → chunk-LAXKEBDD.js} +10 -10
  41. package/dist/{chunk-O3MKJU6A.js → chunk-LGKMR7NZ.js} +4 -4
  42. package/dist/{chunk-5XDCCQ4A.cjs → chunk-LODMNSQY.cjs} +13 -13
  43. package/dist/{chunk-V6B2FBZK.js → chunk-NJ5TBTJG.js} +7 -7
  44. package/dist/{chunk-HFEYEPOG.cjs → chunk-NMPVK53I.cjs} +29 -29
  45. package/dist/{chunk-GANIUMRU.js → chunk-NPSJE7J3.js} +1 -1
  46. package/dist/{chunk-IL3ZWNM2.cjs → chunk-O5EHOJZD.cjs} +4 -4
  47. package/dist/{chunk-KT3U3ZRP.cjs → chunk-OKE5BIQH.cjs} +8 -8
  48. package/dist/{chunk-RZQGIWK3.cjs → chunk-QLTXT562.cjs} +2 -2
  49. package/dist/{chunk-PSMJYZMV.js → chunk-QQCFPMAA.js} +2 -2
  50. package/dist/{chunk-7LPR4RZ3.cjs → chunk-QYS4YVEP.cjs} +31 -31
  51. package/dist/{chunk-VYVPII4W.js → chunk-RCI3PALX.js} +6 -6
  52. package/dist/{chunk-P3JMAMHP.js → chunk-REETLEL5.js} +1 -1
  53. package/dist/{chunk-2C72EWQR.cjs → chunk-RJMWJAJO.cjs} +26 -26
  54. package/dist/{chunk-ISCZ6UNF.cjs → chunk-RQZQHLNS.cjs} +73 -73
  55. package/dist/{chunk-FFT56TYB.cjs → chunk-RUZIICXT.cjs} +2 -2
  56. package/dist/{chunk-7HYEQKN6.js → chunk-S63QBBT7.js} +5 -5
  57. package/dist/{chunk-B5LNX4GZ.js → chunk-UXU7Y5BH.js} +2 -2
  58. package/dist/{chunk-DYDDAA6O.cjs → chunk-UZTOI6FJ.cjs} +766 -740
  59. package/dist/{chunk-EVMM3JE6.cjs → chunk-VFICDEYJ.cjs} +43 -43
  60. package/dist/{chunk-DOPOHO6H.cjs → chunk-XE2K53GH.cjs} +18 -18
  61. package/dist/{chunk-UWJMDFDO.cjs → chunk-XXO52RZR.cjs} +26 -26
  62. package/dist/{chunk-VYZCKY5K.js → chunk-ZLUFEWZZ.js} +7 -7
  63. package/dist/{chunk-NYSMDM4J.cjs → chunk-ZSOFLPQN.cjs} +7 -7
  64. package/dist/{chunk-ZPHOQDAE.js → chunk-ZZEKXGFS.js} +1 -1
  65. package/dist/{cloud-tenants-UQZASXUB.cjs → cloud-tenants-HZHKRUIW.cjs} +13 -13
  66. package/dist/{cloud-tenants-RKQRSDNE.js → cloud-tenants-Q4TCJS5Y.js} +12 -12
  67. package/dist/components/calendar.cjs +4 -4
  68. package/dist/components/calendar.js +1 -1
  69. package/dist/components/case-studies/index.cjs +27 -27
  70. package/dist/components/case-studies/index.js +13 -13
  71. package/dist/components/chat/index.cjs +8 -8
  72. package/dist/components/chat/index.js +7 -7
  73. package/dist/components/contact/index.cjs +14 -14
  74. package/dist/components/contact/index.js +13 -13
  75. package/dist/components/docs/index.cjs +17 -17
  76. package/dist/components/docs/index.js +16 -16
  77. package/dist/components/embeds/index.cjs +14 -14
  78. package/dist/components/embeds/index.js +13 -13
  79. package/dist/components/faq/index.cjs +14 -14
  80. package/dist/components/faq/index.js +13 -13
  81. package/dist/components/features/index.cjs +13 -13
  82. package/dist/components/features/index.js +12 -12
  83. package/dist/components/help-center-pages/download-apps-page.d.ts +55 -0
  84. package/dist/components/help-center-pages/download-apps-page.d.ts.map +1 -0
  85. package/dist/components/help-center-pages/index.cjs +329 -114
  86. package/dist/components/help-center-pages/index.d.ts +1 -0
  87. package/dist/components/help-center-pages/index.d.ts.map +1 -1
  88. package/dist/components/help-center-pages/index.js +243 -28
  89. package/dist/components/index.cjs +81 -79
  90. package/dist/components/index.js +28 -26
  91. package/dist/components/meeting-scheduler/index.cjs +51 -51
  92. package/dist/components/meeting-scheduler/index.js +14 -14
  93. package/dist/components/navigation/index.cjs +16 -16
  94. package/dist/components/navigation/index.js +15 -15
  95. package/dist/components/onboarding-guides/index.cjs +16 -16
  96. package/dist/components/onboarding-guides/index.js +15 -15
  97. package/dist/components/product-demo/index.cjs +8 -8
  98. package/dist/components/product-demo/index.js +8 -8
  99. package/dist/components/related-content/index.cjs +5 -5
  100. package/dist/components/related-content/index.js +4 -4
  101. package/dist/components/tickets/index.cjs +18 -18
  102. package/dist/components/tickets/index.js +17 -17
  103. package/dist/components/ui/button/button.d.ts.map +1 -1
  104. package/dist/components/ui/file-manager/index.cjs +11 -11
  105. package/dist/components/ui/file-manager/index.js +1 -1
  106. package/dist/components/ui/index.cjs +15 -13
  107. package/dist/components/ui/index.d.ts +1 -0
  108. package/dist/components/ui/index.d.ts.map +1 -1
  109. package/dist/components/ui/index.js +14 -12
  110. package/dist/components/ui/mobile-app-qr.d.ts +23 -0
  111. package/dist/components/ui/mobile-app-qr.d.ts.map +1 -0
  112. package/dist/components/ui/store-badges.d.ts +7 -4
  113. package/dist/components/ui/store-badges.d.ts.map +1 -1
  114. package/dist/{devices-7Q2EUM7B.cjs → devices-6XHUFIC6.cjs} +14 -14
  115. package/dist/{devices-U3Y4IIW4.js → devices-NOUGVTES.js} +12 -12
  116. package/dist/hooks/index.cjs +9 -3
  117. package/dist/hooks/index.d.ts +1 -0
  118. package/dist/hooks/index.d.ts.map +1 -1
  119. package/dist/hooks/index.js +8 -2
  120. package/dist/hooks/use-downloads.d.ts +41 -0
  121. package/dist/hooks/use-downloads.d.ts.map +1 -0
  122. package/dist/index.cjs +57 -17
  123. package/dist/index.js +56 -16
  124. package/dist/{knowledge-NST53EXE.js → knowledge-2YTUXQ2Z.js} +12 -12
  125. package/dist/{knowledge-UYIZ74MA.cjs → knowledge-ANEKPMO2.cjs} +14 -14
  126. package/dist/{logs-HTH7X7KV.cjs → logs-U3IB3HUM.cjs} +22 -22
  127. package/dist/{logs-JVTRG232.js → logs-WVQIONUT.js} +12 -12
  128. package/dist/{policies-DTXTRK56.js → policies-66EGDW2H.js} +12 -12
  129. package/dist/{policies-MXK2HB4W.cjs → policies-UFRN2EQF.cjs} +17 -17
  130. package/dist/{remote-session-LAJZKQBN.js → remote-session-6WEUJZDC.js} +4 -4
  131. package/dist/{remote-session-SKKF4PBV.cjs → remote-session-A75X5NPC.cjs} +6 -6
  132. package/dist/{software-update-P6BSM6HX.cjs → software-update-2MHKL76D.cjs} +17 -17
  133. package/dist/{software-update-6RHMPM3W.js → software-update-3ZD3MXF3.js} +12 -12
  134. package/dist/{tickets-board-BHLPAVNJ.cjs → tickets-board-IFWMIZ35.cjs} +9 -9
  135. package/dist/{tickets-board-PYDNELSK.js → tickets-board-MYXG3V72.js} +4 -4
  136. package/dist/types/downloads.d.ts +67 -0
  137. package/dist/types/downloads.d.ts.map +1 -0
  138. package/dist/types/index.cjs +24 -0
  139. package/dist/types/index.d.ts +1 -0
  140. package/dist/types/index.d.ts.map +1 -1
  141. package/dist/types/index.js +16 -1
  142. package/dist/utils/index.cjs +20 -0
  143. package/dist/utils/index.d.ts +1 -0
  144. package/dist/utils/index.d.ts.map +1 -1
  145. package/dist/utils/index.js +16 -1
  146. package/dist/utils/mobile-app.cjs +46 -0
  147. package/dist/utils/mobile-app.d.ts +40 -0
  148. package/dist/utils/mobile-app.d.ts.map +1 -0
  149. package/dist/utils/mobile-app.js +40 -0
  150. package/package.json +7 -1
  151. package/src/assets/index.ts +1 -0
  152. package/src/assets/mobile-app-qr.ts +19 -0
  153. package/src/components/help-center-pages/download-apps-page.tsx +364 -0
  154. package/src/components/help-center-pages/index.ts +1 -0
  155. package/src/components/ui/button/button.tsx +3 -0
  156. package/src/components/ui/index.ts +1 -0
  157. package/src/components/ui/mobile-app-qr.tsx +40 -0
  158. package/src/components/ui/store-badges.tsx +17 -9
  159. package/src/hooks/index.ts +1 -0
  160. package/src/hooks/use-downloads.ts +138 -0
  161. package/src/types/downloads.ts +82 -0
  162. package/src/types/index.ts +1 -0
  163. package/src/utils/index.ts +2 -0
  164. package/src/utils/mobile-app.ts +57 -0
@@ -6,38 +6,38 @@
6
6
 
7
7
 
8
8
 
9
- var _chunkISCZ6UNFcjs = require('../../chunk-ISCZ6UNF.cjs');
9
+ var _chunkRQZQHLNScjs = require('../../chunk-RQZQHLNS.cjs');
10
10
 
11
11
 
12
- var _chunk6BLN5WDScjs = require('../../chunk-6BLN5WDS.cjs');
13
- require('../../chunk-ZHD3F2TH.cjs');
14
- require('../../chunk-KSGMZHVV.cjs');
12
+ var _chunk3R32ZNA2cjs = require('../../chunk-3R32ZNA2.cjs');
13
+ require('../../chunk-GGBYZKMS.cjs');
14
+ require('../../chunk-DFM572VH.cjs');
15
15
 
16
16
 
17
17
 
18
- var _chunk2C72EWQRcjs = require('../../chunk-2C72EWQR.cjs');
18
+ var _chunkRJMWJAJOcjs = require('../../chunk-RJMWJAJO.cjs');
19
19
 
20
20
 
21
21
 
22
- var _chunkHTS46FFYcjs = require('../../chunk-HTS46FFY.cjs');
22
+ var _chunkI2254QN6cjs = require('../../chunk-I2254QN6.cjs');
23
23
 
24
24
 
25
- var _chunkDHNJSQGXcjs = require('../../chunk-DHNJSQGX.cjs');
25
+ var _chunkF7ORKKEFcjs = require('../../chunk-F7ORKKEF.cjs');
26
26
 
27
27
 
28
- var _chunkHFEYEPOGcjs = require('../../chunk-HFEYEPOG.cjs');
28
+ var _chunkNMPVK53Icjs = require('../../chunk-NMPVK53I.cjs');
29
29
 
30
30
 
31
31
 
32
- var _chunkDOPOHO6Hcjs = require('../../chunk-DOPOHO6H.cjs');
33
- require('../../chunk-NYSMDM4J.cjs');
34
- require('../../chunk-XSM46FHD.cjs');
32
+ var _chunkXE2K53GHcjs = require('../../chunk-XE2K53GH.cjs');
33
+ require('../../chunk-ZSOFLPQN.cjs');
34
+ require('../../chunk-D2DH6VZL.cjs');
35
35
 
36
36
 
37
37
 
38
- var _chunk7LPR4RZ3cjs = require('../../chunk-7LPR4RZ3.cjs');
39
- require('../../chunk-IL3ZWNM2.cjs');
40
- require('../../chunk-5XDCCQ4A.cjs');
38
+ var _chunkQYS4YVEPcjs = require('../../chunk-QYS4YVEP.cjs');
39
+ require('../../chunk-O5EHOJZD.cjs');
40
+ require('../../chunk-LODMNSQY.cjs');
41
41
 
42
42
 
43
43
 
@@ -47,21 +47,26 @@ require('../../chunk-5XDCCQ4A.cjs');
47
47
 
48
48
 
49
49
 
50
- var _chunkDYDDAA6Ocjs = require('../../chunk-DYDDAA6O.cjs');
51
- require('../../chunk-4HJRHEXD.cjs');
50
+
51
+
52
+
53
+ var _chunkUZTOI6FJcjs = require('../../chunk-UZTOI6FJ.cjs');
54
+ require('../../chunk-7Z5FMQYR.cjs');
52
55
  require('../../chunk-HQQE74RO.cjs');
53
56
  require('../../chunk-DEY6XXGO.cjs');
54
57
 
55
58
 
56
59
 
57
- var _chunkVF2CJXZ2cjs = require('../../chunk-VF2CJXZ2.cjs');
60
+ var _chunkBYVVE7HPcjs = require('../../chunk-BYVVE7HP.cjs');
58
61
 
59
62
 
60
- var _chunk4SIZCHVZcjs = require('../../chunk-4SIZCHVZ.cjs');
63
+
64
+
65
+ var _chunk4LY6R4TNcjs = require('../../chunk-4LY6R4TN.cjs');
61
66
  require('../../chunk-B4NCVYEQ.cjs');
62
67
  require('../../chunk-MZ4KBSH7.cjs');
63
68
  require('../../chunk-A6P6DHEZ.cjs');
64
- require('../../chunk-WBNAEYTQ.cjs');
69
+ require('../../chunk-BYUIFT7Q.cjs');
65
70
  require('../../chunk-LX22Y43B.cjs');
66
71
 
67
72
 
@@ -69,21 +74,32 @@ require('../../chunk-LX22Y43B.cjs');
69
74
 
70
75
 
71
76
 
72
- var _chunkRDP5UZXQcjs = require('../../chunk-RDP5UZXQ.cjs');
73
- require('../../chunk-KT3U3ZRP.cjs');
77
+
78
+
79
+
80
+ var _chunkHJMSNOBTcjs = require('../../chunk-HJMSNOBT.cjs');
81
+ require('../../chunk-OKE5BIQH.cjs');
74
82
  require('../../chunk-EWPR7662.cjs');
75
83
 
76
84
 
77
85
 
78
86
 
79
87
 
80
- var _chunkRZQGIWK3cjs = require('../../chunk-RZQGIWK3.cjs');
81
- require('../../chunk-FFT56TYB.cjs');
88
+ var _chunkQLTXT562cjs = require('../../chunk-QLTXT562.cjs');
89
+ require('../../chunk-RUZIICXT.cjs');
90
+
91
+
92
+
82
93
 
83
94
 
84
95
 
85
96
 
86
- var _chunkGQ7JJUITcjs = require('../../chunk-GQ7JJUIT.cjs');
97
+
98
+
99
+
100
+
101
+
102
+ var _chunkK2JUJ37Dcjs = require('../../chunk-K2JUJ37D.cjs');
87
103
  require('../../chunk-WVOTC7HW.cjs');
88
104
 
89
105
 
@@ -104,7 +120,7 @@ var _chunk7DNL734Scjs = require('../../chunk-7DNL734S.cjs');
104
120
 
105
121
 
106
122
 
107
- var _chunkRFUOIQSGcjs = require('../../chunk-RFUOIQSG.cjs');
123
+ var _chunkGCK75D7Fcjs = require('../../chunk-GCK75D7F.cjs');
108
124
  require('../../chunk-AL2GUHAJ.cjs');
109
125
 
110
126
 
@@ -123,6 +139,9 @@ require('../../chunk-LLSUVPQC.cjs');
123
139
 
124
140
 
125
141
 
142
+
143
+
144
+
126
145
  var _chunkVX4E6YSBcjs = require('../../chunk-VX4E6YSB.cjs');
127
146
  require('../../chunk-RDW5JAME.cjs');
128
147
  require('../../chunk-XXBLN4BP.cjs');
@@ -130,13 +149,15 @@ require('../../chunk-2Y7QZAB2.cjs');
130
149
  require('../../chunk-4GFNWALL.cjs');
131
150
 
132
151
 
133
- var _chunkDFQYAYBHcjs = require('../../chunk-DFQYAYBH.cjs');
152
+ var _chunkHQIOMFJHcjs = require('../../chunk-HQIOMFJH.cjs');
134
153
  require('../../chunk-LLRGR4I5.cjs');
135
154
  require('../../chunk-G7SBHMRR.cjs');
136
155
  require('../../chunk-G6OHIX5C.cjs');
137
156
  require('../../chunk-3LU4UFPS.cjs');
138
157
  require('../../chunk-CPA2CKRZ.cjs');
139
- require('../../chunk-3ATAYP36.cjs');
158
+
159
+
160
+ var _chunk3ATAYP36cjs = require('../../chunk-3ATAYP36.cjs');
140
161
  require('../../chunk-QBJ4SE23.cjs');
141
162
 
142
163
  // src/components/help-center-pages/roadmap-page.tsx
@@ -154,9 +175,9 @@ function RoadmapPage({
154
175
  belowContent,
155
176
  shell
156
177
  }) {
157
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkDOPOHO6Hcjs.DevSectionPage, { sectionKey: "roadmap", backButton, title, subtitle, shell, children: [
178
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkXE2K53GHcjs.DevSectionPage, { sectionKey: "roadmap", backButton, title, subtitle, shell, children: [
158
179
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
159
- _chunkISCZ6UNFcjs.RoadmapView,
180
+ _chunkRQZQHLNScjs.RoadmapView,
160
181
  {
161
182
  endpoint: roadmapEndpoint,
162
183
  initialItems,
@@ -182,9 +203,9 @@ function ProductReleasesListPage({
182
203
  belowContent,
183
204
  shell
184
205
  }) {
185
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkDOPOHO6Hcjs.DevSectionPage, { sectionKey: "releases", backButton, title, subtitle, shell, children: [
206
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkXE2K53GHcjs.DevSectionPage, { sectionKey: "releases", backButton, title, subtitle, shell, children: [
186
207
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
187
- _chunkISCZ6UNFcjs.ProductReleasesView,
208
+ _chunkRQZQHLNScjs.ProductReleasesView,
188
209
  {
189
210
  endpoint: releasesEndpoint,
190
211
  basePath,
@@ -207,8 +228,8 @@ function DeliveryPage({
207
228
  belowContent,
208
229
  shell
209
230
  }) {
210
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkDOPOHO6Hcjs.DevSectionPage, { sectionKey: "delivery", backButton, title, subtitle, shell, children: [
211
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkISCZ6UNFcjs.DeliveryLists, { completedApiEndpoint: completedEndpoint, inProgressApiEndpoint: inProgressEndpoint }),
231
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkXE2K53GHcjs.DevSectionPage, { sectionKey: "delivery", backButton, title, subtitle, shell, children: [
232
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRQZQHLNScjs.DeliveryLists, { completedApiEndpoint: completedEndpoint, inProgressApiEndpoint: inProgressEndpoint }),
212
233
  belowContent
213
234
  ] });
214
235
  }
@@ -228,9 +249,9 @@ function OnboardingGuidesCatalogPage({
228
249
  belowContent,
229
250
  shell
230
251
  }) {
231
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkDOPOHO6Hcjs.DevSectionPage, { sectionKey: "onboarding", backButton, title, subtitle, shell, children: [
252
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkXE2K53GHcjs.DevSectionPage, { sectionKey: "onboarding", backButton, title, subtitle, shell, children: [
232
253
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
233
- _chunk7LPR4RZ3cjs.OnboardingGuidesCatalogView,
254
+ _chunkQYS4YVEPcjs.OnboardingGuidesCatalogView,
234
255
  {
235
256
  guidesEndpoint,
236
257
  sectionsEndpoint,
@@ -279,10 +300,10 @@ function TrustSection({
279
300
  id,
280
301
  "aria-labelledby": headingId,
281
302
  className: "flex flex-col gap-[var(--spacing-system-m)]",
282
- style: { scrollMarginTop: _chunkGQ7JJUITcjs.STICKY_HEADER_OFFSET_PX },
303
+ style: { scrollMarginTop: _chunkK2JUJ37Dcjs.STICKY_HEADER_OFFSET_PX },
283
304
  children: [
284
305
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col gap-[var(--spacing-system-xxs)]", children: [
285
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { id: headingId, className: _chunkRFUOIQSGcjs.SECTION_HEADING_CLASS, children: title }),
306
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { id: headingId, className: _chunkGCK75D7Fcjs.SECTION_HEADING_CLASS, children: title }),
286
307
  lead ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: BODY_TEXT, children: lead }) : null
287
308
  ] }),
288
309
  children
@@ -303,18 +324,18 @@ function AiSection({ practices }) {
303
324
  }
304
325
  ]
305
326
  }));
306
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDYDDAA6Ocjs.StackedRowsPanel, { rows });
327
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUZTOI6FJcjs.StackedRowsPanel, { rows });
307
328
  }
308
329
  function ComplianceSection({ frameworks }) {
309
330
  const rows = frameworks.map((framework) => {
310
- const entry = _chunkRFUOIQSGcjs.trustFrameworkMonitoringEntry.call(void 0, framework.monitoring);
331
+ const entry = _chunkGCK75D7Fcjs.trustFrameworkMonitoringEntry.call(void 0, framework.monitoring);
311
332
  const Icon = FRAMEWORK_ICONS[entry.icon];
312
333
  return {
313
334
  id: framework.id,
314
335
  columns: [
315
336
  {
316
337
  key: "framework",
317
- leadingIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDYDDAA6Ocjs.ComplianceLogo, { names: [framework.standard, framework.label], fallback: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Icon, { "aria-hidden": "true" }) }),
338
+ leadingIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUZTOI6FJcjs.ComplianceLogo, { names: [framework.standard, framework.label], fallback: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Icon, { "aria-hidden": "true" }) }),
318
339
  value: framework.label,
319
340
  label: _nullishCoalesce(framework.description, () => ( void 0)),
320
341
  wrap: true
@@ -323,12 +344,12 @@ function ComplianceSection({ frameworks }) {
323
344
  key: "monitoring",
324
345
  width: ACTION_COLUMN,
325
346
  align: "right",
326
- content: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRFUOIQSGcjs.StatusBadge, { text: _chunkRFUOIQSGcjs.trustFrameworkBadge.call(void 0, framework), colorScheme: entry.color, singleLine: true })
347
+ content: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkGCK75D7Fcjs.StatusBadge, { text: _chunkGCK75D7Fcjs.trustFrameworkBadge.call(void 0, framework), colorScheme: entry.color, singleLine: true })
327
348
  }
328
349
  ]
329
350
  };
330
351
  });
331
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDYDDAA6Ocjs.StackedRowsPanel, { rows });
352
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUZTOI6FJcjs.StackedRowsPanel, { rows });
332
353
  }
333
354
  var CONTROL_ROW_CLASS = "h-14 content-md:h-20 overflow-hidden";
334
355
  function controlRows(controls) {
@@ -361,22 +382,22 @@ function ControlsListSkeleton() {
361
382
  {
362
383
  key: "control",
363
384
  content: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full flex-col gap-[var(--spacing-system-xs)]", children: [
364
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRDP5UZXQcjs.TextSkeleton.Body, { className: "w-2/3" }),
365
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRDP5UZXQcjs.TextSkeleton.Caption, { className: "w-full" })
385
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHJMSNOBTcjs.TextSkeleton.Body, { className: "w-2/3" }),
386
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHJMSNOBTcjs.TextSkeleton.Caption, { className: "w-full" })
366
387
  ] })
367
388
  }
368
389
  ]
369
390
  }));
370
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDYDDAA6Ocjs.StackedRowsPanel, { rows });
391
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUZTOI6FJcjs.StackedRowsPanel, { rows });
371
392
  }
372
393
  function ControlsSection({ endpoint, seed }) {
373
394
  const [domain, setDomain] = _react.useState.call(void 0, seed.domain);
374
395
  const [typed, setTyped] = _react.useState.call(void 0, "");
375
- const query = _chunkGQ7JJUITcjs.useDebounce.call(void 0, _chunkRFUOIQSGcjs.normalizeTrustControlQuery.call(void 0, typed), _chunkRFUOIQSGcjs.TRUST_CENTER_SEARCH_DEBOUNCE_MS);
376
- const url = _chunkRFUOIQSGcjs.trustCenterControlsUrl.call(void 0, endpoint, { domain, query });
377
- const seedUrl = _chunkRFUOIQSGcjs.trustCenterControlsUrl.call(void 0, endpoint, { domain: seed.domain, query: "" });
378
- const answer = _chunkRFUOIQSGcjs.useSelfFetch.call(void 0, url, url === seedUrl ? { initialData: seed } : void 0);
379
- const typedQuery = _chunkRFUOIQSGcjs.normalizeTrustControlQuery.call(void 0, typed);
396
+ const query = _chunkK2JUJ37Dcjs.useDebounce.call(void 0, _chunkGCK75D7Fcjs.normalizeTrustControlQuery.call(void 0, typed), _chunkGCK75D7Fcjs.TRUST_CENTER_SEARCH_DEBOUNCE_MS);
397
+ const url = _chunkGCK75D7Fcjs.trustCenterControlsUrl.call(void 0, endpoint, { domain, query });
398
+ const seedUrl = _chunkGCK75D7Fcjs.trustCenterControlsUrl.call(void 0, endpoint, { domain: seed.domain, query: "" });
399
+ const answer = _chunkGCK75D7Fcjs.useSelfFetch.call(void 0, url, url === seedUrl ? { initialData: seed } : void 0);
400
+ const typedQuery = _chunkGCK75D7Fcjs.normalizeTrustControlQuery.call(void 0, typed);
380
401
  const current = answer.data && !answer.isLoading && typedQuery === query && answer.data.query === query ? answer.data : null;
381
402
  const [categories, setCategories] = _react.useState.call(void 0, seed.categories);
382
403
  if (current && current.categories !== categories) setCategories(current.categories);
@@ -395,12 +416,12 @@ function ControlsSection({ endpoint, seed }) {
395
416
  else summary = `${countLabel(current.controls.length, "passing control")} in ${current.domain}`;
396
417
  let body;
397
418
  if (answer.error && !current) {
398
- body = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDYDDAA6Ocjs.LoadError, { message: "Could not load the controls", onRetry: answer.reload });
419
+ body = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUZTOI6FJcjs.LoadError, { message: "Could not load the controls", onRetry: answer.reload });
399
420
  } else if (!current) {
400
421
  body = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ControlsListSkeleton, {});
401
422
  } else if (current.controls.length === 0) {
402
423
  body = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
403
- _chunkDOPOHO6Hcjs.ListEmptyState,
424
+ _chunkXE2K53GHcjs.ListEmptyState,
404
425
  {
405
426
  isFiltered: true,
406
427
  filtered: {
@@ -413,11 +434,11 @@ function ControlsSection({ endpoint, seed }) {
413
434
  }
414
435
  );
415
436
  } else {
416
- body = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDYDDAA6Ocjs.StackedRowsPanel, { rows: controlRows(current.controls) });
437
+ body = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUZTOI6FJcjs.StackedRowsPanel, { rows: controlRows(current.controls) });
417
438
  }
418
439
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-m)]", children: [
419
440
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
420
- _chunkDYDDAA6Ocjs.TabNavigation,
441
+ _chunkUZTOI6FJcjs.TabNavigation,
421
442
  {
422
443
  tabs,
423
444
  activeTab,
@@ -427,7 +448,7 @@ function ControlsSection({ endpoint, seed }) {
427
448
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-s)] content-md:flex-row content-md:items-center content-md:justify-between", children: [
428
449
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: BODY_TEXT, "aria-live": "polite", children: summary }),
429
450
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-full content-md:w-80", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
430
- _chunkDYDDAA6Ocjs.SearchInput,
451
+ _chunkUZTOI6FJcjs.SearchInput,
431
452
  {
432
453
  placeholder: "Search controls",
433
454
  value: typed,
@@ -437,7 +458,7 @@ function ControlsSection({ endpoint, seed }) {
437
458
  }
438
459
  ) })
439
460
  ] }),
440
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRDP5UZXQcjs.ScrollShadow, { className: CONTROLS_LIST_HEIGHT, scrollClassName: "h-full", "data-testid": "controls-list", children: body })
461
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHJMSNOBTcjs.ScrollShadow, { className: CONTROLS_LIST_HEIGHT, scrollClassName: "h-full", "data-testid": "controls-list", children: body })
441
462
  ] });
442
463
  }
443
464
  function DocumentsSection({
@@ -463,7 +484,7 @@ function DocumentsSection({
463
484
  width: ACTION_COLUMN,
464
485
  align: "right",
465
486
  content: href === null ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
466
- _chunkDFQYAYBHcjs.Button,
487
+ _chunkHQIOMFJHcjs.Button,
467
488
  {
468
489
  variant: "outline",
469
490
  size: "small",
@@ -471,12 +492,12 @@ function DocumentsSection({
471
492
  "aria-label": `Request ${document.title}`,
472
493
  children: "Request"
473
494
  }
474
- ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDFQYAYBHcjs.Button, { variant: "outline", size: "small", href, openInNewTab: true, "aria-label": `View ${document.title}`, children: "View" })
495
+ ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHQIOMFJHcjs.Button, { variant: "outline", size: "small", href, openInNewTab: true, "aria-label": `View ${document.title}`, children: "View" })
475
496
  }
476
497
  ]
477
498
  };
478
499
  });
479
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDYDDAA6Ocjs.StackedRowsPanel, { rows });
500
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUZTOI6FJcjs.StackedRowsPanel, { rows });
480
501
  }
481
502
  function DocumentRequestModal({
482
503
  open,
@@ -485,14 +506,14 @@ function DocumentRequestModal({
485
506
  onClose
486
507
  }) {
487
508
  const message = documentTitle ? `I'd like access to: ${documentTitle}.` : "I'd like access to your gated security documentation.";
488
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkRZQGIWK3cjs.Modal, { isOpen: open, onClose, size: "medium", children: [
489
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRZQGIWK3cjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRZQGIWK3cjs.ModalTitle, { children: "Request access" }) }),
490
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRZQGIWK3cjs.ModalContent, { children: open ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-m)]", children: [
509
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkQLTXT562cjs.Modal, { isOpen: open, onClose, size: "medium", children: [
510
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQLTXT562cjs.ModalHeader, { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQLTXT562cjs.ModalTitle, { children: "Request access" }) }),
511
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkQLTXT562cjs.ModalContent, { children: open ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-m)]", children: [
491
512
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: BODY_TEXT, children: "We share gated security documents under NDA. Leave your work email and our security team will follow up with access, usually within one business day." }),
492
513
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
493
- _chunkHFEYEPOGcjs.ContactForm,
514
+ _chunkNMPVK53Icjs.ContactForm,
494
515
  {
495
- rescue: _chunkGQ7JJUITcjs.RESCUE_FORMS.trustCenterRequest,
516
+ rescue: _chunkK2JUJ37Dcjs.RESCUE_FORMS.trustCenterRequest,
496
517
  title: "",
497
518
  noBorder: true,
498
519
  noPadding: true,
@@ -508,12 +529,12 @@ function DocumentRequestModal({
508
529
  ] });
509
530
  }
510
531
  function subprocessorMark({ name, logoUrl }) {
511
- if (logoUrl) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVF2CJXZ2cjs.EntityImage, { src: logoUrl, alt: name, fallbackText: name, sizeClassName: "size-6" });
532
+ if (logoUrl) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBYVVE7HPcjs.EntityImage, { src: logoUrl, alt: name, fallbackText: name, sizeClassName: "size-6" });
512
533
  const logo = _chunkIMTY3GRRcjs.brandLogoForName.call(void 0, name);
513
- return logo ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "img", "aria-label": name, className: "flex", children: _react.createElement.call(void 0, logo, { className: "size-6" }) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVF2CJXZ2cjs.EntityImage, { alt: name, fallbackText: name, sizeClassName: "size-6" });
534
+ return logo ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { role: "img", "aria-label": name, className: "flex", children: _react.createElement.call(void 0, logo, { className: "size-6" }) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBYVVE7HPcjs.EntityImage, { alt: name, fallbackText: name, sizeClassName: "size-6" });
514
535
  }
515
536
  function countryWithFlag(country) {
516
- const flag = _chunkRDP5UZXQcjs.getFlagFromCountryName.call(void 0, country);
537
+ const flag = _chunkHJMSNOBTcjs.getFlagFromCountryName.call(void 0, country);
517
538
  return flag ? `${flag} ${country}` : country;
518
539
  }
519
540
  function SubprocessorsSection({ subprocessors }) {
@@ -540,11 +561,11 @@ function SubprocessorsSection({ subprocessors }) {
540
561
  ] : []
541
562
  ]
542
563
  }));
543
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDYDDAA6Ocjs.StackedRowsPanel, { rows });
564
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUZTOI6FJcjs.StackedRowsPanel, { rows });
544
565
  }
545
566
  function ContactSection({ onContact }) {
546
567
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
547
- _chunkDYDDAA6Ocjs.StackedRowsPanel,
568
+ _chunkUZTOI6FJcjs.StackedRowsPanel,
548
569
  {
549
570
  rows: [
550
571
  {
@@ -561,7 +582,7 @@ function ContactSection({ onContact }) {
561
582
  key: "action",
562
583
  width: ACTION_COLUMN,
563
584
  align: "right",
564
- content: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDFQYAYBHcjs.Button, { variant: "outline", size: "small", onClick: onContact, children: "Get in touch" })
585
+ content: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHQIOMFJHcjs.Button, { variant: "outline", size: "small", onClick: onContact, children: "Get in touch" })
565
586
  }
566
587
  ]
567
588
  }
@@ -570,11 +591,11 @@ function ContactSection({ onContact }) {
570
591
  );
571
592
  }
572
593
  function SkeletonSection({ id, children }) {
573
- const label = _nullishCoalesce(_optionalChain([_chunkRFUOIQSGcjs.TRUST_CENTER_SECTIONS, 'access', _7 => _7.find, 'call', _8 => _8((section) => section.id === id), 'optionalAccess', _9 => _9.label]), () => ( id));
594
+ const label = _nullishCoalesce(_optionalChain([_chunkGCK75D7Fcjs.TRUST_CENTER_SECTIONS, 'access', _7 => _7.find, 'call', _8 => _8((section) => section.id === id), 'optionalAccess', _9 => _9.label]), () => ( id));
574
595
  const lead = TRUST_SECTION_LEADS[id];
575
596
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "section", { "aria-hidden": "true", className: "flex flex-col gap-[var(--spacing-system-m)]", children: [
576
597
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-col gap-[var(--spacing-system-xxs)]", children: [
577
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: _chunkRFUOIQSGcjs.SECTION_HEADING_CLASS, children: label }),
598
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { className: _chunkGCK75D7Fcjs.SECTION_HEADING_CLASS, children: label }),
578
599
  lead ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: BODY_TEXT, children: lead }) : null
579
600
  ] }),
580
601
  children
@@ -588,14 +609,14 @@ function skeletonRows(count, shape) {
588
609
  key: "item",
589
610
  content: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex w-full items-center gap-[var(--spacing-system-s)]", children: [
590
611
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
591
- _chunkRDP5UZXQcjs.UnifiedSkeleton,
612
+ _chunkHJMSNOBTcjs.UnifiedSkeleton,
592
613
  {
593
614
  className: shape.mark === "logo" ? "size-10 shrink-0 rounded-full" : "size-6 shrink-0 rounded"
594
615
  }
595
616
  ),
596
617
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 flex-1 flex-col gap-[var(--spacing-system-xxs)]", children: [
597
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRDP5UZXQcjs.UnifiedSkeleton, { variant: "text", className: "h-5 w-1/3 content-md:h-6" }),
598
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRDP5UZXQcjs.TextSkeleton.Body, { className: "w-1/2" })
618
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHJMSNOBTcjs.UnifiedSkeleton, { variant: "text", className: "h-5 w-1/3 content-md:h-6" }),
619
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHJMSNOBTcjs.TextSkeleton.Body, { className: "w-1/2" })
599
620
  ] })
600
621
  ] })
601
622
  },
@@ -603,53 +624,53 @@ function skeletonRows(count, shape) {
603
624
  key: "action",
604
625
  width: ACTION_COLUMN,
605
626
  align: "right",
606
- content: shape.action === "badge" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRDP5UZXQcjs.UnifiedSkeleton, { className: "h-4 w-28 rounded" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRDP5UZXQcjs.UnifiedSkeleton, { className: "h-6 w-16 rounded content-md:h-8" })
627
+ content: shape.action === "badge" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHJMSNOBTcjs.UnifiedSkeleton, { className: "h-4 w-28 rounded" }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHJMSNOBTcjs.UnifiedSkeleton, { className: "h-6 w-16 rounded content-md:h-8" })
607
628
  }
608
629
  ]
609
630
  }));
610
631
  }
611
632
  function ControlsSectionSkeleton() {
612
633
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-m)]", children: [
613
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xxs)] overflow-hidden", children: [0, 1, 2, 3].map((index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0 p-[var(--spacing-system-m)]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRDP5UZXQcjs.UnifiedSkeleton, { variant: "text", className: "h-5 w-36 content-md:h-6" }) }, index)) }),
634
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xxs)] overflow-hidden", children: [0, 1, 2, 3].map((index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "shrink-0 p-[var(--spacing-system-m)]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHJMSNOBTcjs.UnifiedSkeleton, { variant: "text", className: "h-5 w-36 content-md:h-6" }) }, index)) }),
614
635
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-s)] content-md:flex-row content-md:items-center content-md:justify-between", children: [
615
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRDP5UZXQcjs.TextSkeleton.Body, { className: "w-48" }),
616
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRDP5UZXQcjs.UnifiedSkeleton, { className: "h-11 w-full rounded-[6px] content-md:h-12 content-md:w-80" })
636
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHJMSNOBTcjs.TextSkeleton.Body, { className: "w-48" }),
637
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHJMSNOBTcjs.UnifiedSkeleton, { className: "h-11 w-full rounded-[6px] content-md:h-12 content-md:w-80" })
617
638
  ] }),
618
639
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: CONTROLS_LIST_HEIGHT, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ControlsListSkeleton, {}) })
619
640
  ] });
620
641
  }
621
642
  function SectionRailSkeleton() {
622
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "sticky", style: { top: _chunkGQ7JJUITcjs.STICKY_HEADER_OFFSET_PX }, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative", children: [
643
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "sticky", style: { top: _chunkK2JUJ37Dcjs.STICKY_HEADER_OFFSET_PX }, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "relative", children: [
623
644
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
624
645
  "div",
625
646
  {
626
647
  className: "absolute -left-0.5 top-0 w-px bg-ods-border",
627
- style: { height: _chunkRFUOIQSGcjs.TRUST_CENTER_SECTIONS.length * 40 }
648
+ style: { height: _chunkGCK75D7Fcjs.TRUST_CENTER_SECTIONS.length * 40 }
628
649
  }
629
650
  ),
630
- _chunkRFUOIQSGcjs.TRUST_CENTER_SECTIONS.map((section) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-10 items-center px-3 py-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRDP5UZXQcjs.TextSkeleton.Body, { className: "w-24" }) }, section.id))
651
+ _chunkGCK75D7Fcjs.TRUST_CENTER_SECTIONS.map((section) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex h-10 items-center px-3 py-2", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHJMSNOBTcjs.TextSkeleton.Body, { className: "w-24" }) }, section.id))
631
652
  ] }) });
632
653
  }
633
654
  function TrustCenterSkeleton() {
634
655
  return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
635
656
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: TRUST_STATUS_ROW_CLASS, "aria-hidden": "true", children: [
636
657
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-1.5", children: [
637
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRDP5UZXQcjs.UnifiedSkeleton, { className: "size-3 rounded-full" }),
638
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRDP5UZXQcjs.TextSkeleton.Body, { className: "w-44" })
658
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHJMSNOBTcjs.UnifiedSkeleton, { className: "size-3 rounded-full" }),
659
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHJMSNOBTcjs.TextSkeleton.Body, { className: "w-44" })
639
660
  ] }),
640
661
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex shrink-0 flex-col gap-[var(--spacing-system-xxs)] content-sm:flex-row content-sm:items-center content-sm:gap-[var(--spacing-system-sf)]", children: [
641
662
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex items-center gap-[var(--spacing-system-xsf)]", children: [
642
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRDP5UZXQcjs.UnifiedSkeleton, { className: "size-4 rounded" }),
643
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRDP5UZXQcjs.TextSkeleton.Body, { className: "w-36" })
663
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHJMSNOBTcjs.UnifiedSkeleton, { className: "size-4 rounded" }),
664
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHJMSNOBTcjs.TextSkeleton.Body, { className: "w-36" })
644
665
  ] }),
645
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRDP5UZXQcjs.TextSkeleton.Body, { className: "w-44" })
666
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHJMSNOBTcjs.TextSkeleton.Body, { className: "w-44" })
646
667
  ] })
647
668
  ] }),
648
669
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: TRUST_BODY_GRID_CLASS, "aria-busy": "true", "aria-label": "Loading the trust center", children: [
649
670
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: TRUST_SECTIONS_COLUMN_CLASS, children: [
650
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SkeletonSection, { id: "compliance", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDYDDAA6Ocjs.StackedRowsPanel, { rows: skeletonRows(3, { mark: "logo", action: "badge" }) }) }),
671
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SkeletonSection, { id: "compliance", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUZTOI6FJcjs.StackedRowsPanel, { rows: skeletonRows(3, { mark: "logo", action: "badge" }) }) }),
651
672
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SkeletonSection, { id: "controls", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ControlsSectionSkeleton, {}) }),
652
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SkeletonSection, { id: "documents", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDYDDAA6Ocjs.StackedRowsPanel, { rows: skeletonRows(2, { mark: "glyph", action: "button" }) }) })
673
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SkeletonSection, { id: "documents", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUZTOI6FJcjs.StackedRowsPanel, { rows: skeletonRows(2, { mark: "glyph", action: "button" }) }) })
653
674
  ] }),
654
675
  /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "aside", { className: "hidden content-lg:block", "aria-hidden": "true", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SectionRailSkeleton, {}) })
655
676
  ] })
@@ -668,7 +689,7 @@ function visibleSections(data) {
668
689
  faq: data.faqs.length > 0,
669
690
  contact: true
670
691
  };
671
- return _chunkRFUOIQSGcjs.TRUST_CENTER_SECTIONS.filter((section) => hasContent[section.id]);
692
+ return _chunkGCK75D7Fcjs.TRUST_CENTER_SECTIONS.filter((section) => hasContent[section.id]);
672
693
  }
673
694
  function controlsSeed(data) {
674
695
  const first = _nullishCoalesce(data.controlDomains[0], () => ( null));
@@ -684,22 +705,22 @@ var MONITORING_CLOCK_TICK_MS = 6e4;
684
705
  function monitoringStatus(data, hydrated, nowMs) {
685
706
  if (!data.connected) return { status: "missing", label: "Live control monitoring is not enabled yet" };
686
707
  if (!hydrated) return { status: "missing", label: "Checking monitoring status" };
687
- return _chunkRFUOIQSGcjs.isTrustCenterMonitored.call(void 0, data, nowMs) ? { status: "success", label: "Controls continuously monitored" } : { status: "pending", label: "Monitoring paused" };
708
+ return _chunkGCK75D7Fcjs.isTrustCenterMonitored.call(void 0, data, nowMs) ? { status: "success", label: "Controls continuously monitored" } : { status: "pending", label: "Monitoring paused" };
688
709
  }
689
710
  function TrustCenterPage({
690
- endpoint = _chunkRFUOIQSGcjs.TRUST_CENTER_API_PATH,
711
+ endpoint = _chunkGCK75D7Fcjs.TRUST_CENTER_API_PATH,
691
712
  initialData,
692
713
  shell = true,
693
714
  backButton = false,
694
- title = _chunkRFUOIQSGcjs.TRUST_CENTER_TITLE,
695
- subtitle = _chunkRFUOIQSGcjs.TRUST_CENTER_TAGLINE,
715
+ title = _chunkGCK75D7Fcjs.TRUST_CENTER_TITLE,
716
+ subtitle = _chunkGCK75D7Fcjs.TRUST_CENTER_TAGLINE,
696
717
  ask
697
718
  }) {
698
- const { data, isLoading, error, reload } = _chunkRFUOIQSGcjs.useSelfFetch.call(void 0, endpoint, {
719
+ const { data, isLoading, error, reload } = _chunkGCK75D7Fcjs.useSelfFetch.call(void 0, endpoint, {
699
720
  initialData,
700
- revalidateOnVisibleAfterMs: _chunkRFUOIQSGcjs.TRUST_CENTER_CACHE_SECONDS * 1e3
721
+ revalidateOnVisibleAfterMs: _chunkGCK75D7Fcjs.TRUST_CENTER_CACHE_SECONDS * 1e3
701
722
  });
702
- const hydrated = _chunkRDP5UZXQcjs.useIsHydrated.call(void 0, );
723
+ const hydrated = _chunkHJMSNOBTcjs.useIsHydrated.call(void 0, );
703
724
  const [clock, setClock] = _react.useState.call(void 0, () => ({ data, nowMs: Date.now() }));
704
725
  if (clock.data !== data) {
705
726
  setClock(() => ({ data, nowMs: Date.now() }));
@@ -715,12 +736,12 @@ function TrustCenterPage({
715
736
  documentTitle: null
716
737
  });
717
738
  const sections = _react.useMemo.call(void 0, () => data ? visibleSections(data) : [], [data]);
718
- const { activeSection, handleSectionClick } = _chunkHTS46FFYcjs.useScrollSpy.call(void 0, sections, {
739
+ const { activeSection, handleSectionClick } = _chunkI2254QN6cjs.useScrollSpy.call(void 0, sections, {
719
740
  syncHash: true,
720
- headerOffset: _chunkGQ7JJUITcjs.STICKY_HEADER_OFFSET_PX
741
+ headerOffset: _chunkK2JUJ37Dcjs.STICKY_HEADER_OFFSET_PX
721
742
  });
722
- _chunk4SIZCHVZcjs.useScrollToHash.call(void 0, sections.length > 0 ? sections.map((section) => section.id).join("|") : null, {
723
- headerOffset: _chunkGQ7JJUITcjs.STICKY_HEADER_OFFSET_PX
743
+ _chunk4LY6R4TNcjs.useScrollToHash.call(void 0, sections.length > 0 ? sections.map((section) => section.id).join("|") : null, {
744
+ headerOffset: _chunkK2JUJ37Dcjs.STICKY_HEADER_OFFSET_PX
724
745
  });
725
746
  const openRequest = _react.useCallback.call(void 0, (documentTitle) => setRequest({ open: true, documentTitle }), []);
726
747
  const closeRequest = _react.useCallback.call(void 0, () => setRequest((current) => ({ ...current, open: false })), []);
@@ -745,7 +766,7 @@ function TrustCenterPage({
745
766
  DocumentsSection,
746
767
  {
747
768
  documents: d.documents,
748
- documentUrl: (document) => _chunkRFUOIQSGcjs.trustCenterDocumentUrl.call(void 0, endpoint, document),
769
+ documentUrl: (document) => _chunkGCK75D7Fcjs.trustCenterDocumentUrl.call(void 0, endpoint, document),
749
770
  onRequest: openRequest
750
771
  }
751
772
  )
@@ -754,24 +775,24 @@ function TrustCenterPage({
754
775
  lead: TRUST_SECTION_LEADS.subprocessors,
755
776
  render: (d) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SubprocessorsSection, { subprocessors: d.subprocessors })
756
777
  },
757
- faq: { render: (d) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk2C72EWQRcjs.FaqSection, { initialFaqs: d.faqs, heading: null, ask }) },
778
+ faq: { render: (d) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkRJMWJAJOcjs.FaqSection, { initialFaqs: d.faqs, heading: null, ask }) },
758
779
  contact: { render: () => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ContactSection, { onContact: () => openRequest(null) }) }
759
780
  };
760
781
  let body;
761
782
  if (error && !data) {
762
- body = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDYDDAA6Ocjs.LoadError, { message: "Could not load the trust center", onRetry: reload });
783
+ body = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUZTOI6FJcjs.LoadError, { message: "Could not load the trust center", onRetry: reload });
763
784
  } else if (!data) {
764
785
  body = isLoading ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TrustCenterSkeleton, {}) : null;
765
786
  } else {
766
787
  const status = monitoringStatus(data, hydrated, nowMs);
767
788
  body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
768
789
  /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: TRUST_STATUS_ROW_CLASS, children: [
769
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDYDDAA6Ocjs.StatusIndicator, { status: status.status, label: status.label }),
790
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUZTOI6FJcjs.StatusIndicator, { status: status.status, label: status.label }),
770
791
  data.connected ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
771
- _chunkDYDDAA6Ocjs.DataAttribution,
792
+ _chunkUZTOI6FJcjs.DataAttribution,
772
793
  {
773
794
  icon: data.dataSource.logoUrl ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
774
- _chunkVF2CJXZ2cjs.EntityImage,
795
+ _chunkBYVVE7HPcjs.EntityImage,
775
796
  {
776
797
  src: data.dataSource.logoUrl,
777
798
  alt: data.dataSource.name,
@@ -789,8 +810,8 @@ function TrustCenterPage({
789
810
  const view = views[section.id];
790
811
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TrustSection, { id: section.id, title: section.label, lead: view.lead, children: view.render(data) }, section.id);
791
812
  }) }),
792
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "aside", { className: "hidden content-lg:block", "aria-label": "Trust center sections", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "sticky", style: { top: _chunkGQ7JJUITcjs.STICKY_HEADER_OFFSET_PX }, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
793
- _chunkHTS46FFYcjs.StickySectionNav,
813
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "aside", { className: "hidden content-lg:block", "aria-label": "Trust center sections", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "sticky", style: { top: _chunkK2JUJ37Dcjs.STICKY_HEADER_OFFSET_PX }, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
814
+ _chunkI2254QN6cjs.StickySectionNav,
794
815
  {
795
816
  sections: sections.map((section) => ({ id: section.id, label: section.label })),
796
817
  activeSection,
@@ -822,7 +843,7 @@ function TrustCenterChrome({
822
843
  const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
823
844
  const backCfg = backButton === false ? void 0 : { label: _nullishCoalesce(backButton.label, () => ( "Back to home")), onClick: () => router.push(_nullishCoalesce(backButton.href, () => ( "/"))) };
824
845
  const inner = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
825
- _chunkVF2CJXZ2cjs.PageLayout,
846
+ _chunkBYVVE7HPcjs.PageLayout,
826
847
  {
827
848
  title,
828
849
  subtitle,
@@ -834,17 +855,211 @@ function TrustCenterChrome({
834
855
  children
835
856
  }
836
857
  );
837
- return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkDYDDAA6Ocjs.PageShell, { children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: inner });
858
+ return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUZTOI6FJcjs.PageShell, { children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: inner });
838
859
  }
839
860
  function TrustCenterPageSkeleton({
840
861
  shell = true,
841
862
  backButton = false,
842
- title = _chunkRFUOIQSGcjs.TRUST_CENTER_TITLE,
843
- subtitle = _chunkRFUOIQSGcjs.TRUST_CENTER_TAGLINE
863
+ title = _chunkGCK75D7Fcjs.TRUST_CENTER_TITLE,
864
+ subtitle = _chunkGCK75D7Fcjs.TRUST_CENTER_TAGLINE
844
865
  }) {
845
866
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TrustCenterChrome, { shell, title, subtitle, backButton, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, TrustCenterSkeleton, {}) });
846
867
  }
847
868
 
869
+ // src/components/help-center-pages/download-apps-page.tsx
870
+
871
+
872
+ var SECTIONS_CLASS = "flex flex-col gap-[var(--spacing-system-xlf)]";
873
+ var SECTION_CLASS = "flex flex-col gap-[var(--spacing-system-lf)]";
874
+ var CARDS_GRID_CLASS = "grid grid-cols-1 gap-[var(--spacing-system-lf)] content-md:grid-cols-2";
875
+ var cardsGridClass = (cards) => cards > 1 ? CARDS_GRID_CLASS : "grid grid-cols-1";
876
+ var CARD_CLASS = "flex flex-col gap-[var(--spacing-system-lf)] rounded-md border border-ods-border bg-ods-card p-[var(--spacing-system-lf)]";
877
+ var CARD_HEADER_CLASS = "flex items-center gap-[var(--spacing-system-sf)]";
878
+ var BUTTONS_CLASS = "flex flex-wrap gap-[var(--spacing-system-sf)]";
879
+ var COMMANDS_CLASS = "flex flex-col gap-[var(--spacing-system-mf)]";
880
+ var OS_ICONS = {
881
+ mac: _chunkVX4E6YSBcjs.AppleLogoIcon,
882
+ windows: _chunkVX4E6YSBcjs.WindowsLogoGreyIcon
883
+ };
884
+ function CardHeader({
885
+ icon: Icon,
886
+ title,
887
+ detail
888
+ }) {
889
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: CARD_HEADER_CLASS, children: [
890
+ Icon && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Icon, { className: "h-6 w-6 shrink-0 text-ods-text-secondary" }),
891
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h3", { className: "m-0 text-ods-text-primary text-h3", children: title }),
892
+ detail && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "m-0 ml-auto text-right text-ods-text-secondary text-h6", children: detail })
893
+ ] });
894
+ }
895
+ function rowsBySystem(downloads) {
896
+ return _chunkK2JUJ37Dcjs.DESKTOP_OSES.map((os) => ({
897
+ os,
898
+ installers: downloads.filter((d) => d.os === os && d.kind === "binary" && d.url),
899
+ commands: downloads.filter((d) => d.os === os && d.kind === "command" && d.command)
900
+ })).filter((system) => system.installers.length > 0 || system.commands.length > 0);
901
+ }
902
+ function installerLabel(download, siblings) {
903
+ if (download.label) return download.label;
904
+ const label = `Download for ${_chunkK2JUJ37Dcjs.DESKTOP_OS_LABELS[download.os]}`;
905
+ const architecture = download.architecture ? _chunkK2JUJ37Dcjs.DOWNLOAD_ARCHITECTURE_LABELS[download.architecture] : null;
906
+ return siblings > 1 && architecture ? `${label} (${architecture})` : label;
907
+ }
908
+ function SystemCard({
909
+ system,
910
+ onDownloadAction
911
+ }) {
912
+ const { copy } = _chunk4LY6R4TNcjs.useCopyToClipboard.call(void 0, {
913
+ successTitle: "Copied",
914
+ successDescription: "Paste it into your terminal and press Return."
915
+ });
916
+ const requirements = [...new Set(system.installers.map((d) => d.minOsLabel).filter((l) => !!l))];
917
+ const report = (action, row) => _optionalChain([onDownloadAction, 'optionalCall', _15 => _15({ action, id: row.id, os: row.os, architecture: row.architecture })]);
918
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: CARD_CLASS, children: [
919
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
920
+ CardHeader,
921
+ {
922
+ icon: OS_ICONS[system.os],
923
+ title: _chunkK2JUJ37Dcjs.DESKTOP_OS_LABELS[system.os],
924
+ detail: requirements.length > 0 ? `Requires ${requirements.join(" or ")}` : void 0
925
+ }
926
+ ),
927
+ system.installers.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: BUTTONS_CLASS, children: system.installers.map((download, index) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
928
+ _chunkHQIOMFJHcjs.Button,
929
+ {
930
+ variant: index === 0 ? "accent" : "outline",
931
+ href: _nullishCoalesce(download.url, () => ( void 0)),
932
+ download: true,
933
+ leftIcon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkVX4E6YSBcjs.Download01Icon, { className: "h-5 w-5" }),
934
+ onClick: () => report("installer", download),
935
+ children: installerLabel(download, system.installers.length)
936
+ },
937
+ download.id
938
+ )) }),
939
+ system.commands.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: COMMANDS_CLASS, children: system.commands.map(
940
+ (row) => row.command ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
941
+ _chunkUZTOI6FJcjs.CommandBox,
942
+ {
943
+ title: _nullishCoalesce(row.label, () => ( void 0)),
944
+ command: row.command,
945
+ maxLines: 1,
946
+ commandClassName: "text-ods-accent",
947
+ copyAriaLabel: `Copy the ${_nullishCoalesce(row.label, () => ( "install"))} command`,
948
+ onCopy: () => {
949
+ void copy(row.command);
950
+ report("command", row);
951
+ }
952
+ },
953
+ row.id
954
+ ) : null
955
+ ) })
956
+ ] });
957
+ }
958
+ function CardsSkeleton({ label }) {
959
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: CARDS_GRID_CLASS, "aria-busy": "true", "aria-label": label, children: [0, 1].map((card) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: CARD_CLASS, children: [
960
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHJMSNOBTcjs.UnifiedSkeleton, { className: "h-6 w-32 rounded" }),
961
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHJMSNOBTcjs.UnifiedSkeleton, { className: "h-12 w-56 rounded-md" }),
962
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkHJMSNOBTcjs.UnifiedSkeleton, { className: "h-14 w-full rounded-md" })
963
+ ] }, card)) });
964
+ }
965
+ function Section({ id, title, children }) {
966
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "section", { "aria-labelledby": id, className: SECTION_CLASS, children: [
967
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "h2", { id, className: "m-0 text-ods-text-primary text-h2", children: title }),
968
+ children
969
+ ] });
970
+ }
971
+ function storeCardTitle(links) {
972
+ if (links.appStoreUrl && links.googlePlayUrl) return "iPhone, iPad and Android";
973
+ return links.appStoreUrl ? "iPhone and iPad" : "Android";
974
+ }
975
+ function DownloadAppsPage({
976
+ endpoint = _chunkK2JUJ37Dcjs.DOWNLOADS_API_PATH,
977
+ initialData,
978
+ shell = true,
979
+ backButton = false,
980
+ title,
981
+ subtitle,
982
+ showDesktop = true,
983
+ openStoresInNewTab = true,
984
+ onDownloadAction,
985
+ footer
986
+ }) {
987
+ const { data, isLoading, error, reload } = _chunk4LY6R4TNcjs.useDownloads.call(void 0, { endpoint, initialData });
988
+ const systems = showDesktop && data ? rowsBySystem(data.desktop) : [];
989
+ const mobile = _nullishCoalesce(_optionalChain([data, 'optionalAccess', _16 => _16.mobile]), () => ( null));
990
+ const hasMobile = !!mobile && (!!mobile.appStoreUrl || !!mobile.googlePlayUrl);
991
+ const offersDesktop = showDesktop && (!data || systems.length > 0);
992
+ _react.useEffect.call(void 0, () => {
993
+ if (!mobile || !new URLSearchParams(window.location.search).has(_chunkHJMSNOBTcjs.DOWNLOAD_PAGE_STORE_PARAM)) return;
994
+ const storeUrl = _chunkHJMSNOBTcjs.resolveMobileStoreUrl.call(void 0, mobile, navigator.userAgent, navigator.maxTouchPoints);
995
+ if (storeUrl) window.location.replace(storeUrl);
996
+ }, [mobile]);
997
+ let body;
998
+ if (error && !data) {
999
+ body = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUZTOI6FJcjs.LoadError, { message: "Could not load the downloads", onRetry: reload });
1000
+ } else if (!data) {
1001
+ body = isLoading ? /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
1002
+ showDesktop && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Section, { id: "download-desktop", title: "Desktop app", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CardsSkeleton, { label: "Loading the installers" }) }),
1003
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Section, { id: "download-mobile", title: "Mobile app", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CardsSkeleton, { label: "Loading the mobile app" }) })
1004
+ ] }) : null;
1005
+ } else {
1006
+ body = /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
1007
+ systems.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Section, { id: "download-desktop", title: "Desktop app", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: cardsGridClass(systems.length), children: systems.map((system) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SystemCard, { system, onDownloadAction }, system.os)) }) }),
1008
+ mobile && hasMobile && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Section, { id: "download-mobile", title: "Mobile app", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: CARDS_GRID_CLASS, children: [
1009
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: CARD_CLASS, children: [
1010
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CardHeader, { title: storeCardTitle(mobile) }),
1011
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "m-0 text-ods-text-secondary text-h4", children: "Get alerts and respond to tickets on the go." }),
1012
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1013
+ _chunkUZTOI6FJcjs.StoreBadgeLinks,
1014
+ {
1015
+ appStoreUrl: mobile.appStoreUrl,
1016
+ googlePlayUrl: mobile.googlePlayUrl,
1017
+ openInNewTab: openStoresInNewTab
1018
+ }
1019
+ )
1020
+ ] }),
1021
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunk3ATAYP36cjs.cn.call(void 0, CARD_CLASS, "content-md:flex-row content-md:items-center content-md:justify-between"), children: [
1022
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex flex-col gap-[var(--spacing-system-sf)]", children: [
1023
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, CardHeader, { title: "Scan with your phone" }),
1024
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "p", { className: "m-0 text-ods-text-secondary text-h4", children: [
1025
+ "Point your camera at the code, or open ",
1026
+ _chunkHJMSNOBTcjs.MOBILE_APP_INSTALL_HOST_PATH,
1027
+ " on your phone."
1028
+ ] })
1029
+ ] }),
1030
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "w-fit shrink-0 rounded-md bg-ods-bg-inverted p-[var(--spacing-system-sf)]", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUZTOI6FJcjs.MobileAppQr, { className: "h-[120px] w-[120px]" }) })
1031
+ ] })
1032
+ ] }) })
1033
+ ] });
1034
+ }
1035
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
1036
+ DownloadAppsChrome,
1037
+ {
1038
+ shell,
1039
+ backButton,
1040
+ title: _nullishCoalesce(title, () => ( (offersDesktop ? _chunkK2JUJ37Dcjs.DOWNLOADS_TITLE : _chunkK2JUJ37Dcjs.DOWNLOADS_MOBILE_TITLE))),
1041
+ subtitle: _nullishCoalesce(subtitle, () => ( (offersDesktop ? _chunkK2JUJ37Dcjs.DOWNLOADS_TAGLINE : _chunkK2JUJ37Dcjs.DOWNLOADS_MOBILE_TAGLINE))),
1042
+ children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: SECTIONS_CLASS, children: [
1043
+ body,
1044
+ footer
1045
+ ] })
1046
+ }
1047
+ );
1048
+ }
1049
+ function DownloadAppsChrome({
1050
+ shell,
1051
+ title,
1052
+ subtitle,
1053
+ backButton,
1054
+ children
1055
+ }) {
1056
+ const router = _chunk7DNL734Scjs.useRouter.call(void 0, );
1057
+ const backCfg = backButton === false ? void 0 : { label: _nullishCoalesce(backButton.label, () => ( "Back to home")), onClick: () => router.push(_nullishCoalesce(backButton.href, () => ( "/"))) };
1058
+ const inner = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBYVVE7HPcjs.PageLayout, { title, subtitle, backButton: backCfg, titleSize: "h1", titleWrap: true, children });
1059
+ return shell ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUZTOI6FJcjs.PageShell, { children: inner }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "page-shell-content", children: inner });
1060
+ }
1061
+
1062
+
848
1063
 
849
1064
 
850
1065
 
@@ -857,4 +1072,4 @@ function TrustCenterPageSkeleton({
857
1072
 
858
1073
 
859
1074
 
860
- exports.DeliveryPage = DeliveryPage; exports.DocsHubPage = _chunk6BLN5WDScjs.DocsHubPage; exports.FaqDocumentPage = _chunk2C72EWQRcjs.FaqDocumentPage; exports.HelpCenterList = _chunkDHNJSQGXcjs.HelpCenterList; exports.LegalDocumentPage = _chunkISCZ6UNFcjs.LegalDocumentPage; exports.OnboardingGuideDetailView = _chunk7LPR4RZ3cjs.OnboardingGuideDetailView; exports.OnboardingGuidesCatalogPage = OnboardingGuidesCatalogPage; exports.ProductReleasesListPage = ProductReleasesListPage; exports.ReleaseDetailPage = _chunkISCZ6UNFcjs.ReleaseDetailPage; exports.RoadmapPage = RoadmapPage; exports.TrustCenterPage = TrustCenterPage; exports.TrustCenterPageSkeleton = TrustCenterPageSkeleton;
1075
+ exports.DeliveryPage = DeliveryPage; exports.DocsHubPage = _chunk3R32ZNA2cjs.DocsHubPage; exports.DownloadAppsPage = DownloadAppsPage; exports.FaqDocumentPage = _chunkRJMWJAJOcjs.FaqDocumentPage; exports.HelpCenterList = _chunkF7ORKKEFcjs.HelpCenterList; exports.LegalDocumentPage = _chunkRQZQHLNScjs.LegalDocumentPage; exports.OnboardingGuideDetailView = _chunkQYS4YVEPcjs.OnboardingGuideDetailView; exports.OnboardingGuidesCatalogPage = OnboardingGuidesCatalogPage; exports.ProductReleasesListPage = ProductReleasesListPage; exports.ReleaseDetailPage = _chunkRQZQHLNScjs.ReleaseDetailPage; exports.RoadmapPage = RoadmapPage; exports.TrustCenterPage = TrustCenterPage; exports.TrustCenterPageSkeleton = TrustCenterPageSkeleton;