@flamingo-stack/openframe-frontend-core 0.0.740 → 0.0.742

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 (206) hide show
  1. package/dist/build/export-map.json +1 -1
  2. package/dist/{chunk-BV5WZVOP.cjs → chunk-32Q7K5OP.cjs} +254 -254
  3. package/dist/{chunk-ZLTCQKTD.cjs → chunk-3LW43GIJ.cjs} +6 -6
  4. package/dist/{chunk-VA7OMDZO.cjs → chunk-4FWURR3W.cjs} +50 -50
  5. package/dist/{chunk-EKGL5K5K.cjs → chunk-4LDU32OB.cjs} +17 -17
  6. package/dist/{chunk-VC4IV3AY.cjs → chunk-4PKORVOX.cjs} +2804 -954
  7. package/dist/{chunk-3ZIQOYNX.cjs → chunk-54EA4RLX.cjs} +8 -8
  8. package/dist/{chunk-YXKB5WRE.cjs → chunk-5MH6BRPY.cjs} +36 -36
  9. package/dist/{chunk-PQ2M7P2U.cjs → chunk-5TCIRWHL.cjs} +9 -9
  10. package/dist/{chunk-WFPCCBOM.cjs → chunk-7AM3AFM4.cjs} +10 -10
  11. package/dist/{chunk-7ZFCR7UY.cjs → chunk-ABLUMGCI.cjs} +3 -3
  12. package/dist/{chunk-PX7FY655.cjs → chunk-ASMNNSUQ.cjs} +3 -3
  13. package/dist/{chunk-HF7Z2E4W.cjs → chunk-BI3XBCQX.cjs} +2 -2
  14. package/dist/{chunk-SA7LDEVJ.cjs → chunk-CSJO7ZGN.cjs} +3 -3
  15. package/dist/{chunk-VOX4E6AX.cjs → chunk-DGFDBPO7.cjs} +7 -5
  16. package/dist/{chunk-KHXZFLIN.cjs → chunk-DKOLQPE7.cjs} +8 -2
  17. package/dist/{chunk-BDA5F6RM.cjs → chunk-DNFSMVXJ.cjs} +16 -16
  18. package/dist/{chunk-B3XBJCOD.cjs → chunk-H3UA7UY5.cjs} +7 -7
  19. package/dist/{chunk-2Y5Y4FLM.cjs → chunk-HDBY2URA.cjs} +64 -64
  20. package/dist/{chunk-UW3YXDC4.cjs → chunk-HIRVNBX5.cjs} +20 -20
  21. package/dist/{chunk-LLAC2UZ3.cjs → chunk-ISJXKKYW.cjs} +28 -28
  22. package/dist/{chunk-FICJS5OA.cjs → chunk-KTPR66EE.cjs} +4 -4
  23. package/dist/{chunk-7UIQPMBJ.cjs → chunk-L34TKFTS.cjs} +21 -164
  24. package/dist/{chunk-AAFW4STC.cjs → chunk-LU7TD6QS.cjs} +5 -5
  25. package/dist/{chunk-3HPB4H4C.cjs → chunk-NTGIQP7O.cjs} +7 -7
  26. package/dist/{chunk-WBANGORJ.cjs → chunk-OBODY7F3.cjs} +3 -3
  27. package/dist/{chunk-GABDE3FM.cjs → chunk-OWGLRE74.cjs} +19 -19
  28. package/dist/{chunk-CWRVTQUO.cjs → chunk-PS6T65KA.cjs} +101 -101
  29. package/dist/{chunk-IFS4AH77.cjs → chunk-QYLIHZKZ.cjs} +10 -10
  30. package/dist/{chunk-GVTDVS5U.cjs → chunk-R34JD6NP.cjs} +3 -3
  31. package/dist/{chunk-VU4CKUJW.cjs → chunk-R6SCSV2I.cjs} +103 -103
  32. package/dist/{chunk-II4QMH26.cjs → chunk-STEJZPIO.cjs} +3 -3
  33. package/dist/{chunk-4RLGLB45.cjs → chunk-T433HSL6.cjs} +47 -47
  34. package/dist/{chunk-DSVNFRY5.cjs → chunk-U2O5YQRP.cjs} +38 -38
  35. package/dist/{chunk-O67V3HJR.cjs → chunk-URVIPSAJ.cjs} +24 -24
  36. package/dist/{chunk-HYBMADYO.cjs → chunk-UWHCRIQQ.cjs} +22 -22
  37. package/dist/{chunk-GSWQZX23.cjs → chunk-UY6A6TEY.cjs} +2 -2
  38. package/dist/{chunk-D5KEWWLW.cjs → chunk-UZLRSFGG.cjs} +32 -32
  39. package/dist/{chunk-DUVOQHQI.cjs → chunk-W2RM764D.cjs} +7 -7
  40. package/dist/{chunk-NTJE6SM6.cjs → chunk-WI2OTGKC.cjs} +2 -2
  41. package/dist/{chunk-SFY4UYPY.cjs → chunk-WIHHA54J.cjs} +44 -44
  42. package/dist/{chunk-YRE3O65E.cjs → chunk-XAA5EZ5T.cjs} +12 -12
  43. package/dist/{chunk-KLI4OSRA.cjs → chunk-YQGDXH3M.cjs} +2 -2
  44. package/dist/{chunk-SWR22DOZ.cjs → chunk-Z2DQYKZA.cjs} +89 -89
  45. package/dist/{chunk-5SVOGLNK.cjs → chunk-ZIFYSLIM.cjs} +6 -6
  46. package/dist/{cloud-tenants-PVXDI5MU.cjs → cloud-tenants-6ICAL3HO.cjs} +34 -34
  47. package/dist/components/case-studies/index.cjs +37 -37
  48. package/dist/components/chat/index.cjs +17 -17
  49. package/dist/components/contact/index.cjs +25 -25
  50. package/dist/components/docs/index.cjs +28 -28
  51. package/dist/components/embeds/index.cjs +25 -25
  52. package/dist/components/faq/index.cjs +26 -26
  53. package/dist/components/features/capability-explorer.d.ts +9 -2
  54. package/dist/components/features/capability-explorer.d.ts.map +1 -1
  55. package/dist/components/features/capability-explorer.js +113 -6
  56. package/dist/components/features/index.cjs +162 -24
  57. package/dist/components/features/index.d.ts +1 -0
  58. package/dist/components/features/index.d.ts.map +1 -1
  59. package/dist/components/features/index.js +1 -0
  60. package/dist/components/features/scripts/execution-cells.d.ts +65 -0
  61. package/dist/components/features/scripts/execution-cells.d.ts.map +1 -0
  62. package/dist/components/features/scripts/execution-cells.js +75 -0
  63. package/dist/components/features/scripts/execution-status.d.ts +48 -0
  64. package/dist/components/features/scripts/execution-status.d.ts.map +1 -0
  65. package/dist/components/features/scripts/execution-status.js +15 -0
  66. package/dist/components/features/scripts/index.d.ts +20 -0
  67. package/dist/components/features/scripts/index.d.ts.map +1 -0
  68. package/dist/components/features/scripts/index.js +59 -0
  69. package/dist/components/features/scripts/schedule-form/index.d.ts +18 -0
  70. package/dist/components/features/scripts/schedule-form/index.d.ts.map +1 -0
  71. package/dist/components/features/scripts/schedule-form/index.js +84 -0
  72. package/dist/components/features/scripts/schedule-form/schedule-enums.d.ts +24 -0
  73. package/dist/components/features/scripts/schedule-form/schedule-enums.d.ts.map +1 -0
  74. package/dist/components/features/scripts/schedule-form/schedule-enums.js +18 -0
  75. package/dist/components/features/scripts/schedule-form/schedule-form-fields.d.ts +57 -0
  76. package/dist/components/features/scripts/schedule-form/schedule-form-fields.d.ts.map +1 -0
  77. package/dist/components/features/scripts/schedule-form/schedule-form-fields.js +169 -0
  78. package/dist/components/features/scripts/schedule-form/schedule-form-types.d.ts +138 -0
  79. package/dist/components/features/scripts/schedule-form/schedule-form-types.d.ts.map +1 -0
  80. package/dist/components/features/scripts/schedule-form/schedule-form-types.js +72 -0
  81. package/dist/components/features/scripts/schedule-form/schedule-interval-input.d.ts +54 -0
  82. package/dist/components/features/scripts/schedule-form/schedule-interval-input.d.ts.map +1 -0
  83. package/dist/components/features/scripts/schedule-form/schedule-interval-input.js +60 -0
  84. package/dist/components/features/scripts/schedule-form/schedule-offline-fields.d.ts +29 -0
  85. package/dist/components/features/scripts/schedule-form/schedule-offline-fields.d.ts.map +1 -0
  86. package/dist/components/features/scripts/schedule-form/schedule-offline-fields.js +124 -0
  87. package/dist/components/features/scripts/schedule-form/schedule-script-picker-card.d.ts +52 -0
  88. package/dist/components/features/scripts/schedule-form/schedule-script-picker-card.d.ts.map +1 -0
  89. package/dist/components/features/scripts/schedule-form/schedule-script-picker-card.js +244 -0
  90. package/dist/components/features/scripts/schedule-form/schedule-script-search-field.d.ts +35 -0
  91. package/dist/components/features/scripts/schedule-form/schedule-script-search-field.d.ts.map +1 -0
  92. package/dist/components/features/scripts/schedule-form/schedule-script-search-field.js +58 -0
  93. package/dist/components/features/scripts/schedule-form/schedule-scripts-field.d.ts +25 -0
  94. package/dist/components/features/scripts/schedule-form/schedule-scripts-field.d.ts.map +1 -0
  95. package/dist/components/features/scripts/schedule-form/schedule-scripts-field.js +66 -0
  96. package/dist/components/features/scripts/schedule-form/schedule-timing-fields.d.ts +77 -0
  97. package/dist/components/features/scripts/schedule-form/schedule-timing-fields.d.ts.map +1 -0
  98. package/dist/components/features/scripts/schedule-form/schedule-timing-fields.js +262 -0
  99. package/dist/components/features/scripts/schedule-form/schedule-timing.d.ts +288 -0
  100. package/dist/components/features/scripts/schedule-form/schedule-timing.d.ts.map +1 -0
  101. package/dist/components/features/scripts/schedule-form/schedule-timing.js +165 -0
  102. package/dist/components/features/scripts/script-cells.d.ts +11 -0
  103. package/dist/components/features/scripts/script-cells.d.ts.map +1 -0
  104. package/dist/components/features/scripts/script-cells.js +19 -0
  105. package/dist/components/features/scripts/script-executions-table.d.ts +58 -0
  106. package/dist/components/features/scripts/script-executions-table.d.ts.map +1 -0
  107. package/dist/components/features/scripts/script-executions-table.js +88 -0
  108. package/dist/components/features/scripts/script-schedules-table.d.ts +38 -0
  109. package/dist/components/features/scripts/script-schedules-table.d.ts.map +1 -0
  110. package/dist/components/features/scripts/script-schedules-table.js +71 -0
  111. package/dist/components/features/scripts/script-shell-badge.d.ts +9 -0
  112. package/dist/components/features/scripts/script-shell-badge.d.ts.map +1 -0
  113. package/dist/components/features/scripts/script-shell-badge.js +15 -0
  114. package/dist/components/features/scripts/scripts-table-columns.d.ts +162 -0
  115. package/dist/components/features/scripts/scripts-table-columns.d.ts.map +1 -0
  116. package/dist/components/features/scripts/scripts-table-columns.js +69 -0
  117. package/dist/components/features/scripts/scripts-table-shared.d.ts +19 -0
  118. package/dist/components/features/scripts/scripts-table-shared.d.ts.map +1 -0
  119. package/dist/components/features/scripts/scripts-table-shared.js +35 -0
  120. package/dist/components/features/scripts/scripts-table.d.ts +40 -0
  121. package/dist/components/features/scripts/scripts-table.d.ts.map +1 -0
  122. package/dist/components/features/scripts/scripts-table.js +84 -0
  123. package/dist/components/features/scripts/scripts-tabs.d.ts +5 -0
  124. package/dist/components/features/scripts/scripts-tabs.d.ts.map +1 -0
  125. package/dist/components/features/scripts/scripts-tabs.js +10 -0
  126. package/dist/components/features/scripts/shell-types.d.ts +13 -0
  127. package/dist/components/features/scripts/shell-types.d.ts.map +1 -0
  128. package/dist/components/features/scripts/shell-types.js +21 -0
  129. package/dist/components/help-center-pages/index.cjs +144 -144
  130. package/dist/components/index.cjs +224 -86
  131. package/dist/components/meeting-scheduler/index.cjs +74 -74
  132. package/dist/components/navigation/index.cjs +27 -27
  133. package/dist/components/onboarding-guides/index.cjs +27 -27
  134. package/dist/components/product-demo/fixtures/scripts.d.ts +34 -0
  135. package/dist/components/product-demo/fixtures/scripts.d.ts.map +1 -0
  136. package/dist/components/product-demo/fixtures/scripts.js +123 -0
  137. package/dist/components/product-demo/fixtures/shared.d.ts +8 -0
  138. package/dist/components/product-demo/fixtures/shared.d.ts.map +1 -1
  139. package/dist/components/product-demo/fixtures/shared.js +7 -1
  140. package/dist/components/product-demo/fixtures/software-update.d.ts.map +1 -1
  141. package/dist/components/product-demo/fixtures/software-update.js +1 -5
  142. package/dist/components/product-demo/index.cjs +16 -13
  143. package/dist/components/product-demo/product-screen.d.ts.map +1 -1
  144. package/dist/components/product-demo/product-screen.js +2 -1
  145. package/dist/components/product-demo/registry.d.ts.map +1 -1
  146. package/dist/components/product-demo/registry.js +2 -1
  147. package/dist/components/product-demo/screen-keys.cjs +2 -1
  148. package/dist/components/product-demo/screen-keys.d.ts +1 -0
  149. package/dist/components/product-demo/screen-keys.d.ts.map +1 -1
  150. package/dist/components/product-demo/screen-keys.js +2 -1
  151. package/dist/components/product-demo/screens/scripts.d.ts +11 -0
  152. package/dist/components/product-demo/screens/scripts.d.ts.map +1 -0
  153. package/dist/components/product-demo/screens/scripts.js +130 -0
  154. package/dist/components/related-content/index.cjs +12 -12
  155. package/dist/components/tickets/index.cjs +30 -30
  156. package/dist/components/ui/index.cjs +24 -24
  157. package/dist/{devices-TWEA7XOR.cjs → devices-OFP2IBKN.cjs} +30 -30
  158. package/dist/{embeddable-chat-6JKKFQEB.cjs → embeddable-chat-4C22MGNC.cjs} +92 -92
  159. package/dist/hooks/index.cjs +10 -10
  160. package/dist/index.cjs +169 -31
  161. package/dist/{knowledge-4GQDBNQB.cjs → knowledge-KKBCSNUA.cjs} +29 -29
  162. package/dist/{logs-EVU6GJHZ.cjs → logs-X2GRNO57.cjs} +46 -46
  163. package/dist/{policies-OZUEA5YS.cjs → policies-35BXKB6P.cjs} +31 -31
  164. package/dist/{remote-session-DNFZ5OLY.cjs → remote-session-N4PJB5FW.cjs} +15 -15
  165. package/dist/scripts-KQYVQOLU.cjs +2112 -0
  166. package/dist/{software-update-BLIVYOY2.cjs → software-update-ED33WSKT.cjs} +36 -40
  167. package/dist/{tickets-board-CKZRB6YV.cjs → tickets-board-O753S4ZB.cjs} +31 -31
  168. package/dist/utils/embed-authed-fetch.d.ts +33 -0
  169. package/dist/utils/embed-authed-fetch.d.ts.map +1 -1
  170. package/dist/utils/embed-authed-fetch.js +3 -1
  171. package/dist/utils/index.cjs +3 -1
  172. package/dist/{video-file-player-ZH2ILAPO.cjs → video-file-player-QZ3YOLHO.cjs} +2 -2
  173. package/package.json +1 -1
  174. package/src/components/features/capability-explorer.tsx +134 -7
  175. package/src/components/features/index.ts +1 -0
  176. package/src/components/features/scripts/execution-cells.tsx +149 -0
  177. package/src/components/features/scripts/execution-status.ts +42 -0
  178. package/src/components/features/scripts/index.ts +42 -0
  179. package/src/components/features/scripts/schedule-form/index.ts +59 -0
  180. package/src/components/features/scripts/schedule-form/schedule-enums.ts +26 -0
  181. package/src/components/features/scripts/schedule-form/schedule-form-fields.tsx +249 -0
  182. package/src/components/features/scripts/schedule-form/schedule-form-types.ts +189 -0
  183. package/src/components/features/scripts/schedule-form/schedule-interval-input.tsx +121 -0
  184. package/src/components/features/scripts/schedule-form/schedule-offline-fields.tsx +218 -0
  185. package/src/components/features/scripts/schedule-form/schedule-script-picker-card.tsx +321 -0
  186. package/src/components/features/scripts/schedule-form/schedule-script-search-field.tsx +115 -0
  187. package/src/components/features/scripts/schedule-form/schedule-scripts-field.tsx +97 -0
  188. package/src/components/features/scripts/schedule-form/schedule-timing-fields.tsx +482 -0
  189. package/src/components/features/scripts/schedule-form/schedule-timing.ts +484 -0
  190. package/src/components/features/scripts/script-cells.tsx +29 -0
  191. package/src/components/features/scripts/script-executions-table.tsx +145 -0
  192. package/src/components/features/scripts/script-schedules-table.tsx +113 -0
  193. package/src/components/features/scripts/script-shell-badge.tsx +25 -0
  194. package/src/components/features/scripts/scripts-table-columns.ts +95 -0
  195. package/src/components/features/scripts/scripts-table-shared.tsx +43 -0
  196. package/src/components/features/scripts/scripts-table.tsx +124 -0
  197. package/src/components/features/scripts/scripts-tabs.ts +11 -0
  198. package/src/components/features/scripts/shell-types.ts +26 -0
  199. package/src/components/product-demo/fixtures/scripts.ts +186 -0
  200. package/src/components/product-demo/fixtures/shared.ts +7 -0
  201. package/src/components/product-demo/fixtures/software-update.ts +1 -7
  202. package/src/components/product-demo/product-screen.tsx +3 -1
  203. package/src/components/product-demo/registry.ts +1 -0
  204. package/src/components/product-demo/screen-keys.ts +1 -0
  205. package/src/components/product-demo/screens/scripts.tsx +192 -0
  206. package/src/utils/embed-authed-fetch.ts +42 -1
@@ -7,27 +7,27 @@
7
7
 
8
8
 
9
9
 
10
- var _chunkD5KEWWLWcjs = require('../../chunk-D5KEWWLW.cjs');
11
- require('../../chunk-B3XBJCOD.cjs');
12
- require('../../chunk-BDA5F6RM.cjs');
13
- require('../../chunk-VC4IV3AY.cjs');
14
- require('../../chunk-O67V3HJR.cjs');
15
- require('../../chunk-3HPB4H4C.cjs');
16
- require('../../chunk-DSVNFRY5.cjs');
10
+ var _chunkUZLRSFGGcjs = require('../../chunk-UZLRSFGG.cjs');
11
+ require('../../chunk-H3UA7UY5.cjs');
12
+ require('../../chunk-DNFSMVXJ.cjs');
13
+ require('../../chunk-4PKORVOX.cjs');
14
+ require('../../chunk-URVIPSAJ.cjs');
15
+ require('../../chunk-NTGIQP7O.cjs');
16
+ require('../../chunk-U2O5YQRP.cjs');
17
17
  require('../../chunk-HQQE74RO.cjs');
18
18
  require('../../chunk-DEY6XXGO.cjs');
19
- require('../../chunk-VA7OMDZO.cjs');
20
- require('../../chunk-AAFW4STC.cjs');
19
+ require('../../chunk-4FWURR3W.cjs');
20
+ require('../../chunk-LU7TD6QS.cjs');
21
21
  require('../../chunk-24I6RFVU.cjs');
22
22
  require('../../chunk-A6P6DHEZ.cjs');
23
23
  require('../../chunk-MZ4KBSH7.cjs');
24
- require('../../chunk-KLI4OSRA.cjs');
24
+ require('../../chunk-YQGDXH3M.cjs');
25
25
  require('../../chunk-YUMFVQIN.cjs');
26
- require('../../chunk-CWRVTQUO.cjs');
27
- require('../../chunk-BV5WZVOP.cjs');
28
- require('../../chunk-GABDE3FM.cjs');
26
+ require('../../chunk-PS6T65KA.cjs');
27
+ require('../../chunk-32Q7K5OP.cjs');
28
+ require('../../chunk-OWGLRE74.cjs');
29
29
  require('../../chunk-3RFQPQ7Z.cjs');
30
- require('../../chunk-PQ2M7P2U.cjs');
30
+ require('../../chunk-5TCIRWHL.cjs');
31
31
  require('../../chunk-B27QEHYR.cjs');
32
32
  require('../../chunk-ZOZR3QI2.cjs');
33
33
  require('../../chunk-OMV5S5PI.cjs');
@@ -1817,20 +1817,20 @@ require('../../chunk-LMBYZITR.cjs');
1817
1817
  require('../../chunk-TMVC7S2R.cjs');
1818
1818
  require('../../chunk-IYHH5EIO.cjs');
1819
1819
  require('../../chunk-XIBCMGBW.cjs');
1820
- require('../../chunk-DUVOQHQI.cjs');
1821
- require('../../chunk-SA7LDEVJ.cjs');
1822
- require('../../chunk-NTJE6SM6.cjs');
1820
+ require('../../chunk-W2RM764D.cjs');
1821
+ require('../../chunk-CSJO7ZGN.cjs');
1822
+ require('../../chunk-WI2OTGKC.cjs');
1823
1823
  require('../../chunk-JKX2C3I2.cjs');
1824
1824
  require('../../chunk-7DNL734S.cjs');
1825
1825
  require('../../chunk-WWUSFOJ7.cjs');
1826
1826
  require('../../chunk-SKI6NKOE.cjs');
1827
1827
  require('../../chunk-EWPR7662.cjs');
1828
- require('../../chunk-YRE3O65E.cjs');
1829
- require('../../chunk-YXKB5WRE.cjs');
1830
- require('../../chunk-IFS4AH77.cjs');
1828
+ require('../../chunk-XAA5EZ5T.cjs');
1829
+ require('../../chunk-5MH6BRPY.cjs');
1830
+ require('../../chunk-QYLIHZKZ.cjs');
1831
1831
  require('../../chunk-63N4FN5V.cjs');
1832
- require('../../chunk-GSWQZX23.cjs');
1833
- require('../../chunk-7ZFCR7UY.cjs');
1832
+ require('../../chunk-UY6A6TEY.cjs');
1833
+ require('../../chunk-ABLUMGCI.cjs');
1834
1834
  require('../../chunk-S5C3OZCO.cjs');
1835
1835
  require('../../chunk-32ASZMTV.cjs');
1836
1836
  require('../../chunk-OOYBIS7D.cjs');
@@ -1840,11 +1840,11 @@ require('../../chunk-ORO54HDF.cjs');
1840
1840
  require('../../chunk-RUHKTWGB.cjs');
1841
1841
  require('../../chunk-BLH2SFOO.cjs');
1842
1842
  require('../../chunk-I5MSCD57.cjs');
1843
- require('../../chunk-PX7FY655.cjs');
1843
+ require('../../chunk-ASMNNSUQ.cjs');
1844
1844
  require('../../chunk-CW3ML76U.cjs');
1845
- require('../../chunk-GVTDVS5U.cjs');
1846
- require('../../chunk-FICJS5OA.cjs');
1847
- require('../../chunk-VOX4E6AX.cjs');
1845
+ require('../../chunk-R34JD6NP.cjs');
1846
+ require('../../chunk-KTPR66EE.cjs');
1847
+ require('../../chunk-DGFDBPO7.cjs');
1848
1848
  require('../../chunk-HOTM4UM6.cjs');
1849
1849
  require('../../chunk-UJ7AXHRZ.cjs');
1850
1850
  require('../../chunk-HTRILBJD.cjs');
@@ -1868,4 +1868,4 @@ require('../../chunk-3ATAYP36.cjs');
1868
1868
 
1869
1869
 
1870
1870
 
1871
- exports.OnboardingGuideDetailView = _chunkD5KEWWLWcjs.OnboardingGuideDetailView; exports.OnboardingGuidesCatalogSkeleton = _chunkD5KEWWLWcjs.OnboardingGuidesCatalogSkeleton; exports.OnboardingGuidesCatalogView = _chunkD5KEWWLWcjs.OnboardingGuidesCatalogView; exports.onboardingGuideKeys = _chunkD5KEWWLWcjs.onboardingGuideKeys; exports.useOnboardingGuide = _chunkD5KEWWLWcjs.useOnboardingGuide; exports.useOnboardingGuideSections = _chunkD5KEWWLWcjs.useOnboardingGuideSections; exports.useOnboardingGuides = _chunkD5KEWWLWcjs.useOnboardingGuides;
1871
+ exports.OnboardingGuideDetailView = _chunkUZLRSFGGcjs.OnboardingGuideDetailView; exports.OnboardingGuidesCatalogSkeleton = _chunkUZLRSFGGcjs.OnboardingGuidesCatalogSkeleton; exports.OnboardingGuidesCatalogView = _chunkUZLRSFGGcjs.OnboardingGuidesCatalogView; exports.onboardingGuideKeys = _chunkUZLRSFGGcjs.onboardingGuideKeys; exports.useOnboardingGuide = _chunkUZLRSFGGcjs.useOnboardingGuide; exports.useOnboardingGuideSections = _chunkUZLRSFGGcjs.useOnboardingGuideSections; exports.useOnboardingGuides = _chunkUZLRSFGGcjs.useOnboardingGuides;
@@ -0,0 +1,34 @@
1
+ import type { ScriptExecutionTableRow } from '../../features/scripts';
2
+ import type { DemoCast } from '../cast';
3
+ /** The script the page's Mingo conversation writes, and the schedule that runs it. */
4
+ export interface DemoScript {
5
+ name: string;
6
+ /** Lowercase shell id. */
7
+ shellType: string;
8
+ /** The script's source, as the editor holds it. */
9
+ code: string;
10
+ /** Who wrote it and who approved it. */
11
+ provenance: {
12
+ author: string;
13
+ approver: string;
14
+ };
15
+ /** The schedule that runs it, as one line. */
16
+ schedule: {
17
+ repeat: string;
18
+ time: string;
19
+ deviceCount: number;
20
+ };
21
+ }
22
+ export interface ScriptsFixture {
23
+ script: DemoScript;
24
+ /** The schedule's first night, newest first (the Execution History's default order). */
25
+ executions: ScriptExecutionTableRow[];
26
+ /** The run whose output the picture opens. */
27
+ openExecutionId: string;
28
+ }
29
+ /**
30
+ * The scripts screen's story, picking up where the page's Mingo conversation
31
+ * ends: the script it wrote, and the first night its schedule ran.
32
+ */
33
+ export declare function buildScriptsFixture(cast: DemoCast): ScriptsFixture;
34
+ //# sourceMappingURL=scripts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scripts.d.ts","sourceRoot":"","sources":["../../../../src/components/product-demo/fixtures/scripts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAgD,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACpH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAGxC,sFAAsF;AACtF,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,0BAA0B;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,mDAAmD;IACnD,IAAI,EAAE,MAAM,CAAC;IACb,wCAAwC;IACxC,UAAU,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IACjD,8CAA8C;IAC9C,QAAQ,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;CACjE;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,UAAU,CAAC;IACnB,wFAAwF;IACxF,UAAU,EAAE,uBAAuB,EAAE,CAAC;IACtC,8CAA8C;IAC9C,eAAe,EAAE,MAAM,CAAC;CACzB;AAmID;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,QAAQ,GAAG,cAAc,CA2BlE"}
@@ -0,0 +1,123 @@
1
+ "use client";
2
+ import { DEMO_DEVICES, DEMO_ORGANIZATIONS, demoDay } from "./shared.js";
3
+ const CLEAR_TEMP_FILES = `$ErrorActionPreference = 'Ignore'
4
+ $paths = "$env:windir\\Temp",
5
+ 'C:\\Users\\*\\AppData\\Local\\Temp',
6
+ "$env:windir\\SoftwareDistribution\\Download"
7
+ $before = (Get-PSDrive C).Free
8
+ foreach ($path in $paths) {
9
+ $items = Get-ChildItem $path -Recurse -Force
10
+ "Cleaning $path ($($items.Count) items)"
11
+ $items | Remove-Item -Recurse -Force
12
+ }
13
+ $freed = (Get-PSDrive C).Free - $before
14
+ 'Freed {0:N1} GB' -f ($freed / 1GB)
15
+ 'Exit code: 0'
16
+ exit 0`;
17
+ function cleanupLines([system, users, updates]) {
18
+ return [
19
+ `Cleaning C:\\Windows\\Temp (${system} items)`,
20
+ `Cleaning C:\\Users\\*\\AppData\\Local\\Temp (${users.toLocaleString("en-US")} items)`,
21
+ `Cleaning C:\\Windows\\SoftwareDistribution\\Download (${updates} items)`
22
+ ];
23
+ }
24
+ function cleanupOutput(counts, freedGb) {
25
+ return [...cleanupLines(counts), `Freed ${freedGb} GB`, "Exit code: 0"].join("\n");
26
+ }
27
+ const DAY = new Intl.DateTimeFormat("en-US", { dateStyle: "short" });
28
+ const TIME = new Intl.DateTimeFormat("en-US", { timeStyle: "short" });
29
+ function onDemoDay(hours, minutes) {
30
+ const day = demoDay();
31
+ const at = new Date(day.getFullYear(), day.getMonth(), day.getDate(), hours, minutes);
32
+ return `${DAY.format(at)} ${TIME.format(at)}`;
33
+ }
34
+ const RUN = [
35
+ {
36
+ executionId: "c4f1e7a2-93b0-4d6e-8a15-6e2b9f04d731",
37
+ device: "jenSurface",
38
+ at: [23, 4],
39
+ status: "RUNNING",
40
+ source: "SCHEDULED",
41
+ result: cleanupLines([254, 1377, 40])[0]
42
+ },
43
+ {
44
+ executionId: "9a2d5c18-4e7f-4b31-b0c6-d85e1a3f6290",
45
+ device: "samT14",
46
+ at: [23, 3],
47
+ status: "FAILED",
48
+ source: "SCHEDULED",
49
+ result: [cleanupLines([230, 906, 51])[0], "Execution timed out after 90 seconds"].join("\n\n")
50
+ },
51
+ {
52
+ executionId: "1e8b47d3-c25a-4f90-9e3d-07b6a2c51f84",
53
+ device: "warehouse",
54
+ at: [23, 2],
55
+ status: "SUCCESS",
56
+ source: "SCHEDULED",
57
+ result: cleanupOutput([412, 2184, 63], "2.7")
58
+ },
59
+ {
60
+ executionId: "6f30a9c5-1b84-47e2-a3d9-52c8e7b0f416",
61
+ device: "leoThinkPad",
62
+ at: [23, 1],
63
+ status: "SUCCESS",
64
+ source: "SCHEDULED",
65
+ result: cleanupOutput([288, 1530, 41], "1.9")
66
+ },
67
+ {
68
+ executionId: "b7d26e04-8f1c-4a53-9b7e-3c0f5a9d82e1",
69
+ device: "priyaXps",
70
+ at: [23, 1],
71
+ status: "SUCCESS",
72
+ source: "SCHEDULED",
73
+ result: cleanupOutput([241, 1102, 37], "1.4")
74
+ },
75
+ {
76
+ executionId: "2c95f8b1-6d07-4e4a-8f2b-a13e9c6d70b5",
77
+ device: "frontDesk",
78
+ at: [23, 0],
79
+ status: "SUCCESS",
80
+ source: "SCHEDULED",
81
+ result: cleanupOutput([507, 2650, 72], "2.2")
82
+ },
83
+ {
84
+ executionId: "e05b3a7f-d4c8-49e1-b6a0-8f2d17c9e358",
85
+ device: "reception",
86
+ at: [22, 51],
87
+ status: "SUCCESS",
88
+ source: "AI_ASSISTANT",
89
+ result: cleanupOutput([596, 3418, 88], "3.2")
90
+ }
91
+ ];
92
+ const OPEN_EXECUTION = RUN[2];
93
+ function buildScriptsFixture(cast) {
94
+ const alex = cast.person("alex");
95
+ return {
96
+ script: {
97
+ name: "Clear temp files",
98
+ shellType: "powershell",
99
+ code: CLEAR_TEMP_FILES,
100
+ provenance: { author: "Mingo", approver: alex.name },
101
+ schedule: { repeat: "Every day", time: "11:00 PM", deviceCount: 213 }
102
+ },
103
+ executions: RUN.map((run) => {
104
+ const device = DEMO_DEVICES[run.device];
105
+ return {
106
+ id: run.executionId,
107
+ executionId: run.executionId,
108
+ timestamp: onDemoDay(...run.at),
109
+ status: run.status,
110
+ machineName: device.hostname,
111
+ organization: DEMO_ORGANIZATIONS[device.organization].name,
112
+ // Every run is on behalf of Alex: the schedule is his, and the test ran because he asked.
113
+ initiator: { name: alex.name, initials: alex.initials, image: alex.avatarUrl },
114
+ source: run.source,
115
+ result: run.result
116
+ };
117
+ }),
118
+ openExecutionId: OPEN_EXECUTION.executionId
119
+ };
120
+ }
121
+ export {
122
+ buildScriptsFixture
123
+ };
@@ -145,12 +145,20 @@ export declare const DEMO_DEVICES: {
145
145
  readonly os: "WINDOWS";
146
146
  readonly organization: "northbridge";
147
147
  };
148
+ readonly warehouse: {
149
+ readonly id: "device-warehouse";
150
+ readonly hostname: "WAREHOUSE-PC03";
151
+ readonly os: "WINDOWS";
152
+ readonly organization: "acme";
153
+ };
148
154
  };
149
155
  /**
150
156
  * A fixed "now" for relative times, so a screen reads the same on every render
151
157
  * and never drifts between the server and the browser.
152
158
  */
153
159
  export declare const DEMO_NOW = "2026-10-06T14:05:00.000Z";
160
+ /** The demo day as a local calendar day, so a date field reads the same in every timezone. */
161
+ export declare function demoDay(): Date;
154
162
  /** An instant `minutes` before {@link DEMO_NOW}. */
155
163
  export declare function demoMinutesAgo(minutes: number): string;
156
164
  //# sourceMappingURL=shared.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../../src/components/product-demo/fixtures/shared.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;CAIrB,CAAC;AAEX;;;;;GAKG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAUd,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,MAAM,OAAO,WAAW,CAAC;AACrD,MAAM,MAAM,mBAAmB,GAAG,MAAM,OAAO,kBAAkB,CAAC;AAElE,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CASf,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,QAAQ,6BAA6B,CAAC;AAEnD,oDAAoD;AACpD,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEtD"}
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../../src/components/product-demo/fixtures/shared.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;CAIrB,CAAC;AAEX;;;;;GAKG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAUd,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,MAAM,OAAO,WAAW,CAAC;AACrD,MAAM,MAAM,mBAAmB,GAAG,MAAM,OAAO,kBAAkB,CAAC;AAElE,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAUf,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,QAAQ,6BAA6B,CAAC;AAEnD,8FAA8F;AAC9F,wBAAgB,OAAO,IAAI,IAAI,CAG9B;AAED,oDAAoD;AACpD,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEtD"}
@@ -23,9 +23,14 @@ const DEMO_DEVICES = {
23
23
  leoThinkPad: { id: "device-leo", hostname: "LEO-THINKPAD", os: "WINDOWS", organization: "harbor" },
24
24
  buildServer: { id: "device-build", hostname: "BUILD-SRV-01", os: "LINUX", organization: "acme" },
25
25
  jenSurface: { id: "device-jen", hostname: "JEN-SURFACE", os: "WINDOWS", organization: "acme" },
26
- priyaXps: { id: "device-priya", hostname: "PRIYA-XPS", os: "WINDOWS", organization: "northbridge" }
26
+ priyaXps: { id: "device-priya", hostname: "PRIYA-XPS", os: "WINDOWS", organization: "northbridge" },
27
+ warehouse: { id: "device-warehouse", hostname: "WAREHOUSE-PC03", os: "WINDOWS", organization: "acme" }
27
28
  };
28
29
  const DEMO_NOW = "2026-10-06T14:05:00.000Z";
30
+ function demoDay() {
31
+ const [year, month, day] = DEMO_NOW.slice(0, 10).split("-").map(Number);
32
+ return new Date(year, month - 1, day);
33
+ }
29
34
  function demoMinutesAgo(minutes) {
30
35
  return new Date(Date.parse(DEMO_NOW) - minutes * 6e4).toISOString();
31
36
  }
@@ -34,5 +39,6 @@ export {
34
39
  DEMO_NOW,
35
40
  DEMO_ORGANIZATIONS,
36
41
  DEMO_PEOPLE,
42
+ demoDay,
37
43
  demoMinutesAgo
38
44
  };
@@ -1 +1 @@
1
- {"version":3,"file":"software-update.d.ts","sourceRoot":"","sources":["../../../../src/components/product-demo/fixtures/software-update.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAA2B,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAChH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AA6CxC;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,QAAQ;;;;;;;;;EAUxD"}
1
+ {"version":3,"file":"software-update.d.ts","sourceRoot":"","sources":["../../../../src/components/product-demo/fixtures/software-update.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAA2B,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAChH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAuCxC;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,QAAQ;;;;;;;;;EAUxD"}
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
  import { buildDevicesFixture } from "./devices.js";
3
- import { DEMO_DEVICES, DEMO_NOW } from "./shared.js";
3
+ import { DEMO_DEVICES, demoDay } from "./shared.js";
4
4
  const chrome = {
5
5
  id: "Google.Chrome",
6
6
  name: "Google Chrome",
@@ -8,10 +8,6 @@ const chrome = {
8
8
  version: "141.0.7390.66",
9
9
  packageType: null
10
10
  };
11
- function demoDay() {
12
- const [year, month, day] = DEMO_NOW.slice(0, 10).split("-").map(Number);
13
- return new Date(year, month - 1, day);
14
- }
15
11
  const TONIGHT_11_PM = { value: "23:00", label: "11:00 PM" };
16
12
  const timing = {
17
13
  timeReferenceOptions: [
@@ -4,8 +4,8 @@
4
4
 
5
5
 
6
6
 
7
- var _chunkII4QMH26cjs = require('../../chunk-II4QMH26.cjs');
8
- require('../../chunk-KHXZFLIN.cjs');
7
+ var _chunkSTEJZPIOcjs = require('../../chunk-STEJZPIO.cjs');
8
+ require('../../chunk-DKOLQPE7.cjs');
9
9
 
10
10
 
11
11
  var _chunkAKTPO2DNcjs = require('../../chunk-AKTPO2DN.cjs');
@@ -21,14 +21,15 @@ var _react = require('react');
21
21
 
22
22
  // src/components/product-demo/registry.ts
23
23
  var PRODUCT_SCREEN_LOADERS = {
24
- "remote-session": () => Promise.resolve().then(() => _interopRequireWildcard(require("../../remote-session-DNFZ5OLY.cjs"))),
25
- "software-update": () => Promise.resolve().then(() => _interopRequireWildcard(require("../../software-update-BLIVYOY2.cjs"))),
26
- devices: () => Promise.resolve().then(() => _interopRequireWildcard(require("../../devices-TWEA7XOR.cjs"))),
27
- policies: () => Promise.resolve().then(() => _interopRequireWildcard(require("../../policies-OZUEA5YS.cjs"))),
28
- "cloud-tenants": () => Promise.resolve().then(() => _interopRequireWildcard(require("../../cloud-tenants-PVXDI5MU.cjs"))),
29
- "tickets-board": () => Promise.resolve().then(() => _interopRequireWildcard(require("../../tickets-board-CKZRB6YV.cjs"))),
30
- logs: () => Promise.resolve().then(() => _interopRequireWildcard(require("../../logs-EVU6GJHZ.cjs"))),
31
- knowledge: () => Promise.resolve().then(() => _interopRequireWildcard(require("../../knowledge-4GQDBNQB.cjs")))
24
+ "remote-session": () => Promise.resolve().then(() => _interopRequireWildcard(require("../../remote-session-N4PJB5FW.cjs"))),
25
+ "software-update": () => Promise.resolve().then(() => _interopRequireWildcard(require("../../software-update-ED33WSKT.cjs"))),
26
+ devices: () => Promise.resolve().then(() => _interopRequireWildcard(require("../../devices-OFP2IBKN.cjs"))),
27
+ policies: () => Promise.resolve().then(() => _interopRequireWildcard(require("../../policies-35BXKB6P.cjs"))),
28
+ "cloud-tenants": () => Promise.resolve().then(() => _interopRequireWildcard(require("../../cloud-tenants-6ICAL3HO.cjs"))),
29
+ "tickets-board": () => Promise.resolve().then(() => _interopRequireWildcard(require("../../tickets-board-O753S4ZB.cjs"))),
30
+ logs: () => Promise.resolve().then(() => _interopRequireWildcard(require("../../logs-X2GRNO57.cjs"))),
31
+ knowledge: () => Promise.resolve().then(() => _interopRequireWildcard(require("../../knowledge-KKBCSNUA.cjs"))),
32
+ scripts: () => Promise.resolve().then(() => _interopRequireWildcard(require("../../scripts-KQYVQOLU.cjs")))
32
33
  };
33
34
 
34
35
  // src/components/product-demo/screen-keys.ts
@@ -40,7 +41,8 @@ var PRODUCT_SCREEN_LABELS = {
40
41
  "cloud-tenants": "Cloud tenants",
41
42
  "tickets-board": "Ticket board",
42
43
  logs: "Logs with a log open",
43
- knowledge: "Knowledge base"
44
+ knowledge: "Knowledge base",
45
+ scripts: "Script library and schedules"
44
46
  };
45
47
  var PRODUCT_SCREEN_KEYS = Object.keys(PRODUCT_SCREEN_LABELS);
46
48
  function isProductScreenKey(value) {
@@ -60,7 +62,8 @@ var PRODUCT_SCREEN_COMPACT_HEIGHT = 300;
60
62
  var MIN_LAYOUT_WIDTH = {
61
63
  devices: 1120,
62
64
  logs: 1120,
63
- "software-update": 1400
65
+ "software-update": 1400,
66
+ scripts: 1400
64
67
  };
65
68
  var COMPACT_LAYOUT_WIDTH = {
66
69
  "remote-session": 380
@@ -109,4 +112,4 @@ function ProductScreen({ screen, compact = false, label, height, designWidth, ..
109
112
 
110
113
 
111
114
 
112
- exports.PRODUCT_SCREEN_COMPACT_HEIGHT = PRODUCT_SCREEN_COMPACT_HEIGHT; exports.PRODUCT_SCREEN_HEIGHT = PRODUCT_SCREEN_HEIGHT; exports.PRODUCT_SCREEN_KEYS = PRODUCT_SCREEN_KEYS; exports.PRODUCT_SCREEN_LABELS = PRODUCT_SCREEN_LABELS; exports.PRODUCT_SCREEN_OPTIONS = PRODUCT_SCREEN_OPTIONS; exports.ProductDemoCastProvider = _chunkII4QMH26cjs.ProductDemoCastProvider; exports.ProductScreen = ProductScreen; exports.ProductScreenSkeleton = ProductScreenSkeleton; exports.isProductScreenKey = isProductScreenKey; exports.resolveProductDemoCast = _chunkII4QMH26cjs.resolveProductDemoCast; exports.useProductDemoCast = _chunkII4QMH26cjs.useProductDemoCast;
115
+ exports.PRODUCT_SCREEN_COMPACT_HEIGHT = PRODUCT_SCREEN_COMPACT_HEIGHT; exports.PRODUCT_SCREEN_HEIGHT = PRODUCT_SCREEN_HEIGHT; exports.PRODUCT_SCREEN_KEYS = PRODUCT_SCREEN_KEYS; exports.PRODUCT_SCREEN_LABELS = PRODUCT_SCREEN_LABELS; exports.PRODUCT_SCREEN_OPTIONS = PRODUCT_SCREEN_OPTIONS; exports.ProductDemoCastProvider = _chunkSTEJZPIOcjs.ProductDemoCastProvider; exports.ProductScreen = ProductScreen; exports.ProductScreenSkeleton = ProductScreenSkeleton; exports.isProductScreenKey = isProductScreenKey; exports.resolveProductDemoCast = _chunkSTEJZPIOcjs.resolveProductDemoCast; exports.useProductDemoCast = _chunkSTEJZPIOcjs.useProductDemoCast;
@@ -1 +1 @@
1
- {"version":3,"file":"product-screen.d.ts","sourceRoot":"","sources":["../../../src/components/product-demo/product-screen.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAsB,KAAK,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAG9F,OAAO,EAA8C,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAQlG,uGAAuG;AACvG,eAAO,MAAM,qBAAqB,MAAM,CAAC;AACzC,eAAO,MAAM,6BAA6B,MAAM,CAAC;AA0BjD,MAAM,WAAW,kBAAmB,SAAQ,IAAI,CAAC,uBAAuB,EAAE,UAAU,GAAG,OAAO,GAAG,QAAQ,CAAC;IACxG,MAAM,EAAE,gBAAgB,CAAC;IACzB,+CAA+C;IAC/C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,sCAAsC;IACtC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mDAAmD;IACnD,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC1B;AAED,wDAAwD;AACxD,wBAAgB,qBAAqB,CAAC,EACpC,OAAe,EACf,MAAM,EACN,SAAS,GACV,EAAE,IAAI,CAAC,kBAAkB,EAAE,SAAS,GAAG,QAAQ,GAAG,WAAW,CAAC,+BAO9D;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,EAAE,MAAM,EAAE,OAAe,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,EAAE,kBAAkB,+BAuBlH"}
1
+ {"version":3,"file":"product-screen.d.ts","sourceRoot":"","sources":["../../../src/components/product-demo/product-screen.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAsB,KAAK,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAG9F,OAAO,EAA8C,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAQlG,uGAAuG;AACvG,eAAO,MAAM,qBAAqB,MAAM,CAAC;AACzC,eAAO,MAAM,6BAA6B,MAAM,CAAC;AA4BjD,MAAM,WAAW,kBAAmB,SAAQ,IAAI,CAAC,uBAAuB,EAAE,UAAU,GAAG,OAAO,GAAG,QAAQ,CAAC;IACxG,MAAM,EAAE,gBAAgB,CAAC;IACzB,+CAA+C;IAC/C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,sCAAsC;IACtC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mDAAmD;IACnD,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC1B;AAED,wDAAwD;AACxD,wBAAgB,qBAAqB,CAAC,EACpC,OAAe,EACf,MAAM,EACN,SAAS,GACV,EAAE,IAAI,CAAC,kBAAkB,EAAE,SAAS,GAAG,QAAQ,GAAG,WAAW,CAAC,+BAO9D;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,EAAE,MAAM,EAAE,OAAe,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,EAAE,kBAAkB,+BAuBlH"}
@@ -13,7 +13,8 @@ const PRODUCT_SCREEN_COMPACT_HEIGHT = 300;
13
13
  const MIN_LAYOUT_WIDTH = {
14
14
  devices: 1120,
15
15
  logs: 1120,
16
- "software-update": 1400
16
+ "software-update": 1400,
17
+ scripts: 1400
17
18
  };
18
19
  const COMPACT_LAYOUT_WIDTH = {
19
20
  "remote-session": 380
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/components/product-demo/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAEtD,KAAK,mBAAmB,GAAG,MAAM,OAAO,CAAC;IAAE,OAAO,EAAE,sBAAsB,CAAA;CAAE,CAAC,CAAC;AAE9E;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAShF,CAAC"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/components/product-demo/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAEtD,KAAK,mBAAmB,GAAG,MAAM,OAAO,CAAC;IAAE,OAAO,EAAE,sBAAsB,CAAA;CAAE,CAAC,CAAC;AAE9E;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAUhF,CAAC"}
@@ -7,7 +7,8 @@ const PRODUCT_SCREEN_LOADERS = {
7
7
  "cloud-tenants": () => import("./screens/cloud-tenants.js"),
8
8
  "tickets-board": () => import("./screens/tickets-board.js"),
9
9
  logs: () => import("./screens/logs.js"),
10
- knowledge: () => import("./screens/knowledge.js")
10
+ knowledge: () => import("./screens/knowledge.js"),
11
+ scripts: () => import("./screens/scripts.js")
11
12
  };
12
13
  export {
13
14
  PRODUCT_SCREEN_LOADERS
@@ -9,7 +9,8 @@ var PRODUCT_SCREEN_LABELS = {
9
9
  "cloud-tenants": "Cloud tenants",
10
10
  "tickets-board": "Ticket board",
11
11
  logs: "Logs with a log open",
12
- knowledge: "Knowledge base"
12
+ knowledge: "Knowledge base",
13
+ scripts: "Script library and schedules"
13
14
  };
14
15
  var PRODUCT_SCREEN_KEYS = Object.keys(PRODUCT_SCREEN_LABELS);
15
16
  function isProductScreenKey(value) {
@@ -15,6 +15,7 @@ export declare const PRODUCT_SCREEN_LABELS: {
15
15
  readonly 'tickets-board': "Ticket board";
16
16
  readonly logs: "Logs with a log open";
17
17
  readonly knowledge: "Knowledge base";
18
+ readonly scripts: "Script library and schedules";
18
19
  };
19
20
  export type ProductScreenKey = keyof typeof PRODUCT_SCREEN_LABELS;
20
21
  export declare const PRODUCT_SCREEN_KEYS: ProductScreenKey[];
@@ -1 +1 @@
1
- {"version":3,"file":"screen-keys.d.ts","sourceRoot":"","sources":["../../../src/components/product-demo/screen-keys.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;CASxB,CAAC;AAEX,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,qBAAqB,CAAC;AAElE,eAAO,MAAM,mBAAmB,EAAyC,gBAAgB,EAAE,CAAC;AAE5F,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,gBAAgB,CAE5E;AAED,mDAAmD;AACnD,eAAO,MAAM,sBAAsB,EAAE,SAAS;IAAE,KAAK,EAAE,gBAAgB,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAEvF,CAAC"}
1
+ {"version":3,"file":"screen-keys.d.ts","sourceRoot":"","sources":["../../../src/components/product-demo/screen-keys.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;CAUxB,CAAC;AAEX,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,qBAAqB,CAAC;AAElE,eAAO,MAAM,mBAAmB,EAAyC,gBAAgB,EAAE,CAAC;AAE5F,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,gBAAgB,CAE5E;AAED,mDAAmD;AACnD,eAAO,MAAM,sBAAsB,EAAE,SAAS;IAAE,KAAK,EAAE,gBAAgB,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAEvF,CAAC"}
@@ -6,7 +6,8 @@ const PRODUCT_SCREEN_LABELS = {
6
6
  "cloud-tenants": "Cloud tenants",
7
7
  "tickets-board": "Ticket board",
8
8
  logs: "Logs with a log open",
9
- knowledge: "Knowledge base"
9
+ knowledge: "Knowledge base",
10
+ scripts: "Script library and schedules"
10
11
  };
11
12
  const PRODUCT_SCREEN_KEYS = Object.keys(PRODUCT_SCREEN_LABELS);
12
13
  function isProductScreenKey(value) {
@@ -0,0 +1,11 @@
1
+ import type { ProductScreenViewProps } from '../types';
2
+ /**
3
+ * Where the page's Mingo conversation leaves off: the script it wrote, on the
4
+ * left, and the first night its schedule ran, on the right, as the product's
5
+ * Execution History (a run still going, one failed, one finished with its
6
+ * output open under it: what it cleaned and what it freed). The schedule form
7
+ * and the library are the conversation's part, so the picture leaves them
8
+ * out. The narrow rendering is the run alone: which devices, and how each went.
9
+ */
10
+ export default function ScriptsScreen({ compact }: ProductScreenViewProps): import("react").JSX.Element;
11
+ //# sourceMappingURL=scripts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scripts.d.ts","sourceRoot":"","sources":["../../../../src/components/product-demo/screens/scripts.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAkIvD;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EAAE,OAAe,EAAE,EAAE,sBAAsB,+BAsChF"}
@@ -0,0 +1,130 @@
1
+ "use client";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
3
+ import { useMemo } from "react";
4
+ import {
5
+ EXECUTION_COLUMNS,
6
+ ScriptExecutionResult,
7
+ ScriptExecutionsTable,
8
+ ScriptShellBadge
9
+ } from "../../features/scripts/index.js";
10
+ import { TimerIcon } from "../../icons-v2-generated/date-and-time/timer-icon.js";
11
+ import { TruncateText } from "../../ui/truncate-text.js";
12
+ import { useProductDemoCast } from "../cast.js";
13
+ import { buildScriptsFixture } from "../fixtures/scripts.js";
14
+ const WIDE_HIDDEN_COLUMNS = ["result", "open"];
15
+ const COMPACT_COLUMNS = [
16
+ { ...EXECUTION_COLUMNS.machineId, width: "flex-1 min-w-0", hideAt: void 0 },
17
+ EXECUTION_COLUMNS.status
18
+ ];
19
+ const COMPACT_ROWS = 4;
20
+ const TOKEN_CLASS = {
21
+ comment: "italic text-ods-text-tertiary",
22
+ keyword: "text-ods-warning",
23
+ string: "text-ods-flamingo-cyan",
24
+ variable: "text-ods-flamingo-cyan",
25
+ command: "text-ods-success",
26
+ parameter: "text-ods-text-secondary",
27
+ number: "text-ods-open-yellow",
28
+ plain: "text-ods-text-primary"
29
+ };
30
+ const TOKEN_PATTERN = /(#.*$)|("(?:[^"\\]|\\.)*"|'[^']*')|(\$[\w:]+)|\b(foreach|in|if|else|exit|return|param)\b|\b([A-Z][a-z]+-[A-Z][A-Za-z]+)\b|(-[A-Za-z]+)\b|\b(\d+(?:GB|MB|KB)?)\b/g;
31
+ const TOKEN_KINDS = [
32
+ "comment",
33
+ "string",
34
+ "variable",
35
+ "keyword",
36
+ "command",
37
+ "parameter",
38
+ "number"
39
+ ];
40
+ function tokenize(line) {
41
+ const tokens = [];
42
+ let last = 0;
43
+ for (const match of line.matchAll(TOKEN_PATTERN)) {
44
+ const start = match.index ?? 0;
45
+ if (start > last) tokens.push({ text: line.slice(last, start), kind: "plain" });
46
+ const group = match.slice(1).findIndex(Boolean);
47
+ tokens.push({ text: match[0], kind: TOKEN_KINDS[group] ?? "plain" });
48
+ last = start + match[0].length;
49
+ }
50
+ if (last < line.length) tokens.push({ text: line.slice(last), kind: "plain" });
51
+ return tokens;
52
+ }
53
+ function ScriptCodePicture({ script }) {
54
+ const lines = useMemo(
55
+ () => script.code.split("\n").map((line, index) => ({ number: index + 1, tokens: tokenize(line) })),
56
+ [script.code]
57
+ );
58
+ const { schedule, provenance } = script;
59
+ return /* @__PURE__ */ jsxs(
60
+ "section",
61
+ {
62
+ "aria-label": script.name,
63
+ className: "flex h-full min-w-0 flex-col overflow-hidden rounded-[8px] border border-ods-border bg-ods-card",
64
+ children: [
65
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-[var(--spacing-system-xxs)] border-b border-ods-border p-[var(--spacing-system-m)]", children: [
66
+ /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 items-center justify-between gap-[var(--spacing-system-m)]", children: [
67
+ /* @__PURE__ */ jsx(TruncateText, { variant: "h4", children: script.name }),
68
+ /* @__PURE__ */ jsxs("span", { className: "flex shrink-0 items-center gap-[var(--spacing-system-xxs)] text-ods-text-primary text-h6", children: [
69
+ /* @__PURE__ */ jsx(TimerIcon, { className: "size-4 text-ods-text-secondary" }),
70
+ `${schedule.repeat} ${schedule.time} \xB7 ${schedule.deviceCount} devices`
71
+ ] })
72
+ ] }),
73
+ /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 items-center justify-between gap-[var(--spacing-system-m)]", children: [
74
+ /* @__PURE__ */ jsx(TruncateText, { variant: "h6", tone: "secondary", children: `Written by ${provenance.author} \xB7 approved by ${provenance.approver}` }),
75
+ /* @__PURE__ */ jsx(
76
+ ScriptShellBadge,
77
+ {
78
+ value: script.shellType,
79
+ className: "shrink-0 text-ods-text-secondary text-h6",
80
+ iconClassName: "size-4"
81
+ }
82
+ )
83
+ ] })
84
+ ] }),
85
+ /* @__PURE__ */ jsx("pre", { className: "m-0 min-h-0 flex-1 overflow-hidden bg-ods-bg py-3 font-mono text-[14px] leading-[22px]", children: lines.map((line) => /* @__PURE__ */ jsxs("div", { className: "flex", children: [
86
+ /* @__PURE__ */ jsx("span", { className: "w-[46px] shrink-0 select-none pr-[4px] text-right text-ods-text-tertiary", children: line.number }),
87
+ /* @__PURE__ */ jsx("code", { className: "whitespace-pre pl-[32px]", children: line.tokens.map((token, at) => /* @__PURE__ */ jsx("span", { className: TOKEN_CLASS[token.kind], children: token.text }, `${at}-${token.text}`)) })
88
+ ] }, line.number)) })
89
+ ]
90
+ }
91
+ );
92
+ }
93
+ function ScriptsScreen({ compact = false }) {
94
+ const cast = useProductDemoCast();
95
+ const fixture = useMemo(() => buildScriptsFixture(cast), [cast]);
96
+ if (compact) {
97
+ return (
98
+ // Four runs of the card's row height fill the frame; the padding is what is left round them.
99
+ /* @__PURE__ */ jsx("div", { className: "h-full overflow-hidden bg-ods-bg p-[var(--spacing-system-xsf)]", children: /* @__PURE__ */ jsx(
100
+ ScriptExecutionsTable,
101
+ {
102
+ rows: fixture.executions.slice(0, COMPACT_ROWS),
103
+ columns: COMPACT_COLUMNS,
104
+ showHeader: false,
105
+ compact: true
106
+ }
107
+ ) })
108
+ );
109
+ }
110
+ const renderOutput = (row) => row.id === fixture.openExecutionId ? /* @__PURE__ */ jsx(ScriptExecutionResult, { result: row.result, empty: "\u2014" }) : null;
111
+ return (
112
+ // The frame's tighter padding and no header row: the output opened under a run needs the height.
113
+ /* @__PURE__ */ jsxs("div", { className: "flex h-full gap-[var(--spacing-system-m)] overflow-hidden bg-ods-bg p-[var(--spacing-system-m)]", children: [
114
+ /* @__PURE__ */ jsx("div", { className: "w-[39%] shrink-0", children: /* @__PURE__ */ jsx(ScriptCodePicture, { script: fixture.script }) }),
115
+ /* @__PURE__ */ jsx("div", { className: "min-w-0 flex-1 overflow-hidden", children: /* @__PURE__ */ jsx(
116
+ ScriptExecutionsTable,
117
+ {
118
+ rows: fixture.executions,
119
+ hideColumns: WIDE_HIDDEN_COLUMNS,
120
+ renderSubRow: renderOutput,
121
+ showHeader: false,
122
+ compact: true
123
+ }
124
+ ) })
125
+ ] })
126
+ );
127
+ }
128
+ export {
129
+ ScriptsScreen as default
130
+ };