@cardstack/boxel-cli 0.13.0-unstable.4 → 0.13.0-unstable.6

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 (1058) hide show
  1. package/bundled-realms/pretui/components/doc-report.gts +2 -2
  2. package/bundled-realms/pretui/components/doc-report.usage.gts +3 -3
  3. package/bundled-realms/pretui/components/form-field.md +1 -1
  4. package/bundled-realms/pretui/components/icon-button.md +1 -1
  5. package/bundled-realms/pretui/components/popup.md +1 -1
  6. package/bundled-realms/pretui/components/switch.gts +13 -0
  7. package/bundled-realms/pretui/components/switch.md +5 -3
  8. package/bundled-realms/pretui/components/theme-frame.gts +49 -22
  9. package/bundled-realms/pretui/components/tooltip.gts +141 -42
  10. package/bundled-realms/pretui/components/tooltip.md +10 -12
  11. package/bundled-realms/pretui/components/tooltip.usage.gts +3 -5
  12. package/bundled-realms/pretui/docs/structure.md +1 -1
  13. package/bundled-realms/pretui/internal/overlay.gts +4 -2
  14. package/bundled-realms/pretui/pretui-css.gts +6 -2
  15. package/bundled-realms/pretui/theme-scoped-css.gts +262 -0
  16. package/bundled-test-harness/assets/account-switch-failed-test-DwAZq6Sc.js +45 -0
  17. package/bundled-test-harness/assets/adapter-C_6pnsx1.js +2 -0
  18. package/bundled-test-harness/assets/add-field-to-card-definition-tool-test-zMYtJWBv.js +112 -0
  19. package/bundled-test-harness/assets/ai-assistant-create-workspace-test-CwhAV-Ow.js +130 -0
  20. package/bundled-test-harness/assets/ai-assistant-panel-relogin-test-DNgclkGJ.js +46 -0
  21. package/bundled-test-harness/assets/ai-assistant-test-DGYFiRTb.js +2223 -0
  22. package/bundled-test-harness/assets/ai-function-generation-test-Dj6WzKkh.js +1176 -0
  23. package/bundled-test-harness/assets/ai-module-creation-test-C4zhhxaZ.js +151 -0
  24. package/bundled-test-harness/assets/aibot-message-BShcljQ9.js +1312 -0
  25. package/bundled-test-harness/assets/app-DiEYqT6T.js +14146 -0
  26. package/bundled-test-harness/assets/apply-markdown-edit-test-CPhfeg1i.js +230 -0
  27. package/bundled-test-harness/assets/ask-user-picker-NVRkhKwt.js +370 -0
  28. package/bundled-test-harness/assets/ask-user-picker-test-SsZqFm9W.js +39 -0
  29. package/bundled-test-harness/assets/assistant-transcript-test-DesuBCIB.js +57 -0
  30. package/bundled-test-harness/assets/audio-metadata-extractor-test-8JM6oZXG.js +1176 -0
  31. package/bundled-test-harness/assets/authed-fetch-test-yPTMe-9V.js +73 -0
  32. package/bundled-test-harness/assets/avif-image-def-test-Kyknj908.js +187 -0
  33. package/bundled-test-harness/assets/basic-test-D9OrrMaq.js +139 -0
  34. package/bundled-test-harness/assets/binary-upload-dedupe-test-C0RFmHma.js +308 -0
  35. package/bundled-test-harness/assets/bot-registration-test-Bk2lTaCW.js +97 -0
  36. package/bundled-test-harness/assets/box-test-BbV9sMyU.js +50 -0
  37. package/bundled-test-harness/assets/brand-guide-attachments-test-z4wTsKbI.js +84 -0
  38. package/bundled-test-harness/assets/brand-guide-custom-css-test-BlSJE8xo.js +196 -0
  39. package/bundled-test-harness/assets/brand-guide-edit-test-DJ1OQ6IB.js +140 -0
  40. package/bundled-test-harness/assets/brand-logo-mark-field-test-ux7eetkO.js +86 -0
  41. package/bundled-test-harness/assets/broken-link-template-test-CqB3MWyw.js +192 -0
  42. package/bundled-test-harness/assets/bundled-base-modules-test-B2oNLZSJ.js +54 -0
  43. package/bundled-test-harness/assets/bundled-base-oracle-test-DelPfFjn.js +37 -0
  44. package/bundled-test-harness/assets/buried-stack-item-scroll-test-Ixsl1tS0.js +236 -0
  45. package/bundled-test-harness/assets/button-BvYQm_A1.js +141 -0
  46. package/bundled-test-harness/assets/bxl-cyclic-graph-test-p23WCLRW.js +47 -0
  47. package/bundled-test-harness/assets/bxl-expression-test-CVTQYT_C.js +250 -0
  48. package/bundled-test-harness/assets/bxl-indexing-test-D_A7X2sr.js +212 -0
  49. package/bundled-test-harness/assets/bxl-platform-module-test-Cltfyybp.js +71 -0
  50. package/bundled-test-harness/assets/can-invoke-test-CVfE1l1V.js +455 -0
  51. package/bundled-test-harness/assets/can-read-realm-test-CIz6WX_K.js +56 -0
  52. package/bundled-test-harness/assets/cancel-indexing-job-test-0LlrOgYK.js +69 -0
  53. package/bundled-test-harness/assets/capture-test-diHIWmh0.js +360 -0
  54. package/bundled-test-harness/assets/card-api-test-Ci9b0ghP.js +198 -0
  55. package/bundled-test-harness/assets/card-basics-test-RKQoQWZD.js +5364 -0
  56. package/bundled-test-harness/assets/card-chooser-paging-test-BN21sDpP.js +235 -0
  57. package/bundled-test-harness/assets/card-chooser-test-C9jDiIgM.js +393 -0
  58. package/bundled-test-harness/assets/card-context-search-results-KmkXJbmC.js +30 -0
  59. package/bundled-test-harness/assets/card-context-search-results-test-CpMr8OlX.js +184 -0
  60. package/bundled-test-harness/assets/card-def-field-def-relationships-test-D_30xak6.js +562 -0
  61. package/bundled-test-harness/assets/card-def-menu-items-test-ohuHc0b4.js +228 -0
  62. package/bundled-test-harness/assets/card-delete-test-BlsD9Xw4.js +466 -0
  63. package/bundled-test-harness/assets/card-error-3q1o3i0e.js +72 -0
  64. package/bundled-test-harness/assets/card-error-awaiting-index-test-DPgYKfbF.js +53 -0
  65. package/bundled-test-harness/assets/card-info-thumbnail-picker-test-CVfeJyjt.js +219 -0
  66. package/bundled-test-harness/assets/card-playground-test-D-7bi4PQ.js +1491 -0
  67. package/bundled-test-harness/assets/card-prerender-DemTfK_a.js +12939 -0
  68. package/bundled-test-harness/assets/card-thunk-error-test-DCBh1vRT.js +48 -0
  69. package/bundled-test-harness/assets/card-type-service-test-DXPrfVYk.js +161 -0
  70. package/bundled-test-harness/assets/check-correctness-test-DjE7r1X2.js +1093 -0
  71. package/bundled-test-harness/assets/check-domain-availability-test-U10xSKbY.js +98 -0
  72. package/bundled-test-harness/assets/chip-0r_r9SC8.js +44 -0
  73. package/bundled-test-harness/assets/choreo-CZUXQKjf.js +1110 -0
  74. package/bundled-test-harness/assets/choreo-D8RcLuoq.js +2 -0
  75. package/bundled-test-harness/assets/choreo-feature-reel-test-DRGloCAJ.js +155 -0
  76. package/bundled-test-harness/assets/choreo-gallery-build-order-test-BR-r7gaw.js +436 -0
  77. package/bundled-test-harness/assets/choreo-gallery-compositor-test-CWRLfcNT.js +399 -0
  78. package/bundled-test-harness/assets/choreo-gallery-cover-test-BT05gNKC.js +214 -0
  79. package/bundled-test-harness/assets/choreo-gallery-crossing-stage-test-WJ7FmjYi.js +133 -0
  80. package/bundled-test-harness/assets/choreo-gallery-demos-alive-test-C-yxdVT_.js +42 -0
  81. package/bundled-test-harness/assets/choreo-gallery-drift-test-HX1mK3od.js +620 -0
  82. package/bundled-test-harness/assets/choreo-gallery-escort-test-jZEVk_V4.js +187 -0
  83. package/bundled-test-harness/assets/choreo-gallery-films-test-DLDQzsxb.js +140 -0
  84. package/bundled-test-harness/assets/choreo-gallery-filter-test-BJv8KEeP.js +46 -0
  85. package/bundled-test-harness/assets/choreo-gallery-fold-test-BssKC8A8.js +180 -0
  86. package/bundled-test-harness/assets/choreo-gallery-guide-pages-test-DS41eNNV.js +114 -0
  87. package/bundled-test-harness/assets/choreo-gallery-guides-test-DTj7yEKp.js +321 -0
  88. package/bundled-test-harness/assets/choreo-gallery-hang-test-BqJLmeFF.js +426 -0
  89. package/bundled-test-harness/assets/choreo-gallery-highlight-test-B1Q7-ICm.js +60 -0
  90. package/bundled-test-harness/assets/choreo-gallery-inline-edit-test-7My9lVam.js +370 -0
  91. package/bundled-test-harness/assets/choreo-gallery-interruption-test-BlIAaGrw.js +176 -0
  92. package/bundled-test-harness/assets/choreo-gallery-lone-stack-test-C9NnYIP8.js +104 -0
  93. package/bundled-test-harness/assets/choreo-gallery-navigation-test-CWzXkvbW.js +193 -0
  94. package/bundled-test-harness/assets/choreo-gallery-playhead-transport-test-CwdiZWeI.js +111 -0
  95. package/bundled-test-harness/assets/choreo-gallery-poplayout-subtree-test-D55fxwTn.js +127 -0
  96. package/bundled-test-harness/assets/choreo-gallery-presence-modes-test-D8Wxv0lb.js +100 -0
  97. package/bundled-test-harness/assets/choreo-gallery-presentation-test-BLoWfp6G.js +157 -0
  98. package/bundled-test-harness/assets/choreo-gallery-reduced-motion-test-D5XxTBDS.js +145 -0
  99. package/bundled-test-harness/assets/choreo-gallery-sheet-standalone-test-DrHTTvss.js +89 -0
  100. package/bundled-test-harness/assets/choreo-gallery-sheet-test-BFVdnM_b.js +48 -0
  101. package/bundled-test-harness/assets/choreo-gallery-site-test-BhEBHdvI.js +237 -0
  102. package/bundled-test-harness/assets/choreo-gallery-stage-DcKKsdcu.js +256 -0
  103. package/bundled-test-harness/assets/choreo-gallery-stage-keyboard-test-Fcc6SC3F.js +102 -0
  104. package/bundled-test-harness/assets/choreo-gallery-stages-test-Cb-ADpxK.js +35 -0
  105. package/bundled-test-harness/assets/choreo-gallery-subdivision-test-DMJ6C9FW.js +138 -0
  106. package/bundled-test-harness/assets/choreo-gallery-table-plan-test-CAjSUdLJ.js +144 -0
  107. package/bundled-test-harness/assets/choreo-gallery-theater-test-B-3IZMj9.js +252 -0
  108. package/bundled-test-harness/assets/choreo-gallery-tuning-test-BVxK5Ry_.js +95 -0
  109. package/bundled-test-harness/assets/choreo-gallery-widget-room-test-uWBH1EKE.js +88 -0
  110. package/bundled-test-harness/assets/choreo-gallery-wires-test-Bo4Sd1Vn.js +148 -0
  111. package/bundled-test-harness/assets/client-telemetry-test-DFM4mML2.js +340 -0
  112. package/bundled-test-harness/assets/clip-DY6N6K67.js +92 -0
  113. package/bundled-test-harness/assets/clip-DzXoPdp-.js +2 -0
  114. package/bundled-test-harness/assets/code-block-DRE8KQZQ.js +502 -0
  115. package/bundled-test-harness/assets/code-ref-test-CDcqE8_C.js +163 -0
  116. package/bundled-test-harness/assets/code-submode-availability-test-DPTqZYYm.js +198 -0
  117. package/bundled-test-harness/assets/code-submode-test-AHV4mzJ4.js +1839 -0
  118. package/bundled-test-harness/assets/codeblocks-test-D6ijVvEL.js +418 -0
  119. package/bundled-test-harness/assets/codemirror-editor-test-BeAMVivu.js +1512 -0
  120. package/bundled-test-harness/assets/codemirror-embed-toolbar-test-Bnb7_KUT.js +366 -0
  121. package/bundled-test-harness/assets/color-field-test-CR6gGEqE.js +212 -0
  122. package/bundled-test-harness/assets/compaction-test-CjEsY0uG.js +150 -0
  123. package/bundled-test-harness/assets/computed-test-DtyZGgdc.js +1320 -0
  124. package/bundled-test-harness/assets/container-BYGZImLU.css +5101 -0
  125. package/bundled-test-harness/assets/container-CBZZ8uFw.js +10925 -0
  126. package/bundled-test-harness/assets/content-preview-components-test-BztI4fz-.js +462 -0
  127. package/bundled-test-harness/assets/copy-and-edit-test-Cqw7kcur.js +292 -0
  128. package/bundled-test-harness/assets/copy-card-test-D5m3eVEH.js +218 -0
  129. package/bundled-test-harness/assets/copy-file-to-realm-test-FPY-6Ddm.js +148 -0
  130. package/bundled-test-harness/assets/copy-source-test-9pJD-qey.js +56 -0
  131. package/bundled-test-harness/assets/create-file-test-DjMf88u_.js +1086 -0
  132. package/bundled-test-harness/assets/create-file-test-XbgOqg38.js +464 -0
  133. package/bundled-test-harness/assets/create-listing-modal-test-De7b4vu3.js +273 -0
  134. package/bundled-test-harness/assets/create-listing-pr-request-test-CBtIV0Z8.js +117 -0
  135. package/bundled-test-harness/assets/create-spec-test-4xR0gM7E.js +256 -0
  136. package/bundled-test-harness/assets/create-submission-workflow-test-DQpWrpGT.js +132 -0
  137. package/bundled-test-harness/assets/create-workspace-test-BQAudgpS.js +104 -0
  138. package/bundled-test-harness/assets/credential-fields-test-DXKBdbZD.js +200 -0
  139. package/bundled-test-harness/assets/csv-file-def-test-Cnp4y834.js +102 -0
  140. package/bundled-test-harness/assets/dashboard-CmuOhIYC.js +3628 -0
  141. package/bundled-test-harness/assets/dashboard-CzN49x74.css +2400 -0
  142. package/bundled-test-harness/assets/dashboard-add-workspace-test-T32hWB-g.js +50 -0
  143. package/bundled-test-harness/assets/dashboard-agents-test-BN5maCgQ.js +334 -0
  144. package/bundled-test-harness/assets/dashboard-archive-test-BzwUte_Z.js +128 -0
  145. package/bundled-test-harness/assets/dashboard-delete-test-D2Gcp81V.js +163 -0
  146. package/bundled-test-harness/assets/dashboard-duplicate-offer-test-BgKNIr35.js +71 -0
  147. package/bundled-test-harness/assets/dashboard-duplicate-test-D7JEWylc.js +222 -0
  148. package/bundled-test-harness/assets/dashboard-get-started-test-DOGPzGoA.js +374 -0
  149. package/bundled-test-harness/assets/dashboard-ir2bakJS.js +142 -0
  150. package/bundled-test-harness/assets/dashboard-pinned-cards-test-Bn_P9xJU.js +220 -0
  151. package/bundled-test-harness/assets/dashboard-publish-test-64sGQ0nG.js +70 -0
  152. package/bundled-test-harness/assets/dashboard-reindex-test-DJjYq1ct.js +115 -0
  153. package/bundled-test-harness/assets/dashboard-section-rail-test-ZkAhWu5V.js +169 -0
  154. package/bundled-test-harness/assets/dashboard-state-test-BbkpPB5L.js +162 -0
  155. package/bundled-test-harness/assets/dashboard-test-CBLdPrSt.js +545 -0
  156. package/bundled-test-harness/assets/dashboard-unreachable-notice-test-DFT3R1Zx.js +62 -0
  157. package/bundled-test-harness/assets/dashboard-workspace-test-DqBdCFo2.js +537 -0
  158. package/bundled-test-harness/assets/dashboard-workspaces-section-test-CH1HDfxR.js +410 -0
  159. package/bundled-test-harness/assets/data-file-def-preview-test-CNsZwQEJ.js +155 -0
  160. package/bundled-test-harness/assets/date-time-fields-test-CEFaZTnF.js +359 -0
  161. package/bundled-test-harness/assets/debug-message-test-Ck3BfFv3.js +117 -0
  162. package/bundled-test-harness/assets/declared-captures-test-C-0yPRU7.js +879 -0
  163. package/bundled-test-harness/assets/delete-workspace-test-CZOwGy78.js +102 -0
  164. package/bundled-test-harness/assets/diffing-test-BEKI905O.js +210 -0
  165. package/bundled-test-harness/assets/download-file-to-realm-test-C1kAGDll.js +119 -0
  166. package/bundled-test-harness/assets/editor-test-C9x5ZY6g.js +688 -0
  167. package/bundled-test-harness/assets/edits-D76-aanh.js +651 -0
  168. package/bundled-test-harness/assets/email-field-test-LGkrB_2B.js +75 -0
  169. package/bundled-test-harness/assets/enum-field-test-CPyV1J-m.js +935 -0
  170. package/bundled-test-harness/assets/error-display-test-bWuUtfIG.js +343 -0
  171. package/bundled-test-harness/assets/evaluate-module-test-CbS5h8t3.js +91 -0
  172. package/bundled-test-harness/assets/execute-atomic-operations-test-B4Kfco0k.js +113 -0
  173. package/bundled-test-harness/assets/externals-k-2ZBepK.js +4393 -0
  174. package/bundled-test-harness/assets/fallback-banner-live-delete-test-CuFiH1D8.js +207 -0
  175. package/bundled-test-harness/assets/fallback-banner-test-CqSRN7D8.js +225 -0
  176. package/bundled-test-harness/assets/fallback-banner-test-DQkrFE4-.js +53 -0
  177. package/bundled-test-harness/assets/fallback-models-test-BWekNxC0.js +161 -0
  178. package/bundled-test-harness/assets/fetch-card-json-test-DULUqUEu.js +61 -0
  179. package/bundled-test-harness/assets/field-configuration-test-BXZq28xa.js +551 -0
  180. package/bundled-test-harness/assets/field-markdown-domain-test-DdXCifs6.js +616 -0
  181. package/bundled-test-harness/assets/field-markdown-oversize-test-DouPPTHX.js +88 -0
  182. package/bundled-test-harness/assets/field-markdown-primitives-test-DSRGJeyl.js +365 -0
  183. package/bundled-test-harness/assets/field-markdown-specialized-test-DlTYLl_s.js +534 -0
  184. package/bundled-test-harness/assets/field-playground-test-NhS4VvoN.js +894 -0
  185. package/bundled-test-harness/assets/field-support-predicates-test-DWpyT1Qf.js +167 -0
  186. package/bundled-test-harness/assets/file-attachment-test-LwZf-BSY.js +796 -0
  187. package/bundled-test-harness/assets/file-chooser-panel-test-DuAqD9bn.js +153 -0
  188. package/bundled-test-harness/assets/file-chooser-test-CjaXXwpT.js +504 -0
  189. package/bundled-test-harness/assets/file-def-format-templates-test-BDs4OmHq.js +380 -0
  190. package/bundled-test-harness/assets/file-def-live-reload-test-BqTdnq-W.js +124 -0
  191. package/bundled-test-harness/assets/file-def-menu-items-test-DqdINXsD.js +138 -0
  192. package/bundled-test-harness/assets/file-def-navigation-test-BPGr0SQy.js +109 -0
  193. package/bundled-test-harness/assets/file-def-serialization-test-CvjW-FlC.js +89 -0
  194. package/bundled-test-harness/assets/file-def-test-C-Yv_NjS.js +216 -0
  195. package/bundled-test-harness/assets/file-preview-live-reload-test-MzwGwasU.js +310 -0
  196. package/bundled-test-harness/assets/file-resource-primitives-test-D3GmfqNs.js +255 -0
  197. package/bundled-test-harness/assets/file-tree-from-index-test-CfldnUgm.js +96 -0
  198. package/bundled-test-harness/assets/file-tree-test--0ZCPRe9.js +851 -0
  199. package/bundled-test-harness/assets/file-view-model-test-BDIAeBV8.js +346 -0
  200. package/bundled-test-harness/assets/filedef-export-shape-test-B2tgU404.js +61 -0
  201. package/bundled-test-harness/assets/film-Bf73ypzi.js +4074 -0
  202. package/bundled-test-harness/assets/film-C54lhaiU.js +2 -0
  203. package/bundled-test-harness/assets/film-DPcMEHYu.js +13 -0
  204. package/bundled-test-harness/assets/flac-audio-def-test-ByoXMoQ1.js +143 -0
  205. package/bundled-test-harness/assets/font-metadata-extractor-test-hawLTDTG.js +415 -0
  206. package/bundled-test-harness/assets/formatted-aibot-message-test-BahBj3x8.js +109 -0
  207. package/bundled-test-harness/assets/formatted-user-message-test-CodbrU3t.js +43 -0
  208. package/bundled-test-harness/assets/freestyle-test-faQhSciz.js +17 -0
  209. package/bundled-test-harness/assets/full-reindex-realm-test-CE5RJTIC.js +101 -0
  210. package/bundled-test-harness/assets/garbage-collection-test-v-3sev77.js +403 -0
  211. package/bundled-test-harness/assets/general-test-DKZPBtSb.js +923 -0
  212. package/bundled-test-harness/assets/generate-example-cards-one-shot-test-CucWyrkH.js +65 -0
  213. package/bundled-test-harness/assets/generic-file-def-preview-test-_EDRsebi.js +71 -0
  214. package/bundled-test-harness/assets/get-available-realm-identifiers-test-CV023yek.js +47 -0
  215. package/bundled-test-harness/assets/get-catalog-realm-identifiers-test--DOu3DyV.js +47 -0
  216. package/bundled-test-harness/assets/get-default-writable-realm-test-Bic8jl6R.js +54 -0
  217. package/bundled-test-harness/assets/get-published-realms-test-DrA5YcFN.js +71 -0
  218. package/bundled-test-harness/assets/get-realm-of-resource-identifier-test-jfU6SIWn.js +54 -0
  219. package/bundled-test-harness/assets/get-relationship-membership-state-test-Ccy2Z7MN.js +1308 -0
  220. package/bundled-test-harness/assets/get-user-system-card-test-Bmq2lmWv.js +67 -0
  221. package/bundled-test-harness/assets/gif-image-def-test-N1mMQC-X.js +188 -0
  222. package/bundled-test-harness/assets/glimmer-motion-and-choreo-in-cards-test-BkUDjiTs.js +160 -0
  223. package/bundled-test-harness/assets/glimmer-motion-and-choreo-test-DsFWCzTs.js +74 -0
  224. package/bundled-test-harness/assets/gts-file-def-test-BL1jpQ9J.js +100 -0
  225. package/bundled-test-harness/assets/head-format-preview-test-BVCaPQqc.js +158 -0
  226. package/bundled-test-harness/assets/helpers-Ds68JxHe.js +5 -0
  227. package/bundled-test-harness/assets/host-mode-service-B4bisRdR.js +262 -0
  228. package/bundled-test-harness/assets/host-mode-test-BmkN2PCJ.js +831 -0
  229. package/bundled-test-harness/assets/host-submode-test-C6SxQ796.js +1392 -0
  230. package/bundled-test-harness/assets/html-component-test-CNQ9wF0Q.js +65 -0
  231. package/bundled-test-harness/assets/html-def-test-BcaCVVQq.js +160 -0
  232. package/bundled-test-harness/assets/html-meta-extractor-test-BU1hjkTp.js +60 -0
  233. package/bundled-test-harness/assets/hydratable-card-test-CX6MWiti.js +426 -0
  234. package/bundled-test-harness/assets/icon-button-C1zH38Nc.js +67 -0
  235. package/bundled-test-harness/assets/image-metadata-extractor-test-CakSBPZ_.js +1109 -0
  236. package/bundled-test-harness/assets/index-changes-test-D8RtgfyG.js +367 -0
  237. package/bundled-test-harness/assets/index-query-engine-test-BETfoYOK.js +2593 -0
  238. package/bundled-test-harness/assets/index-writer-test-B_bR2fjw.js +3040 -0
  239. package/bundled-test-harness/assets/inspector-test-BwPXJj1S.js +2058 -0
  240. package/bundled-test-harness/assets/instance-filter-matcher-test-BSVCg59b.js +788 -0
  241. package/bundled-test-harness/assets/instantiate-card-test-BVQhZjpq.js +164 -0
  242. package/bundled-test-harness/assets/interact-submode-creation-and-permissions-test-DzQLG41H.js +475 -0
  243. package/bundled-test-harness/assets/interact-submode-setup-C5bKXq73.js +566 -0
  244. package/bundled-test-harness/assets/invalidate-realm-identifiers-test-Cd3dpjhB.js +99 -0
  245. package/bundled-test-harness/assets/invite-user-to-room-test-Brabz1tt.js +142 -0
  246. package/bundled-test-harness/assets/invoke-card-operation-test-C1Q1FUf4.js +333 -0
  247. package/bundled-test-harness/assets/isolated-render-test-BLJfS7BU.js +51 -0
  248. package/bundled-test-harness/assets/job-scoped-doc-cache-test-Bgv5woaB.js +181 -0
  249. package/bundled-test-harness/assets/job-scoped-instance-residency-test-C_bB6KpR.js +103 -0
  250. package/bundled-test-harness/assets/jpg-image-def-test-gdLIKocD.js +697 -0
  251. package/bundled-test-harness/assets/json-file-def-test-CPYMRBY-.js +95 -0
  252. package/bundled-test-harness/assets/key-notices-badge-test-DemslfLw.js +155 -0
  253. package/bundled-test-harness/assets/key-readiness-test-5tq5JycL.js +190 -0
  254. package/bundled-test-harness/assets/linksto-broken-link-placeholder-test-BbhDZ2PH.js +398 -0
  255. package/bundled-test-harness/assets/linksto-error-sentinel-test-C2t7fFPi.js +238 -0
  256. package/bundled-test-harness/assets/linksto-many-broken-link-placeholder-test--U_UvUty.js +354 -0
  257. package/bundled-test-harness/assets/linksto-many-per-slot-access-test-Dj3Xy0ZF.js +303 -0
  258. package/bundled-test-harness/assets/linksto-sentinel-reload-test-D0dK4Jjs.js +197 -0
  259. package/bundled-test-harness/assets/linksto-sentinel-roundtrip-test---IYiXok.js +260 -0
  260. package/bundled-test-harness/assets/linksto-singular-js-access-contract-test-CT04MhES.js +196 -0
  261. package/bundled-test-harness/assets/lint-and-fix-test-aadgx7rX.js +51 -0
  262. package/bundled-test-harness/assets/live-test-BGij_vuc.js +100 -0
  263. package/bundled-test-harness/assets/live-test-CppvValf.js +2 -0
  264. package/bundled-test-harness/assets/load-default-skills-test-Cp2m_ebp.js +74 -0
  265. package/bundled-test-harness/assets/loader-parallel-prefetch-test-vU_26Jqu.js +257 -0
  266. package/bundled-test-harness/assets/loader-test-CTaw8K_B.js +482 -0
  267. package/bundled-test-harness/assets/loading-test-DGGt4qZZ.js +63 -0
  268. package/bundled-test-harness/assets/m4a-audio-def-test-DAiReOXH.js +190 -0
  269. package/bundled-test-harness/assets/main-bXHwJ0CN.js +5 -0
  270. package/bundled-test-harness/assets/markdown-embed-chooser-modal-test-CIXq9FqR.js +470 -0
  271. package/bundled-test-harness/assets/markdown-embed-chooser-test-zFGh9WfP.js +334 -0
  272. package/bundled-test-harness/assets/markdown-embed-preview-pane-test-Byn_WFwY.js +447 -0
  273. package/bundled-test-harness/assets/markdown-embed-preview-test-Y3iFMttg.js +368 -0
  274. package/bundled-test-harness/assets/markdown-fallback-test-Br1TPkLZ.js +316 -0
  275. package/bundled-test-harness/assets/markdown-file-def-test-Crm2MAnq.js +380 -0
  276. package/bundled-test-harness/assets/markdown-helpers-test-CZ9Vvywc.js +188 -0
  277. package/bundled-test-harness/assets/markdown-highlighting-test-CFMkoVDl.js +244 -0
  278. package/bundled-test-harness/assets/markdown-preview-lOh-MyqF.js +72 -0
  279. package/bundled-test-harness/assets/markdown-preview-test-B8w0fFIy.js +238 -0
  280. package/bundled-test-harness/assets/markdown-skill-frontmatter-test-aH6HQly1.js +146 -0
  281. package/bundled-test-harness/assets/markdown-skill-search-test-CiNLQs-5.js +80 -0
  282. package/bundled-test-harness/assets/matrix-service-account-switch-sessions-test-DaA8w1Jj.js +63 -0
  283. package/bundled-test-harness/assets/matrix-service-boot-assembly-test-21GIlf55.js +300 -0
  284. package/bundled-test-harness/assets/matrix-service-personal-realm-test-jn9DUENm.js +125 -0
  285. package/bundled-test-harness/assets/matrix-service-realm-servers-test-eNZVJakl.js +55 -0
  286. package/bundled-test-harness/assets/matrix-service-realms-list-updated-test-Cabm8_dY.js +132 -0
  287. package/bundled-test-harness/assets/matrix-service-relogin-test-C77EFgjc.js +59 -0
  288. package/bundled-test-harness/assets/matrix-service-sliding-sync-test-BgM0fPiO.js +35 -0
  289. package/bundled-test-harness/assets/menu-Cl50TSFe.js +3561 -0
  290. package/bundled-test-harness/assets/message-service-subscription-test-CfEqH2jP.js +110 -0
  291. package/bundled-test-harness/assets/message-service-test-DsTzH1In.js +144 -0
  292. package/bundled-test-harness/assets/message-tool-test-C5xVfTtj.js +33 -0
  293. package/bundled-test-harness/assets/midi-audio-def-test-goLRCNCZ.js +182 -0
  294. package/bundled-test-harness/assets/migrate-skill-test-yPCbVfxG.js +161 -0
  295. package/bundled-test-harness/assets/mini-YXjrY_tH.js +1404 -0
  296. package/bundled-test-harness/assets/mini-card-chooser-test-DrllikHB.js +272 -0
  297. package/bundled-test-harness/assets/mini-file-chooser-test-BfqayhmI.js +201 -0
  298. package/bundled-test-harness/assets/mock-matrix-C7BrPS6S.js +2 -0
  299. package/bundled-test-harness/assets/mock-matrix-FjsXmU7-.js +15107 -0
  300. package/bundled-test-harness/assets/modal-BgaZavcs.js +322 -0
  301. package/bundled-test-harness/assets/model-cost-tier-test-BGg-sJML.js +174 -0
  302. package/bundled-test-harness/assets/model-file-extract-test-CjEBupY5.js +206 -0
  303. package/bundled-test-harness/assets/module-transpile-cache-test-XW6DDsmz.js +67 -0
  304. package/bundled-test-harness/assets/monaco-test-DkoRuFiQ.js +100 -0
  305. package/bundled-test-harness/assets/mp3-audio-def-test-v369NNsQ.js +133 -0
  306. package/bundled-test-harness/assets/multiple-stacks-test-CJpYPWdM.js +208 -0
  307. package/bundled-test-harness/assets/nested-query-field-render-test-CfDrBcUN.js +249 -0
  308. package/bundled-test-harness/assets/no-stacks-test-MmsJeLpz.js +48 -0
  309. package/bundled-test-harness/assets/number-field-test-A7B2r0M5.js +184 -0
  310. package/bundled-test-harness/assets/office-file-def-test-BNRvFmCB.js +263 -0
  311. package/bundled-test-harness/assets/office-metadata-extractor-test-zlDoEIEp.js +218 -0
  312. package/bundled-test-harness/assets/office-poster-capture-test-DdFEaOxR.js +203 -0
  313. package/bundled-test-harness/assets/ogg-audio-def-test-kk91BzQY.js +196 -0
  314. package/bundled-test-harness/assets/open-create-listing-modal-test-D1Dl1pov.js +131 -0
  315. package/bundled-test-harness/assets/open-image-in-new-tab-test-DyCmdMyO.js +52 -0
  316. package/bundled-test-harness/assets/open-secure-window-test-dz1vPudF.js +253 -0
  317. package/bundled-test-harness/assets/open-workspace-test-BvTcskzP.js +46 -0
  318. package/bundled-test-harness/assets/operation-lowering-test-omU66bkJ.js +2957 -0
  319. package/bundled-test-harness/assets/operations-invocation-test-BMj42rQe.js +523 -0
  320. package/bundled-test-harness/assets/operations-optimistic-test-KJLyzT8v.js +203 -0
  321. package/bundled-test-harness/assets/operations-query-test-J3HcnaoK.js +459 -0
  322. package/bundled-test-harness/assets/operations-store-reconciliation-test-CkbGBMBQ.js +406 -0
  323. package/bundled-test-harness/assets/operations-test-C7zXXpRW.js +2518 -0
  324. package/bundled-test-harness/assets/operator-mode-acceptance-test-BPolI_RD.js +1195 -0
  325. package/bundled-test-harness/assets/operator-mode-card-chooser-test-DjTQgizt.js +1036 -0
  326. package/bundled-test-harness/assets/operator-mode-links-test-DSEqy5Db.js +797 -0
  327. package/bundled-test-harness/assets/operator-mode-test-CB7BNDNE.js +696 -0
  328. package/bundled-test-harness/assets/operator-mode-ui-test-C1OhF1il.js +1045 -0
  329. package/bundled-test-harness/assets/overlay-D2rQi8lJ.js +427 -0
  330. package/bundled-test-harness/assets/overlay-menu-items-test-CPN31yBJ.js +331 -0
  331. package/bundled-test-harness/assets/overlays-B-qMEPhY.js +2 -0
  332. package/bundled-test-harness/assets/overlays-DSf2je0c.js +75 -0
  333. package/bundled-test-harness/assets/overlays-detached-element-test-C73nMXes.js +56 -0
  334. package/bundled-test-harness/assets/panel-DjrC7DxA.js +15124 -0
  335. package/bundled-test-harness/assets/past-sessions-test-BSIS2Hlq.js +321 -0
  336. package/bundled-test-harness/assets/patch-fields-test-Bp2IE0Jw.js +1014 -0
  337. package/bundled-test-harness/assets/patch-instance-test-DssuRGKP.js +348 -0
  338. package/bundled-test-harness/assets/pdf-file-def-test-Barj9ffD.js +111 -0
  339. package/bundled-test-harness/assets/pdf-metadata-extractor-test-B7KnXcIm.js +130 -0
  340. package/bundled-test-harness/assets/permission-checking-realm-test-BD4O0nen.js +306 -0
  341. package/bundled-test-harness/assets/persist-module-inspector-view-test-BIdbkdPr.js +60 -0
  342. package/bundled-test-harness/assets/persist-scroll-position-test-Bhb7wJiy.js +254 -0
  343. package/bundled-test-harness/assets/phone-number-field-test-C2yuCrXY.js +73 -0
  344. package/bundled-test-harness/assets/pill-menu-test-BIp91YXi.js +60 -0
  345. package/bundled-test-harness/assets/plate-CJq1veVA.js +41 -0
  346. package/bundled-test-harness/assets/plate-CwAvOUfL.js +2 -0
  347. package/bundled-test-harness/assets/player-Digk7omr.js +2 -0
  348. package/bundled-test-harness/assets/player-vsjosoN_.js +82 -0
  349. package/bundled-test-harness/assets/playground-B02e8uqB.js +58 -0
  350. package/bundled-test-harness/assets/plural-field-components-test-C1acuN-A.js +198 -0
  351. package/bundled-test-harness/assets/png-image-def-test-B9QeVo1f.js +266 -0
  352. package/bundled-test-harness/assets/policy-audit-confirmation-test-CeVquvc_.js +155 -0
  353. package/bundled-test-harness/assets/policy-scoped-search-test-SFPiIqR3.js +339 -0
  354. package/bundled-test-harness/assets/prerender-file-extract-test-HSJKAHyO.js +346 -0
  355. package/bundled-test-harness/assets/prerender-html-test-BTAcFCme.js +670 -0
  356. package/bundled-test-harness/assets/prerender-meta-test-Csyz2b21.js +614 -0
  357. package/bundled-test-harness/assets/prerender-module-test-DpTYAbmI.js +409 -0
  358. package/bundled-test-harness/assets/prerender-persistence-block-test-BhIt-7kK.js +124 -0
  359. package/bundled-test-harness/assets/prerender-pre-model-error-test-DxKPQKqx.js +61 -0
  360. package/bundled-test-harness/assets/prerender-serialize-cycle-test-C8V5YWQO.js +134 -0
  361. package/bundled-test-harness/assets/prerendered-html-read-test-Cq7JVGwg.js +191 -0
  362. package/bundled-test-harness/assets/pretui-components-test-Ducr9fLT.css +743 -0
  363. package/bundled-test-harness/assets/pretui-components-test-Hs0uyIUQ.js +992 -0
  364. package/bundled-test-harness/assets/pretui-primitives-CRs8NRm0.js +69 -0
  365. package/bundled-test-harness/assets/preview-format-test-cCqLrfdY.js +103 -0
  366. package/bundled-test-harness/assets/preview-test-BMqJSoR1.js +474 -0
  367. package/bundled-test-harness/assets/process-card-test-578tfDvr.js +94 -0
  368. package/bundled-test-harness/assets/profile-settings-modal-CVnNl7Yu.js +990 -0
  369. package/bundled-test-harness/assets/publish-realm-COoeWexp.js +82 -0
  370. package/bundled-test-harness/assets/publish-realm-test-a5nkx0Ov.js +210 -0
  371. package/bundled-test-harness/assets/query-field-barrier-test-qX3xVPfk.js +113 -0
  372. package/bundled-test-harness/assets/query-field-error-sentinel-test-V6JDPFLX.js +201 -0
  373. package/bundled-test-harness/assets/query-field-membership-status-test-CK7eDf-K.js +323 -0
  374. package/bundled-test-harness/assets/query-field-page-optin-test-B5YBHUvU.js +126 -0
  375. package/bundled-test-harness/assets/query-field-schema-test-D4SjOGlK.js +231 -0
  376. package/bundled-test-harness/assets/query-field-search-throttle-test-BVkm1-D8.js +154 -0
  377. package/bundled-test-harness/assets/query-field-stale-prerender-test-9g7hcD91.js +152 -0
  378. package/bundled-test-harness/assets/query-fields-test-CQYqhzpN.js +535 -0
  379. package/bundled-test-harness/assets/quick-look-test-CE0o6lJ4.js +139 -0
  380. package/bundled-test-harness/assets/read-card-for-ai-assistant-test-D0mJorwH.js +91 -0
  381. package/bundled-test-harness/assets/read-file-for-ai-assistant-test-B_F_2GEB.js +45 -0
  382. package/bundled-test-harness/assets/read-source-test-BgJV4B4F.js +67 -0
  383. package/bundled-test-harness/assets/read-text-file-test-DaeLzg4u.js +124 -0
  384. package/bundled-test-harness/assets/realm-C_a9su1j.js +2858 -0
  385. package/bundled-test-harness/assets/realm-api-keys-D5USFOoS.js +2 -0
  386. package/bundled-test-harness/assets/realm-api-keys-m_VOcixC.js +578 -0
  387. package/bundled-test-harness/assets/realm-api-keys-test-BVs7f5Dz.js +109 -0
  388. package/bundled-test-harness/assets/realm-api-keys-test-C_uZnTmq.js +588 -0
  389. package/bundled-test-harness/assets/realm-config-m5eccPW8.js +833 -0
  390. package/bundled-test-harness/assets/realm-config-policy-standing-test-Ber-IXpc.js +290 -0
  391. package/bundled-test-harness/assets/realm-config-routing-rule-edit-test-3Xqt5VlM.js +274 -0
  392. package/bundled-test-harness/assets/realm-config-settings-test-CkalhbDF.js +187 -0
  393. package/bundled-test-harness/assets/realm-field-test-B_PUoqnk.js +100 -0
  394. package/bundled-test-harness/assets/realm-indexing-test-8iLjeV_e.js +4380 -0
  395. package/bundled-test-harness/assets/realm-policy-fitted-test-Bptvra0U.js +206 -0
  396. package/bundled-test-harness/assets/realm-policy-test-DwG0qqXE.js +1141 -0
  397. package/bundled-test-harness/assets/realm-querying-test-Dvw26A6Q.js +1067 -0
  398. package/bundled-test-harness/assets/realm-server-form-agnostic-test-DrXQH0UP.js +96 -0
  399. package/bundled-test-harness/assets/realm-server-subscriber-test-Dkj23vQK.js +46 -0
  400. package/bundled-test-harness/assets/realm-service-info-test-CdRlDhj-.js +67 -0
  401. package/bundled-test-harness/assets/realm-test-DGYN48Qx.js +2364 -0
  402. package/bundled-test-harness/assets/realm-token-refresh-test-CEWATL9h.js +153 -0
  403. package/bundled-test-harness/assets/realm-url-tooltip-test-8ZjTNPuy.js +78 -0
  404. package/bundled-test-harness/assets/reasoning-test-BV49AYg2.js +221 -0
  405. package/bundled-test-harness/assets/recent-files-test-Dc6L6Dm4.js +450 -0
  406. package/bundled-test-harness/assets/reindex-realm-test-CFRSt39u.js +117 -0
  407. package/bundled-test-harness/assets/relationship-loading-state-test-FKbtOFUr.js +290 -0
  408. package/bundled-test-harness/assets/remix-card-test-CKGC_Sgq.js +58 -0
  409. package/bundled-test-harness/assets/rendered-markdown-DXiDN91F.js +292 -0
  410. package/bundled-test-harness/assets/rendered-markdown-test-n3MlXmmu.js +587 -0
  411. package/bundled-test-harness/assets/resident-instance-reuse-test-BjdhE6CM.js +82 -0
  412. package/bundled-test-harness/assets/result-tile-o6dtjgX4.js +144 -0
  413. package/bundled-test-harness/assets/rich-markdown-field-test-VXr6l20h.js +1647 -0
  414. package/bundled-test-harness/assets/room-message-test-BrjJ2wMs.js +484 -0
  415. package/bundled-test-harness/assets/run-P_7TsreC.js +4017 -0
  416. package/bundled-test-harness/assets/run-realm-code-DsBUf1si.js +2964 -0
  417. package/bundled-test-harness/assets/run-realm-code-test-cS0DzaKo.js +3844 -0
  418. package/bundled-test-harness/assets/sanitize-module-list-test-CvuOOiUY.js +85 -0
  419. package/bundled-test-harness/assets/save-card-skip-index-wait-test-fpJ1eq32.js +89 -0
  420. package/bundled-test-harness/assets/schema-editor-test-NkKjCgyf.js +785 -0
  421. package/bundled-test-harness/assets/schema-generation-test-Dmg3lWl7.js +28 -0
  422. package/bundled-test-harness/assets/scrolling-test-B0GNYGYc.js +412 -0
  423. package/bundled-test-harness/assets/search-adorn-test-CZebk7_y.js +136 -0
  424. package/bundled-test-harness/assets/search-and-choose-test-Bd4NZUup.js +154 -0
  425. package/bundled-test-harness/assets/search-correlation-id-test-DXKlEO55.js +139 -0
  426. package/bundled-test-harness/assets/search-entries-result-test-QQawA8Fm.js +234 -0
  427. package/bundled-test-harness/assets/search-entries-test-3DlqGPQq.js +1486 -0
  428. package/bundled-test-harness/assets/search-entries-tool-test-D1TvDE9D.js +504 -0
  429. package/bundled-test-harness/assets/search-google-images-test-DqsoQGr1.js +166 -0
  430. package/bundled-test-harness/assets/search-results-DGrNaPxh.js +266 -0
  431. package/bundled-test-harness/assets/search-results-test-CqVHYNRt.js +578 -0
  432. package/bundled-test-harness/assets/search-selection-menu-test-D6bIjKiH.js +108 -0
  433. package/bundled-test-harness/assets/search-sheet-files-test-Bf37TQXo.js +126 -0
  434. package/bundled-test-harness/assets/search-sheet-persistence-test-CV4_XdxR.js +131 -0
  435. package/bundled-test-harness/assets/search-test-Dlb-wg3a.js +2249 -0
  436. package/bundled-test-harness/assets/search-tool-test-BJLgVMoL.js +156 -0
  437. package/bundled-test-harness/assets/searchable-option-test-CcbfMqIL.js +322 -0
  438. package/bundled-test-harness/assets/searchable-search-doc-test-yH9fLGNS.js +1271 -0
  439. package/bundled-test-harness/assets/section-rail-CNFCebtT.js +113 -0
  440. package/bundled-test-harness/assets/section-rail-test-KNJAWWl6.js +256 -0
  441. package/bundled-test-harness/assets/secure-sign-in-Dyljp0Th.js +174 -0
  442. package/bundled-test-harness/assets/secure-sign-in-test-QnqNuTP3.js +373 -0
  443. package/bundled-test-harness/assets/segmented-control-DxJdoJ4Z.js +173 -0
  444. package/bundled-test-harness/assets/select-BiQTg2ts.js +175 -0
  445. package/bundled-test-harness/assets/send-ai-assistant-message-test-CAn7M2dZ.js +52 -0
  446. package/bundled-test-harness/assets/send-bot-trigger-event-test-qBu5E_jy.js +56 -0
  447. package/bundled-test-harness/assets/send-request-via-proxy-test-CLuwLBq_.js +380 -0
  448. package/bundled-test-harness/assets/sending-test-H0AaBSgi.js +659 -0
  449. package/bundled-test-harness/assets/serialization-rri-form-audit-test-hMJukiKt.js +136 -0
  450. package/bundled-test-harness/assets/serialization-test-W5e3wKbz.js +8758 -0
  451. package/bundled-test-harness/assets/set-user-system-card-test-CjgWLkNV.js +59 -0
  452. package/bundled-test-harness/assets/setup-CssMNvui.js +772 -0
  453. package/bundled-test-harness/assets/setup-D8YXvK-p.js +2 -0
  454. package/bundled-test-harness/assets/shared-link-target-reuse-test-D42UO8DC.js +207 -0
  455. package/bundled-test-harness/assets/show-card-test-CHEaS514.js +365 -0
  456. package/bundled-test-harness/assets/signed-capture-link-test-BgEu0F-S.js +132 -0
  457. package/bundled-test-harness/assets/single-stack-test-DYcu_v7Z.js +652 -0
  458. package/bundled-test-harness/assets/skills-test-ChmKhADX.js +648 -0
  459. package/bundled-test-harness/assets/skip-boot-index-guard-test-BzRIncDN.js +46 -0
  460. package/bundled-test-harness/assets/spec-test-BYvFR6Xb.js +1077 -0
  461. package/bundled-test-harness/assets/spinner-Bx9x55NA.js +49 -0
  462. package/bundled-test-harness/assets/src-C1hYFgVl.js +216 -0
  463. package/bundled-test-harness/assets/src-CIlLx7Lu.js +5 -0
  464. package/bundled-test-harness/assets/stick-to-bottom-resize-test-DMHsAG0v.js +56 -0
  465. package/bundled-test-harness/assets/store-add-test-D_9IHQjZ.js +50 -0
  466. package/bundled-test-harness/assets/store-module-rebuild-test-BRGZoLRV.js +454 -0
  467. package/bundled-test-harness/assets/store-search-test-3G8JHuj2.js +175 -0
  468. package/bundled-test-harness/assets/store-test-BiKKDqqW.js +3672 -0
  469. package/bundled-test-harness/assets/structured-theme-test-11TNsgUW.js +377 -0
  470. package/bundled-test-harness/assets/summarize-session-test-CwzD_ZbD.js +172 -0
  471. package/bundled-test-harness/assets/svg-image-def-test-zV6aMK9q.js +167 -0
  472. package/bundled-test-harness/assets/switch-submode-test-DQU2cP5_.js +168 -0
  473. package/bundled-test-harness/assets/sync-openrouter-models-test-xrXVaC2H.js +97 -0
  474. package/bundled-test-harness/assets/test-support-BGl3rthw.js +3 -0
  475. package/bundled-test-harness/assets/test-support-BcBv__98.js +99 -0
  476. package/bundled-test-harness/assets/tests-CmM9imwB.js +3598 -0
  477. package/bundled-test-harness/assets/text-file-def-test-Cyq78UFY.js +94 -0
  478. package/bundled-test-harness/assets/text-input-validator-test-DBj7TaM_.js +156 -0
  479. package/bundled-test-harness/assets/text-suggestion-test-C4XAqWqY.js +340 -0
  480. package/bundled-test-harness/assets/theme-card-test-dVNz4tgU.js +621 -0
  481. package/bundled-test-harness/assets/theme-dashboard-nav-test-DYSn5pqo.js +196 -0
  482. package/bundled-test-harness/assets/theme-scheme-island-test-C1WpkfEP.js +264 -0
  483. package/bundled-test-harness/assets/theme-scoped-css-parity-test-BVluppsE.js +176 -0
  484. package/bundled-test-harness/assets/titles-DCvAhECF.js +52 -0
  485. package/bundled-test-harness/assets/titles-ZPeArtS1.js +2 -0
  486. package/bundled-test-harness/assets/to-device-streaming-test-BJ4J1cXe.js +163 -0
  487. package/bundled-test-harness/assets/token-usage-test-WUf4r4fQ.js +160 -0
  488. package/bundled-test-harness/assets/tools-J_Knr_W6.js +774 -0
  489. package/bundled-test-harness/assets/tools-calling-test-CfqZX0Ed.js +200 -0
  490. package/bundled-test-harness/assets/tools-test-B4x58ZmI.js +1624 -0
  491. package/bundled-test-harness/assets/tools-test-Cvau5219.js +3204 -0
  492. package/bundled-test-harness/assets/tooltip-B0rEgyMW.css +66 -0
  493. package/bundled-test-harness/assets/tooltip-DvUMUgVX.js +195 -0
  494. package/bundled-test-harness/assets/transform-cards-test-CYQbZeD9.js +341 -0
  495. package/bundled-test-harness/assets/ts-file-def-preview-test-m39f8Zio.js +95 -0
  496. package/bundled-test-harness/assets/ts-file-def-test-xIcL5xWe.js +92 -0
  497. package/bundled-test-harness/assets/ttf-font-def-test-ClQ2SzFF.js +206 -0
  498. package/bundled-test-harness/assets/turn-settling-test-DZoL2mRT.js +160 -0
  499. package/bundled-test-harness/assets/turn-summary-Bmt7ZxTS.js +1039 -0
  500. package/bundled-test-harness/assets/unpublish-realm-test-0ToTJczx.js +102 -0
  501. package/bundled-test-harness/assets/update-room-skills-test-o_j8NOUV.js +240 -0
  502. package/bundled-test-harness/assets/use-ai-assistant-test-D7HFpxKJ.js +384 -0
  503. package/bundled-test-harness/assets/user-message-BAOt1hS3.js +262 -0
  504. package/bundled-test-harness/assets/validate-realm-test-e3xIbNLB.js +67 -0
  505. package/bundled-test-harness/assets/video-metadata-extractor-test-D8naLSlg.js +520 -0
  506. package/bundled-test-harness/assets/view-visually-test-BuhGau5E.js +335 -0
  507. package/bundled-test-harness/assets/virtual-network-reset-test-CgaFNGPi.js +96 -0
  508. package/bundled-test-harness/assets/wav-audio-def-test-CWG_UdCh.js +160 -0
  509. package/bundled-test-harness/assets/webp-image-def-test-sN4yw8Zu.js +226 -0
  510. package/bundled-test-harness/assets/workspace-0LfPqbYB.js +445 -0
  511. package/bundled-test-harness/assets/workspace-a11y-test-DQxYDRAP.js +197 -0
  512. package/bundled-test-harness/assets/workspace-actions-jGJSfl8M.js +588 -0
  513. package/bundled-test-harness/assets/workspace-behavior-test-BnF-bmBN.js +338 -0
  514. package/bundled-test-harness/assets/workspace-delete-multiple-test-D-rxPDuT.js +212 -0
  515. package/bundled-test-harness/assets/workspace-delete-summary-test-C2-Mve5R.js +63 -0
  516. package/bundled-test-harness/assets/workspace-hosting-test-BvDKdlOb.js +138 -0
  517. package/bundled-test-harness/assets/workspace-indexing-test-B34T3kqD.js +71 -0
  518. package/bundled-test-harness/assets/workspace-test-CJivgv-m.js +51 -0
  519. package/bundled-test-harness/assets/workspace-test-CuSRpPnQ.js +385 -0
  520. package/bundled-test-harness/assets/workspace-timestamp-labels-test-aWgjdbCp.js +68 -0
  521. package/bundled-test-harness/assets/workspace-unit-test-DHMUf2KT.js +122 -0
  522. package/bundled-test-harness/assets/write-binary-file-test-P-hVQuin.js +124 -0
  523. package/bundled-test-harness/assets/write-text-file-test-fXvJueDd.js +191 -0
  524. package/bundled-test-harness/assets/zip-archive-test-C2P5CUSR.js +285 -0
  525. package/bundled-test-harness/assets/zip-file-def-test-BfJZAmGt.js +164 -0
  526. package/bundled-test-harness/boxel-ui-checksum.txt +1 -1
  527. package/bundled-test-harness/index.html +48 -48
  528. package/bundled-test-harness/tests/index.html +50 -50
  529. package/bundled-types/boxel-ui/helpers/theme-scoped-css.ts +4 -0
  530. package/bundled-types/choreo/choreo.gts +58 -2
  531. package/bundled-types/choreo/compile.ts +5 -0
  532. package/bundled-types/choreo/layout-probe.ts +100 -0
  533. package/bundled-types/choreo/run.ts +99 -4
  534. package/bundled-types/host-app/components/operator-mode/dashboard/get-started.gts +152 -7
  535. package/bundled-types/host-app/components/operator-mode/dashboard/index.gts +2 -0
  536. package/bundled-types/host-app/components/operator-mode/dashboard/workspace.gts +5 -3
  537. package/bundled-types/host-app/components/operator-mode/dashboard-modals/workspace-modals.gts +5 -22
  538. package/bundled-types/host-app/components/operator-mode/host-submode/publishing-realm-popover.gts +1 -1
  539. package/bundled-types/host-app/components/operator-mode/host-submode.gts +111 -37
  540. package/bundled-types/host-app/components/operator-mode/motion/stack-motion.gts +92 -33
  541. package/bundled-types/host-app/components/operator-mode/publish-realm-modal.gts +1 -0
  542. package/bundled-types/host-app/components/operator-mode/stack-item.gts +2 -2
  543. package/bundled-types/host-app/components/operator-mode/stack.gts +36 -25
  544. package/bundled-types/host-app/components/operator-mode/submode-layout.gts +2 -2
  545. package/bundled-types/host-app/lib/modal-focus-trap.ts +33 -0
  546. package/bundled-types/host-app/lib/workspace-actions.ts +21 -0
  547. package/bundled-types/host-app/services/host-mode-service.ts +39 -0
  548. package/bundled-types/host-app/services/realm.ts +14 -0
  549. package/bundled-types/host-tests/helpers/dashboard.ts +67 -0
  550. package/package.json +1 -1
  551. package/bundled-test-harness/assets/account-switch-failed-test-FytUFiPO.js +0 -45
  552. package/bundled-test-harness/assets/adapter-DvmPwSZv.js +0 -2
  553. package/bundled-test-harness/assets/add-field-to-card-definition-tool-test-DN525jiY.js +0 -112
  554. package/bundled-test-harness/assets/ai-assistant-create-workspace-test-q3tKqVJQ.js +0 -130
  555. package/bundled-test-harness/assets/ai-assistant-panel-relogin-test-DgeXcCyi.js +0 -46
  556. package/bundled-test-harness/assets/ai-assistant-test-lDIGPKFP.js +0 -2223
  557. package/bundled-test-harness/assets/ai-function-generation-test-D5GbLyvL.js +0 -1176
  558. package/bundled-test-harness/assets/ai-module-creation-test-I3-j2beD.js +0 -151
  559. package/bundled-test-harness/assets/aibot-message-Dmsjifs6.js +0 -1312
  560. package/bundled-test-harness/assets/app-BS9_-DhN.js +0 -14146
  561. package/bundled-test-harness/assets/apply-markdown-edit-test-4zlwt0Db.js +0 -230
  562. package/bundled-test-harness/assets/ask-user-picker-Dr-0qpNr.js +0 -370
  563. package/bundled-test-harness/assets/ask-user-picker-test-633AFdmS.js +0 -39
  564. package/bundled-test-harness/assets/assistant-transcript-test-BgRnLvMg.js +0 -57
  565. package/bundled-test-harness/assets/audio-metadata-extractor-test-4xsQqL-0.js +0 -1176
  566. package/bundled-test-harness/assets/authed-fetch-test-663mT5_N.js +0 -73
  567. package/bundled-test-harness/assets/avif-image-def-test-h01BPIJy.js +0 -187
  568. package/bundled-test-harness/assets/basic-test-DiD6T-8Q.js +0 -139
  569. package/bundled-test-harness/assets/binary-upload-dedupe-test-CkjMPO_e.js +0 -308
  570. package/bundled-test-harness/assets/bot-registration-test-CFZHpwdj.js +0 -97
  571. package/bundled-test-harness/assets/box-test-C3pSy5ED.js +0 -50
  572. package/bundled-test-harness/assets/brand-guide-attachments-test-EoC_u7Vc.js +0 -84
  573. package/bundled-test-harness/assets/brand-guide-custom-css-test-Dn3fvblr.js +0 -196
  574. package/bundled-test-harness/assets/brand-guide-edit-test-NeiT3MyK.js +0 -140
  575. package/bundled-test-harness/assets/brand-logo-mark-field-test-C2A1EnBB.js +0 -86
  576. package/bundled-test-harness/assets/broken-link-template-test-CWn6V5zZ.js +0 -192
  577. package/bundled-test-harness/assets/bundled-base-modules-test-D7mLzpsw.js +0 -54
  578. package/bundled-test-harness/assets/bundled-base-oracle-test-I7xCId_k.js +0 -37
  579. package/bundled-test-harness/assets/buried-stack-item-scroll-test-DFBev0h-.js +0 -236
  580. package/bundled-test-harness/assets/button-BeSuhveJ.js +0 -207
  581. package/bundled-test-harness/assets/bxl-cyclic-graph-test-DPykwvvx.js +0 -47
  582. package/bundled-test-harness/assets/bxl-expression-test-LBWJiFb9.js +0 -250
  583. package/bundled-test-harness/assets/bxl-indexing-test-BuZmLk7y.js +0 -212
  584. package/bundled-test-harness/assets/bxl-platform-module-test-BNIvlkCM.js +0 -71
  585. package/bundled-test-harness/assets/can-invoke-test-t-bFIIeX.js +0 -455
  586. package/bundled-test-harness/assets/can-read-realm-test-2Q_MzRT9.js +0 -56
  587. package/bundled-test-harness/assets/cancel-indexing-job-test-QeYxEukn.js +0 -69
  588. package/bundled-test-harness/assets/capture-test-CJmJG8YR.js +0 -360
  589. package/bundled-test-harness/assets/card-api-test-B43I510H.js +0 -198
  590. package/bundled-test-harness/assets/card-basics-test-CBClzP2y.js +0 -5364
  591. package/bundled-test-harness/assets/card-chooser-paging-test-HEVzf6pR.js +0 -235
  592. package/bundled-test-harness/assets/card-chooser-test-GfjBRPFI.js +0 -393
  593. package/bundled-test-harness/assets/card-context-search-results-CoSr4EdS.js +0 -30
  594. package/bundled-test-harness/assets/card-context-search-results-test-BLMlZu9t.js +0 -184
  595. package/bundled-test-harness/assets/card-def-field-def-relationships-test-DEBOzKan.js +0 -562
  596. package/bundled-test-harness/assets/card-def-menu-items-test-88_h8o0D.js +0 -228
  597. package/bundled-test-harness/assets/card-delete-test-DKom1phy.js +0 -466
  598. package/bundled-test-harness/assets/card-error-awaiting-index-test-DEwgFZMP.js +0 -53
  599. package/bundled-test-harness/assets/card-error-r6_cXst9.js +0 -72
  600. package/bundled-test-harness/assets/card-info-thumbnail-picker-test-B7LiY15e.js +0 -219
  601. package/bundled-test-harness/assets/card-playground-test-CgyIJHui.js +0 -1491
  602. package/bundled-test-harness/assets/card-prerender-rPfzpIOU.js +0 -12939
  603. package/bundled-test-harness/assets/card-thunk-error-test-L0pvg4Ce.js +0 -48
  604. package/bundled-test-harness/assets/card-type-service-test-B2dhqxSD.js +0 -161
  605. package/bundled-test-harness/assets/check-correctness-test-DgqaLlCW.js +0 -1093
  606. package/bundled-test-harness/assets/check-domain-availability-test-B0hJHY5l.js +0 -98
  607. package/bundled-test-harness/assets/chip-D01NW3WH.js +0 -44
  608. package/bundled-test-harness/assets/choreo-D2Jl79RU.js +0 -1019
  609. package/bundled-test-harness/assets/choreo-_E8SOEe-.js +0 -2
  610. package/bundled-test-harness/assets/choreo-feature-reel-test-WLjsZDmS.js +0 -155
  611. package/bundled-test-harness/assets/choreo-gallery-build-order-test-6jnS8PsS.js +0 -436
  612. package/bundled-test-harness/assets/choreo-gallery-compositor-test-CbUZsVB6.js +0 -399
  613. package/bundled-test-harness/assets/choreo-gallery-cover-test-CbvAStgk.js +0 -214
  614. package/bundled-test-harness/assets/choreo-gallery-crossing-stage-test-tdjvUSa6.js +0 -133
  615. package/bundled-test-harness/assets/choreo-gallery-demos-alive-test-CsnM3hQK.js +0 -42
  616. package/bundled-test-harness/assets/choreo-gallery-drift-test-DG2LQTa7.js +0 -620
  617. package/bundled-test-harness/assets/choreo-gallery-escort-test-mn3-qXP1.js +0 -187
  618. package/bundled-test-harness/assets/choreo-gallery-films-test-BuktaC0D.js +0 -140
  619. package/bundled-test-harness/assets/choreo-gallery-filter-test-Dd-zpps0.js +0 -46
  620. package/bundled-test-harness/assets/choreo-gallery-fold-test-CWc1ijGc.js +0 -180
  621. package/bundled-test-harness/assets/choreo-gallery-guide-pages-test-tk2QmYPU.js +0 -114
  622. package/bundled-test-harness/assets/choreo-gallery-guides-test-DVbf1zM4.js +0 -321
  623. package/bundled-test-harness/assets/choreo-gallery-hang-test-B7EFp2dx.js +0 -426
  624. package/bundled-test-harness/assets/choreo-gallery-highlight-test-BFgbdesP.js +0 -60
  625. package/bundled-test-harness/assets/choreo-gallery-inline-edit-test-DJb8FC5R.js +0 -370
  626. package/bundled-test-harness/assets/choreo-gallery-interruption-test-DWyMXo5D.js +0 -176
  627. package/bundled-test-harness/assets/choreo-gallery-lone-stack-test-D3b8LsJ6.js +0 -104
  628. package/bundled-test-harness/assets/choreo-gallery-navigation-test-CjjU6Rvn.js +0 -193
  629. package/bundled-test-harness/assets/choreo-gallery-playhead-transport-test-Le_h3QWU.js +0 -111
  630. package/bundled-test-harness/assets/choreo-gallery-poplayout-subtree-test-Cp-DlWj4.js +0 -127
  631. package/bundled-test-harness/assets/choreo-gallery-presence-modes-test-DayS4GCJ.js +0 -100
  632. package/bundled-test-harness/assets/choreo-gallery-presentation-test-DeAfuFS7.js +0 -157
  633. package/bundled-test-harness/assets/choreo-gallery-reduced-motion-test-BgPWpggq.js +0 -145
  634. package/bundled-test-harness/assets/choreo-gallery-sheet-standalone-test-PzyoMNYv.js +0 -89
  635. package/bundled-test-harness/assets/choreo-gallery-sheet-test-CxaiNBkL.js +0 -48
  636. package/bundled-test-harness/assets/choreo-gallery-site-test-6xtSntS5.js +0 -237
  637. package/bundled-test-harness/assets/choreo-gallery-stage-E6Q5r-zU.js +0 -256
  638. package/bundled-test-harness/assets/choreo-gallery-stage-keyboard-test-C7aWMr9a.js +0 -102
  639. package/bundled-test-harness/assets/choreo-gallery-stages-test-CDWWgC61.js +0 -35
  640. package/bundled-test-harness/assets/choreo-gallery-subdivision-test-Bkp15XJv.js +0 -138
  641. package/bundled-test-harness/assets/choreo-gallery-table-plan-test-CcGRi_3O.js +0 -144
  642. package/bundled-test-harness/assets/choreo-gallery-theater-test-Qph5pLT_.js +0 -252
  643. package/bundled-test-harness/assets/choreo-gallery-tuning-test-C4DhFLVA.js +0 -95
  644. package/bundled-test-harness/assets/choreo-gallery-widget-room-test-LK493r1M.js +0 -88
  645. package/bundled-test-harness/assets/choreo-gallery-wires-test-B7SeUCc8.js +0 -148
  646. package/bundled-test-harness/assets/client-telemetry-test-DGmHzAFx.js +0 -340
  647. package/bundled-test-harness/assets/clip-BpYQPVz_.js +0 -2
  648. package/bundled-test-harness/assets/clip-CNaYbIwL.js +0 -92
  649. package/bundled-test-harness/assets/code-block-Cp2CJo5-.js +0 -502
  650. package/bundled-test-harness/assets/code-ref-test-C8JBHDb-.js +0 -163
  651. package/bundled-test-harness/assets/code-submode-availability-test-CzG1Tv6L.js +0 -198
  652. package/bundled-test-harness/assets/code-submode-test-BclVWjm5.js +0 -1839
  653. package/bundled-test-harness/assets/codeblocks-test-CmQlyxN7.js +0 -418
  654. package/bundled-test-harness/assets/codemirror-editor-test-B74H_yn8.js +0 -1512
  655. package/bundled-test-harness/assets/codemirror-embed-toolbar-test-Bz6VEysU.js +0 -366
  656. package/bundled-test-harness/assets/color-field-test-DMCPQKIP.js +0 -212
  657. package/bundled-test-harness/assets/compaction-test-saQCLBrQ.js +0 -150
  658. package/bundled-test-harness/assets/computed-test-C05HliJC.js +0 -1320
  659. package/bundled-test-harness/assets/container-Cqcwrd-m.js +0 -10857
  660. package/bundled-test-harness/assets/container-h3Wc26qn.css +0 -5097
  661. package/bundled-test-harness/assets/content-preview-components-test-DZPj4_CU.js +0 -462
  662. package/bundled-test-harness/assets/copy-and-edit-test-DiXTQNTF.js +0 -292
  663. package/bundled-test-harness/assets/copy-card-test-ys7GquUY.js +0 -218
  664. package/bundled-test-harness/assets/copy-file-to-realm-test-Gn0Wn4vT.js +0 -148
  665. package/bundled-test-harness/assets/copy-source-test-BTLrOmPm.js +0 -56
  666. package/bundled-test-harness/assets/create-file-test-BCeIW-Rt.js +0 -464
  667. package/bundled-test-harness/assets/create-file-test-DbHQ5JsS.js +0 -1086
  668. package/bundled-test-harness/assets/create-listing-modal-test-CeHc4ter.js +0 -273
  669. package/bundled-test-harness/assets/create-listing-pr-request-test-DXbJNfMh.js +0 -117
  670. package/bundled-test-harness/assets/create-spec-test-BDIZoyHT.js +0 -256
  671. package/bundled-test-harness/assets/create-submission-workflow-test-Bix5J-3A.js +0 -132
  672. package/bundled-test-harness/assets/create-workspace-test-BmNnLHwC.js +0 -104
  673. package/bundled-test-harness/assets/credential-fields-test-NK1F4QWn.js +0 -200
  674. package/bundled-test-harness/assets/csv-file-def-test-BSfs4TTP.js +0 -102
  675. package/bundled-test-harness/assets/dashboard-C4T7ffKY.js +0 -3576
  676. package/bundled-test-harness/assets/dashboard-CFeHuP5-.js +0 -81
  677. package/bundled-test-harness/assets/dashboard-DQlpW-ux.css +0 -2392
  678. package/bundled-test-harness/assets/dashboard-add-workspace-test--rr6objf.js +0 -50
  679. package/bundled-test-harness/assets/dashboard-agents-test-D1y8H4xH.js +0 -334
  680. package/bundled-test-harness/assets/dashboard-archive-test-bN4EQaXv.js +0 -128
  681. package/bundled-test-harness/assets/dashboard-delete-test-BvsASb8B.js +0 -163
  682. package/bundled-test-harness/assets/dashboard-duplicate-offer-test-DEsd5ZzZ.js +0 -71
  683. package/bundled-test-harness/assets/dashboard-duplicate-test-BnR0sTgB.js +0 -222
  684. package/bundled-test-harness/assets/dashboard-get-started-test-DG4uUXLv.js +0 -246
  685. package/bundled-test-harness/assets/dashboard-pinned-cards-test-AoGGVRAS.js +0 -220
  686. package/bundled-test-harness/assets/dashboard-reindex-test-BN9a96Xp.js +0 -115
  687. package/bundled-test-harness/assets/dashboard-section-rail-test-B3OT9V2T.js +0 -169
  688. package/bundled-test-harness/assets/dashboard-state-test-BY0Zqrmj.js +0 -162
  689. package/bundled-test-harness/assets/dashboard-test-C13oNpWt.js +0 -545
  690. package/bundled-test-harness/assets/dashboard-unreachable-notice-test-DZIV4x5j.js +0 -62
  691. package/bundled-test-harness/assets/dashboard-workspace-test-CBnOQViI.js +0 -537
  692. package/bundled-test-harness/assets/dashboard-workspaces-section-test-KU8ZVOYp.js +0 -396
  693. package/bundled-test-harness/assets/data-file-def-preview-test-CI5gcdtK.js +0 -155
  694. package/bundled-test-harness/assets/date-time-fields-test-D2CpR_Pb.js +0 -359
  695. package/bundled-test-harness/assets/debug-message-test-Df1kHesw.js +0 -117
  696. package/bundled-test-harness/assets/declared-captures-test-hQ43zuox.js +0 -879
  697. package/bundled-test-harness/assets/delete-workspace-test-BhfMKsix.js +0 -102
  698. package/bundled-test-harness/assets/diffing-test-CHRh55mC.js +0 -210
  699. package/bundled-test-harness/assets/download-file-to-realm-test-CC1HURCi.js +0 -119
  700. package/bundled-test-harness/assets/editor-test-DkeCv28f.js +0 -688
  701. package/bundled-test-harness/assets/edits-BSJqtUXM.js +0 -651
  702. package/bundled-test-harness/assets/email-field-test-DihK0suO.js +0 -75
  703. package/bundled-test-harness/assets/enum-field-test-Gja3bzt5.js +0 -935
  704. package/bundled-test-harness/assets/error-display-test-GhYZu7cp.js +0 -343
  705. package/bundled-test-harness/assets/evaluate-module-test-D_t4CiUq.js +0 -91
  706. package/bundled-test-harness/assets/execute-atomic-operations-test-xtou8Zeg.js +0 -113
  707. package/bundled-test-harness/assets/externals-B02-sD_L.js +0 -4393
  708. package/bundled-test-harness/assets/fallback-banner-live-delete-test-DtxzNXdE.js +0 -207
  709. package/bundled-test-harness/assets/fallback-banner-test-BfmiQ_68.js +0 -53
  710. package/bundled-test-harness/assets/fallback-banner-test-DLtTdmvn.js +0 -225
  711. package/bundled-test-harness/assets/fallback-models-test-BxNJxhfd.js +0 -161
  712. package/bundled-test-harness/assets/fetch-card-json-test-DofKbzvC.js +0 -61
  713. package/bundled-test-harness/assets/field-configuration-test-SUoPaXWy.js +0 -551
  714. package/bundled-test-harness/assets/field-markdown-domain-test-BwtR0dPP.js +0 -616
  715. package/bundled-test-harness/assets/field-markdown-oversize-test-D8UJcBc3.js +0 -88
  716. package/bundled-test-harness/assets/field-markdown-primitives-test-D5_ZdoDO.js +0 -365
  717. package/bundled-test-harness/assets/field-markdown-specialized-test-Dpd5hs04.js +0 -534
  718. package/bundled-test-harness/assets/field-playground-test-CzhYzKGv.js +0 -894
  719. package/bundled-test-harness/assets/field-support-predicates-test-BSvVOFth.js +0 -167
  720. package/bundled-test-harness/assets/file-attachment-test-fM-yFedm.js +0 -796
  721. package/bundled-test-harness/assets/file-chooser-panel-test-CKj8YTdY.js +0 -153
  722. package/bundled-test-harness/assets/file-chooser-test-Bs8jFXqa.js +0 -504
  723. package/bundled-test-harness/assets/file-def-format-templates-test-CxrRoWoD.js +0 -380
  724. package/bundled-test-harness/assets/file-def-live-reload-test-X_8YEkve.js +0 -124
  725. package/bundled-test-harness/assets/file-def-menu-items-test-Dx879o_o.js +0 -138
  726. package/bundled-test-harness/assets/file-def-navigation-test-MMI_EEO1.js +0 -109
  727. package/bundled-test-harness/assets/file-def-serialization-test-B5lguBQD.js +0 -89
  728. package/bundled-test-harness/assets/file-def-test-Di9QWcrj.js +0 -216
  729. package/bundled-test-harness/assets/file-preview-live-reload-test-aqx93A7c.js +0 -310
  730. package/bundled-test-harness/assets/file-resource-primitives-test-a5abpcSB.js +0 -255
  731. package/bundled-test-harness/assets/file-tree-from-index-test-CnruGxJ8.js +0 -96
  732. package/bundled-test-harness/assets/file-tree-test-BCyWDdSE.js +0 -851
  733. package/bundled-test-harness/assets/file-view-model-test-BfpLa01Y.js +0 -346
  734. package/bundled-test-harness/assets/filedef-export-shape-test-CQ9XbrzS.js +0 -61
  735. package/bundled-test-harness/assets/film-CL1zj_bJ.js +0 -2
  736. package/bundled-test-harness/assets/film-Dq_quZ31.js +0 -13
  737. package/bundled-test-harness/assets/film-xbkQa060.js +0 -4074
  738. package/bundled-test-harness/assets/flac-audio-def-test-BmVp9dMx.js +0 -143
  739. package/bundled-test-harness/assets/focus-Dm4wkM72.js +0 -306
  740. package/bundled-test-harness/assets/font-metadata-extractor-test-OWEh9_MS.js +0 -415
  741. package/bundled-test-harness/assets/formatted-aibot-message-test-BpHsWpuV.js +0 -109
  742. package/bundled-test-harness/assets/formatted-user-message-test-DZW5TAr0.js +0 -43
  743. package/bundled-test-harness/assets/freestyle-test-D_uaPU_3.js +0 -17
  744. package/bundled-test-harness/assets/full-reindex-realm-test-C6vHL5kC.js +0 -101
  745. package/bundled-test-harness/assets/garbage-collection-test-D-Ao4t2n.js +0 -403
  746. package/bundled-test-harness/assets/general-test-PSGI8W0z.js +0 -923
  747. package/bundled-test-harness/assets/generate-example-cards-one-shot-test-J-m-0E6W.js +0 -65
  748. package/bundled-test-harness/assets/generic-file-def-preview-test-BAsOhTYU.js +0 -71
  749. package/bundled-test-harness/assets/get-available-realm-identifiers-test-D5PBOr97.js +0 -47
  750. package/bundled-test-harness/assets/get-catalog-realm-identifiers-test-NM9UURHE.js +0 -47
  751. package/bundled-test-harness/assets/get-default-writable-realm-test-BxXc9a3J.js +0 -54
  752. package/bundled-test-harness/assets/get-published-realms-test-C8TJEc4-.js +0 -71
  753. package/bundled-test-harness/assets/get-realm-of-resource-identifier-test-Dt8CB6lS.js +0 -54
  754. package/bundled-test-harness/assets/get-relationship-membership-state-test-9_8x3myJ.js +0 -1308
  755. package/bundled-test-harness/assets/get-user-system-card-test-k0UO-uba.js +0 -67
  756. package/bundled-test-harness/assets/gif-image-def-test-BWrqPGDX.js +0 -188
  757. package/bundled-test-harness/assets/glimmer-motion-and-choreo-in-cards-test-BgG8QI9E.js +0 -160
  758. package/bundled-test-harness/assets/glimmer-motion-and-choreo-test-BKOvNyCN.js +0 -74
  759. package/bundled-test-harness/assets/gts-file-def-test-BCRHwDeZ.js +0 -100
  760. package/bundled-test-harness/assets/head-format-preview-test-DnfUhniI.js +0 -158
  761. package/bundled-test-harness/assets/helpers-DklkegO_.js +0 -5
  762. package/bundled-test-harness/assets/host-mode-service-vOfN0smp.js +0 -232
  763. package/bundled-test-harness/assets/host-mode-test-CCCJFz6_.js +0 -831
  764. package/bundled-test-harness/assets/host-submode-test-CtCfbuPA.js +0 -1342
  765. package/bundled-test-harness/assets/html-component-test-CWyhb5ZX.js +0 -65
  766. package/bundled-test-harness/assets/html-def-test-Cb8C2lUx.js +0 -160
  767. package/bundled-test-harness/assets/html-meta-extractor-test-BHT9Rtir.js +0 -60
  768. package/bundled-test-harness/assets/hydratable-card-test-DpgpdesD.js +0 -426
  769. package/bundled-test-harness/assets/icon-button-ABCGVF3C.js +0 -67
  770. package/bundled-test-harness/assets/image-metadata-extractor-test-ClhPTouq.js +0 -1109
  771. package/bundled-test-harness/assets/index-changes-test-CgnVr3LH.js +0 -367
  772. package/bundled-test-harness/assets/index-query-engine-test-CQTwju5_.js +0 -2593
  773. package/bundled-test-harness/assets/index-writer-test-IoVOoZT2.js +0 -3040
  774. package/bundled-test-harness/assets/inspector-test-BN2Ieb77.js +0 -2058
  775. package/bundled-test-harness/assets/instance-filter-matcher-test-Bq-_Sy89.js +0 -788
  776. package/bundled-test-harness/assets/instantiate-card-test-DEeDTzFV.js +0 -164
  777. package/bundled-test-harness/assets/interact-submode-creation-and-permissions-test-DP6kOyJS.js +0 -475
  778. package/bundled-test-harness/assets/interact-submode-setup-B0_cHqH-.js +0 -566
  779. package/bundled-test-harness/assets/invalidate-realm-identifiers-test-9uUD91Pw.js +0 -99
  780. package/bundled-test-harness/assets/invite-user-to-room-test-CcDA45Ac.js +0 -142
  781. package/bundled-test-harness/assets/invoke-card-operation-test-DmUtgueM.js +0 -333
  782. package/bundled-test-harness/assets/isolated-render-test-B2eXNHu6.js +0 -51
  783. package/bundled-test-harness/assets/job-scoped-doc-cache-test-DF9D7cOc.js +0 -181
  784. package/bundled-test-harness/assets/job-scoped-instance-residency-test-CSS8xUU5.js +0 -103
  785. package/bundled-test-harness/assets/jpg-image-def-test-voECMTht.js +0 -697
  786. package/bundled-test-harness/assets/json-file-def-test-8Y4KLjUC.js +0 -95
  787. package/bundled-test-harness/assets/key-notices-badge-test-d1mYqx0e.js +0 -155
  788. package/bundled-test-harness/assets/key-readiness-test-BtCg7PCk.js +0 -190
  789. package/bundled-test-harness/assets/linksto-broken-link-placeholder-test-CyCMbJnN.js +0 -398
  790. package/bundled-test-harness/assets/linksto-error-sentinel-test-BDW572-v.js +0 -238
  791. package/bundled-test-harness/assets/linksto-many-broken-link-placeholder-test-B4wM97hD.js +0 -354
  792. package/bundled-test-harness/assets/linksto-many-per-slot-access-test-BhJmtJ0_.js +0 -303
  793. package/bundled-test-harness/assets/linksto-sentinel-reload-test-BpBQ5V_i.js +0 -197
  794. package/bundled-test-harness/assets/linksto-sentinel-roundtrip-test-pkBBl4e9.js +0 -260
  795. package/bundled-test-harness/assets/linksto-singular-js-access-contract-test-Bb6wjUdD.js +0 -196
  796. package/bundled-test-harness/assets/lint-and-fix-test-CcMLn-co.js +0 -51
  797. package/bundled-test-harness/assets/live-test-AyBnq7BX.js +0 -2
  798. package/bundled-test-harness/assets/live-test-CgnAcIDw.js +0 -100
  799. package/bundled-test-harness/assets/load-default-skills-test-BIOwtx0Y.js +0 -74
  800. package/bundled-test-harness/assets/loader-parallel-prefetch-test-D5_oRSER.js +0 -257
  801. package/bundled-test-harness/assets/loader-test-DSc_jR1c.js +0 -482
  802. package/bundled-test-harness/assets/loading-test-8pldx7S-.js +0 -63
  803. package/bundled-test-harness/assets/m4a-audio-def-test-BDI5apzM.js +0 -190
  804. package/bundled-test-harness/assets/main-5kHyCkdm.js +0 -5
  805. package/bundled-test-harness/assets/markdown-embed-chooser-modal-test-Wud0s7WZ.js +0 -470
  806. package/bundled-test-harness/assets/markdown-embed-chooser-test-DVzzS-0C.js +0 -334
  807. package/bundled-test-harness/assets/markdown-embed-preview-pane-test-B5W_iqsi.js +0 -447
  808. package/bundled-test-harness/assets/markdown-embed-preview-test-CZF_s0fB.js +0 -368
  809. package/bundled-test-harness/assets/markdown-fallback-test-fT6BS4W7.js +0 -316
  810. package/bundled-test-harness/assets/markdown-file-def-test-B1aTzazR.js +0 -380
  811. package/bundled-test-harness/assets/markdown-helpers-test-gNKZf7Mw.js +0 -188
  812. package/bundled-test-harness/assets/markdown-highlighting-test-Du5_CQmD.js +0 -244
  813. package/bundled-test-harness/assets/markdown-preview-h-_aJhRc.js +0 -72
  814. package/bundled-test-harness/assets/markdown-preview-test-DJvoVsXw.js +0 -238
  815. package/bundled-test-harness/assets/markdown-skill-frontmatter-test-VwJi3Paj.js +0 -146
  816. package/bundled-test-harness/assets/markdown-skill-search-test-ysCdf0xM.js +0 -80
  817. package/bundled-test-harness/assets/matrix-service-account-switch-sessions-test-K2JuMy36.js +0 -63
  818. package/bundled-test-harness/assets/matrix-service-boot-assembly-test-CkdL_-os.js +0 -300
  819. package/bundled-test-harness/assets/matrix-service-personal-realm-test-Dy1DultK.js +0 -125
  820. package/bundled-test-harness/assets/matrix-service-realm-servers-test-DHDDKuEg.js +0 -55
  821. package/bundled-test-harness/assets/matrix-service-realms-list-updated-test-DcTbZpMl.js +0 -132
  822. package/bundled-test-harness/assets/matrix-service-relogin-test-D3NQktoa.js +0 -59
  823. package/bundled-test-harness/assets/matrix-service-sliding-sync-test-6CAflWOA.js +0 -35
  824. package/bundled-test-harness/assets/menu-kUSaJIPq.js +0 -3562
  825. package/bundled-test-harness/assets/message-service-subscription-test-DaQdgDWi.js +0 -110
  826. package/bundled-test-harness/assets/message-service-test-BsGEgM_m.js +0 -144
  827. package/bundled-test-harness/assets/message-tool-test-BB_4kw1V.js +0 -33
  828. package/bundled-test-harness/assets/midi-audio-def-test-BbbkFjqf.js +0 -182
  829. package/bundled-test-harness/assets/migrate-skill-test-X9xImDuq.js +0 -161
  830. package/bundled-test-harness/assets/mini-AwF31elJ.js +0 -1404
  831. package/bundled-test-harness/assets/mini-card-chooser-test-BZtrEiWu.js +0 -272
  832. package/bundled-test-harness/assets/mini-file-chooser-test-MIHW3kCI.js +0 -201
  833. package/bundled-test-harness/assets/mock-matrix-Dd8k0DNa.js +0 -15107
  834. package/bundled-test-harness/assets/mock-matrix-DhPN_34j.js +0 -2
  835. package/bundled-test-harness/assets/modal-LTh3_oHK.js +0 -322
  836. package/bundled-test-harness/assets/model-cost-tier-test-h1IkU9mp.js +0 -174
  837. package/bundled-test-harness/assets/model-file-extract-test-ntSo0wZF.js +0 -206
  838. package/bundled-test-harness/assets/module-transpile-cache-test-CDeRaaeP.js +0 -67
  839. package/bundled-test-harness/assets/monaco-test-C0Fa744D.js +0 -100
  840. package/bundled-test-harness/assets/mp3-audio-def-test-B4j4qR9H.js +0 -133
  841. package/bundled-test-harness/assets/multiple-stacks-test-BhA25ywL.js +0 -208
  842. package/bundled-test-harness/assets/nested-query-field-render-test-S9Y8YNKB.js +0 -249
  843. package/bundled-test-harness/assets/no-stacks-test-B7VciWyg.js +0 -48
  844. package/bundled-test-harness/assets/number-field-test-CS74lDPN.js +0 -184
  845. package/bundled-test-harness/assets/office-file-def-test-2cKc1pmd.js +0 -263
  846. package/bundled-test-harness/assets/office-metadata-extractor-test-DC8Fo-OW.js +0 -218
  847. package/bundled-test-harness/assets/office-poster-capture-test-Ba0_5UrT.js +0 -203
  848. package/bundled-test-harness/assets/ogg-audio-def-test-CIPQ1d4w.js +0 -196
  849. package/bundled-test-harness/assets/open-create-listing-modal-test-bmQkY5Zl.js +0 -131
  850. package/bundled-test-harness/assets/open-image-in-new-tab-test-DBD7_vMH.js +0 -52
  851. package/bundled-test-harness/assets/open-secure-window-test-BgeuYAqz.js +0 -253
  852. package/bundled-test-harness/assets/open-workspace-test-DRHGljV0.js +0 -46
  853. package/bundled-test-harness/assets/operation-lowering-test-CH1c0pSH.js +0 -2957
  854. package/bundled-test-harness/assets/operations-invocation-test-B1YkCLrv.js +0 -523
  855. package/bundled-test-harness/assets/operations-optimistic-test-DAbtOwsC.js +0 -203
  856. package/bundled-test-harness/assets/operations-query-test-9p1ZIDe-.js +0 -459
  857. package/bundled-test-harness/assets/operations-store-reconciliation-test-D0EQh3w2.js +0 -406
  858. package/bundled-test-harness/assets/operations-test-BQhlrfe3.js +0 -2518
  859. package/bundled-test-harness/assets/operator-mode-acceptance-test-DtHnonEb.js +0 -1195
  860. package/bundled-test-harness/assets/operator-mode-card-chooser-test-DQUxZxaq.js +0 -1036
  861. package/bundled-test-harness/assets/operator-mode-links-test-BJ26HllS.js +0 -797
  862. package/bundled-test-harness/assets/operator-mode-test-DIPDI0qt.js +0 -696
  863. package/bundled-test-harness/assets/operator-mode-ui-test-CfA-fAh4.js +0 -1045
  864. package/bundled-test-harness/assets/overlay-DecPh3nt.js +0 -123
  865. package/bundled-test-harness/assets/overlay-menu-items-test-C6XqjLtu.js +0 -331
  866. package/bundled-test-harness/assets/overlays-Ctp8ePzZ.js +0 -75
  867. package/bundled-test-harness/assets/overlays-CzWpSg5T.js +0 -2
  868. package/bundled-test-harness/assets/overlays-detached-element-test-DvL_8Bb5.js +0 -56
  869. package/bundled-test-harness/assets/panel-CImumikB.js +0 -15124
  870. package/bundled-test-harness/assets/past-sessions-test-N6riGN_I.js +0 -321
  871. package/bundled-test-harness/assets/patch-fields-test-D30_-KwQ.js +0 -1014
  872. package/bundled-test-harness/assets/patch-instance-test-C5rGscZq.js +0 -348
  873. package/bundled-test-harness/assets/pdf-file-def-test-DtiqGRvZ.js +0 -111
  874. package/bundled-test-harness/assets/pdf-metadata-extractor-test-FU02KmdV.js +0 -130
  875. package/bundled-test-harness/assets/permission-checking-realm-test-DqdNJDwU.js +0 -306
  876. package/bundled-test-harness/assets/persist-module-inspector-view-test-BHOAgPVy.js +0 -60
  877. package/bundled-test-harness/assets/persist-scroll-position-test-qtmS518r.js +0 -254
  878. package/bundled-test-harness/assets/phone-number-field-test-DhdaM7uL.js +0 -73
  879. package/bundled-test-harness/assets/pill-menu-test-C9Mrrepl.js +0 -60
  880. package/bundled-test-harness/assets/plate-9n-sXyCw.js +0 -41
  881. package/bundled-test-harness/assets/plate-BnZcAk-_.js +0 -2
  882. package/bundled-test-harness/assets/player-Cu5b4LEJ.js +0 -82
  883. package/bundled-test-harness/assets/player-unk2mkxV.js +0 -2
  884. package/bundled-test-harness/assets/playground-BwA8wFGK.js +0 -58
  885. package/bundled-test-harness/assets/plural-field-components-test-CFNQKETg.js +0 -198
  886. package/bundled-test-harness/assets/png-image-def-test-DG5Vhlqb.js +0 -266
  887. package/bundled-test-harness/assets/policy-audit-confirmation-test-yfKU47LR.js +0 -155
  888. package/bundled-test-harness/assets/policy-scoped-search-test-BjQRDYqR.js +0 -339
  889. package/bundled-test-harness/assets/prerender-file-extract-test-CEU4SaAZ.js +0 -346
  890. package/bundled-test-harness/assets/prerender-html-test-CGB3ClCS.js +0 -670
  891. package/bundled-test-harness/assets/prerender-meta-test-xqc4fW_0.js +0 -614
  892. package/bundled-test-harness/assets/prerender-module-test-CI1TmZw-.js +0 -409
  893. package/bundled-test-harness/assets/prerender-persistence-block-test-Da0dJO_N.js +0 -124
  894. package/bundled-test-harness/assets/prerender-pre-model-error-test-BVLyhk8R.js +0 -61
  895. package/bundled-test-harness/assets/prerender-serialize-cycle-test-glJFfxHU.js +0 -134
  896. package/bundled-test-harness/assets/prerendered-html-read-test-Mp4L0VHQ.js +0 -191
  897. package/bundled-test-harness/assets/pretui-components-test-BBpA9UnA.js +0 -991
  898. package/bundled-test-harness/assets/pretui-components-test-BqFq7rw_.css +0 -730
  899. package/bundled-test-harness/assets/preview-format-test-C55Bwcur.js +0 -103
  900. package/bundled-test-harness/assets/preview-test-CTAhRGU8.js +0 -474
  901. package/bundled-test-harness/assets/process-card-test-UjqpuxB7.js +0 -94
  902. package/bundled-test-harness/assets/profile-settings-modal-C8bCgTMK.js +0 -989
  903. package/bundled-test-harness/assets/publish-realm-ixUB4FPK.js +0 -82
  904. package/bundled-test-harness/assets/publish-realm-test-CrrsdL4W.js +0 -210
  905. package/bundled-test-harness/assets/query-field-barrier-test-DjivFE93.js +0 -113
  906. package/bundled-test-harness/assets/query-field-error-sentinel-test-0HwnV4Mw.js +0 -201
  907. package/bundled-test-harness/assets/query-field-membership-status-test-C8yTTBkc.js +0 -323
  908. package/bundled-test-harness/assets/query-field-page-optin-test-D4l_GcII.js +0 -126
  909. package/bundled-test-harness/assets/query-field-schema-test-DDbcNNm5.js +0 -231
  910. package/bundled-test-harness/assets/query-field-search-throttle-test-CXp50Ax0.js +0 -154
  911. package/bundled-test-harness/assets/query-field-stale-prerender-test-DErzt-Cv.js +0 -152
  912. package/bundled-test-harness/assets/query-fields-test-Dz67fdSl.js +0 -535
  913. package/bundled-test-harness/assets/quick-look-test-B1ijDsh_.js +0 -139
  914. package/bundled-test-harness/assets/read-card-for-ai-assistant-test-DJxZ16H_.js +0 -91
  915. package/bundled-test-harness/assets/read-file-for-ai-assistant-test-BoRQkZ8c.js +0 -45
  916. package/bundled-test-harness/assets/read-source-test-Bl-NjchO.js +0 -67
  917. package/bundled-test-harness/assets/read-text-file-test-CP37CZoo.js +0 -124
  918. package/bundled-test-harness/assets/realm-CaK5mkT-.js +0 -2852
  919. package/bundled-test-harness/assets/realm-api-keys-BNUFWbGR.js +0 -579
  920. package/bundled-test-harness/assets/realm-api-keys-CkshxhXC.js +0 -2
  921. package/bundled-test-harness/assets/realm-api-keys-test-BP8xifjn.js +0 -109
  922. package/bundled-test-harness/assets/realm-api-keys-test-CwdK9YXp.js +0 -588
  923. package/bundled-test-harness/assets/realm-config-iKwE3Htp.js +0 -833
  924. package/bundled-test-harness/assets/realm-config-policy-standing-test-BgVEIDnB.js +0 -290
  925. package/bundled-test-harness/assets/realm-config-routing-rule-edit-test-BoJoKzmX.js +0 -274
  926. package/bundled-test-harness/assets/realm-config-settings-test-Kxw-GHye.js +0 -187
  927. package/bundled-test-harness/assets/realm-field-test-CdGOxrFb.js +0 -100
  928. package/bundled-test-harness/assets/realm-indexing-test-CHtsBV2b.js +0 -4380
  929. package/bundled-test-harness/assets/realm-policy-fitted-test--DhNZSdC.js +0 -206
  930. package/bundled-test-harness/assets/realm-policy-test-D7714iVa.js +0 -1141
  931. package/bundled-test-harness/assets/realm-querying-test-Cj1ekZ0H.js +0 -1067
  932. package/bundled-test-harness/assets/realm-server-form-agnostic-test-CZFPNJfD.js +0 -96
  933. package/bundled-test-harness/assets/realm-server-subscriber-test-C86WmBp0.js +0 -46
  934. package/bundled-test-harness/assets/realm-service-info-test-CdgcwKDR.js +0 -67
  935. package/bundled-test-harness/assets/realm-test-DPoLsvKz.js +0 -2364
  936. package/bundled-test-harness/assets/realm-token-refresh-test-Ch35Siwi.js +0 -153
  937. package/bundled-test-harness/assets/realm-url-tooltip-test-x8xWOENK.js +0 -78
  938. package/bundled-test-harness/assets/reasoning-test-BxpE8Jvf.js +0 -221
  939. package/bundled-test-harness/assets/recent-files-test-DTmEzPLq.js +0 -450
  940. package/bundled-test-harness/assets/reindex-realm-test-BQ8KULn4.js +0 -117
  941. package/bundled-test-harness/assets/relationship-loading-state-test-BJoArPWf.js +0 -290
  942. package/bundled-test-harness/assets/remix-card-test-DsTA1KoG.js +0 -58
  943. package/bundled-test-harness/assets/rendered-markdown-DvukulDO.js +0 -292
  944. package/bundled-test-harness/assets/rendered-markdown-test-DxGptXSV.js +0 -587
  945. package/bundled-test-harness/assets/resident-instance-reuse-test-ZWnVu8uj.js +0 -82
  946. package/bundled-test-harness/assets/result-tile-CPyI6Vmv.js +0 -144
  947. package/bundled-test-harness/assets/rich-markdown-field-test-CdygoXIO.js +0 -1647
  948. package/bundled-test-harness/assets/room-message-test-D3NfMqH0.js +0 -484
  949. package/bundled-test-harness/assets/run-D_Px28eF.js +0 -3956
  950. package/bundled-test-harness/assets/run-realm-code-qWCZxmJ7.js +0 -2964
  951. package/bundled-test-harness/assets/run-realm-code-test-UzyeEJq6.js +0 -3844
  952. package/bundled-test-harness/assets/sanitize-module-list-test-Babq44bP.js +0 -85
  953. package/bundled-test-harness/assets/save-card-skip-index-wait-test-BcELXlQ_.js +0 -89
  954. package/bundled-test-harness/assets/schema-editor-test-CEvruZbt.js +0 -785
  955. package/bundled-test-harness/assets/schema-generation-test-hYAMdCrn.js +0 -28
  956. package/bundled-test-harness/assets/scrolling-test-DVIsh-_1.js +0 -412
  957. package/bundled-test-harness/assets/search-adorn-test-CkVhqFd0.js +0 -136
  958. package/bundled-test-harness/assets/search-and-choose-test-DUhOB3FV.js +0 -154
  959. package/bundled-test-harness/assets/search-correlation-id-test-Drn4r26N.js +0 -139
  960. package/bundled-test-harness/assets/search-entries-result-test-DTCRJ_wc.js +0 -234
  961. package/bundled-test-harness/assets/search-entries-test-CE0B47pw.js +0 -1486
  962. package/bundled-test-harness/assets/search-entries-tool-test-C4aG0ckM.js +0 -504
  963. package/bundled-test-harness/assets/search-google-images-test-LyhcB2f3.js +0 -166
  964. package/bundled-test-harness/assets/search-results-D4pSne0x.js +0 -266
  965. package/bundled-test-harness/assets/search-results-test-CRZHhqhn.js +0 -578
  966. package/bundled-test-harness/assets/search-selection-menu-test-B7Y3E_nj.js +0 -108
  967. package/bundled-test-harness/assets/search-sheet-files-test-C2y534g8.js +0 -126
  968. package/bundled-test-harness/assets/search-sheet-persistence-test-DePC59Bk.js +0 -131
  969. package/bundled-test-harness/assets/search-test-Dy8NxFkU.js +0 -2249
  970. package/bundled-test-harness/assets/search-tool-test-lctDaMH3.js +0 -156
  971. package/bundled-test-harness/assets/searchable-option-test-CE64M8oM.js +0 -322
  972. package/bundled-test-harness/assets/searchable-search-doc-test-C6u3mVvT.js +0 -1271
  973. package/bundled-test-harness/assets/section-rail-B_UQX00B.js +0 -113
  974. package/bundled-test-harness/assets/section-rail-test-DIda7MIw.js +0 -256
  975. package/bundled-test-harness/assets/secure-sign-in-CqqqfQG8.js +0 -174
  976. package/bundled-test-harness/assets/secure-sign-in-test-DimbVr_W.js +0 -373
  977. package/bundled-test-harness/assets/segmented-control-iePxSdTS.js +0 -173
  978. package/bundled-test-harness/assets/select-tNs6_xwW.js +0 -175
  979. package/bundled-test-harness/assets/send-ai-assistant-message-test-2GVrMF9Z.js +0 -52
  980. package/bundled-test-harness/assets/send-bot-trigger-event-test-B_3dKfGN.js +0 -56
  981. package/bundled-test-harness/assets/send-request-via-proxy-test-_clNWyYc.js +0 -380
  982. package/bundled-test-harness/assets/sending-test-DCPFXUVg.js +0 -659
  983. package/bundled-test-harness/assets/serialization-rri-form-audit-test-BI0zCs8Y.js +0 -136
  984. package/bundled-test-harness/assets/serialization-test-bjdtVlZL.js +0 -8758
  985. package/bundled-test-harness/assets/set-user-system-card-test-BUv1vL08.js +0 -59
  986. package/bundled-test-harness/assets/setup-BW1mmC7C.js +0 -772
  987. package/bundled-test-harness/assets/setup-DsIcFT-T.js +0 -2
  988. package/bundled-test-harness/assets/shared-link-target-reuse-test-9NeJEjkb.js +0 -207
  989. package/bundled-test-harness/assets/show-card-test-mfyLwusD.js +0 -365
  990. package/bundled-test-harness/assets/signed-capture-link-test-BOtKNCAM.js +0 -132
  991. package/bundled-test-harness/assets/single-stack-test-B4MGjaLk.js +0 -652
  992. package/bundled-test-harness/assets/skills-test-BuP-Yzk1.js +0 -648
  993. package/bundled-test-harness/assets/skip-boot-index-guard-test-Cmrx2-K7.js +0 -46
  994. package/bundled-test-harness/assets/spec-test-BhZDdhVQ.js +0 -1077
  995. package/bundled-test-harness/assets/spinner-CpIBUG9m.js +0 -49
  996. package/bundled-test-harness/assets/src-DGHttmW-.js +0 -216
  997. package/bundled-test-harness/assets/src-DaNDSbp7.js +0 -5
  998. package/bundled-test-harness/assets/stick-to-bottom-resize-test-Dpy3OVum.js +0 -56
  999. package/bundled-test-harness/assets/store-add-test-_IYS8o74.js +0 -50
  1000. package/bundled-test-harness/assets/store-module-rebuild-test-B5VMaICy.js +0 -454
  1001. package/bundled-test-harness/assets/store-search-test-C2VZabrH.js +0 -175
  1002. package/bundled-test-harness/assets/store-test-D6PObxoD.js +0 -3672
  1003. package/bundled-test-harness/assets/structured-theme-test-BHjVeMf-.js +0 -377
  1004. package/bundled-test-harness/assets/summarize-session-test-BFtTuhe0.js +0 -172
  1005. package/bundled-test-harness/assets/svg-image-def-test-BL6lkWUX.js +0 -167
  1006. package/bundled-test-harness/assets/switch-submode-test-6Uv3bZMl.js +0 -168
  1007. package/bundled-test-harness/assets/sync-openrouter-models-test-Dp9E05tL.js +0 -97
  1008. package/bundled-test-harness/assets/test-support-DYm8XZ0E.js +0 -3
  1009. package/bundled-test-harness/assets/test-support-DfnhiIMV.js +0 -99
  1010. package/bundled-test-harness/assets/tests-CZk0Iag2.js +0 -3596
  1011. package/bundled-test-harness/assets/text-file-def-test-CHdC0yIU.js +0 -94
  1012. package/bundled-test-harness/assets/text-input-validator-test-B9ZR8XPU.js +0 -156
  1013. package/bundled-test-harness/assets/text-suggestion-test-CGLspKFQ.js +0 -340
  1014. package/bundled-test-harness/assets/theme-card-test-CXZvSEvG.js +0 -621
  1015. package/bundled-test-harness/assets/theme-dashboard-nav-test-CkEE0ILk.js +0 -196
  1016. package/bundled-test-harness/assets/theme-scheme-island-test-URXTjipF.js +0 -264
  1017. package/bundled-test-harness/assets/titles-C6enAdIv.js +0 -2
  1018. package/bundled-test-harness/assets/titles-Dft1HoUT.js +0 -52
  1019. package/bundled-test-harness/assets/to-device-streaming-test-D33ZOc9o.js +0 -163
  1020. package/bundled-test-harness/assets/token-usage-test-BHQlU4J4.js +0 -160
  1021. package/bundled-test-harness/assets/tools-CrudqfS3.js +0 -774
  1022. package/bundled-test-harness/assets/tools-calling-test-jo7IREau.js +0 -200
  1023. package/bundled-test-harness/assets/tools-test-D1wMfUa0.js +0 -1624
  1024. package/bundled-test-harness/assets/tools-test-Dn1LYsXp.js +0 -3204
  1025. package/bundled-test-harness/assets/tooltip-8Wyz4IIn.css +0 -68
  1026. package/bundled-test-harness/assets/tooltip-CqwLzRz5.js +0 -134
  1027. package/bundled-test-harness/assets/transform-cards-test-BPhwPFtp.js +0 -341
  1028. package/bundled-test-harness/assets/ts-file-def-preview-test-Bq3zTgw8.js +0 -95
  1029. package/bundled-test-harness/assets/ts-file-def-test-GLswMl7O.js +0 -92
  1030. package/bundled-test-harness/assets/ttf-font-def-test-DQulvUWs.js +0 -206
  1031. package/bundled-test-harness/assets/turn-settling-test-BspmOUQP.js +0 -160
  1032. package/bundled-test-harness/assets/turn-summary-9A8nvC0-.js +0 -1039
  1033. package/bundled-test-harness/assets/unpublish-realm-test-SkYPEhDz.js +0 -102
  1034. package/bundled-test-harness/assets/update-room-skills-test-cTxb-WU6.js +0 -240
  1035. package/bundled-test-harness/assets/use-ai-assistant-test-uaqW1T_A.js +0 -384
  1036. package/bundled-test-harness/assets/user-message-BudkIP-3.js +0 -262
  1037. package/bundled-test-harness/assets/validate-realm-test-DxrGgH9n.js +0 -67
  1038. package/bundled-test-harness/assets/video-metadata-extractor-test-B2pe-Iqa.js +0 -520
  1039. package/bundled-test-harness/assets/view-visually-test-PNon6fUo.js +0 -335
  1040. package/bundled-test-harness/assets/virtual-network-reset-test-uYJLaQHf.js +0 -96
  1041. package/bundled-test-harness/assets/wav-audio-def-test-F4OrFFR4.js +0 -160
  1042. package/bundled-test-harness/assets/webp-image-def-test-B0a_-Vya.js +0 -226
  1043. package/bundled-test-harness/assets/workspace-Cyftysy9.js +0 -440
  1044. package/bundled-test-harness/assets/workspace-a11y-test-sKiPDcbl.js +0 -197
  1045. package/bundled-test-harness/assets/workspace-actions-BuawjFmZ.js +0 -561
  1046. package/bundled-test-harness/assets/workspace-behavior-test-CKa-pb3T.js +0 -338
  1047. package/bundled-test-harness/assets/workspace-delete-multiple-test-Dt2weG5R.js +0 -212
  1048. package/bundled-test-harness/assets/workspace-delete-summary-test-CkqgFqZ8.js +0 -63
  1049. package/bundled-test-harness/assets/workspace-hosting-test-Ci7EEtHP.js +0 -138
  1050. package/bundled-test-harness/assets/workspace-indexing-test-BPVxxY6W.js +0 -71
  1051. package/bundled-test-harness/assets/workspace-test-CWr7vFbg.js +0 -385
  1052. package/bundled-test-harness/assets/workspace-test-INNpQovc.js +0 -51
  1053. package/bundled-test-harness/assets/workspace-timestamp-labels-test-CigQb5wr.js +0 -68
  1054. package/bundled-test-harness/assets/workspace-unit-test-BwVKpuXT.js +0 -122
  1055. package/bundled-test-harness/assets/write-binary-file-test-BKP3gv1k.js +0 -124
  1056. package/bundled-test-harness/assets/write-text-file-test-B6ijTKTa.js +0 -191
  1057. package/bundled-test-harness/assets/zip-archive-test-C-PBzkTn.js +0 -285
  1058. package/bundled-test-harness/assets/zip-file-def-test-FyCzJT-9.js +0 -164
@@ -0,0 +1,1392 @@
1
+ import { s as __toESM } from "./chunk-Rp0pCe6z.js";
2
+ import { Br as testRealmURL, Fs as query, Ps as param, Rc as Deferred, Rr as testRealmInfo, Us as ReadinessTimeoutError } from "./runtime-common-BTaLJEw-.js";
3
+ import { O as baseRealm } from "./constants-Icc0nFW-.js";
4
+ import { t as config } from "./environment-DIUJgBKt.js";
5
+ import { n as TrackedObject } from "./dist-B9tGPKZz.js";
6
+ import { M as waitUntil, T as settled, a as find, d as click, l as triggerEvent, o as waitFor, s as fillIn } from "./dist-BOAdzfkP.js";
7
+ import { t as require_qunit } from "./qunit-C-Foo4Nd.js";
8
+ import { D as realmConfigCardJSON, F as setupLocalIndexing, I as setupOnSave, L as setupRealmCacheTeardown, Z as withCachedRealmSetup, a as SYSTEM_CARD_FIXTURE_CONTENTS, b as getDbAdapter, ct as setupApplicationTest, j as setupAcceptanceTestRealm, st as visitOperatorMode, t as setupMockMatrix } from "./mock-matrix-FjsXmU7-.js";
9
+ import { r as getService } from "./dist-CPfIHBla.js";
10
+ import { t as CardsGrid } from "./cards-grid-CbyLapaw.js";
11
+ import { t as viewCardDemoCardSource } from "./view-card-demo-Dt06d2YH.js";
12
+ //#region tests/acceptance/host-submode-test.gts
13
+ var import_qunit = /* @__PURE__ */ __toESM(require_qunit());
14
+ var publishedSpaceHost = config.publishedRealmBoxelSpaceDomain;
15
+ var personCardSource = `
16
+ import { contains, containsMany, field, linksToMany, CardDef, Component } from "@cardstack/base/card-api";
17
+ import StringField from "@cardstack/base/string";
18
+
19
+ export class Person extends CardDef {
20
+ static displayName = 'Person';
21
+ @field firstName = contains(StringField);
22
+ @field lastName = contains(StringField);
23
+ @field cardTitle = contains(StringField, {
24
+ computeVia: function (this: Person) {
25
+ return [this.firstName, this.lastName].filter(Boolean).join(' ');
26
+ },
27
+ });
28
+ static isolated = class Isolated extends Component<typeof this> {
29
+ <template>
30
+ <p>Title: <@fields.cardTitle /></p>
31
+ </template>
32
+ };
33
+ }
34
+ `;
35
+ function withUpdatedTestRealmInfo(updates) {
36
+ let realmResource = getService("realm").realms.get(testRealmURL);
37
+ if (!realmResource) throw new Error("Test realm resource is not registered");
38
+ let previousInfo = realmResource.info;
39
+ realmResource.info = new TrackedObject({
40
+ ...previousInfo ? { ...previousInfo } : { ...testRealmInfo },
41
+ ...updates
42
+ });
43
+ return () => {
44
+ realmResource.info = previousInfo;
45
+ };
46
+ }
47
+ function stubUnlistedPath(slugs) {
48
+ let realmServer = getService("realm-server");
49
+ let original = realmServer.allocateUnlistedPath;
50
+ let queue = Array.isArray(slugs) ? [...slugs] : [slugs];
51
+ realmServer.allocateUnlistedPath = async (sourceRealmURL) => {
52
+ return {
53
+ sourceRealmURL,
54
+ slug: queue.length > 1 ? queue.shift() : queue[0]
55
+ };
56
+ };
57
+ return () => {
58
+ realmServer.allocateUnlistedPath = original;
59
+ };
60
+ }
61
+ (0, import_qunit.module)("Acceptance | host submode", function(hooks) {
62
+ setupApplicationTest(hooks);
63
+ setupLocalIndexing(hooks);
64
+ setupOnSave(hooks);
65
+ let mockMatrixUtils = setupMockMatrix(hooks, {
66
+ loggedInAs: "@testuser:localhost",
67
+ activeRealms: [baseRealm.url, testRealmURL]
68
+ });
69
+ let realmContents;
70
+ hooks.beforeEach(function() {
71
+ realmContents = {
72
+ ...SYSTEM_CARD_FIXTURE_CONTENTS,
73
+ "index.json": new CardsGrid(),
74
+ "realm.json": realmConfigCardJSON({
75
+ name: "Test Workspace B",
76
+ backgroundURL: "/test-fixtures/realm-images/pawel-czerwinski-Ly-ZLa-A5jti-Y-unsplash.jpg",
77
+ iconURL: "/test-fixtures/realm-images/boxel-logo.png"
78
+ }),
79
+ "person.gts": personCardSource,
80
+ "view-card-demo.gts": viewCardDemoCardSource,
81
+ "Person/1.json": { data: {
82
+ type: "card",
83
+ attributes: {
84
+ firstName: "A",
85
+ lastName: "B"
86
+ },
87
+ meta: { adoptsFrom: {
88
+ module: "../person",
89
+ name: "Person"
90
+ } }
91
+ } },
92
+ "Person/2.json": { data: {
93
+ type: "card",
94
+ attributes: {
95
+ firstName: "B",
96
+ lastName: "C"
97
+ },
98
+ meta: { adoptsFrom: {
99
+ module: "../person",
100
+ name: "Person"
101
+ } }
102
+ } },
103
+ "Person/3.json": { data: {
104
+ type: "card",
105
+ attributes: {
106
+ firstName: "C",
107
+ lastName: "D"
108
+ },
109
+ meta: { adoptsFrom: {
110
+ module: "../person",
111
+ name: "Person"
112
+ } }
113
+ } },
114
+ "ViewCardDemo/1.json": { data: {
115
+ type: "card",
116
+ attributes: {
117
+ cardTitle: "Primary View Demo",
118
+ targetCardURL: `${testRealmURL}ViewCardDemo/2.json`
119
+ },
120
+ meta: { adoptsFrom: {
121
+ module: "../view-card-demo",
122
+ name: "ViewCardDemo"
123
+ } }
124
+ } },
125
+ "ViewCardDemo/2.json": { data: {
126
+ type: "card",
127
+ attributes: {
128
+ cardTitle: "Secondary View Demo",
129
+ targetCardURL: `${testRealmURL}ViewCardDemo/3.json`
130
+ },
131
+ meta: { adoptsFrom: {
132
+ module: "../view-card-demo",
133
+ name: "ViewCardDemo"
134
+ } }
135
+ } },
136
+ "ViewCardDemo/3.json": { data: {
137
+ type: "card",
138
+ attributes: {
139
+ cardTitle: "Tertiary View Demo",
140
+ targetCardURL: `${testRealmURL}ViewCardDemo/1.json`
141
+ },
142
+ meta: { adoptsFrom: {
143
+ module: "../view-card-demo",
144
+ name: "ViewCardDemo"
145
+ } }
146
+ } }
147
+ };
148
+ });
149
+ (0, import_qunit.module)("with a dangling host routing rule", function(hooks) {
150
+ setupRealmCacheTeardown(hooks);
151
+ hooks.beforeEach(async function() {
152
+ await query(await getDbAdapter(), [
153
+ `INSERT INTO realm_metadata (url, publishable) VALUES (`,
154
+ param(testRealmURL),
155
+ `,`,
156
+ param(true),
157
+ `) ON CONFLICT (url) DO UPDATE SET publishable = true`
158
+ ]);
159
+ realmContents["realm.json"] = { data: {
160
+ type: "card",
161
+ attributes: {
162
+ cardInfo: { name: "Test Workspace B" },
163
+ hostRoutingRules: [{ path: "/" }]
164
+ },
165
+ relationships: { "hostRoutingRules.0.instance": { links: { self: "./does-not-exist" } } },
166
+ meta: { adoptsFrom: {
167
+ module: "@cardstack/base/realm-config",
168
+ name: "RealmConfig"
169
+ } }
170
+ } };
171
+ await withCachedRealmSetup(async () => {
172
+ await setupAcceptanceTestRealm({
173
+ mockMatrixUtils,
174
+ contents: realmContents
175
+ });
176
+ });
177
+ await getService("realm").ensureRealmMeta(testRealmURL);
178
+ });
179
+ (0, import_qunit.test)("publish modal warns that a routing rule points to a missing card", async function(assert) {
180
+ await visitOperatorMode({
181
+ submode: "host",
182
+ trail: [`${testRealmURL}Person/1.json`]
183
+ });
184
+ await click("[data-test-publish-realm-button]");
185
+ await waitFor("[data-test-publish-realm-modal]");
186
+ await waitFor("[data-test-dangling-routing-warning]");
187
+ assert.dom("[data-test-dangling-routing-warning]").exists("the dangling-routing warning shows in the publish modal");
188
+ assert.dom("[data-test-dangling-routing-warning]").containsText("does-not-exist", "the warning names the missing routing target");
189
+ });
190
+ });
191
+ (0, import_qunit.module)("with a realm that is not publishable", function(hooks) {
192
+ setupRealmCacheTeardown(hooks);
193
+ hooks.beforeEach(async function() {
194
+ await query(await getDbAdapter(), [`DELETE FROM realm_metadata WHERE url =`, param(testRealmURL)]);
195
+ await withCachedRealmSetup(async () => {
196
+ await setupAcceptanceTestRealm({
197
+ mockMatrixUtils,
198
+ contents: realmContents
199
+ });
200
+ });
201
+ await getService("realm").ensureRealmMeta(testRealmURL);
202
+ });
203
+ (0, import_qunit.test)("host submode is not available", async function(assert) {
204
+ await visitOperatorMode({
205
+ submode: "code",
206
+ stacks: [[{
207
+ id: `${testRealmURL}index`,
208
+ format: "isolated"
209
+ }]]
210
+ });
211
+ await click("[data-test-submode-switcher] button");
212
+ assert.dom("[data-test-boxel-menu-item-text=\"Host\"]").doesNotExist();
213
+ });
214
+ (0, import_qunit.test)("visiting host submode via query parameter shows a button to interact submode", async function(assert) {
215
+ await visitOperatorMode({
216
+ submode: "host",
217
+ stacks: [[{
218
+ id: `${testRealmURL}Person/1.json`,
219
+ format: "isolated"
220
+ }]]
221
+ });
222
+ await click("[data-test-switch-to-interact]");
223
+ assert.dom("[data-test-submode-switcher]").hasText("Interact");
224
+ assert.dom(`[data-test-stack-card="${testRealmURL}Person/1"]`).exists();
225
+ });
226
+ (0, import_qunit.test)("the publish modal warns that the workspace cannot be published", async function(assert) {
227
+ await visitOperatorMode({
228
+ submode: "host",
229
+ trail: [`${testRealmURL}Person/1.json`]
230
+ });
231
+ await click("[data-test-publish-realm-button]");
232
+ await waitFor("[data-test-publish-realm-modal]");
233
+ await waitFor("[data-test-unpublishable-realm-warning]");
234
+ assert.dom("[data-test-unpublishable-realm-warning]").containsText("not publishable", "the warning states the workspace cannot be published");
235
+ await click("[data-test-default-domain-checkbox]");
236
+ assert.dom("[data-test-publish-button]").isDisabled("publishing stays withheld with a domain selected, rather than being left to fail against the endpoint");
237
+ });
238
+ });
239
+ (0, import_qunit.module)("with a realm flagged unpublishable", function(hooks) {
240
+ setupRealmCacheTeardown(hooks);
241
+ hooks.beforeEach(async function() {
242
+ await query(await getDbAdapter(), [
243
+ `INSERT INTO realm_metadata (url, publishable) VALUES (`,
244
+ param(testRealmURL),
245
+ `,`,
246
+ param(false),
247
+ `) ON CONFLICT (url) DO UPDATE SET publishable = false`
248
+ ]);
249
+ await withCachedRealmSetup(async () => {
250
+ await setupAcceptanceTestRealm({
251
+ mockMatrixUtils,
252
+ contents: realmContents
253
+ });
254
+ });
255
+ await getService("realm").ensureRealmMeta(testRealmURL);
256
+ });
257
+ (0, import_qunit.test)("the publish modal warns and withholds publishing", async function(assert) {
258
+ await visitOperatorMode({
259
+ submode: "host",
260
+ trail: [`${testRealmURL}Person/1.json`]
261
+ });
262
+ await click("[data-test-publish-realm-button]");
263
+ await waitFor("[data-test-publish-realm-modal]");
264
+ await waitFor("[data-test-unpublishable-realm-warning]");
265
+ assert.dom("[data-test-unpublishable-realm-warning]").containsText("not publishable");
266
+ await click("[data-test-default-domain-checkbox]");
267
+ assert.dom("[data-test-publish-button]").isDisabled("a domain is selected, so only the publishability gate can be holding this");
268
+ });
269
+ });
270
+ (0, import_qunit.module)("with a realm that is publishable", function(hooks) {
271
+ setupRealmCacheTeardown(hooks);
272
+ hooks.beforeEach(async function() {
273
+ await query(await getDbAdapter(), [
274
+ `INSERT INTO realm_metadata (url, publishable) VALUES (`,
275
+ param(testRealmURL),
276
+ `,`,
277
+ param(true),
278
+ `) ON CONFLICT (url) DO UPDATE SET publishable = true`
279
+ ]);
280
+ await withCachedRealmSetup(async () => {
281
+ await setupAcceptanceTestRealm({
282
+ mockMatrixUtils,
283
+ contents: realmContents
284
+ });
285
+ });
286
+ await getService("realm").ensureRealmMeta(testRealmURL);
287
+ });
288
+ (0, import_qunit.test)("host submode is available", async function(assert) {
289
+ await visitOperatorMode({
290
+ submode: "interact",
291
+ stacks: [[{
292
+ id: `${testRealmURL}index`,
293
+ format: "isolated"
294
+ }]]
295
+ });
296
+ await click("[data-test-submode-switcher] button");
297
+ assert.dom("[data-test-boxel-menu-item-text=\"Host\"]").exists();
298
+ });
299
+ (0, import_qunit.test)("search is not present", async function(assert) {
300
+ await visitOperatorMode({
301
+ submode: "host",
302
+ trail: [`${testRealmURL}Person/1.json`]
303
+ });
304
+ assert.dom("[data-test-open-search-field]").doesNotExist();
305
+ });
306
+ (0, import_qunit.test)("the publish modal shows no unpublishability warning", async function(assert) {
307
+ await visitOperatorMode({
308
+ submode: "host",
309
+ trail: [`${testRealmURL}Person/1.json`]
310
+ });
311
+ await click("[data-test-publish-realm-button]");
312
+ await waitFor("[data-test-publish-realm-modal]");
313
+ await waitFor("[data-test-default-domain-checkbox]");
314
+ assert.dom("[data-test-unpublishable-realm-warning]").doesNotExist();
315
+ await click("[data-test-default-domain-checkbox]");
316
+ assert.dom("[data-test-publish-button]").isNotDisabled();
317
+ });
318
+ (0, import_qunit.test)("an empty selection reports itself as empty, not as unpublishable", async function(assert) {
319
+ await visitOperatorMode({
320
+ submode: "host",
321
+ stacks: [[{
322
+ id: `${testRealmURL}index`,
323
+ format: "isolated"
324
+ }]]
325
+ });
326
+ assert.dom("[data-test-host-mode-empty]").containsText("No card selected");
327
+ assert.dom("[data-test-host-mode-empty]").doesNotContainText("publishable", "having nothing to render is not a publishability problem");
328
+ });
329
+ (0, import_qunit.test)("entering from interact mode stays on the same card", async function(assert) {
330
+ await visitOperatorMode({
331
+ submode: "interact",
332
+ stacks: [[{
333
+ id: `${testRealmURL}Person/1.json`,
334
+ format: "isolated"
335
+ }]]
336
+ });
337
+ await click("[data-test-submode-switcher] button");
338
+ await click("[data-test-boxel-menu-item-text=\"Host\"]");
339
+ assert.dom("[data-test-host-mode-card]").exists();
340
+ assert.dom("[data-test-host-mode-card]").hasText("Title: A B");
341
+ });
342
+ (0, import_qunit.test)("entering from code mode shows the index card", async function(assert) {
343
+ await visitOperatorMode({
344
+ submode: "code",
345
+ codePath: `${testRealmURL}Person/1.json`
346
+ });
347
+ await click("[data-test-submode-switcher] button");
348
+ await click("[data-test-boxel-menu-item-text=\"Host\"]");
349
+ assert.dom("[data-test-host-mode-card]").exists();
350
+ assert.dom(".boxel-card-container").exists();
351
+ });
352
+ (0, import_qunit.test)("entering from code mode with card instance shows the same card", async function(assert) {
353
+ await visitOperatorMode({
354
+ submode: "code",
355
+ codePath: `${testRealmURL}Person/1.json`
356
+ });
357
+ await click("[data-test-submode-switcher] button");
358
+ await click("[data-test-boxel-menu-item-text=\"Host\"]");
359
+ assert.dom("[data-test-host-mode-card]").exists();
360
+ assert.dom("[data-test-host-mode-card]").hasText("Title: A B");
361
+ });
362
+ (0, import_qunit.test)("clicking a card in card list stacks it", async function(assert) {
363
+ await visitOperatorMode({
364
+ submode: "host",
365
+ trail: [`${testRealmURL}index.json`]
366
+ });
367
+ await click("[data-test-boxel-filter-list-button=\"All Cards\"]");
368
+ await waitFor("[data-test-cards-grid-item]");
369
+ assert.dom(`[data-test-host-mode-stack-item="${testRealmURL}Person/1"]`).doesNotExist();
370
+ await click(`[data-test-cards-grid-item="${testRealmURL}Person/1"]`);
371
+ await waitFor(`[data-test-host-mode-stack-item="${testRealmURL}Person/1"]`);
372
+ assert.dom(`[data-test-host-mode-stack-item="${testRealmURL}Person/1"]`).exists();
373
+ assert.dom(`[data-test-host-mode-stack-item="${testRealmURL}Person/1"]`).hasText("Title: A B");
374
+ });
375
+ (0, import_qunit.test)("wide format cards use full width", async function(assert) {
376
+ await visitOperatorMode({
377
+ submode: "host",
378
+ trail: [`${testRealmURL}index.json`]
379
+ });
380
+ assert.dom(".host-mode-content").hasClass("is-wide");
381
+ assert.dom(".host-mode-content.is-wide").exists();
382
+ });
383
+ (0, import_qunit.test)("regular format cards use standard width", async function(assert) {
384
+ await visitOperatorMode({
385
+ submode: "host",
386
+ trail: [`${testRealmURL}Person/1.json`]
387
+ });
388
+ assert.dom(".host-mode-content").doesNotHaveClass("is-wide");
389
+ assert.dom(".host-mode-content:not(.is-wide)").exists();
390
+ });
391
+ (0, import_qunit.test)("viewCard stacks the linked card in host submode", async function(assert) {
392
+ let targetStackId = `${testRealmURL}ViewCardDemo/2`;
393
+ await visitOperatorMode({
394
+ submode: "host",
395
+ trail: [`${testRealmURL}ViewCardDemo/1.json`]
396
+ });
397
+ assert.dom(`[data-test-host-mode-stack-item="${targetStackId}"]`).doesNotExist();
398
+ await waitFor("[data-test-view-card-demo-button]");
399
+ await click("[data-test-view-card-demo-button]");
400
+ await waitFor(`[data-test-host-mode-stack-item="${targetStackId}"]`);
401
+ assert.dom(`[data-test-host-mode-stack-item="${targetStackId}"]`).exists();
402
+ });
403
+ (0, import_qunit.test)("viewCard tabs maintain state after stacking and closing cards", async function(assert) {
404
+ let primaryCardId = `${testRealmURL}ViewCardDemo/1`;
405
+ let firstStackCardId = `${testRealmURL}ViewCardDemo/2`;
406
+ let secondStackCardId = `${testRealmURL}ViewCardDemo/3`;
407
+ await visitOperatorMode({
408
+ submode: "host",
409
+ trail: [`${primaryCardId}.json`]
410
+ });
411
+ let primaryCardSelector = `[data-test-host-mode-card="${primaryCardId}"]`;
412
+ await waitFor(`${primaryCardSelector} [data-test-view-card-demo-active-tab]`);
413
+ await waitFor(`${primaryCardSelector} [data-test-view-card-demo-button]`);
414
+ assert.dom(`${primaryCardSelector} [data-test-view-card-demo-active-tab]`).hasAttribute("data-test-view-card-demo-active-tab", "overview");
415
+ await click(`${primaryCardSelector} [data-test-view-card-demo-tab="details"]`);
416
+ assert.dom(`${primaryCardSelector} [data-test-view-card-demo-active-tab]`).hasAttribute("data-test-view-card-demo-active-tab", "details");
417
+ await click(`${primaryCardSelector} [data-test-view-card-demo-button]`);
418
+ let firstStackSelector = `[data-test-host-mode-stack-item="${firstStackCardId}"]`;
419
+ await waitFor(`${firstStackSelector} [data-test-view-card-demo-active-tab]`);
420
+ await waitFor(`${firstStackSelector} [data-test-view-card-demo-button]`);
421
+ await waitFor(firstStackSelector);
422
+ assert.dom(`${firstStackSelector} [data-test-view-card-demo-active-tab]`).hasAttribute("data-test-view-card-demo-active-tab", "overview");
423
+ await click(`${firstStackSelector} [data-test-view-card-demo-tab="history"]`);
424
+ assert.dom(`${firstStackSelector} [data-test-view-card-demo-active-tab]`).hasAttribute("data-test-view-card-demo-active-tab", "history");
425
+ await click(`${firstStackSelector} [data-test-view-card-demo-button]`);
426
+ let secondStackSelector = `[data-test-host-mode-stack-item="${secondStackCardId}"]`;
427
+ await waitFor(`${secondStackSelector} [data-test-view-card-demo-button]`);
428
+ await waitFor(secondStackSelector);
429
+ await click(`[data-test-host-mode-breadcrumb="${firstStackCardId}"]`);
430
+ await waitUntil(() => {
431
+ return !document.querySelector(secondStackSelector);
432
+ });
433
+ assert.dom(`${firstStackSelector} [data-test-view-card-demo-active-tab]`).hasAttribute("data-test-view-card-demo-active-tab", "history");
434
+ await click(`[data-test-host-mode-breadcrumb="${primaryCardId}"]`);
435
+ await waitUntil(() => {
436
+ return !document.querySelector(firstStackSelector);
437
+ });
438
+ assert.dom(`${primaryCardSelector} [data-test-view-card-demo-active-tab]`).hasAttribute("data-test-view-card-demo-active-tab", "details");
439
+ });
440
+ (0, import_qunit.test)("viewing a card already in the trail unwinds to it", async function(assert) {
441
+ let belowCardId = `${testRealmURL}ViewCardDemo/2`;
442
+ let topCardId = `${testRealmURL}ViewCardDemo/1`;
443
+ await visitOperatorMode({
444
+ submode: "host",
445
+ trail: [
446
+ `${testRealmURL}ViewCardDemo/3.json`,
447
+ `${belowCardId}.json`,
448
+ `${topCardId}.json`
449
+ ]
450
+ });
451
+ let topSelector = `[data-test-host-mode-stack-item="${topCardId}"]`;
452
+ let belowSelector = `[data-test-host-mode-stack-item="${belowCardId}"]`;
453
+ await waitFor(`${topSelector} [data-test-view-card-demo-button]`);
454
+ await click(`${topSelector} [data-test-view-card-demo-button]`);
455
+ await waitUntil(() => !document.querySelector(topSelector));
456
+ assert.dom(belowSelector).exists("unwinds to the targeted card rather than stacking a copy");
457
+ });
458
+ (0, import_qunit.test)("clicking the scrim closes the top card of the trail", async function(assert) {
459
+ let belowCardId = `${testRealmURL}ViewCardDemo/2`;
460
+ let topCardId = `${testRealmURL}ViewCardDemo/3`;
461
+ await visitOperatorMode({
462
+ submode: "host",
463
+ trail: [
464
+ `${testRealmURL}ViewCardDemo/1.json`,
465
+ `${belowCardId}.json`,
466
+ `${topCardId}.json`
467
+ ]
468
+ });
469
+ let topSelector = `[data-test-host-mode-stack-item="${topCardId}"]`;
470
+ await waitFor(topSelector);
471
+ await click("[data-test-host-mode-stack]");
472
+ await waitUntil(() => !document.querySelector(topSelector));
473
+ assert.dom(`[data-test-host-mode-stack-item="${belowCardId}"]`).exists("only the top card closes");
474
+ });
475
+ (0, import_qunit.test)("breadcrumbs can close stacked cards", async function(assert) {
476
+ let card1Id = `${testRealmURL}Person/1`;
477
+ let card2Id = `${testRealmURL}index`;
478
+ let card3Id = `${testRealmURL}Person/2`;
479
+ await visitOperatorMode({
480
+ submode: "host",
481
+ trail: [
482
+ `${card1Id}.json`,
483
+ `${card2Id}.json`,
484
+ `${card3Id}.json`
485
+ ]
486
+ });
487
+ await waitFor(`[data-test-host-mode-card="${card1Id}"]`);
488
+ assert.dom("[data-test-host-mode-breadcrumb]").exists({ count: 3 });
489
+ assert.dom(`[data-test-host-mode-stack-item="${card2Id}"]`).exists();
490
+ assert.dom(`[data-test-host-mode-stack-item="${card3Id}"]`).exists();
491
+ await click(`[data-test-host-mode-breadcrumb="${card2Id}"]`);
492
+ await waitUntil(() => {
493
+ return !document.querySelector(`[data-test-host-mode-stack-item="${card3Id}"]`);
494
+ });
495
+ assert.dom("[data-test-host-mode-breadcrumb]").exists({ count: 2 });
496
+ assert.dom(`[data-test-host-mode-card="${card1Id}"]`).exists();
497
+ assert.dom(`[data-test-host-mode-stack-item="${card2Id}"]`).exists();
498
+ await click(`[data-test-host-mode-breadcrumb="${card1Id}"]`);
499
+ await waitUntil(() => {
500
+ return !document.querySelector("[data-test-host-mode-stack-item]");
501
+ });
502
+ assert.dom(`[data-test-host-mode-card="${card1Id}"]`).exists();
503
+ assert.dom("[data-test-host-mode-breadcrumb]").doesNotExist();
504
+ assert.dom("[data-test-host-mode-breadcrumbs]").doesNotExist();
505
+ });
506
+ (0, import_qunit.test)("breadcrumb item shows loading state before card is available", async function(assert) {
507
+ let card1Id = `${testRealmURL}Person/1`;
508
+ let card2Id = `${testRealmURL}index`;
509
+ let card3Id = `${testRealmURL}Person/2`;
510
+ let network = getService("network");
511
+ let handler = async (request) => {
512
+ if (request.url.includes(card3Id)) {
513
+ await waitFor(`[data-test-host-mode-breadcrumb="${card3Id}"]`);
514
+ assert.dom(`[data-test-host-mode-breadcrumb="${card3Id}"] .label`).hasText("Loading…");
515
+ return null;
516
+ }
517
+ return null;
518
+ };
519
+ network.mount(handler, { prepend: true });
520
+ try {
521
+ await visitOperatorMode({
522
+ submode: "host",
523
+ trail: [
524
+ `${card1Id}.json`,
525
+ `${card2Id}.json`,
526
+ `${card3Id}.json`
527
+ ]
528
+ });
529
+ await waitUntil(() => {
530
+ return document.querySelector(`[data-test-host-mode-breadcrumb="${card3Id}"] .label`)?.textContent?.trim() === "B C";
531
+ });
532
+ assert.dom(`[data-test-host-mode-breadcrumb="${card3Id}"] .label`).hasText("B C");
533
+ } finally {
534
+ network.resetState();
535
+ }
536
+ });
537
+ (0, import_qunit.test)("shows error state when card is not found", async function(assert) {
538
+ await visitOperatorMode({
539
+ submode: "host",
540
+ trail: [`${testRealmURL}nonexistent.json`]
541
+ });
542
+ await waitFor("[data-test-host-mode-404]");
543
+ assert.dom("[data-test-host-mode-404]").exists();
544
+ });
545
+ (0, import_qunit.test)("ai assistant is not displayed in host submode", async function(assert) {
546
+ await visitOperatorMode({
547
+ submode: "code",
548
+ codePath: `${testRealmURL}Person/1.json`,
549
+ stacks: [[{
550
+ id: `${testRealmURL}Person/1.json`,
551
+ format: "isolated"
552
+ }]],
553
+ aiAssistantOpen: true
554
+ });
555
+ assert.dom("[data-test-open-ai-assistant]").exists();
556
+ assert.dom("[data-test-ai-assistant-panel]").exists();
557
+ await click("[data-test-submode-switcher-button]");
558
+ await click("[data-test-boxel-menu-item-text=\"Interact\"]");
559
+ assert.dom("[data-test-open-ai-assistant]").exists();
560
+ assert.dom("[data-test-ai-assistant-panel]").exists();
561
+ await click("[data-test-submode-switcher-button]");
562
+ await click("[data-test-boxel-menu-item-text=\"Host\"]");
563
+ assert.dom("[data-test-open-ai-assistant]").doesNotExist();
564
+ assert.dom("[data-test-ai-assistant-panel]").doesNotExist();
565
+ await click("[data-test-submode-switcher-button]");
566
+ await click("[data-test-boxel-menu-item-text=\"Code\"]");
567
+ assert.dom("[data-test-open-ai-assistant]").exists();
568
+ assert.dom("[data-test-ai-assistant-panel]").exists();
569
+ });
570
+ (0, import_qunit.module)("publish and unpublish realm", function(hooks) {
571
+ setupRealmCacheTeardown(hooks);
572
+ let publishDeferred;
573
+ let unpublishDeferred;
574
+ hooks.beforeEach(function() {
575
+ publishDeferred = new Deferred();
576
+ unpublishDeferred = new Deferred();
577
+ let publishRealm = async (sourceRealmURL, publishedRealmURL) => {
578
+ await publishDeferred.promise;
579
+ return {
580
+ sourceRealmURL,
581
+ publishedRealmURL,
582
+ publishedRealmId: "1",
583
+ lastPublishedAt: String((/* @__PURE__ */ new Date()).getTime()),
584
+ status: "published"
585
+ };
586
+ };
587
+ let unpublishRealm = async (publishedRealmURL) => {
588
+ await unpublishDeferred.promise;
589
+ return {
590
+ sourceRealmURL: null,
591
+ publishedRealmURL,
592
+ lastPublishedAt: null
593
+ };
594
+ };
595
+ getService("realm-server").publishRealm = publishRealm;
596
+ getService("realm-server").unpublishRealm = unpublishRealm;
597
+ getService("realm-server").waitForRealmReady = async () => {};
598
+ getService("realm-server").allocateUnlistedPath = async (sourceRealmURL) => ({
599
+ sourceRealmURL,
600
+ slug: "defaultunlistedab"
601
+ });
602
+ });
603
+ (0, import_qunit.test)("the Publishing popover closes with its publish, even when the publish fails", async function(assert) {
604
+ getService("realm-server").publishRealm = async () => {
605
+ await publishDeferred.promise;
606
+ throw new Error("The domain refused the publish");
607
+ };
608
+ await visitOperatorMode({
609
+ submode: "host",
610
+ trail: [`${testRealmURL}Person/1.json`]
611
+ });
612
+ await click("[data-test-publish-realm-button]");
613
+ await click("[data-test-default-domain-checkbox]");
614
+ await click("[data-test-publish-button]");
615
+ await click("[data-test-publish-realm-modal] [data-test-close-modal]");
616
+ await waitUntil(() => find("[data-test-publish-realm-button]")?.textContent?.includes("Publishing…"));
617
+ await click("[data-test-publish-realm-button]");
618
+ assert.dom("[data-test-publishing-realm-popover]").exists();
619
+ publishDeferred.fulfill();
620
+ await waitUntil(() => !find("[data-test-publish-realm-button]")?.textContent?.includes("Publishing…"));
621
+ assert.dom("[data-test-publishing-realm-popover]").doesNotExist("it closes with the failed publish");
622
+ });
623
+ (0, import_qunit.test)("leaving host mode with the publish dialog open closes it, so it does not come back", async function(assert) {
624
+ await visitOperatorMode({
625
+ submode: "host",
626
+ trail: [`${testRealmURL}Person/1.json`]
627
+ });
628
+ await click("[data-test-publish-realm-button]");
629
+ assert.dom("[data-test-publish-realm-modal]").exists();
630
+ let operatorModeState = getService("operator-mode-state-service");
631
+ operatorModeState.updateSubmode("interact");
632
+ await settled();
633
+ operatorModeState.updateSubmode("host");
634
+ await settled();
635
+ assert.dom("[data-test-host-submode]").exists();
636
+ assert.dom("[data-test-publish-realm-modal]").doesNotExist();
637
+ });
638
+ (0, import_qunit.test)("closing the publish dialog returns focus to the publish button, after it turns to Publishing", async function(assert) {
639
+ await visitOperatorMode({
640
+ submode: "host",
641
+ trail: [`${testRealmURL}Person/1.json`]
642
+ });
643
+ await click("[data-test-publish-realm-button]");
644
+ await click("[data-test-default-domain-checkbox]");
645
+ await click("[data-test-publish-button]");
646
+ await waitUntil(() => find("[data-test-publish-realm-button]")?.textContent?.includes("Publishing…"));
647
+ await click("[data-test-publish-realm-modal] [data-test-close-modal]");
648
+ await waitUntil(() => document.activeElement === find("[data-test-publish-realm-button]"), { timeoutMessage: "focus never returned to the publish button" });
649
+ assert.dom("[data-test-publish-realm-button]").isFocused();
650
+ publishDeferred.fulfill();
651
+ await waitUntil(() => !find("[data-test-publish-realm-button]")?.textContent?.includes("Publishing…"));
652
+ });
653
+ (0, import_qunit.test)("can publish realm", async function(assert) {
654
+ await visitOperatorMode({
655
+ submode: "host",
656
+ trail: [`${testRealmURL}Person/1.json`]
657
+ });
658
+ assert.dom("[data-test-publish-realm-button]").hasText("Publish Site");
659
+ await click("[data-test-publish-realm-button]");
660
+ assert.dom("[data-test-publish-realm-modal]").exists();
661
+ assert.dom("[data-test-last-published-at]").doesNotExist();
662
+ assert.dom("[data-test-unpublish-button]").doesNotExist();
663
+ assert.dom("[data-test-open-site-button]").doesNotExist();
664
+ assert.dom("[data-test-default-domain-checkbox]").isNotChecked();
665
+ assert.dom("[data-test-publish-button]").isDisabled();
666
+ await click("[data-test-default-domain-checkbox]");
667
+ assert.dom("[data-test-default-domain-checkbox]").isChecked();
668
+ assert.dom("[data-test-publish-button]").isNotDisabled();
669
+ await click("[data-test-publish-button]");
670
+ assert.dom("[data-test-publish-button]").hasText("Publishing…");
671
+ assert.dom("[data-test-publish-button]").hasAttribute("disabled");
672
+ await waitFor("[data-test-publish-realm-button].publishing");
673
+ assert.dom("[data-test-publish-realm-button]").hasText("Publishing…");
674
+ assert.dom("[data-test-publish-realm-button]").hasClass("publishing");
675
+ await click("[data-test-publish-realm-button]");
676
+ await waitFor(".publishing-realm-popover");
677
+ assert.dom(".publishing-realm-popover").exists();
678
+ assert.dom(".publishing-realm-popover").containsText(`Publishing to: https://testuser.${publishedSpaceHost}/test/`);
679
+ assert.dom(".publishing-realm-popover").exists();
680
+ assert.dom(".loading-icon").exists();
681
+ publishDeferred.fulfill();
682
+ await waitUntil(() => {
683
+ return !document.querySelector("[data-test-publish-realm-button].publishing");
684
+ });
685
+ assert.dom("[data-test-publish-realm-button]").hasText("Republish Site");
686
+ assert.dom("[data-test-publish-realm-button]").doesNotHaveClass("publishing");
687
+ assert.dom(".publishing-realm-popover").doesNotExist();
688
+ await click("[data-test-publish-realm-button]");
689
+ assert.dom("[data-test-last-published-at]").exists();
690
+ assert.dom("[data-test-last-published-at]").containsText("Published");
691
+ assert.dom("[data-test-unpublish-button]").exists();
692
+ assert.dom("[data-test-unpublish-button]").containsText("Unpublish");
693
+ assert.dom("[data-test-open-site-button]").exists();
694
+ assert.dom("[data-test-open-site-button]").containsText("Open Site");
695
+ assert.dom("[data-test-publish-realm-modal] [data-test-open-boxel-space-button]").hasAttribute("href", `https://testuser.${publishedSpaceHost}/test/`).hasAttribute("target", "_blank");
696
+ });
697
+ (0, import_qunit.test)("publishes a dotted username to a single-label Boxel Space host", async function(assert) {
698
+ let matrixService = getService("matrix-service");
699
+ Object.defineProperty(matrixService, "userName", {
700
+ configurable: true,
701
+ get: () => "first.last"
702
+ });
703
+ let publishedURLs = [];
704
+ let realmServer = getService("realm-server");
705
+ let publishRealm = realmServer.publishRealm;
706
+ realmServer.publishRealm = async (sourceRealmURL, publishedRealmURL) => {
707
+ publishedURLs.push(publishedRealmURL);
708
+ return publishRealm(sourceRealmURL, publishedRealmURL);
709
+ };
710
+ publishDeferred.fulfill();
711
+ try {
712
+ await visitOperatorMode({
713
+ submode: "host",
714
+ trail: [`${testRealmURL}Person/1.json`]
715
+ });
716
+ await click("[data-test-publish-realm-button]");
717
+ assert.dom("[data-test-publish-realm-modal]").containsText(`https://first-last.${publishedSpaceHost}/test/`);
718
+ assert.dom("[data-test-publish-realm-modal]").doesNotContainText(`first.last.${publishedSpaceHost}`);
719
+ await click("[data-test-default-domain-checkbox]");
720
+ await click("[data-test-publish-button]");
721
+ await waitUntil(() => publishedURLs.length > 0);
722
+ assert.deepEqual(publishedURLs, [`https://first-last.${publishedSpaceHost}/test/`]);
723
+ } finally {
724
+ delete matrixService.userName;
725
+ }
726
+ });
727
+ (0, import_qunit.test)("an existing publication at a dotted two-label host preselects the single-label target", async function(assert) {
728
+ let matrixService = getService("matrix-service");
729
+ Object.defineProperty(matrixService, "userName", {
730
+ configurable: true,
731
+ get: () => "first.last"
732
+ });
733
+ let publishedURLs = [];
734
+ let realmServer = getService("realm-server");
735
+ let publishRealm = realmServer.publishRealm;
736
+ realmServer.publishRealm = async (sourceRealmURL, publishedRealmURL) => {
737
+ publishedURLs.push(publishedRealmURL);
738
+ return publishRealm(sourceRealmURL, publishedRealmURL);
739
+ };
740
+ publishDeferred.fulfill();
741
+ let restoreRealmInfo = withUpdatedTestRealmInfo({ lastPublishedAt: { [`https://first.last.${publishedSpaceHost}/test/`]: String(Date.now()) } });
742
+ try {
743
+ await visitOperatorMode({
744
+ submode: "host",
745
+ trail: [`${testRealmURL}Person/1.json`]
746
+ });
747
+ await click("[data-test-publish-realm-button]");
748
+ await waitFor("[data-test-publish-realm-modal]");
749
+ assert.dom("[data-test-default-domain-checkbox]").isChecked();
750
+ await click("[data-test-publish-button]");
751
+ await waitUntil(() => publishedURLs.length > 0);
752
+ assert.deepEqual(publishedURLs, [`https://first-last.${publishedSpaceHost}/test/`]);
753
+ } finally {
754
+ restoreRealmInfo();
755
+ delete matrixService.userName;
756
+ }
757
+ });
758
+ (0, import_qunit.test)("the publishing popover reports indexing and rendering progress", async function(assert) {
759
+ let readyDeferred = new Deferred();
760
+ let reportProgress;
761
+ getService("realm-server").waitForRealmReady = async (_url, opts) => {
762
+ reportProgress = opts?.onProgress;
763
+ await readyDeferred.promise;
764
+ };
765
+ publishDeferred.fulfill();
766
+ await visitOperatorMode({
767
+ submode: "host",
768
+ trail: [`${testRealmURL}Person/1.json`]
769
+ });
770
+ await click("[data-test-publish-realm-button]");
771
+ await click("[data-test-default-domain-checkbox]");
772
+ await click("[data-test-publish-button]");
773
+ await waitFor("[data-test-publish-realm-button].publishing");
774
+ assert.dom("[data-test-publish-progress-status]").hasText("Starting…", "the modal names a pass right away");
775
+ assert.dom("[data-test-publish-progress-status] [data-test-boxel-progress-bar]").doesNotExist("no bar until the pass reports a total");
776
+ await click("[data-test-publish-realm-button]");
777
+ await waitFor(".publishing-realm-popover");
778
+ assert.dom("[data-test-publish-progress-phase]").hasText("Starting", "names a pass before any reading arrives");
779
+ assert.dom("[data-test-publish-progress-counts]").doesNotExist("no counts until the pass reports a total");
780
+ reportProgress({
781
+ phase: "index",
782
+ filesCompleted: 42,
783
+ totalFiles: 270
784
+ });
785
+ await settled();
786
+ assert.dom("[data-test-publish-progress-phase]").hasText("Indexing");
787
+ assert.dom("[data-test-publish-progress-counts]").hasText("42 of 270 files");
788
+ assert.dom("[data-test-publish-progress-status]").hasText("Indexing 42 of 270 files…");
789
+ for (let scope of ["[data-test-publish-progress-status]", ".publishing-realm-popover"]) {
790
+ assert.dom(`${scope} [data-test-boxel-progress-bar]`).hasAttribute("aria-valuenow", "42");
791
+ assert.dom(`${scope} [data-test-boxel-progress-bar]`).hasAttribute("aria-valuemax", "270");
792
+ }
793
+ reportProgress({
794
+ phase: "render",
795
+ filesCompleted: 3,
796
+ totalFiles: 270
797
+ });
798
+ await settled();
799
+ assert.dom("[data-test-publish-progress-phase]").hasText("Rendering", "follows the publish into its second pass");
800
+ assert.dom("[data-test-publish-progress-counts]").hasText("3 of 270 files");
801
+ readyDeferred.fulfill();
802
+ await waitUntil(() => !document.querySelector("[data-test-publish-realm-button].publishing"));
803
+ assert.dom(".publishing-realm-popover").doesNotExist("the progress display goes away with the publish");
804
+ });
805
+ (0, import_qunit.test)("preselects previously published domains on refresh", async function(assert) {
806
+ let now = Date.now();
807
+ let realmServer = getService("realm-server");
808
+ let originalFetchClaimed = realmServer.fetchBoxelClaimedDomain;
809
+ realmServer.fetchBoxelClaimedDomain = async () => ({
810
+ id: "claimed-domain-1",
811
+ hostname: `custom-site-name.${publishedSpaceHost}`,
812
+ subdomain: "custom-site-name",
813
+ sourceRealmURL: testRealmURL
814
+ });
815
+ let restoreRealmInfo = withUpdatedTestRealmInfo({ lastPublishedAt: {
816
+ [`https://testuser.${publishedSpaceHost}/test/`]: String(now),
817
+ [`https://custom-site-name.${publishedSpaceHost}/`]: String(now)
818
+ } });
819
+ try {
820
+ await visitOperatorMode({
821
+ submode: "host",
822
+ trail: [`${testRealmURL}Person/1.json`]
823
+ });
824
+ await click("[data-test-publish-realm-button]");
825
+ await waitFor("[data-test-publish-realm-modal]");
826
+ assert.dom("[data-test-default-domain-checkbox]").isChecked();
827
+ assert.dom("[data-test-custom-subdomain-checkbox]").isChecked();
828
+ assert.dom("[data-test-publish-button]").isNotDisabled();
829
+ } finally {
830
+ realmServer.fetchBoxelClaimedDomain = originalFetchClaimed;
831
+ restoreRealmInfo();
832
+ }
833
+ });
834
+ (0, import_qunit.test)("default domain checkbox can be checked and unchecked", async function(assert) {
835
+ await visitOperatorMode({
836
+ submode: "host",
837
+ trail: [`${testRealmURL}Person/1.json`]
838
+ });
839
+ await click("[data-test-publish-realm-button]");
840
+ assert.dom("[data-test-default-domain-checkbox]").isNotChecked();
841
+ assert.dom("[data-test-publish-button]").isDisabled();
842
+ await click("[data-test-default-domain-checkbox]");
843
+ assert.dom("[data-test-default-domain-checkbox]").isChecked();
844
+ assert.dom("[data-test-publish-button]").isNotDisabled();
845
+ await click("[data-test-default-domain-checkbox]");
846
+ assert.dom("[data-test-default-domain-checkbox]").isNotChecked();
847
+ assert.dom("[data-test-publish-button]").isDisabled();
848
+ });
849
+ (0, import_qunit.test)("can publish an unlisted link", async function(assert) {
850
+ let restoreUnlisted = stubUnlistedPath("k7f3qz9pbcdmnpqr");
851
+ let unlistedUrl = `https://testuser.${publishedSpaceHost}/k7f3qz9pbcdmnpqr/`;
852
+ try {
853
+ await visitOperatorMode({
854
+ submode: "host",
855
+ trail: [`${testRealmURL}Person/1.json`]
856
+ });
857
+ await click("[data-test-publish-realm-button]");
858
+ await waitFor("[data-test-publish-realm-modal]");
859
+ await waitFor("[data-test-unlisted-link-url]");
860
+ assert.dom("[data-test-unlisted-link-url]").hasText(unlistedUrl);
861
+ assert.dom("[data-test-unlisted-link-checkbox]").isNotChecked();
862
+ await click("[data-test-unlisted-link-checkbox]");
863
+ assert.dom("[data-test-unlisted-link-checkbox]").isChecked();
864
+ assert.dom("[data-test-publish-button]").isNotDisabled();
865
+ await click("[data-test-publish-button]");
866
+ publishDeferred.fulfill();
867
+ await waitUntil(() => {
868
+ return !document.querySelector("[data-test-publish-realm-button].publishing");
869
+ });
870
+ await click("[data-test-publish-realm-button]");
871
+ assert.dom("[data-test-publish-realm-modal] [data-test-open-unlisted-link-button]").hasAttribute("href", unlistedUrl).hasAttribute("target", "_blank");
872
+ } finally {
873
+ restoreUnlisted();
874
+ }
875
+ });
876
+ (0, import_qunit.test)("unlisted link checkbox can be checked and unchecked", async function(assert) {
877
+ let restoreUnlisted = stubUnlistedPath("k7f3qz9pbcdmnpqr");
878
+ try {
879
+ await visitOperatorMode({
880
+ submode: "host",
881
+ trail: [`${testRealmURL}Person/1.json`]
882
+ });
883
+ await click("[data-test-publish-realm-button]");
884
+ await waitFor("[data-test-unlisted-link-url]");
885
+ assert.dom("[data-test-unlisted-link-checkbox]").isNotChecked();
886
+ assert.dom("[data-test-publish-button]").isDisabled();
887
+ await click("[data-test-unlisted-link-checkbox]");
888
+ assert.dom("[data-test-unlisted-link-checkbox]").isChecked();
889
+ assert.dom("[data-test-publish-button]").isNotDisabled();
890
+ await click("[data-test-unlisted-link-checkbox]");
891
+ assert.dom("[data-test-unlisted-link-checkbox]").isNotChecked();
892
+ assert.dom("[data-test-publish-button]").isDisabled();
893
+ } finally {
894
+ restoreUnlisted();
895
+ }
896
+ });
897
+ (0, import_qunit.test)("can regenerate the unlisted link before publishing", async function(assert) {
898
+ let restoreUnlisted = stubUnlistedPath(["firstslug00000000", "secondslug0000000"]);
899
+ try {
900
+ await visitOperatorMode({
901
+ submode: "host",
902
+ trail: [`${testRealmURL}Person/1.json`]
903
+ });
904
+ await click("[data-test-publish-realm-button]");
905
+ await waitFor("[data-test-unlisted-link-url]");
906
+ assert.dom("[data-test-unlisted-link-url]").hasText(`https://testuser.${publishedSpaceHost}/firstslug00000000/`);
907
+ await click("[data-test-regenerate-unlisted-link-button]");
908
+ assert.dom("[data-test-unlisted-link-url]").hasText(`https://testuser.${publishedSpaceHost}/secondslug0000000/`);
909
+ } finally {
910
+ restoreUnlisted();
911
+ }
912
+ });
913
+ (0, import_qunit.test)("shows an error with retry when loading the unlisted link fails", async function(assert) {
914
+ let realmServer = getService("realm-server");
915
+ let original = realmServer.allocateUnlistedPath;
916
+ let shouldFail = true;
917
+ realmServer.allocateUnlistedPath = async (sourceRealmURL) => {
918
+ if (shouldFail) throw new Error("allocate failed");
919
+ return {
920
+ sourceRealmURL,
921
+ slug: "k7f3qz9pbcdmnpqr"
922
+ };
923
+ };
924
+ try {
925
+ await visitOperatorMode({
926
+ submode: "host",
927
+ trail: [`${testRealmURL}Person/1.json`]
928
+ });
929
+ await click("[data-test-publish-realm-button]");
930
+ await waitFor("[data-test-unlisted-link-error]");
931
+ assert.dom("[data-test-unlisted-link-loading]").doesNotExist();
932
+ assert.dom("[data-test-unlisted-link-checkbox]").isDisabled();
933
+ assert.dom("[data-test-retry-unlisted-link-button]").exists();
934
+ shouldFail = false;
935
+ await click("[data-test-retry-unlisted-link-button]");
936
+ await waitFor("[data-test-unlisted-link-url]");
937
+ assert.dom("[data-test-unlisted-link-error]").doesNotExist();
938
+ assert.dom("[data-test-unlisted-link-url]").hasText(`https://testuser.${publishedSpaceHost}/k7f3qz9pbcdmnpqr/`);
939
+ assert.dom("[data-test-unlisted-link-checkbox]").isNotChecked();
940
+ assert.dom("[data-test-unlisted-link-checkbox]").isNotDisabled();
941
+ } finally {
942
+ realmServer.allocateUnlistedPath = original;
943
+ }
944
+ });
945
+ (0, import_qunit.test)("preselects a previously published unlisted link on refresh", async function(assert) {
946
+ let now = Date.now();
947
+ let slug = "k7f3qz9pbcdmnpqr";
948
+ let unlistedUrl = `https://testuser.${publishedSpaceHost}/${slug}/`;
949
+ let restoreUnlisted = stubUnlistedPath(slug);
950
+ let restoreRealmInfo = withUpdatedTestRealmInfo({ lastPublishedAt: { [unlistedUrl]: String(now) } });
951
+ try {
952
+ await visitOperatorMode({
953
+ submode: "host",
954
+ trail: [`${testRealmURL}Person/1.json`]
955
+ });
956
+ await click("[data-test-publish-realm-button]");
957
+ await waitFor("[data-test-publish-realm-modal]");
958
+ await waitFor("[data-test-unlisted-link-url]");
959
+ assert.dom("[data-test-unlisted-link-url]").hasText(unlistedUrl);
960
+ assert.dom("[data-test-unlisted-link-checkbox]").isChecked();
961
+ assert.dom("[data-test-publish-button]").isNotDisabled();
962
+ } finally {
963
+ restoreRealmInfo();
964
+ restoreUnlisted();
965
+ }
966
+ });
967
+ (0, import_qunit.test)("can unpublish realm", async function(assert) {
968
+ let restoreRealmInfo = withUpdatedTestRealmInfo({ lastPublishedAt: { [`https://testuser.${publishedSpaceHost}/test/`]: ((/* @__PURE__ */ new Date()).getTime() - 4320 * 60 * 1e3).toString() } });
969
+ try {
970
+ await visitOperatorMode({
971
+ submode: "host",
972
+ trail: [`${testRealmURL}Person/1.json`]
973
+ });
974
+ await click("[data-test-publish-realm-button]");
975
+ assert.dom("[data-test-last-published-at]").containsText("3 days ago");
976
+ assert.dom("[data-test-unpublish-button]").exists();
977
+ assert.dom("[data-test-open-site-button]").exists();
978
+ await click("[data-test-unpublish-button]");
979
+ assert.dom("[data-test-unpublish-button]").hasText("Unpublishing…");
980
+ unpublishDeferred.fulfill();
981
+ await waitUntil(() => {
982
+ return !document.querySelector("[data-test-unpublish-button]");
983
+ });
984
+ assert.dom("[data-test-last-published-at]").doesNotExist();
985
+ assert.dom("[data-test-unpublish-button]").doesNotExist();
986
+ assert.dom("[data-test-open-site-button]").doesNotExist();
987
+ } finally {
988
+ restoreRealmInfo();
989
+ }
990
+ });
991
+ (0, import_qunit.test)("open site button only appears when realm is published", async function(assert) {
992
+ await visitOperatorMode({
993
+ submode: "host",
994
+ trail: [`${testRealmURL}Person/1.json`]
995
+ });
996
+ assert.dom("[data-test-open-site-button]").doesNotExist();
997
+ });
998
+ (0, import_qunit.test)("can claim domain for boxel site", async function(assert) {
999
+ let mockDomainValidationResponse = async (request) => {
1000
+ if (!request.url.includes("_check-boxel-domain-availability")) return null;
1001
+ return new Response(JSON.stringify({
1002
+ available: true,
1003
+ domain: "my-boxel-site.localhost"
1004
+ }), { headers: { "Content-Type": "application/json" } });
1005
+ };
1006
+ let mockClaimedDomainResponse = async (request) => {
1007
+ if (request.method !== "POST" || !request.url.includes("_boxel-claimed-domains")) return null;
1008
+ return new Response(JSON.stringify({ data: {
1009
+ type: "claimed-domain",
1010
+ id: "1",
1011
+ attributes: {
1012
+ hostname: "my-boxel-site.localhost",
1013
+ subdomain: "my-boxel-site",
1014
+ sourceRealmURL: testRealmURL
1015
+ }
1016
+ } }), { headers: { "Content-Type": "application/vnd.api+json" } });
1017
+ };
1018
+ getService("network").mount(mockDomainValidationResponse, { prepend: true });
1019
+ getService("network").mount(mockClaimedDomainResponse, { prepend: true });
1020
+ await visitOperatorMode({
1021
+ submode: "host",
1022
+ trail: [`${testRealmURL}Person/1.json`]
1023
+ });
1024
+ await click("[data-test-publish-realm-button]");
1025
+ assert.dom("[data-test-custom-subdomain-input]").doesNotExist();
1026
+ await click("[data-test-custom-subdomain-setup-button]");
1027
+ assert.dom("[data-test-boxel-button]").isDisabled();
1028
+ await fillIn("[data-test-custom-subdomain-input] input", "my-boxel-site");
1029
+ assert.dom("[data-test-claim-custom-subdomain-button]").isNotDisabled();
1030
+ await click("[data-test-claim-custom-subdomain-button]");
1031
+ assert.dom("[data-test-custom-subdomain-cancel]").doesNotExist();
1032
+ assert.dom("[data-test-custom-subdomain-setup-button]").doesNotExist();
1033
+ assert.dom("[data-test-custom-subdomain-details]").includesText(`https://my-boxel-site.${publishedSpaceHost}/ Not published yet`);
1034
+ assert.dom("[data-test-unclaim-custom-subdomain-button]").exists();
1035
+ assert.dom("[data-test-custom-subdomain-checkbox]").isChecked();
1036
+ });
1037
+ (0, import_qunit.test)("shows error when claiming domain fails with 422", async function(assert) {
1038
+ let mockDomainValidationResponse = async (request) => {
1039
+ if (!request.url.includes("_check-boxel-domain-availability")) return null;
1040
+ return new Response(JSON.stringify({
1041
+ available: true,
1042
+ domain: "my-boxel-site.localhost"
1043
+ }), { headers: { "Content-Type": "application/json" } });
1044
+ };
1045
+ let mockClaimedDomainError = async (request) => {
1046
+ if (request.method !== "POST" || !request.url.includes("_boxel-claimed-domains")) return null;
1047
+ return new Response("There was an error claiming this domain", {
1048
+ status: 422,
1049
+ headers: { "Content-Type": "application/vnd.api+json" }
1050
+ });
1051
+ };
1052
+ getService("network").mount(mockDomainValidationResponse, { prepend: true });
1053
+ getService("network").mount(mockClaimedDomainError, { prepend: true });
1054
+ await visitOperatorMode({
1055
+ submode: "host",
1056
+ trail: [`${testRealmURL}Person/1.json`]
1057
+ });
1058
+ await click("[data-test-publish-realm-button]");
1059
+ await click("[data-test-custom-subdomain-setup-button]");
1060
+ await fillIn("[data-test-custom-subdomain-input] input", "my-boxel-site");
1061
+ await click("[data-test-claim-custom-subdomain-button]");
1062
+ assert.dom("[data-test-custom-subdomain-cancel]").exists();
1063
+ assert.dom("[data-test-custom-subdomain-input]").exists();
1064
+ assert.dom("[data-test-boxel-input-group-error-message]").hasText("There was an error claiming this domain");
1065
+ });
1066
+ (0, import_qunit.test)("open site popover shows published realms and opens them correctly", async function(assert) {
1067
+ let now = Date.now();
1068
+ let restoreRealmInfo = withUpdatedTestRealmInfo({ lastPublishedAt: {
1069
+ [`https://testuser.${publishedSpaceHost}/test/`]: String(now),
1070
+ "https://another-domain.com/realm/": String(now - 1e3)
1071
+ } });
1072
+ try {
1073
+ await visitOperatorMode({
1074
+ submode: "host",
1075
+ trail: [`${testRealmURL}Person/1.json`]
1076
+ });
1077
+ assert.dom("[data-test-open-site-button]").hasAttribute("href", `https://testuser.${publishedSpaceHost}/test/Person/1`).hasAttribute("target", "_blank");
1078
+ await triggerEvent("[data-test-open-site-button]", "mouseenter");
1079
+ await waitFor("[data-test-tooltip-content]");
1080
+ assert.dom("[data-test-tooltip-content]").hasText("Open Site in a New Tab (Shift+Click for options)", "Tooltip shows correct text when menu is closed");
1081
+ assert.dom("[data-test-open-site-popover]").doesNotExist();
1082
+ await click("[data-test-open-site-button]", { shiftKey: true });
1083
+ assert.dom("[data-test-open-site-popover]").exists();
1084
+ assert.dom("[data-test-published-realm-item]").exists({ count: 2 });
1085
+ assert.dom("[data-test-published-realm-item] [data-test-open-site-button]").exists({ count: 2 });
1086
+ assert.dom(`[data-test-published-realm-item="https://testuser.${publishedSpaceHost}/test/Person/1"]`).exists();
1087
+ assert.dom("[data-test-published-realm-item=\"https://another-domain.com/realm/Person/1\"]").exists();
1088
+ assert.dom(`[data-test-published-realm-item="https://testuser.${publishedSpaceHost}/test/Person/1"] [data-test-open-site-button]`).hasAttribute("href", `https://testuser.${publishedSpaceHost}/test/Person/1`).hasAttribute("target", "_blank");
1089
+ assert.dom("[data-test-published-realm-item=\"https://another-domain.com/realm/Person/1\"] [data-test-open-site-button]").hasAttribute("href", "https://another-domain.com/realm/Person/1").hasAttribute("target", "_blank");
1090
+ } finally {
1091
+ restoreRealmInfo();
1092
+ }
1093
+ });
1094
+ (0, import_qunit.test)("claimed custom site name displays details and reverts after unclaim", async function(assert) {
1095
+ let realmServer = getService("realm-server");
1096
+ let originalFetchClaimed = realmServer.fetchBoxelClaimedDomain;
1097
+ let originalDeleteClaimed = realmServer.deleteBoxelClaimedDomain;
1098
+ let deleteCalled = false;
1099
+ realmServer.fetchBoxelClaimedDomain = async () => ({
1100
+ id: "claimed-domain-1",
1101
+ hostname: `custom-site-name.${publishedSpaceHost}`,
1102
+ subdomain: "custom-site-name",
1103
+ sourceRealmURL: testRealmURL
1104
+ });
1105
+ realmServer.deleteBoxelClaimedDomain = async () => {
1106
+ deleteCalled = true;
1107
+ realmServer.fetchBoxelClaimedDomain = async () => null;
1108
+ };
1109
+ try {
1110
+ await visitOperatorMode({
1111
+ submode: "host",
1112
+ trail: [`${testRealmURL}Person/1.json`]
1113
+ });
1114
+ await click("[data-test-publish-realm-button]");
1115
+ await waitFor("[data-test-publish-realm-modal]");
1116
+ let customDomainOption = "[data-test-publish-realm-modal] .domain-option:nth-of-type(3)";
1117
+ await waitFor(`${customDomainOption} .realm-icon`);
1118
+ assert.dom(`${customDomainOption} .realm-icon`).exists("shows realm icon when site name is claimed");
1119
+ assert.dom(`${customDomainOption} .domain-url`).hasText(`https://custom-site-name.${publishedSpaceHost}/`, "shows claimed custom site URL");
1120
+ assert.dom("[data-test-unclaim-custom-subdomain-button]").exists("shows unclaim button when domain is claimed");
1121
+ assert.dom("[data-test-custom-subdomain-setup-button]").doesNotExist("setup button hidden while domain is claimed");
1122
+ await click("[data-test-unclaim-custom-subdomain-button]");
1123
+ assert.true(deleteCalled, "unclaim endpoint invoked");
1124
+ await waitUntil(() => {
1125
+ return !document.querySelector(`${customDomainOption} .realm-icon`) && document.querySelector("[data-test-custom-subdomain-setup-button]");
1126
+ });
1127
+ assert.dom("[data-test-custom-subdomain-setup-button]").exists("setup button returns after unclaim");
1128
+ assert.dom("[data-test-unclaim-custom-subdomain-button]").doesNotExist("unclaim button removed after unclaim");
1129
+ assert.dom(`${customDomainOption} .domain-url`).hasText(`https://custom-site-name.${publishedSpaceHost}/`, "displays placeholder custom site URL after unclaim");
1130
+ assert.dom("[data-test-boxel-input-validation-state=\"valid\"]").doesNotExist("validation check mark not displayed after unclaim");
1131
+ } finally {
1132
+ realmServer.fetchBoxelClaimedDomain = originalFetchClaimed;
1133
+ realmServer.deleteBoxelClaimedDomain = originalDeleteClaimed;
1134
+ }
1135
+ });
1136
+ (0, import_qunit.test)("claimed custom domain is preselected even before first publish", async function(assert) {
1137
+ let realmServer = getService("realm-server");
1138
+ let originalFetchClaimed = realmServer.fetchBoxelClaimedDomain;
1139
+ realmServer.fetchBoxelClaimedDomain = async () => ({
1140
+ id: "claimed-domain-1",
1141
+ hostname: `custom-site-name.${publishedSpaceHost}`,
1142
+ subdomain: "custom-site-name",
1143
+ sourceRealmURL: testRealmURL
1144
+ });
1145
+ try {
1146
+ await visitOperatorMode({
1147
+ submode: "host",
1148
+ trail: [`${testRealmURL}Person/1.json`]
1149
+ });
1150
+ await click("[data-test-publish-realm-button]");
1151
+ await waitFor("[data-test-publish-realm-modal]");
1152
+ assert.dom("[data-test-custom-subdomain-checkbox]").isChecked();
1153
+ assert.dom("[data-test-default-domain-checkbox]").isNotChecked();
1154
+ assert.dom("[data-test-publish-button]").isNotDisabled();
1155
+ } finally {
1156
+ realmServer.fetchBoxelClaimedDomain = originalFetchClaimed;
1157
+ }
1158
+ });
1159
+ (0, import_qunit.test)("custom site checkbox can be checked and unchecked", async function(assert) {
1160
+ let realmServer = getService("realm-server");
1161
+ let originalFetchClaimed = realmServer.fetchBoxelClaimedDomain;
1162
+ realmServer.fetchBoxelClaimedDomain = async () => ({
1163
+ id: "claimed-domain-1",
1164
+ hostname: `custom-site-name.${publishedSpaceHost}`,
1165
+ subdomain: "custom-site-name",
1166
+ sourceRealmURL: testRealmURL
1167
+ });
1168
+ try {
1169
+ await visitOperatorMode({
1170
+ submode: "host",
1171
+ trail: [`${testRealmURL}Person/1.json`]
1172
+ });
1173
+ await click("[data-test-publish-realm-button]");
1174
+ await waitFor("[data-test-custom-subdomain-checkbox]");
1175
+ assert.dom("[data-test-custom-subdomain-checkbox]").isChecked();
1176
+ assert.dom("[data-test-publish-button]").isNotDisabled();
1177
+ await click("[data-test-custom-subdomain-checkbox]");
1178
+ assert.dom("[data-test-custom-subdomain-checkbox]").isNotChecked();
1179
+ assert.dom("[data-test-publish-button]").isDisabled();
1180
+ await click("[data-test-custom-subdomain-checkbox]");
1181
+ assert.dom("[data-test-custom-subdomain-checkbox]").isChecked();
1182
+ assert.dom("[data-test-publish-button]").isNotDisabled();
1183
+ } finally {
1184
+ realmServer.fetchBoxelClaimedDomain = originalFetchClaimed;
1185
+ }
1186
+ });
1187
+ (0, import_qunit.test)("shows inline error when publishing to a domain fails", async function(assert) {
1188
+ let publishError = new Deferred();
1189
+ let publishRealm = async () => {
1190
+ await publishError.promise;
1191
+ throw new Error("Network error: Failed to publish realm");
1192
+ };
1193
+ getService("realm-server").publishRealm = publishRealm;
1194
+ await visitOperatorMode({
1195
+ submode: "host",
1196
+ trail: [`${testRealmURL}Person/1.json`]
1197
+ });
1198
+ await click("[data-test-publish-realm-button]");
1199
+ assert.dom("[data-test-publish-realm-modal]").exists();
1200
+ let defaultUrl = `https://testuser.${publishedSpaceHost}/test/`;
1201
+ assert.dom(`[data-test-domain-publish-error="${defaultUrl}"]`).doesNotExist();
1202
+ await click("[data-test-default-domain-checkbox]");
1203
+ await click("[data-test-publish-button]");
1204
+ publishError.reject(/* @__PURE__ */ new Error("Network error: Failed to publish realm"));
1205
+ await waitFor(`[data-test-domain-publish-error="${defaultUrl}"]`);
1206
+ assert.dom(`[data-test-domain-publish-error="${defaultUrl}"]`).exists();
1207
+ assert.dom(`[data-test-domain-publish-error="${defaultUrl}"] .error-text`).hasText("Network error: Failed to publish realm");
1208
+ assert.dom("[data-test-publish-realm-modal]").exists();
1209
+ });
1210
+ (0, import_qunit.test)("a publish whose HTML is still rendering when the wait times out says so and records its publish time", async function(assert) {
1211
+ getService("realm-server").waitForRealmReady = async () => {
1212
+ throw new ReadinessTimeoutError("Timed out after 300000ms waiting for the realm to pass readiness check", { stage: "prerender-html" });
1213
+ };
1214
+ publishDeferred.fulfill();
1215
+ await visitOperatorMode({
1216
+ submode: "host",
1217
+ trail: [`${testRealmURL}Person/1.json`]
1218
+ });
1219
+ await click("[data-test-publish-realm-button]");
1220
+ await click("[data-test-default-domain-checkbox]");
1221
+ await click("[data-test-publish-button]");
1222
+ let defaultUrl = `https://testuser.${publishedSpaceHost}/test/`;
1223
+ await waitFor(`[data-test-domain-publish-error="${defaultUrl}"]`);
1224
+ assert.dom(`[data-test-domain-publish-error="${defaultUrl}"] .error-text`).hasText("Published, but the site is taking longer than usual to finish rendering. It goes live when rendering finishes.");
1225
+ assert.dom("[data-test-last-published-at]").containsText("Published", "the accepted publish keeps its time");
1226
+ });
1227
+ (0, import_qunit.test)("a readiness timeout after rendering stalls shows its own reason", async function(assert) {
1228
+ let reason = "Timed out after 300000ms waiting for the realm to pass readiness check, with no progress for the last 300000ms: HTTP 503 (not ready: prerender-html)";
1229
+ getService("realm-server").waitForRealmReady = async () => {
1230
+ throw new ReadinessTimeoutError(reason, {
1231
+ stage: "prerender-html",
1232
+ stalled: true
1233
+ });
1234
+ };
1235
+ publishDeferred.fulfill();
1236
+ await visitOperatorMode({
1237
+ submode: "host",
1238
+ trail: [`${testRealmURL}Person/1.json`]
1239
+ });
1240
+ await click("[data-test-publish-realm-button]");
1241
+ await click("[data-test-default-domain-checkbox]");
1242
+ await click("[data-test-publish-button]");
1243
+ let defaultUrl = `https://testuser.${publishedSpaceHost}/test/`;
1244
+ await waitFor(`[data-test-domain-publish-error="${defaultUrl}"]`);
1245
+ assert.dom(`[data-test-domain-publish-error="${defaultUrl}"] .error-text`).hasText(reason);
1246
+ assert.dom("[data-test-last-published-at]").containsText("Published");
1247
+ });
1248
+ (0, import_qunit.test)("shows inline error for failed domain while allowing successful ones", async function(assert) {
1249
+ let realmServer = getService("realm-server");
1250
+ let originalFetchClaimed = realmServer.fetchBoxelClaimedDomain;
1251
+ let originalPublishRealm = realmServer.publishRealm;
1252
+ realmServer.fetchBoxelClaimedDomain = async () => ({
1253
+ id: "claimed-domain-1",
1254
+ hostname: `my-custom-site.${publishedSpaceHost}`,
1255
+ subdomain: "my-custom-site",
1256
+ sourceRealmURL: testRealmURL
1257
+ });
1258
+ let defaultUrl = `https://testuser.${publishedSpaceHost}/test/`;
1259
+ let customUrl = `https://my-custom-site.${publishedSpaceHost}/`;
1260
+ realmServer.publishRealm = async (_sourceURL, publishedURL) => {
1261
+ await publishDeferred.promise;
1262
+ if (publishedURL === customUrl) throw new Error("Custom domain validation failed");
1263
+ return {
1264
+ sourceRealmURL: _sourceURL,
1265
+ publishedRealmURL: publishedURL,
1266
+ publishedRealmId: "1",
1267
+ lastPublishedAt: String((/* @__PURE__ */ new Date()).getTime()),
1268
+ status: "published"
1269
+ };
1270
+ };
1271
+ try {
1272
+ await visitOperatorMode({
1273
+ submode: "host",
1274
+ trail: [`${testRealmURL}Person/1.json`]
1275
+ });
1276
+ await click("[data-test-publish-realm-button]");
1277
+ await waitFor("[data-test-publish-realm-modal]");
1278
+ assert.dom("[data-test-custom-subdomain-checkbox]").isChecked();
1279
+ assert.dom("[data-test-default-domain-checkbox]").isNotChecked();
1280
+ await click("[data-test-default-domain-checkbox]");
1281
+ await click("[data-test-publish-button]");
1282
+ publishDeferred.fulfill();
1283
+ await waitUntil(() => {
1284
+ return !document.querySelector("[data-test-publish-realm-button].publishing");
1285
+ });
1286
+ await click("[data-test-publish-realm-button]");
1287
+ assert.dom("[data-test-publish-realm-modal] .domain-option:nth-of-type(1)").containsText("Published");
1288
+ assert.dom(`[data-test-domain-publish-error="${customUrl}"]`).exists();
1289
+ assert.dom(`[data-test-domain-publish-error="${customUrl}"] .error-text`).hasText("Custom domain validation failed");
1290
+ assert.dom(`[data-test-domain-publish-error="${defaultUrl}"]`).doesNotExist();
1291
+ } finally {
1292
+ realmServer.fetchBoxelClaimedDomain = originalFetchClaimed;
1293
+ realmServer.publishRealm = originalPublishRealm;
1294
+ }
1295
+ });
1296
+ (0, import_qunit.test)("can publish claimed domain", async function(assert) {
1297
+ let realmServer = getService("realm-server");
1298
+ let originalFetchClaimed = realmServer.fetchBoxelClaimedDomain;
1299
+ realmServer.fetchBoxelClaimedDomain = async () => ({
1300
+ id: "claimed-domain-1",
1301
+ hostname: `my-custom-site.${publishedSpaceHost}`,
1302
+ subdomain: "my-custom-site",
1303
+ sourceRealmURL: testRealmURL
1304
+ });
1305
+ try {
1306
+ await visitOperatorMode({
1307
+ submode: "host",
1308
+ trail: [`${testRealmURL}Person/1.json`]
1309
+ });
1310
+ await click("[data-test-publish-realm-button]");
1311
+ await waitFor("[data-test-publish-realm-modal]");
1312
+ await click("[data-test-default-domain-checkbox]");
1313
+ assert.dom("[data-test-default-domain-checkbox]").isChecked();
1314
+ assert.dom("[data-test-custom-subdomain-checkbox]").isChecked();
1315
+ await click("[data-test-publish-button]");
1316
+ assert.dom("[data-test-publish-button]").hasText("Publishing…");
1317
+ publishDeferred.fulfill();
1318
+ await waitUntil(() => {
1319
+ return !document.querySelector("[data-test-publish-realm-button].publishing");
1320
+ });
1321
+ await click("[data-test-publish-realm-button]");
1322
+ assert.dom("[data-test-publish-realm-modal] .domain-option:nth-of-type(1)").containsText("Published");
1323
+ assert.dom("[data-test-publish-realm-modal] .domain-option:nth-of-type(3)").containsText("Published");
1324
+ assert.dom("[data-test-unpublish-button]").exists();
1325
+ assert.dom("[data-test-unpublish-custom-subdomain-button]").exists();
1326
+ await waitFor("[data-test-open-custom-subdomain-button]");
1327
+ assert.dom("[data-test-open-custom-subdomain-button]").exists();
1328
+ assert.dom("[data-test-open-custom-subdomain-button]").hasAttribute("href", `https://my-custom-site.${publishedSpaceHost}/`).hasAttribute("target", "_blank");
1329
+ } finally {
1330
+ realmServer.fetchBoxelClaimedDomain = originalFetchClaimed;
1331
+ }
1332
+ });
1333
+ (0, import_qunit.test)("custom subdomain checkbox is checked when modal opens with claimed domain", async function(assert) {
1334
+ let realmServer = getService("realm-server");
1335
+ let originalFetchClaimed = realmServer.fetchBoxelClaimedDomain;
1336
+ realmServer.fetchBoxelClaimedDomain = async () => ({
1337
+ id: "claimed-domain-1",
1338
+ hostname: `my-custom-site.${publishedSpaceHost}`,
1339
+ subdomain: "my-custom-site",
1340
+ sourceRealmURL: testRealmURL
1341
+ });
1342
+ try {
1343
+ await visitOperatorMode({
1344
+ submode: "host",
1345
+ trail: [`${testRealmURL}Person/1.json`]
1346
+ });
1347
+ await click("[data-test-publish-realm-button]");
1348
+ await waitFor("[data-test-publish-realm-modal]");
1349
+ assert.dom("[data-test-custom-subdomain-checkbox]").isChecked();
1350
+ assert.dom("[data-test-publish-realm-modal] .domain-option:nth-of-type(3)").containsText("Not published yet");
1351
+ await click("[data-test-custom-subdomain-checkbox]");
1352
+ assert.dom("[data-test-custom-subdomain-checkbox]").isNotChecked();
1353
+ } finally {
1354
+ realmServer.fetchBoxelClaimedDomain = originalFetchClaimed;
1355
+ }
1356
+ });
1357
+ (0, import_qunit.test)("can unpublish claimed domain", async function(assert) {
1358
+ let realmServer = getService("realm-server");
1359
+ let originalFetchClaimed = realmServer.fetchBoxelClaimedDomain;
1360
+ realmServer.fetchBoxelClaimedDomain = async () => ({
1361
+ id: "claimed-domain-1",
1362
+ hostname: `my-custom-site.${publishedSpaceHost}`,
1363
+ subdomain: "my-custom-site",
1364
+ sourceRealmURL: testRealmURL
1365
+ });
1366
+ let restoreRealmInfo = withUpdatedTestRealmInfo({ lastPublishedAt: { [`https://my-custom-site.${publishedSpaceHost}/`]: ((/* @__PURE__ */ new Date()).getTime() - 2880 * 60 * 1e3).toString() } });
1367
+ try {
1368
+ await visitOperatorMode({
1369
+ submode: "host",
1370
+ trail: [`${testRealmURL}Person/1.json`]
1371
+ });
1372
+ await click("[data-test-publish-realm-button]");
1373
+ await waitFor("[data-test-publish-realm-modal]");
1374
+ assert.dom("[data-test-publish-realm-modal] .domain-option:nth-of-type(3) .last-published-at").containsText("Published 2 days ago");
1375
+ assert.dom("[data-test-unpublish-custom-subdomain-button]").exists();
1376
+ await click("[data-test-unpublish-custom-subdomain-button]");
1377
+ assert.dom("[data-test-unpublish-custom-subdomain-button]").hasText("Unpublishing…");
1378
+ unpublishDeferred.fulfill();
1379
+ await waitUntil(() => {
1380
+ return !document.querySelector("[data-test-unpublish-custom-subdomain-button]");
1381
+ });
1382
+ assert.dom("[data-test-publish-realm-modal] .domain-option:nth-of-type(3) .not-published-yet").exists();
1383
+ assert.dom("[data-test-publish-realm-modal] .domain-option:nth-of-type(3)").containsText("Not published yet");
1384
+ } finally {
1385
+ restoreRealmInfo();
1386
+ realmServer.fetchBoxelClaimedDomain = originalFetchClaimed;
1387
+ }
1388
+ });
1389
+ });
1390
+ });
1391
+ });
1392
+ //#endregion