@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
@@ -1,2058 +0,0 @@
1
- import { s as __toESM } from "./chunk-Rp0pCe6z.js";
2
- import { Br as testRealmURL, Lr as testRRI, Ls as wrapper_default, Rc as Deferred } from "./runtime-common-BTaLJEw-.js";
3
- import { T as rri } from "./paths-C9-NYXnM.js";
4
- import { D as baseRRI, it as baseRealmRRI } from "./constants-Icc0nFW-.js";
5
- import { _ as fileDefFormats } from "./bfm-card-references-Cjos2rOp.js";
6
- import { n as src_default } from "./src-DPaAwa4H.js";
7
- import { a as CodeModePanelHeights } from "./local-storage-keys-CS7XLz7J.js";
8
- import { n as Submodes } from "./submode-switcher-BpDa9Rui.js";
9
- import { M as waitUntil, T as settled, a as find, c as triggerKeyEvent, d as click, k as visit, o as waitFor, s as fillIn, y as currentURL } from "./dist-BOAdzfkP.js";
10
- import { s as Position } from "./editor.api-BinOIICS.js";
11
- import "./editor.main-BpsSmHD-.js";
12
- import { t as require_qunit } from "./qunit-C-Foo4Nd.js";
13
- import { D as realmConfigCardJSON, Et as percySnapshot, F as setupLocalIndexing, I as setupOnSave, L as setupRealmCacheTeardown, S as getMonacoContent, Z as withCachedRealmSetup, a as SYSTEM_CARD_FIXTURE_CONTENTS, ct as setupApplicationTest, j as setupAcceptanceTestRealm, k as setMonacoContent, mt as setupAuthEndpoints, st as visitOperatorMode, t as setupMockMatrix, u as cardDefFieldCount, v as elementIsVisible, w as makeMinimalPng, z as setupUserSubscription } from "./mock-matrix-Dd8k0DNa.js";
14
- import { r as getService } from "./dist-CPfIHBla.js";
15
- import { t as assertRecentFileURLs } from "./recent-files-cards-Ccqvv5_n.js";
16
- //#region tests/acceptance/code-submode/inspector-test.ts
17
- var import_qunit = /* @__PURE__ */ __toESM(require_qunit());
18
- var testRealmURL2 = "http://test-realm/test2/";
19
- var realmAFiles = {
20
- "realm.json": realmConfigCardJSON({
21
- name: "Test Workspace A",
22
- backgroundURL: "/test-fixtures/realm-images/pawel-czerwinski-Ly-ZLa-A5jti-Y-unsplash.jpg",
23
- iconURL: "/test-fixtures/realm-images/boxel-logo.png"
24
- }),
25
- "index.json": { data: {
26
- type: "card",
27
- attributes: {},
28
- meta: { adoptsFrom: {
29
- module: "@cardstack/base/cards-grid",
30
- name: "CardsGrid"
31
- } }
32
- } }
33
- };
34
- var indexCardSource = `
35
- import { CardDef, Component } from "@cardstack/base/card-api";
36
-
37
- export class Index extends CardDef {
38
- static isolated = class Isolated extends Component<typeof this> {
39
- <template>
40
- <div data-test-index-card>
41
- Hello, world!
42
- </div>
43
- </template>
44
- };
45
- }
46
- `;
47
- var personCardSource = `
48
- import { contains, containsMany, field, linksToMany, CardDef, Component } from "@cardstack/base/card-api";
49
- import StringField from "@cardstack/base/string";
50
- import { Friend } from './friend';
51
-
52
- export class Person extends CardDef {
53
- static displayName = 'Person';
54
- @field firstName = contains(StringField);
55
- @field lastName = contains(StringField);
56
- @field cardTitle = contains(StringField, {
57
- computeVia: function (this: Person) {
58
- return [this.firstName, this.lastName].filter(Boolean).join(' ');
59
- },
60
- });
61
- @field friends = linksToMany(Friend);
62
- @field address = containsMany(StringField);
63
- static isolated = class Isolated extends Component<typeof this> {
64
- <template>
65
- <div data-test-person>
66
- <p>First name: <@fields.firstName /></p>
67
- <p>Last name: <@fields.lastName /></p>
68
- <p>Title: <@fields.cardTitle /></p>
69
- <p>Address List: <@fields.address /></p>
70
- <p>Friends: <@fields.friends /></p>
71
- </div>
72
- <style scoped>
73
- div {
74
- color: green;
75
- content: '';
76
- }
77
- </style>
78
- </template>
79
- };
80
- }
81
- `;
82
- var petCardSource = `
83
- import { contains, field, Component, CardDef } from "@cardstack/base/card-api";
84
- import StringField from "@cardstack/base/string";
85
-
86
- export class Pet extends CardDef {
87
- static displayName = 'Pet';
88
- @field name = contains(StringField);
89
- @field cardTitle = contains(StringField, {
90
- computeVia: function (this: Pet) {
91
- return this.name;
92
- },
93
- });
94
- static embedded = class Embedded extends Component<typeof this> {
95
- <template>
96
- <h3 data-test-pet={{@model.name}}>
97
- <@fields.name/>
98
- </h3>
99
- </template>
100
- }
101
- }
102
- `;
103
- var employeeCardSource = `
104
- import {
105
- contains,
106
- field,
107
- Component,
108
- } from '@cardstack/base/card-api';
109
- import StringField from '@cardstack/base/string';
110
- import { Person } from './person';
111
-
112
- export class Employee extends Person {
113
- static displayName = 'Employee';
114
- @field department = contains(StringField);
115
-
116
- static isolated = class Isolated extends Component<typeof this> {
117
- <template>
118
- <@fields.firstName /> <@fields.lastName />
119
-
120
- Department: <@fields.department />
121
- </template>
122
- };
123
- }
124
- `;
125
- var erroringModuleSource = `throw new Error('boom');`;
126
- var brokenThenFixedSource = `throw new Error('initial broken module');`;
127
- var brokenThenFixedValidSource = `
128
- import { CardDef } from '@cardstack/base/card-api';
129
- export class BrokenThenFixed extends CardDef {
130
- static displayName = 'Broken Then Fixed';
131
- }
132
- `;
133
- var inThisFileSource = `
134
- import {
135
- contains,
136
- field,
137
- CardDef,
138
- FieldDef,
139
- } from '@cardstack/base/card-api';
140
- import StringField from '@cardstack/base/string';
141
-
142
- export const exportedVar = 'exported var';
143
-
144
- const localVar = 'local var';
145
-
146
- class LocalClass {}
147
- export class ExportedClass {}
148
-
149
- export class ExportedClassInheritLocalClass extends LocalClass {}
150
-
151
- function localFunction() {}
152
- export function exportedFunction() {}
153
-
154
- export { LocalClass as AClassWithExportName };
155
-
156
- class LocalCard extends CardDef {
157
- static displayName = 'local card';
158
- }
159
-
160
- export class ExportedCard extends CardDef {
161
- static displayName = 'exported card';
162
- @field someString = contains(StringField);
163
- }
164
-
165
- export class ExportedCardInheritLocalCard extends LocalCard {
166
- static displayName = 'exported card extends local card';
167
- }
168
-
169
- class LocalField extends FieldDef {
170
- static displayName = 'local field';
171
- }
172
- export class ExportedField extends FieldDef {
173
- static displayName = 'exported field';
174
- @field someString = contains(StringField);
175
- }
176
-
177
- export class ExportedFieldInheritLocalField extends LocalField {
178
- static displayName = 'exported field extends local field';
179
- }
180
-
181
- class LocalCardWithoutExportRelationship extends CardDef {
182
- static displayName = 'local card but without export relationship';
183
- }
184
-
185
- export default class DefaultClass {}
186
- `;
187
- var exportedCardFieldCount = `${cardDefFieldCount + 1}`;
188
- var commandModuleSource = `
189
- import { Command } from '@cardstack/runtime-common';
190
-
191
- export class SampleCommand extends Command {
192
- async getInputType() {
193
- return undefined;
194
- }
195
-
196
- protected async run(input) {
197
- return input;
198
- }
199
- }
200
- `;
201
- var componentModuleSource = `
202
- import GlimmerComponent from '@glimmer/component';
203
-
204
- export default class SampleComponent extends GlimmerComponent {
205
- <template>
206
- <div data-test-sample-component>Hello</div>
207
- </template>
208
- }
209
- `;
210
- var friendCardSource = `
211
- import { contains, linksTo, field, CardDef, Component } from "@cardstack/base/card-api";
212
- import StringField from "@cardstack/base/string";
213
-
214
- export class Friend extends CardDef {
215
- static displayName = 'Friend';
216
- @field name = contains(StringField);
217
- @field friend = linksTo(() => Friend);
218
- @field cardTitle = contains(StringField, {
219
- computeVia: function (this: Person) {
220
- return name;
221
- },
222
- });
223
- static isolated = class Isolated extends Component<typeof this> {
224
- <template>
225
- <div data-test-person>
226
- <p>First name: <@fields.firstName /></p>
227
- <p>Last name: <@fields.lastName /></p>
228
- <p>Title: <@fields.cardTitle /></p>
229
- </div>
230
- <style scoped>
231
- div {
232
- color: green;
233
- content: '';
234
- }
235
- </style>
236
- </template>
237
- };
238
- }
239
- `;
240
- var navigatorCardSource = `
241
- import { contains, field, linksTo, CardDef, Component } from "@cardstack/base/card-api";
242
- import { on } from '@ember/modifier';
243
- import StringField from "@cardstack/base/string";
244
-
245
- export class Navigator extends CardDef {
246
- static displayName = 'Navigator';
247
- @field name = contains(StringField);
248
- @field target = linksTo(() => Navigator);
249
- static isolated = class Isolated extends Component<typeof this> {
250
- openTarget = () => {
251
- let { target } = this.args.model;
252
- if (target) {
253
- this.args.viewCard?.(target);
254
- }
255
- };
256
- <template>
257
- <div data-test-navigator>
258
- <button
259
- type='button'
260
- data-test-open-target
261
- {{on 'click' this.openTarget}}
262
- >Open target</button>
263
- </div>
264
- </template>
265
- };
266
- }
267
- `;
268
- var exportsSource = `
269
- import {
270
- contains,
271
- field,
272
- CardDef,
273
- FieldDef
274
- } from '@cardstack/base/card-api';
275
- import StringField from '@cardstack/base/string';
276
-
277
- export class AncestorCard1 extends CardDef {
278
- static displayName = 'AncestorCard1';
279
- @field name = contains(StringField);
280
- }
281
-
282
- export class AncestorCard2 extends CardDef {
283
- static displayName = 'AncestorCard2';
284
- @field name = contains(StringField);
285
- }
286
-
287
- export class AncestorCard3 extends CardDef {
288
- static displayName = 'AncestorCard3';
289
- @field name = contains(StringField);
290
- }
291
-
292
- export class AncestorField1 extends FieldDef {
293
- static displayName = 'AncestorField1';
294
- @field name = contains(StringField);
295
- }
296
- `;
297
- var specialExportsSource = `
298
- import {
299
- contains,
300
- field,
301
- CardDef
302
- } from '@cardstack/base/card-api';
303
- import StringField from '@cardstack/base/string';
304
-
305
- class AncestorCard extends CardDef {
306
- static displayName = 'Ancestor';
307
- @field name = contains(StringField);
308
- }
309
-
310
- export default class DefaultAncestorCard extends CardDef {
311
- static displayName = 'DefaultAncestor';
312
- @field name = contains(StringField);
313
- }
314
-
315
- export { AncestorCard as RenamedAncestorCard}
316
- `;
317
- var importsSource = `
318
- import { AncestorCard2, AncestorField1 } from './exports';
319
- import { AncestorCard3 as FatherCard3 } from './exports';
320
- import DefaultAncestorCard from './special-exports';
321
- import { RenamedAncestorCard } from './special-exports';
322
- import {
323
- contains,
324
- field,
325
- linksTo,
326
- linksToMany
327
- } from '@cardstack/base/card-api';
328
-
329
- export class ChildCard1 extends AncestorCard2 {
330
- static displayName = 'ChildCard1';
331
- @field field1 = contains(AncestorField1)
332
- @field field2 = linksTo(AncestorCard2)
333
- @field field3 = linksTo(()=>ChildCard2)
334
- @field field4 = linksToMany(AncestorCard2)
335
- }
336
-
337
- export class ChildCard2 extends DefaultAncestorCard {
338
- static displayName = 'ChildCard2';
339
- }
340
-
341
- export class ChildCard3 extends RenamedAncestorCard{
342
- static displayName = 'ChildCard3';
343
- }
344
-
345
- export class ChildCard4 extends FatherCard3{
346
- static displayName = 'ChildCard4';
347
- }
348
-
349
- export class ChildCard5 extends ChildCard2 {
350
- static displayName = 'ChildCard5';
351
- }
352
-
353
- export class ChildField1 extends AncestorField1{
354
- static displayName = 'ChildField1';
355
- }
356
- `;
357
- var reExportSource = `
358
- import {
359
- CardDef,
360
- FieldDef,
361
- BaseDef as BDef,
362
- contains,
363
- } from '@cardstack/base/card-api';
364
- import StringField from '@cardstack/base/string';
365
- import NumberField from '@cardstack/base/number';
366
-
367
- export const exportedVar = 'exported var';
368
-
369
- export { StringField as StrCard };
370
-
371
- export { FieldDef as FDef, CardDef, contains, BDef };
372
-
373
- export * from './in-this-file'; //Will not display inside "in-this-file"
374
-
375
- export default NumberField;
376
- export { Person as Human } from './person';
377
-
378
- export { default as Date } from '@cardstack/base/date';
379
- `;
380
- var fileDefSource = `
381
- import { FileDef } from '@cardstack/base/file-api';
382
- import {
383
- contains,
384
- field,
385
- } from '@cardstack/base/card-api';
386
- import StringField from '@cardstack/base/string';
387
-
388
- export class CustomFileDef extends FileDef {
389
- static displayName = 'custom file';
390
- @field customTag = contains(StringField);
391
- }
392
- `;
393
- var pngDefModuleSource = `
394
- export { PngDef } from '@cardstack/base/png-image-def';
395
- `;
396
- var localInheritSource = `
397
- import {
398
- contains,
399
- field,
400
- CardDef,
401
- FieldDef,
402
- } from '@cardstack/base/card-api';
403
-
404
- class GrandParent extends CardDef {
405
- static displayName = 'local grandparent';
406
- }
407
-
408
- class Parent extends GrandParent {
409
- static displayName = 'local parent';
410
- }
411
-
412
- class Activity extends FieldDef {
413
- static displayName = 'my activity';
414
- }
415
- class Hobby extends Activity {
416
- static displayName = 'my hobby';
417
- }
418
- class Sport extends Hobby {
419
- static displayName = 'my sport';
420
- }
421
-
422
- export class Child extends Parent {
423
- static displayName = 'exported child';
424
- @field sport = contains(Sport);
425
- }
426
- `;
427
- (0, import_qunit.module)("Acceptance | code submode | inspector tests", function(hooks) {
428
- let adapter;
429
- let realm;
430
- let monacoService;
431
- setupApplicationTest(hooks);
432
- setupLocalIndexing(hooks);
433
- setupOnSave(hooks);
434
- setupRealmCacheTeardown(hooks);
435
- let mockMatrixUtils = setupMockMatrix(hooks, {
436
- loggedInAs: "@testuser:localhost",
437
- activeRealms: [testRealmURL, testRealmURL2],
438
- autostart: true
439
- });
440
- let { setRealmPermissions, createAndJoinRoom } = mockMatrixUtils;
441
- hooks.beforeEach(async function() {
442
- setRealmPermissions({
443
- [testRealmURL]: ["read", "write"],
444
- [testRealmURL2]: ["read", "write"]
445
- });
446
- createAndJoinRoom({
447
- sender: "@testuser:localhost",
448
- name: "room-test"
449
- });
450
- setupUserSubscription();
451
- setupAuthEndpoints();
452
- ({adapter, realm} = await withCachedRealmSetup(async () => {
453
- await setupAcceptanceTestRealm({
454
- mockMatrixUtils,
455
- contents: {
456
- ...SYSTEM_CARD_FIXTURE_CONTENTS,
457
- ...realmAFiles
458
- },
459
- realmURL: testRealmURL2
460
- });
461
- return setupAcceptanceTestRealm({
462
- mockMatrixUtils,
463
- contents: {
464
- ...SYSTEM_CARD_FIXTURE_CONTENTS,
465
- "index.gts": indexCardSource,
466
- "pet-person.gts": personCardSource,
467
- "person.gts": personCardSource,
468
- "pet.gts": petCardSource,
469
- "friend.gts": friendCardSource,
470
- "navigator.gts": navigatorCardSource,
471
- "Navigator/parent.json": { data: {
472
- attributes: { name: "Parent" },
473
- relationships: { target: { links: { self: "./child" } } },
474
- meta: { adoptsFrom: {
475
- module: "../navigator",
476
- name: "Navigator"
477
- } }
478
- } },
479
- "Navigator/child.json": { data: {
480
- attributes: { name: "Child" },
481
- meta: { adoptsFrom: {
482
- module: "../navigator",
483
- name: "Navigator"
484
- } }
485
- } },
486
- "employee.gts": employeeCardSource,
487
- "in-this-file.gts": inThisFileSource,
488
- "exports.gts": exportsSource,
489
- "special-exports.gts": specialExportsSource,
490
- "imports.gts": importsSource,
491
- "re-export.gts": reExportSource,
492
- "local-inherit.gts": localInheritSource,
493
- "file-def.gts": fileDefSource,
494
- "png-def-module.gts": pngDefModuleSource,
495
- "images/sample.png": makeMinimalPng(),
496
- "images/logo.png": makeMinimalPng(2, 2),
497
- "command-module.gts": commandModuleSource,
498
- "component-module.gts": componentModuleSource,
499
- "erroring-module.gts": erroringModuleSource,
500
- "broken-then-fixed.gts": brokenThenFixedSource,
501
- "empty-file.gts": "",
502
- "sample-styles.css": "body { color: red; }",
503
- "person-entry.json": { data: {
504
- type: "card",
505
- attributes: {
506
- cardTitle: "Person",
507
- cardDescription: "Spec",
508
- specType: "card",
509
- ref: {
510
- module: `./person`,
511
- name: "Person"
512
- }
513
- },
514
- meta: { adoptsFrom: {
515
- module: `${baseRealmRRI}spec`,
516
- name: "Spec"
517
- } }
518
- } },
519
- "index.json": { data: {
520
- type: "card",
521
- attributes: {},
522
- meta: { adoptsFrom: {
523
- module: "./index",
524
- name: "Index"
525
- } }
526
- } },
527
- "léame.md": "hola mundo",
528
- "readme.md": "hello world",
529
- "not-json.json": "I am not JSON.",
530
- "Person/1.json": { data: {
531
- type: "card",
532
- attributes: {
533
- firstName: "Hassan",
534
- lastName: "Abdel-Rahman"
535
- },
536
- meta: { adoptsFrom: {
537
- module: "../person",
538
- name: "Person"
539
- } }
540
- } },
541
- "Pet/mango.json": { data: {
542
- attributes: { name: "Mango" },
543
- meta: { adoptsFrom: {
544
- module: `${testRealmURL}pet`,
545
- name: "Pet"
546
- } }
547
- } },
548
- "Pet/vangogh.json": { data: {
549
- attributes: { name: "Van Gogh" },
550
- meta: { adoptsFrom: {
551
- module: `${testRealmURL}pet`,
552
- name: "Pet"
553
- } }
554
- } },
555
- "z00.json": "{}",
556
- "z01.json": "{}",
557
- "z02.json": "{}",
558
- "z03.json": "{}",
559
- "z04.json": "{}",
560
- "z05.json": "{}",
561
- "z06.json": "{}",
562
- "z07.json": "{}",
563
- "z08.json": "{}",
564
- "z09.json": "{}",
565
- "z10.json": "{}",
566
- "z11.json": "{}",
567
- "z12.json": "{}",
568
- "z13.json": "{}",
569
- "z14.json": "{}",
570
- "z15.json": "{}",
571
- "z16.json": "{}",
572
- "z17.json": "{}",
573
- "z18.json": "{}",
574
- "z19.json": "{}",
575
- "zzz/zzz/file.json": "{}",
576
- "realm.json": realmConfigCardJSON({
577
- name: "Test Workspace B",
578
- backgroundURL: "/test-fixtures/realm-images/pawel-czerwinski-Ly-ZLa-A5jti-Y-unsplash.jpg",
579
- iconURL: "/test-fixtures/realm-images/boxel-logo.png"
580
- })
581
- }
582
- });
583
- }));
584
- monacoService = getService("monaco-service");
585
- });
586
- (0, import_qunit.test)("inspector will show json instance definition and module definition in card inheritance panel", async function(assert) {
587
- await visitOperatorMode({
588
- stacks: [[{
589
- id: `${testRealmURL}Person/1`,
590
- format: "isolated"
591
- }]],
592
- submode: "code",
593
- codePath: `${testRealmURL}Person/1.json`
594
- });
595
- await waitFor("[data-test-card-inspector-panel]");
596
- await waitFor("[data-test-card-module-definition]");
597
- await waitFor("[data-test-card-instance-definition]");
598
- assert.dom("[data-test-card-module-definition]").includesText("Card");
599
- assert.dom("[data-test-card-module-definition] [data-test-definition-file-extension]").includesText(".gts");
600
- await waitFor("[data-test-card-module-definition] [data-test-definition-realm-name]");
601
- assert.dom("[data-test-card-module-definition] [data-test-definition-realm-name]").includesText("Test Workspace B");
602
- assert.dom("[data-test-card-module-definition]").doesNotHaveClass("active");
603
- assert.dom("[data-test-card-instance-definition]").includesText("Hassan Abdel-Rahman");
604
- assert.dom("[data-test-card-instance-definition] [data-test-definition-file-extension]").includesText(".JSON");
605
- await waitFor("[data-test-card-instance-definition] [data-test-definition-realm-name]");
606
- assert.dom("[data-test-card-instance-definition] [data-test-definition-realm-name]").includesText("Test Workspace B");
607
- assert.dom("[data-test-definition-info-text]").includesText("Last saved just now");
608
- assert.dom("[data-test-card-instance-definition] [data-test-definition-header]").hasClass("active");
609
- });
610
- (0, import_qunit.test)("inspector will show module definition in card inheritance panel", async function(assert) {
611
- await visitOperatorMode({
612
- stacks: [[]],
613
- submode: "code",
614
- codePath: `${testRealmURL}person.gts`
615
- });
616
- await waitFor("[data-test-card-inspector-panel]");
617
- await waitFor("[data-test-card-module-definition]");
618
- assert.dom("[data-test-card-module-definition]").includesText("Card");
619
- assert.dom("[data-test-card-url-bar-input]").hasValue(`${testRealmURL}person.gts`);
620
- assert.dom("[data-test-card-module-definition] [data-test-definition-header]").hasClass("active");
621
- assert.dom("[data-test-card-module-definition] [data-test-definition-file-extension]").includesText(".gts");
622
- assert.dom("[data-test-card-url-bar-input]").hasValue(`${testRealmURL}person.gts`);
623
- assert.dom("[data-test-card-module-definition]").includesText("Card");
624
- await waitFor("[data-test-card-module-definition] [data-test-definition-realm-name]");
625
- assert.dom("[data-test-card-module-definition] [data-test-definition-realm-name]").includesText("Test Workspace B");
626
- assert.dom("[data-test-card-instance-definition]").doesNotExist();
627
- });
628
- (0, import_qunit.test)("can switch between inspector showing module definition and inspector showing json instance definition in card inheritance panel", async function(assert) {
629
- await visitOperatorMode({
630
- stacks: [[]],
631
- submode: "code",
632
- codePath: `${testRealmURL}person.gts`
633
- });
634
- await waitFor("[data-test-card-inspector-panel]");
635
- await waitFor("[data-test-card-module-definition]");
636
- assert.dom("[data-test-card-module-definition]").includesText("Card");
637
- assert.dom("[data-test-card-instance-definition]").doesNotExist();
638
- await click("[data-test-file-browser-toggle]");
639
- await click("[data-test-directory=\"Person/\"]");
640
- await waitFor("[data-test-file=\"Person/1.json\"]");
641
- await click("[data-test-file=\"Person/1.json\"]");
642
- await click("[data-test-inspector-toggle]");
643
- await waitFor("[data-test-card-inspector-panel]");
644
- await waitFor("[data-test-card-module-definition]");
645
- assert.dom("[data-test-card-instance-definition]").includesText("Hassan Abdel-Rahman");
646
- assert.dom("[data-test-card-instance-definition] [data-test-definition-file-extension]").includesText(".JSON");
647
- });
648
- (0, import_qunit.test)("\"in-this-file\" panel displays all elements and re-highlights upon selection", async function(assert) {
649
- await visitOperatorMode({
650
- stacks: [[]],
651
- submode: "code",
652
- codePath: `${testRealmURL}in-this-file.gts`
653
- });
654
- await waitFor("[data-test-card-inspector-panel]");
655
- await waitFor("[data-test-current-module-name]");
656
- await waitFor("[data-test-in-this-file-selector]");
657
- let elementName = "default (DefaultClass) class";
658
- assert.dom("[data-test-boxel-selector-item]:nth-of-type(11)").hasText(elementName, "defaults to the last declaration");
659
- assert.true(monacoService.getLineCursorOn()?.includes("DefaultClass"));
660
- [
661
- "AClassWithExportName (LocalClass) class",
662
- "ExportedClass class",
663
- "ExportedClassInheritLocalClass class",
664
- "exportedFunction function",
665
- "LocalCard card def",
666
- "ExportedCard card def",
667
- "ExportedCardInheritLocalCard card def",
668
- "LocalField field def",
669
- "ExportedField field def",
670
- "ExportedFieldInheritLocalField field def",
671
- "default (DefaultClass) class"
672
- ].forEach(async (elementName, index) => {
673
- await waitFor(`[data-test-boxel-selector-item]:nth-of-type(${index + 1})`);
674
- assert.dom(`[data-test-boxel-selector-item]:nth-of-type(${index + 1})`).hasText(elementName);
675
- });
676
- assert.dom("[data-test-boxel-selector-item]").exists({ count: 11 });
677
- assert.dom("[data-test-boxel-selector-item-selected]").hasText(elementName);
678
- assert.dom("[data-test-inheritance-panel-header]").doesNotExist();
679
- elementName = "ExportedCard";
680
- await click(`[data-test-boxel-selector-item-text="${elementName}"]`);
681
- assert.dom("[data-test-boxel-selector-item-selected]").hasText(`${elementName} card def`);
682
- await waitFor("[data-test-card-module-definition]");
683
- assert.dom("[data-test-inheritance-panel-header]").exists();
684
- assert.dom("[data-test-card-module-definition]").exists();
685
- assert.dom("[data-test-definition-header]").includesText("Card Definition");
686
- assert.dom("[data-test-card-module-definition]").includesText("exported card");
687
- await waitFor("[data-test-card-schema=\"exported card\"]");
688
- assert.dom("[data-test-card-schema=\"exported card\"]").exists({ count: 1 });
689
- assert.dom(`[data-test-card-schema="exported card"] [data-test-field-name="someString"] [data-test-card-display-name="String"]`).exists();
690
- assert.dom(`[data-test-total-fields]`).containsText(exportedCardFieldCount);
691
- assert.true(monacoService.getLineCursorOn()?.includes(elementName));
692
- elementName = "ExportedField";
693
- await click(`[data-test-boxel-selector-item-text="${elementName}"]`);
694
- assert.dom("[data-test-boxel-selector-item-selected]").hasText(`${elementName} field def`);
695
- await waitFor("[data-test-card-module-definition]");
696
- assert.dom("[data-test-inheritance-panel-header]").exists();
697
- assert.dom("[data-test-definition-header]").includesText("Field Definition");
698
- assert.dom("[data-test-card-module-definition]").includesText("exported field");
699
- await waitFor("[data-test-card-schema=\"exported field\"]");
700
- assert.dom("[data-test-card-schema=\"exported field\"]").exists({ count: 1 });
701
- assert.dom(`[data-test-total-fields]`).containsText("1");
702
- assert.dom(`[data-test-card-schema="exported field"] [data-test-field-name="someString"] [data-test-card-display-name="String"]`).exists();
703
- assert.true(monacoService.getLineCursorOn()?.includes(elementName));
704
- elementName = "exportedFunction";
705
- await click(`[data-test-boxel-selector-item-text="${elementName}"]`);
706
- assert.dom("[data-test-boxel-selector-item-selected]").hasText(`${elementName} function`);
707
- assert.dom("[data-test-inheritance-panel-header]").doesNotExist();
708
- assert.dom("[data-test-card-module-definition]").doesNotExist();
709
- assert.dom("[data-test-schema-editor-file-incompatibility-message]").hasText(`No tools are available for the selected item: function "exportedFunction". Select a card or field definition in the inspector.`);
710
- assert.true(monacoService.getLineCursorOn()?.includes(elementName));
711
- });
712
- (0, import_qunit.test)("inspector persists scroll position but choosing another element overrides it", async function(assert) {
713
- src_default.localStorage.setItem(CodeModePanelHeights, JSON.stringify({
714
- filePanel: 50,
715
- recentPanel: 50
716
- }));
717
- await visitOperatorMode({
718
- stacks: [[]],
719
- submode: "code",
720
- codePath: `${testRealmURL}in-this-file.gts`
721
- });
722
- let localClassSelector = "[data-test-boxel-selector-item-text=\"LocalClass\"]";
723
- let localClassElement = find(localClassSelector);
724
- if (!localClassElement) assert.ok(localClassElement, "local class should exist");
725
- else {
726
- assert.notOk(await elementIsVisible(localClassElement), "expected local class not to be within view");
727
- localClassElement.scrollIntoView({ block: "center" });
728
- assert.ok(await elementIsVisible(localClassElement), "expected local class to now be within view");
729
- }
730
- await click("[data-test-file-browser-toggle]");
731
- assert.dom(localClassSelector).doesNotExist();
732
- await click("[data-test-inspector-toggle]");
733
- await waitFor(localClassSelector);
734
- let position = new Position(15, 0);
735
- monacoService.updateCursorPosition(position);
736
- await settled();
737
- let exportedClassElement = find("[data-test-boxel-selector-item-text=\"ExportedClass\"]");
738
- if (!exportedClassElement) assert.ok(exportedClassElement, "exported class element should exist");
739
- else assert.ok(await elementIsVisible(exportedClassElement), "expected exported class to have scrolled into view");
740
- });
741
- (0, import_qunit.test)("can duplicate an instance in same realm", async function(assert) {
742
- assert.expect(7);
743
- let operatorModeStateParam = wrapper_default({
744
- stacks: [[]],
745
- submode: "code",
746
- codePath: `${testRealmURL}Pet/vangogh.json`
747
- });
748
- await visit(`/?operatorModeEnabled=true&operatorModeState=${encodeURIComponent(operatorModeStateParam)}`);
749
- await waitFor(`[data-test-action-button="Duplicate"]`);
750
- await click("[data-test-action-button=\"Duplicate\"]");
751
- await waitFor(`[data-test-create-file-modal][data-test-ready] [data-test-realm-name="Test Workspace B"]`);
752
- await percySnapshot(assert);
753
- let deferred = new Deferred();
754
- let id;
755
- this.onSave((url, json) => {
756
- if (typeof json === "string") throw new Error(`expected json save data`);
757
- if (json.data.meta.adoptsFrom?.name === "Pet") {
758
- id = url.href;
759
- assert.strictEqual(json.data.attributes?.name, "Van Gogh", "the name field is correct");
760
- assert.deepEqual(json.data.meta.adoptsFrom, {
761
- module: rri("../pet"),
762
- name: "Pet"
763
- });
764
- assert.strictEqual(json.data.meta.realmURL, testRealmURL);
765
- this.unregisterOnSave?.();
766
- deferred.fulfill();
767
- }
768
- });
769
- await click("[data-test-duplicate-card-instance]");
770
- await waitFor("[data-test-create-file-modal]", { count: 0 });
771
- await deferred.promise;
772
- await settled();
773
- await waitFor(`[data-test-code-mode-card-renderer-header="${id}"]`);
774
- assert.dom("[data-test-card-resource-loaded]").containsText("Pet");
775
- assert.dom(`[data-test-code-mode-card-renderer-header="${id}"] [data-test-realm-icon-url]`).hasAttribute("aria-label", "Test Workspace B");
776
- assert.dom("[data-test-field=\"name\"] input").hasValue("Van Gogh");
777
- assert.dom("[data-test-card-url-bar-input]").hasValue(`${id}.json`);
778
- });
779
- (0, import_qunit.test)("a card in the preview pane can navigate through viewCard", async function(assert) {
780
- await visitOperatorMode({
781
- submode: "code",
782
- codePath: `${testRealmURL}Navigator/parent.json`
783
- });
784
- await waitFor("[data-test-open-target]");
785
- await click("[data-test-open-target]");
786
- await waitFor(`[data-test-code-mode-card-renderer-header="${testRealmURL}Navigator/child"]`);
787
- assert.dom("[data-test-card-url-bar-input]").hasValue(`${testRealmURL}Navigator/child.json`, "the in-card button opened the linked card, like the hover overlays do");
788
- });
789
- (0, import_qunit.test)("can duplicate an instance in different realm", async function(assert) {
790
- assert.expect(8);
791
- let operatorModeStateParam = wrapper_default({
792
- stacks: [[]],
793
- submode: "code",
794
- codePath: `${testRealmURL}Pet/vangogh.json`
795
- });
796
- await visit(`/?operatorModeEnabled=true&operatorModeState=${encodeURIComponent(operatorModeStateParam)}`);
797
- await waitFor(`[data-test-action-button="Duplicate"]`);
798
- await click("[data-test-action-button=\"Duplicate\"]");
799
- await waitFor(`[data-test-create-file-modal][data-test-ready] [data-test-realm-name="Test Workspace B"]`);
800
- await click(`[data-test-realm-dropdown-trigger]`);
801
- await waitFor("[data-test-boxel-menu-item-text=\"Test Workspace A\"]");
802
- await click("[data-test-boxel-menu-item-text=\"Test Workspace A\"]");
803
- await waitFor(`[data-test-realm-name="Test Workspace A"]`);
804
- assert.dom("[data-test-realm-name]").hasText("Test Workspace A");
805
- let deferred = new Deferred();
806
- let id;
807
- this.onSave((url, json) => {
808
- if (typeof json === "string") throw new Error(`expected json save data`);
809
- id = url.href;
810
- assert.strictEqual(json.data.attributes?.name, "Van Gogh", "the name field is correct");
811
- assert.deepEqual(json.data.meta.adoptsFrom, {
812
- module: testRRI("pet"),
813
- name: "Pet"
814
- });
815
- assert.strictEqual(json.data.meta.realmURL, testRealmURL2);
816
- deferred.fulfill();
817
- });
818
- await click("[data-test-duplicate-card-instance]");
819
- await waitFor("[data-test-create-file-modal]", { count: 0 });
820
- await deferred.promise;
821
- await settled();
822
- await waitFor(`[data-test-code-mode-card-renderer-header="${id}"]`);
823
- assert.dom("[data-test-card-resource-loaded]").containsText("Pet");
824
- assert.dom(`[data-test-code-mode-card-renderer-header="${id}"] [data-test-realm-icon-url]`).hasAttribute("aria-label", "Test Workspace A");
825
- assert.dom("[data-test-field=\"name\"] input").hasValue("Van Gogh");
826
- assert.dom("[data-test-card-url-bar-input]").hasValue(`${id}.json`);
827
- });
828
- (0, import_qunit.test)("can delete a card instance from code submode with no recent files to fall back on", async function(assert) {
829
- let recentCardsService = getService("recent-cards-service");
830
- let recentFilesService = getService("recent-files-service");
831
- [`${testRealmURL}Pet/vangogh`, `${testRealmURL}Person/1`].map((url) => recentCardsService.add(url));
832
- recentFilesService.addRecentFileUrl(`${testRealmURL}Pet/vangogh.json`);
833
- await visitOperatorMode({ stacks: [[{
834
- id: `${testRealmURL}Person/1`,
835
- format: "isolated"
836
- }, {
837
- id: `${testRealmURL}Pet/vangogh`,
838
- format: "isolated"
839
- }]] });
840
- assert.dom(`[data-test-stack-card="${testRealmURL}Person/1"]`).exists();
841
- assert.dom(`[data-test-stack-card="${testRealmURL}Pet/vangogh"]`).exists();
842
- await click("[data-test-submode-switcher] button");
843
- await click("[data-test-boxel-menu-item-text=\"Code\"]");
844
- assertRecentFileURLs(assert, recentFilesService.recentFiles, [`${testRealmURL}Pet/vangogh.json`], "recent file is correct");
845
- assert.dom("[data-test-delete-modal-container]").doesNotExist();
846
- assert.dom("[data-test-empty-code-mode]").doesNotExist();
847
- await click("[data-test-action-button=\"Delete\"]");
848
- assert.dom(`[data-test-delete-modal="${testRealmURL}Pet/vangogh"]`).exists();
849
- assert.dom("[data-test-delete-msg]").includesText("Delete the card Van Gogh?");
850
- await percySnapshot(assert);
851
- await click("[data-test-confirm-delete-button]");
852
- assert.dom("[data-test-empty-code-mode]").exists();
853
- await percySnapshot("Acceptance | operator mode tests | can delete a card instance from code submode with no recent files - empty code submode");
854
- await click("[data-test-submode-switcher] button");
855
- await click("[data-test-boxel-menu-item-text=\"Interact\"]");
856
- assert.dom(`[data-test-stack-card="${testRealmURL}Person/1"`).exists();
857
- assert.dom(`[data-test-stack-card="${testRealmURL}Pet/vangogh"`).doesNotExist("stack item removed");
858
- assert.deepEqual(recentCardsService.recentCardIds, [`${testRealmURL}Person/1`], "the deleted card has been removed from recent cards");
859
- assert.deepEqual(recentFilesService.recentFiles.length, 0, "the deleted card has been removed from recent files");
860
- let notFound = await adapter.openFile("Pet/vangogh.json");
861
- assert.strictEqual(notFound, void 0, "file ref does not exist");
862
- assert.dom("[data-test-delete-modal-container]").doesNotExist();
863
- });
864
- (0, import_qunit.test)("Can delete a card instance from code submode and fall back to recent file", async function(assert) {
865
- let recentFilesService = getService("recent-files-service");
866
- await visitOperatorMode({ stacks: [[{
867
- id: `${testRealmURL}Person/1`,
868
- format: "isolated"
869
- }, {
870
- id: `${testRealmURL}Pet/vangogh`,
871
- format: "isolated"
872
- }]] });
873
- assert.dom(`[data-test-stack-card="${testRealmURL}Person/1"]`).exists();
874
- assert.dom(`[data-test-stack-card="${testRealmURL}Pet/vangogh"]`).exists();
875
- await click("[data-test-submode-switcher] button");
876
- await click("[data-test-boxel-menu-item-text=\"Code\"]");
877
- assert.strictEqual(recentFilesService.recentFiles.length, 1);
878
- recentFilesService.addRecentFileUrl(`${testRealmURL}Pet/mango.json`);
879
- assertRecentFileURLs(assert, recentFilesService.recentFiles, [`${testRealmURL}Pet/mango.json`, `${testRealmURL}Pet/vangogh.json`]);
880
- await click("[data-test-action-button=\"Delete\"]");
881
- assert.dom(`[data-test-delete-modal="${testRealmURL}Pet/vangogh"]`).exists();
882
- await click("[data-test-confirm-delete-button]");
883
- assert.dom("[data-test-card-url-bar-input]").hasValue(`${testRealmURL}Pet/mango.json`);
884
- assert.deepEqual(JSON.parse(getMonacoContent()), { data: {
885
- attributes: { name: "Mango" },
886
- meta: { adoptsFrom: {
887
- module: `${testRealmURL}pet`,
888
- name: "Pet"
889
- } }
890
- } });
891
- await click("[data-test-submode-switcher] button");
892
- await click("[data-test-boxel-menu-item-text=\"Interact\"]");
893
- assert.dom(`[data-test-stack-card="${testRealmURL}Person/1"`).exists();
894
- assert.dom(`[data-test-stack-card="${testRealmURL}Pet/vangogh"`).doesNotExist("stack item removed");
895
- assertRecentFileURLs(assert, recentFilesService.recentFiles, [`${testRealmURL}Pet/mango.json`], "the deleted card has been removed from recent files");
896
- });
897
- (0, import_qunit.test)("can delete a card definition and fallback to recent file", async function(assert) {
898
- let recentFilesService = getService("recent-files-service");
899
- await visitOperatorMode({
900
- submode: "code",
901
- codePath: `${testRealmURL}pet.gts`
902
- });
903
- recentFilesService.addRecentFileUrl(`${testRealmURL}Pet/mango.json`);
904
- assertRecentFileURLs(assert, recentFilesService.recentFiles, [`${testRealmURL}Pet/mango.json`, `${testRealmURL}pet.gts`]);
905
- assert.dom("[data-test-delete-modal-container]").doesNotExist();
906
- await click("[data-test-delete-module-button]");
907
- assert.dom(`[data-test-delete-modal="${testRealmURL}pet.gts"]`).exists();
908
- await waitFor("[data-test-also-delete-cards]");
909
- await click("[data-test-also-delete-cards]");
910
- await click("[data-test-confirm-delete-button]");
911
- assert.dom("[data-test-card-url-bar-input]").hasValue(`${testRealmURL}Pet/mango.json`);
912
- assertRecentFileURLs(assert, recentFilesService.recentFiles, [`${testRealmURL}Pet/mango.json`], "the deleted card def has been removed from recent files");
913
- let notFound = await adapter.openFile("pet.gts");
914
- assert.strictEqual(notFound, void 0, "file ref does not exist");
915
- assert.notStrictEqual(await adapter.openFile("Pet/mango.json"), void 0, "unticking keeps the cards that use the definition");
916
- assert.dom("[data-test-delete-modal-container]").doesNotExist();
917
- });
918
- (0, import_qunit.test)("deleting a card definition offers to delete the cards that use it", async function(assert) {
919
- await visitOperatorMode({
920
- submode: "code",
921
- codePath: `${testRealmURL}pet.gts`
922
- });
923
- await click("[data-test-delete-module-button]");
924
- await waitFor("[data-test-cards-using-definition]");
925
- assert.dom("[data-test-cards-using-definition]").includesText("2 cards use this definition and will stop loading:");
926
- assert.dom("[data-test-card-using-definition]").exists({ count: 2 });
927
- assert.dom("[data-test-card-using-definition]").includesText("Mango");
928
- assert.dom("[data-test-also-delete-cards]").isChecked();
929
- assert.dom("[data-test-cards-using-definition]").includesText("Also delete these 2 cards");
930
- await click("[data-test-confirm-delete-button]");
931
- assert.dom("[data-test-delete-modal-container]").doesNotExist();
932
- assert.strictEqual(await adapter.openFile("pet.gts"), void 0, "the definition is deleted");
933
- assert.strictEqual(await adapter.openFile("Pet/mango.json"), void 0, "a card that used it is deleted");
934
- assert.strictEqual(await adapter.openFile("Pet/vangogh.json"), void 0, "the other card that used it is deleted");
935
- });
936
- (0, import_qunit.test)("says so when it cannot check which cards use a definition", async function(assert) {
937
- let store = getService("store");
938
- let original = store.searchEntries;
939
- store.searchEntries = async () => {
940
- throw new Error("search failed");
941
- };
942
- try {
943
- await visitOperatorMode({
944
- submode: "code",
945
- codePath: `${testRealmURL}pet.gts`
946
- });
947
- await click("[data-test-delete-module-button]");
948
- assert.dom("[data-test-cards-using-failed]").includesText("Could not check which cards use this definition");
949
- assert.dom("[data-test-also-delete-cards]").doesNotExist();
950
- assert.dom("[data-test-confirm-delete-button]").isEnabled();
951
- } finally {
952
- store.searchEntries = original;
953
- }
954
- });
955
- (0, import_qunit.test)("holds Delete until it knows which cards use the definition", async function(assert) {
956
- let store = getService("store");
957
- let original = store.searchEntries.bind(store);
958
- let release = new Deferred();
959
- store.searchEntries = async (...args) => {
960
- await release.promise;
961
- return original(...args);
962
- };
963
- try {
964
- await visitOperatorMode({
965
- submode: "code",
966
- codePath: `${testRealmURL}pet.gts`
967
- });
968
- let opening = click("[data-test-delete-module-button]");
969
- await waitFor("[data-test-cards-using-loading]");
970
- assert.dom("[data-test-confirm-delete-button]").isDisabled();
971
- release.fulfill();
972
- await opening;
973
- await waitFor("[data-test-cards-using-definition]");
974
- assert.dom("[data-test-cards-using-loading]").doesNotExist();
975
- assert.dom("[data-test-confirm-delete-button]").isEnabled();
976
- } finally {
977
- store.searchEntries = original;
978
- }
979
- });
980
- (0, import_qunit.test)("keeps the definition when a card that uses it cannot be deleted", async function(assert) {
981
- let operatorModeStateService = getService("operator-mode-state-service");
982
- let original = operatorModeStateService.deleteCard.bind(operatorModeStateService);
983
- operatorModeStateService.deleteCard = async (id) => {
984
- if (id === `${testRealmURL}Pet/mango`) throw new Error("delete failed");
985
- return original(id);
986
- };
987
- try {
988
- await visitOperatorMode({
989
- submode: "code",
990
- codePath: `${testRealmURL}pet.gts`
991
- });
992
- await click("[data-test-delete-module-button]");
993
- await waitFor("[data-test-cards-using-definition]");
994
- await click("[data-test-confirm-delete-button]");
995
- assert.dom("[data-test-delete-modal-container]").includesText("1 card could not be deleted, so the definition was kept. Try again.");
996
- assert.notStrictEqual(await adapter.openFile("pet.gts"), void 0, "the definition is kept");
997
- assert.notStrictEqual(await adapter.openFile("Pet/mango.json"), void 0, "the card that failed to delete is still there");
998
- assert.strictEqual(await adapter.openFile("Pet/vangogh.json"), void 0, "the other card was deleted");
999
- assert.dom("[data-test-cards-using-definition]").includesText("1 card uses this definition");
1000
- } finally {
1001
- operatorModeStateService.deleteCard = original;
1002
- }
1003
- });
1004
- (0, import_qunit.test)("lists five cards and counts the rest", async function(assert) {
1005
- for (let name of [
1006
- "Ada",
1007
- "Bo",
1008
- "Cy",
1009
- "Di"
1010
- ]) await realm.write(`Pet/${name.toLowerCase()}.json`, JSON.stringify({ data: {
1011
- attributes: { name },
1012
- meta: { adoptsFrom: {
1013
- module: `${testRealmURL}pet`,
1014
- name: "Pet"
1015
- } }
1016
- } }));
1017
- await visitOperatorMode({
1018
- submode: "code",
1019
- codePath: `${testRealmURL}pet.gts`
1020
- });
1021
- await click("[data-test-delete-module-button]");
1022
- await waitFor("[data-test-cards-using-definition]");
1023
- assert.dom("[data-test-cards-using-definition]").includesText("6 cards use this definition and will stop loading:");
1024
- assert.dom("[data-test-card-using-definition]").exists({ count: 5 });
1025
- assert.dom("[data-test-cards-using-definition]").includesText("and 1 more");
1026
- assert.dom("[data-test-cards-using-definition]").includesText("Also delete these 6 cards");
1027
- });
1028
- (0, import_qunit.test)("deleting a module that only re-exports card definitions offers no cards", async function(assert) {
1029
- await visitOperatorMode({
1030
- submode: "code",
1031
- codePath: `${testRealmURL}re-export.gts`
1032
- });
1033
- await click("[data-test-delete-module-button]");
1034
- assert.dom(`[data-test-delete-modal="${testRealmURL}re-export.gts"]`).exists();
1035
- await settled();
1036
- assert.dom("[data-test-cards-using-loading]").doesNotExist("the lookup has finished");
1037
- assert.dom("[data-test-cards-using-failed]").doesNotExist();
1038
- assert.dom("[data-test-cards-using-definition]").doesNotExist();
1039
- assert.dom("[data-test-also-delete-cards]").doesNotExist();
1040
- await click("[data-test-confirm-delete-button]");
1041
- assert.notStrictEqual(await adapter.openFile("Pet/mango.json"), void 0, "cards of the re-exported definitions are kept");
1042
- });
1043
- (0, import_qunit.test)("can delete a card definition with no recent files to fall back on", async function(assert) {
1044
- let recentFilesService = getService("recent-files-service");
1045
- await visitOperatorMode({
1046
- stacks: [[]],
1047
- submode: "code",
1048
- codePath: `${testRealmURL}pet.gts`
1049
- });
1050
- assertRecentFileURLs(assert, recentFilesService.recentFiles, [`${testRealmURL}pet.gts`], "recent file is correct");
1051
- assert.dom("[data-test-empty-code-mode]").doesNotExist();
1052
- await click("[data-test-delete-module-button]");
1053
- assert.dom(`[data-test-delete-modal="${testRealmURL}pet.gts"]`).exists();
1054
- await click("[data-test-confirm-delete-button]");
1055
- assert.dom("[data-test-empty-code-mode]").exists();
1056
- assert.strictEqual(recentFilesService.recentFiles.length, 0, "the deleted card has been removed from recent files");
1057
- assertRecentFileURLs(assert, recentFilesService.recentFiles, [], "recent file is correct");
1058
- let notFound = await adapter.openFile("pet.gts");
1059
- assert.strictEqual(notFound, void 0, "file ref does not exist");
1060
- });
1061
- (0, import_qunit.test)("shows command panel for command declarations", async function(assert) {
1062
- await visitOperatorMode({
1063
- stacks: [[]],
1064
- submode: Submodes.Code,
1065
- codePath: `${testRealmURL}command-module.gts`
1066
- });
1067
- await waitFor("[data-test-tool-panel-header]");
1068
- assert.dom("[data-test-tool-panel-header]").hasText("Tool", "renders tool panel");
1069
- assert.dom("[data-test-card-module-definition]").hasTextContaining("SampleCommand", "shows tool definition details");
1070
- assert.dom("[data-test-boxel-selector-item-selected]").hasText("SampleCommand tool", "selector shows tool type");
1071
- });
1072
- (0, import_qunit.test)("shows component panel and Create Listing action for component declarations", async function(assert) {
1073
- await visitOperatorMode({
1074
- stacks: [[]],
1075
- submode: Submodes.Code,
1076
- codePath: `${testRealmURL}component-module.gts`
1077
- });
1078
- await waitFor("[data-test-component-panel-header]");
1079
- assert.dom("[data-test-component-panel-header]").hasText("Component", "renders component panel");
1080
- assert.dom("[data-test-action-button=\"Create Listing\"]").exists("Create Listing action is available for a component");
1081
- await click("[data-test-action-button=\"Create Listing\"]");
1082
- await waitFor("[data-test-create-listing-modal]");
1083
- assert.dom("[data-test-create-listing-modal]").exists("clicking Create Listing opens the create listing modal");
1084
- });
1085
- (0, import_qunit.test)("can delete a misc file", async function(assert) {
1086
- await visitOperatorMode({
1087
- stacks: [[]],
1088
- submode: "code",
1089
- codePath: `${testRealmURL}léame.md`
1090
- });
1091
- assert.dom("[data-test-delete-modal-container]").doesNotExist();
1092
- await waitFor(`[data-test-action-button="Delete"]`);
1093
- await click("[data-test-action-button=\"Delete\"]");
1094
- await waitFor(`[data-test-delete-modal="${testRealmURL}l%C3%A9ame.md"]`);
1095
- assert.dom("[data-test-delete-msg]").includesText("Delete the file léame.md?");
1096
- await click("[data-test-confirm-delete-button]");
1097
- await waitFor("[data-test-empty-code-mode]");
1098
- let notFound = await adapter.openFile("léame.md");
1099
- assert.strictEqual(notFound, void 0, "file ref does not exist");
1100
- assert.dom("[data-test-delete-modal-container]").doesNotExist();
1101
- });
1102
- (0, import_qunit.test)("After opening inherited definition inside inheritance panel, \"in-this-file\" highlights selected definition", async function(assert) {
1103
- let operatorModeState = {
1104
- stacks: [[]],
1105
- submode: "code",
1106
- codePath: `${testRealmURL}imports.gts`
1107
- };
1108
- await visitOperatorMode(operatorModeState);
1109
- let elementName = "ChildCard1";
1110
- await waitFor(`[data-test-boxel-selector-item-text="${elementName}"]`);
1111
- await click(`[data-test-boxel-selector-item-text="${elementName}"]`);
1112
- assert.operatorModeParametersMatch(currentURL(), { codeSelection: elementName });
1113
- let selected = "AncestorCard2 card def";
1114
- await waitFor(`[data-test-clickable-definition-container]`);
1115
- await click(`[data-test-clickable-definition-container]`);
1116
- await waitFor("[data-test-boxel-selector-item-selected]");
1117
- assert.dom("[data-test-boxel-selector-item-selected]").hasText(selected);
1118
- await visitOperatorMode(operatorModeState);
1119
- elementName = "ChildCard2";
1120
- await waitFor(`[data-test-boxel-selector-item-text="${elementName}"]`);
1121
- await click(`[data-test-boxel-selector-item-text="${elementName}"]`);
1122
- assert.operatorModeParametersMatch(currentURL(), { codeSelection: elementName });
1123
- selected = "default (DefaultAncestorCard) card def";
1124
- await waitFor(`[data-test-clickable-definition-container]`);
1125
- await click(`[data-test-clickable-definition-container]`);
1126
- await waitFor("[data-test-boxel-selector-item-selected]");
1127
- assert.dom("[data-test-boxel-selector-item-selected]").hasText(selected);
1128
- await visitOperatorMode(operatorModeState);
1129
- elementName = "ChildCard3";
1130
- await waitFor(`[data-test-boxel-selector-item-text="${elementName}"]`);
1131
- await click(`[data-test-boxel-selector-item-text="${elementName}"]`);
1132
- assert.operatorModeParametersMatch(currentURL(), { codeSelection: elementName });
1133
- selected = "RenamedAncestorCard (AncestorCard) card def";
1134
- await waitFor(`[data-test-clickable-definition-container]`);
1135
- await click(`[data-test-clickable-definition-container]`);
1136
- await waitFor("[data-test-boxel-selector-item-selected]");
1137
- assert.dom("[data-test-boxel-selector-item-selected]").hasText(selected);
1138
- await visitOperatorMode(operatorModeState);
1139
- elementName = "ChildCard4";
1140
- await waitFor(`[data-test-boxel-selector-item-text="${elementName}"]`);
1141
- await click(`[data-test-boxel-selector-item-text="${elementName}"]`);
1142
- assert.operatorModeParametersMatch(currentURL(), { codeSelection: elementName });
1143
- selected = "AncestorCard3 card def";
1144
- await click(`[data-test-clickable-definition-container]`);
1145
- await waitFor("[data-test-boxel-selector-item-selected]");
1146
- assert.dom("[data-test-boxel-selector-item-selected]").hasText(selected);
1147
- await visitOperatorMode(operatorModeState);
1148
- elementName = "ChildCard5";
1149
- await waitFor(`[data-test-boxel-selector-item-text="${elementName}"]`);
1150
- await click(`[data-test-boxel-selector-item-text="${elementName}"]`);
1151
- assert.operatorModeParametersMatch(currentURL(), { codeSelection: elementName });
1152
- selected = "ChildCard2 card def";
1153
- await waitFor(`[data-test-clickable-definition-container]`);
1154
- await click(`[data-test-clickable-definition-container]`);
1155
- await waitFor("[data-test-boxel-selector-item-selected]");
1156
- assert.dom("[data-test-boxel-selector-item-selected]").hasText(selected);
1157
- await visitOperatorMode(operatorModeState);
1158
- elementName = "ChildField1";
1159
- await waitFor(`[data-test-boxel-selector-item-text="${elementName}"]`);
1160
- await click(`[data-test-boxel-selector-item-text="${elementName}"]`);
1161
- assert.operatorModeParametersMatch(currentURL(), { codeSelection: elementName });
1162
- selected = "AncestorField1 field def";
1163
- await click(`[data-test-clickable-definition-container]`);
1164
- await waitFor("[data-test-boxel-selector-item-selected]");
1165
- assert.dom("[data-test-boxel-selector-item-selected]").hasText(selected);
1166
- });
1167
- (0, import_qunit.test)("After opening definition from card type and fields in module inspector, \"in-this-file\" highlights selected definition", async function(assert) {
1168
- let operatorModeState = {
1169
- submode: Submodes.Code,
1170
- codePath: `${testRealmURL}imports.gts`
1171
- };
1172
- await visitOperatorMode(operatorModeState);
1173
- await visitOperatorMode(operatorModeState);
1174
- await click(`[data-test-boxel-selector-item-text="ChildCard1"]`);
1175
- let elementName = "AncestorCard2";
1176
- await waitFor(`[data-test-card-schema="${elementName}"] [data-test-card-schema-navigational-button]`);
1177
- await click(`[data-test-card-schema="${elementName}"] [data-test-card-schema-navigational-button]`);
1178
- assert.operatorModeParametersMatch(currentURL(), { codeSelection: elementName });
1179
- await waitFor("[data-test-boxel-selector-item-selected]");
1180
- assert.dom("[data-test-boxel-selector-item-selected]").hasText(`${elementName} card def`);
1181
- await visitOperatorMode(operatorModeState);
1182
- elementName = "AncestorField1";
1183
- await waitFor(`[data-test-card-schema="ChildCard1"] [data-test-field-name="field1"] [data-test-card-display-name="${elementName}"]`);
1184
- await click(`[data-test-card-schema="ChildCard1"] [data-test-field-name="field1"] [data-test-card-display-name="${elementName}"]`);
1185
- assert.operatorModeParametersMatch(currentURL(), { codeSelection: elementName });
1186
- await waitFor("[data-test-boxel-selector-item-selected]");
1187
- assert.dom("[data-test-boxel-selector-item-selected]").hasText(`${elementName} field def`);
1188
- await visitOperatorMode(operatorModeState);
1189
- elementName = "AncestorCard2";
1190
- await waitFor(`[data-test-card-schema="ChildCard1"] [data-test-field-name="field2"] [data-test-card-display-name="${elementName}"]`);
1191
- await click(`[data-test-card-schema="ChildCard1"] [data-test-field-name="field2"] [data-test-card-display-name="${elementName}"]`);
1192
- assert.operatorModeParametersMatch(currentURL(), { codeSelection: elementName });
1193
- await waitFor("[data-test-boxel-selector-item-selected]");
1194
- assert.dom("[data-test-boxel-selector-item-selected]").hasText(`${elementName} card def`);
1195
- await visitOperatorMode(operatorModeState);
1196
- elementName = "ChildCard2";
1197
- await waitFor(`[data-test-card-schema="ChildCard1"] [data-test-field-name="field3"] [data-test-card-display-name="${elementName}"]`);
1198
- await click(`[data-test-card-schema="ChildCard1"] [data-test-field-name="field3"] [data-test-card-display-name="${elementName}"]`);
1199
- assert.operatorModeParametersMatch(currentURL(), { codeSelection: elementName });
1200
- await waitFor("[data-test-boxel-selector-item-selected]");
1201
- assert.dom("[data-test-boxel-selector-item-selected]").hasText(`${elementName} card def`);
1202
- await click("[data-boxel-selector-item-text=\"ChildCard1\"]");
1203
- elementName = "AncestorCard2";
1204
- await waitFor(`[data-test-card-schema="ChildCard1"] [data-test-field-name="field4"] [data-test-card-display-name="${elementName}"]`);
1205
- await click(`[data-test-card-schema="ChildCard1"] [data-test-field-name="field4"] [data-test-card-display-name="${elementName}"]`);
1206
- assert.operatorModeParametersMatch(currentURL(), { codeSelection: elementName });
1207
- await waitFor("[data-test-boxel-selector-item-selected]");
1208
- assert.dom("[data-test-boxel-selector-item-selected]").hasText(`${elementName} card def`);
1209
- });
1210
- (0, import_qunit.test)("in-this-file panel displays re-exports", async function(assert) {
1211
- await visitOperatorMode({
1212
- stacks: [[]],
1213
- submode: "code",
1214
- codePath: `${testRealmURL}re-export.gts`
1215
- });
1216
- await waitFor("[data-test-card-inspector-panel]");
1217
- await waitFor("[data-test-current-module-name]");
1218
- await waitFor("[data-test-in-this-file-selector]");
1219
- let elementName = "StrCard (StringField) field def";
1220
- assert.dom("[data-test-boxel-selector-item]:nth-of-type(1)").hasText(elementName);
1221
- [
1222
- "StrCard (StringField) field def",
1223
- "FDef (FieldDef) field def",
1224
- "CardDef card def",
1225
- "BDef base def",
1226
- "default (NumberField) field def",
1227
- "Human (Person) card def",
1228
- "Date (default) field def"
1229
- ].forEach(async (elementName, index) => {
1230
- await waitFor(`[data-test-boxel-selector-item]:nth-of-type(${index + 1})`);
1231
- assert.dom(`[data-test-boxel-selector-item]:nth-of-type(${index + 1})`).hasText(elementName);
1232
- });
1233
- assert.dom("[data-test-boxel-selector-item]").exists({ count: 7 });
1234
- elementName = "BDef";
1235
- await click(`[data-test-boxel-selector-item-text="${elementName}"]`);
1236
- await waitFor("[data-test-boxel-selector-item-selected]");
1237
- assert.dom("[data-test-boxel-selector-item-selected]").hasText(`${elementName} base def`);
1238
- assert.dom("[data-test-inheritance-panel-header]").exists();
1239
- assert.dom("[data-test-card-module-definition]").exists();
1240
- assert.dom("[data-test-definition-header]").includesText("Re-exported Base Definition");
1241
- assert.dom("[data-test-card-module-definition]").includesText("Base");
1242
- assert.true(monacoService.getLineCursorOn()?.includes("BDef"));
1243
- assert.dom("[data-test-file-incompatibility-message]").doesNotExist();
1244
- elementName = "Person";
1245
- await click(`[data-test-boxel-selector-item-text="${elementName}"]`);
1246
- await waitFor("[data-test-boxel-selector-item-selected]");
1247
- assert.dom("[data-test-boxel-selector-item-selected]").hasText(`Human (${elementName}) card def`);
1248
- assert.dom("[data-test-inheritance-panel-header]").exists();
1249
- assert.dom("[data-test-card-module-definition]").exists();
1250
- assert.dom("[data-test-definition-header]").includesText("Re-exported Card Definition");
1251
- assert.dom("[data-test-card-module-definition]").includesText("Card");
1252
- assert.true(monacoService.getLineCursorOn()?.includes("Human"));
1253
- assert.dom("[data-test-file-incompatibility-message]").doesNotExist();
1254
- });
1255
- (0, import_qunit.test)("\"in-this-file\" panel displays FileDef declarations with correct labeling", async function(assert) {
1256
- await visitOperatorMode({
1257
- stacks: [[]],
1258
- submode: "code",
1259
- codePath: `${testRealmURL}file-def.gts`
1260
- });
1261
- await waitFor("[data-test-card-inspector-panel]");
1262
- await waitFor("[data-test-current-module-name]");
1263
- await waitFor("[data-test-in-this-file-selector]");
1264
- assert.dom("[data-test-boxel-selector-item]").exists({ count: 1 });
1265
- assert.dom("[data-test-boxel-selector-item]:nth-of-type(1)").hasText("CustomFileDef file def");
1266
- let elementName = "CustomFileDef";
1267
- await click(`[data-test-boxel-selector-item-text="${elementName}"]`);
1268
- assert.dom("[data-test-boxel-selector-item-selected]").hasText(`${elementName} file def`);
1269
- await waitFor("[data-test-card-module-definition]");
1270
- assert.dom("[data-test-inheritance-panel-header]").exists();
1271
- assert.dom("[data-test-inheritance-panel-header]").hasText("File Def Inheritance");
1272
- assert.dom("[data-test-card-module-definition]").exists();
1273
- assert.dom("[data-test-definition-header]").includesText("File Definition");
1274
- assert.dom("[data-test-card-module-definition]").includesText("custom file");
1275
- assert.dom("[data-test-action-button=\"Inherit\"]").exists("Inherit action is shown for exported FileDef declarations");
1276
- });
1277
- (0, import_qunit.test)("Schema/Playground/Spec panes render for a focused FileDef declaration", async function(assert) {
1278
- await visitOperatorMode({
1279
- stacks: [[]],
1280
- submode: "code",
1281
- codePath: `${testRealmURL}file-def.gts`
1282
- });
1283
- await waitFor("[data-test-card-inspector-panel]");
1284
- await waitFor("[data-test-current-module-name]");
1285
- await waitFor("[data-test-in-this-file-selector]");
1286
- await click(`[data-test-boxel-selector-item-text="CustomFileDef"]`);
1287
- await waitFor("[data-test-card-schema=\"custom file\"]");
1288
- assert.dom("[data-test-card-schema=\"custom file\"]").exists({ count: 1 });
1289
- assert.dom(`[data-test-card-schema="custom file"] [data-test-field-name="customTag"] [data-test-card-display-name="String"]`).exists("customTag field is shown in schema");
1290
- assert.dom("[data-test-module-inspector=\"card-or-field\"]").exists("module inspector 3-pane view renders for FileDef");
1291
- await click("[data-test-module-inspector-view=\"preview\"]");
1292
- assert.dom("[data-test-active-module-inspector-view=\"preview\"]").exists("playground pane renders for FileDef");
1293
- await waitFor("[data-test-playground-filedef-message]");
1294
- assert.dom("[data-test-playground-filedef-message]").includesText("No file instances found", "shows no-instances message for FileDef with no matching files");
1295
- assert.dom("[data-test-instance-chooser]").doesNotExist("instance chooser is not shown when there are no file instances");
1296
- assert.dom("[data-test-playground-format-chooser]").doesNotExist("format chooser is not shown when there are no file instances");
1297
- await click("[data-test-module-inspector-view=\"spec\"]");
1298
- assert.dom("[data-test-active-module-inspector-view=\"spec\"]").exists("spec pane renders for FileDef");
1299
- await click("[data-test-module-inspector-view=\"schema\"]");
1300
- assert.dom("[data-test-active-module-inspector-view=\"schema\"]").exists("schema pane renders for FileDef");
1301
- assert.dom("[data-test-card-schema=\"custom file\"]").exists();
1302
- });
1303
- (0, import_qunit.test)("Playground displays file-meta instances for PngDef with preview, instance chooser, and format chooser", async function(assert) {
1304
- await visitOperatorMode({
1305
- stacks: [[]],
1306
- submode: "code",
1307
- codePath: `${testRealmURL}png-def-module.gts`
1308
- });
1309
- await waitFor("[data-test-card-inspector-panel]");
1310
- await waitFor("[data-test-current-module-name]");
1311
- await waitFor("[data-test-in-this-file-selector]");
1312
- await click("[data-test-boxel-selector-item-text=\"PngDef\"]");
1313
- await click("[data-test-module-inspector-view=\"preview\"]");
1314
- await waitFor("[data-test-instance-chooser]", { timeout: 1e4 });
1315
- assert.dom("[data-test-playground-panel]").exists("playground panel renders");
1316
- assert.dom("[data-test-instance-chooser]").exists("instance chooser is shown");
1317
- assert.dom("[data-test-playground-format-chooser]").exists("format chooser is shown");
1318
- assert.dom("[data-test-playground-filedef-message]").doesNotExist("no-instances message is NOT shown when instances exist");
1319
- assert.dom("[data-test-selected-item]").exists("selected item is displayed");
1320
- assert.dom("[data-test-selected-item]").containsText(".png", "selected item title contains filename");
1321
- assert.dom("[data-test-playground-panel] [data-test-boxel-card-header-title]").exists("card header renders for file preview");
1322
- assert.dom("[data-test-playground-format-chooser] [data-test-format-chooser=\"isolated\"]").exists("isolated format available");
1323
- assert.dom("[data-test-playground-format-chooser] [data-test-format-chooser=\"embedded\"]").exists("embedded format available");
1324
- assert.dom("[data-test-playground-format-chooser] [data-test-format-chooser=\"fitted\"]").exists("fitted format available");
1325
- assert.dom("[data-test-playground-format-chooser] [data-test-format-chooser=\"atom\"]").exists("atom format available");
1326
- assert.dom("[data-test-playground-format-chooser] [data-test-format-chooser=\"edit\"]").doesNotExist("edit format is NOT available for FileDef");
1327
- assert.dom("[data-test-format-chooser=\"isolated\"]").hasClass("active", "isolated is the default active format");
1328
- });
1329
- (0, import_qunit.test)("Playground FileDef format switching renders different formats", async function(assert) {
1330
- await visitOperatorMode({
1331
- stacks: [[]],
1332
- submode: "code",
1333
- codePath: `${testRealmURL}png-def-module.gts`
1334
- });
1335
- await waitFor("[data-test-card-inspector-panel]");
1336
- await waitFor("[data-test-current-module-name]");
1337
- await waitFor("[data-test-in-this-file-selector]");
1338
- await click("[data-test-boxel-selector-item-text=\"PngDef\"]");
1339
- await click("[data-test-module-inspector-view=\"preview\"]");
1340
- await waitFor("[data-test-instance-chooser]", { timeout: 1e4 });
1341
- assert.dom("[data-test-format-chooser]").exists({ count: fileDefFormats.length });
1342
- assert.dom("[data-test-format-chooser=\"isolated\"]").hasClass("active", "starts in isolated format");
1343
- await click("[data-test-format-chooser=\"embedded\"]");
1344
- assert.dom("[data-test-format-chooser=\"isolated\"]").hasNoClass("active", "isolated no longer active");
1345
- assert.dom("[data-test-format-chooser=\"embedded\"]").hasClass("active", "embedded is now active");
1346
- await click("[data-test-format-chooser=\"atom\"]");
1347
- assert.dom("[data-test-format-chooser=\"embedded\"]").hasNoClass("active", "embedded no longer active");
1348
- assert.dom("[data-test-format-chooser=\"atom\"]").hasClass("active", "atom is now active");
1349
- assert.dom("[data-test-atom-preview]").exists("atom preview container renders");
1350
- await click("[data-test-format-chooser=\"fitted\"]");
1351
- assert.dom("[data-test-format-chooser=\"atom\"]").hasNoClass("active", "atom no longer active");
1352
- assert.dom("[data-test-format-chooser=\"fitted\"]").hasClass("active", "fitted is now active");
1353
- });
1354
- (0, import_qunit.test)("Playground FileDef instance selection switches the displayed file", async function(assert) {
1355
- await visitOperatorMode({
1356
- stacks: [[]],
1357
- submode: "code",
1358
- codePath: `${testRealmURL}png-def-module.gts`
1359
- });
1360
- await waitFor("[data-test-card-inspector-panel]");
1361
- await waitFor("[data-test-current-module-name]");
1362
- await waitFor("[data-test-in-this-file-selector]");
1363
- await click("[data-test-boxel-selector-item-text=\"PngDef\"]");
1364
- await click("[data-test-module-inspector-view=\"preview\"]");
1365
- await waitFor("[data-test-instance-chooser]", { timeout: 1e4 });
1366
- let initialTitle = document.querySelector("[data-test-selected-item]")?.textContent?.trim() ?? "";
1367
- assert.ok(initialTitle.length > 0, "initial selection has a title");
1368
- await click("[data-test-instance-chooser]");
1369
- assert.dom("[data-option-index=\"0\"]").exists("first dropdown option exists");
1370
- assert.dom("[data-option-index=\"1\"]").exists("second dropdown option exists");
1371
- await click("[data-option-index=\"1\"]");
1372
- let newTitle = document.querySelector("[data-test-selected-item]")?.textContent?.trim() ?? "";
1373
- assert.ok(newTitle.length > 0, "new selection has a title");
1374
- assert.notEqual(newTitle, initialTitle, "selected instance changed after clicking a different option");
1375
- });
1376
- (0, import_qunit.test)("\"in-this-file\" panel displays local grandfather card. selection will move cursor and display card or field schema", async function(assert) {
1377
- await visitOperatorMode({
1378
- stacks: [[]],
1379
- submode: "code",
1380
- codePath: `${testRealmURL}local-inherit.gts`
1381
- });
1382
- await waitFor("[data-test-card-inspector-panel]");
1383
- await waitFor("[data-test-current-module-name]");
1384
- await waitFor("[data-test-in-this-file-selector]");
1385
- await click(`[data-test-boxel-selector-item-text="GrandParent"]`);
1386
- let elementName = "GrandParent card def";
1387
- assert.dom("[data-test-boxel-selector-item]:nth-of-type(1)").hasText(elementName);
1388
- assert.true(monacoService.getLineCursorOn()?.includes("GrandParent"));
1389
- assert.true(monacoService.getLineCursorOn()?.includes("CardDef"));
1390
- [
1391
- "GrandParent card def",
1392
- "Parent card def",
1393
- "Activity field def",
1394
- "Hobby field def",
1395
- "Sport field def",
1396
- "Child card def"
1397
- ].forEach(async (elementName, index) => {
1398
- await waitFor(`[data-test-boxel-selector-item]:nth-of-type(${index + 1})`);
1399
- assert.dom(`[data-test-boxel-selector-item]:nth-of-type(${index + 1})`).hasText(elementName);
1400
- });
1401
- elementName = "Parent";
1402
- await click(`[data-test-boxel-selector-item-text="${elementName}"]`);
1403
- assert.dom("[data-test-boxel-selector-item-selected]").hasText(`${elementName} card def`);
1404
- await waitFor("[data-test-card-module-definition]");
1405
- assert.dom("[data-test-inheritance-panel-header]").exists();
1406
- assert.dom("[data-test-card-module-definition]").exists();
1407
- assert.dom("[data-test-definition-header]").includesText("Card Definition");
1408
- assert.dom("[data-test-card-module-definition]").includesText("local parent");
1409
- await waitFor("[data-test-card-schema=\"local parent\"]");
1410
- assert.dom("[data-test-card-schema=\"local grandparent\"]").exists({ count: 1 });
1411
- assert.dom(`[data-test-card-schema="local parent"]`).exists();
1412
- assert.dom(`[data-test-card-schema="local grandparent"]`).exists();
1413
- assert.dom(`[data-test-total-fields]`).containsText(`${cardDefFieldCount}`);
1414
- assert.true(monacoService.getLineCursorOn()?.includes(elementName));
1415
- assert.true(monacoService.getLineCursorOn()?.includes("GrandParent"));
1416
- elementName = "Sport";
1417
- await click(`[data-test-boxel-selector-item-text="${elementName}"]`);
1418
- assert.dom("[data-test-boxel-selector-item-selected]").hasText(`${elementName} field def`);
1419
- await waitFor("[data-test-card-module-definition]");
1420
- assert.dom("[data-test-inheritance-panel-header]").exists();
1421
- assert.dom("[data-test-card-module-definition]").exists();
1422
- assert.dom("[data-test-definition-header]").includesText("Field Definition");
1423
- assert.dom("[data-test-card-module-definition]").includesText("my sport");
1424
- await waitFor("[data-test-card-schema=\"my sport\"]");
1425
- assert.dom("[data-test-card-schema=\"my sport\"]").exists({ count: 1 });
1426
- assert.dom(`[data-test-card-schema="my hobby"]`).exists({ count: 1 });
1427
- assert.dom(`[data-test-card-schema="my activity"]`).exists({ count: 1 });
1428
- assert.dom(`[data-test-total-fields]`).containsText("0");
1429
- assert.true(monacoService.getLineCursorOn()?.includes(elementName));
1430
- await waitFor(`[data-test-clickable-definition-container]`);
1431
- await click(`[data-test-clickable-definition-container]`);
1432
- await waitFor("[data-test-boxel-selector-item-selected]");
1433
- assert.dom("[data-test-boxel-selector-item-selected]").hasText("Hobby field def");
1434
- await waitFor("[data-test-card-schema=\"my hobby\"]");
1435
- assert.dom(`[data-test-card-schema="my hobby"]`).exists({ count: 1 });
1436
- assert.dom(`[data-test-card-schema="my activity"]`).exists({ count: 1 });
1437
- assert.dom(`[data-test-total-fields]`).containsText("0");
1438
- assert.true(monacoService.getLineCursorOn()?.includes("Hobby"));
1439
- assert.true(monacoService.getLineCursorOn()?.includes("Activity"));
1440
- });
1441
- (0, import_qunit.test)("\"in-this-file\" panel maintains selection after editing name of declaration", async function(assert) {
1442
- let operatorModeStateParam = wrapper_default({
1443
- stacks: [[]],
1444
- submode: "code",
1445
- codePath: `${testRealmURL}in-this-file.gts`
1446
- });
1447
- await visit(`/?operatorModeEnabled=true&operatorModeState=${encodeURIComponent(operatorModeStateParam)}`);
1448
- await waitFor("[data-test-card-inspector-panel]");
1449
- await waitFor("[data-test-current-module-name]");
1450
- await waitFor("[data-test-in-this-file-selector]");
1451
- let elementName = "default (DefaultClass) class";
1452
- assert.dom("[data-test-boxel-selector-item]:nth-of-type(11)").hasText(elementName);
1453
- assert.true(monacoService.getLineCursorOn()?.includes("DefaultClass"));
1454
- [
1455
- "AClassWithExportName (LocalClass) class",
1456
- "ExportedClass class",
1457
- "ExportedClassInheritLocalClass class",
1458
- "exportedFunction function",
1459
- "LocalCard card def",
1460
- "ExportedCard card def",
1461
- "ExportedCardInheritLocalCard card def",
1462
- "LocalField field def",
1463
- "ExportedField field def",
1464
- "ExportedFieldInheritLocalField field def",
1465
- "default (DefaultClass) class"
1466
- ].forEach(async (elementName, index) => {
1467
- await waitFor(`[data-test-boxel-selector-item]:nth-of-type(${index + 1})`);
1468
- assert.dom(`[data-test-boxel-selector-item]:nth-of-type(${index + 1})`).hasText(elementName);
1469
- });
1470
- assert.dom("[data-test-boxel-selector-item]").exists({ count: 11 });
1471
- assert.dom("[data-test-boxel-selector-item-selected]").hasText(elementName);
1472
- assert.dom("[data-test-inheritance-panel-header]").doesNotExist();
1473
- elementName = "exportedFunction";
1474
- await click(`[data-test-boxel-selector-item-text="${elementName}"]`);
1475
- assert.dom("[data-test-boxel-selector-item-selected]").hasText(`${elementName} function`);
1476
- assert.dom("[data-test-inheritance-panel-header]").doesNotExist();
1477
- assert.dom("[data-test-card-module-definition]").doesNotExist();
1478
- assert.dom("[data-test-schema-editor-file-incompatibility-message]").hasText("No tools are available for the selected item: function \"exportedFunction\". Select a card or field definition in the inspector.");
1479
- assert.true(monacoService.getLineCursorOn()?.includes(elementName));
1480
- let renamedElementName = "exportedFunc";
1481
- setMonacoContent(inThisFileSource.replace("exportedFunction", renamedElementName));
1482
- await waitFor(`[data-test-boxel-selector-item]:nth-of-type(4)`);
1483
- await waitFor("[data-test-code-mode][data-test-save-idle]");
1484
- await waitFor(`[data-test-boxel-selector-item]:nth-of-type(4)`);
1485
- await waitUntil(() => {
1486
- return !document.querySelector("[data-test-boxel-selector-item]:nth-of-type(4)")?.textContent?.includes("exportedFunction");
1487
- });
1488
- assert.dom(`[data-test-boxel-selector-item]:nth-of-type(4)`).hasText(`${renamedElementName} function`);
1489
- assert.dom("[data-test-boxel-selector-item]").exists({ count: 11 });
1490
- assert.dom("[data-test-boxel-selector-item-selected]").hasText(`${renamedElementName} function`);
1491
- assert.dom("[data-test-inheritance-panel-header]").doesNotExist();
1492
- assert.dom("[data-test-boxel-selector-item-selected]").hasText(`${renamedElementName} function`);
1493
- assert.dom("[data-test-inheritance-panel-header]").doesNotExist();
1494
- assert.dom("[data-test-card-module-definition]").doesNotExist();
1495
- assert.dom("[data-test-schema-editor-file-incompatibility-message]").hasText(`No tools are available for the selected item: function "${renamedElementName}". Select a card or field definition in the inspector.`);
1496
- });
1497
- (0, import_qunit.test)("can inherit from an exported card def declaration", async function(assert) {
1498
- assert.expect(11);
1499
- let expectedSrc = `
1500
- import { ExportedCard } from './in-this-file';
1501
- import { Component } from '@cardstack/base/card-api';
1502
- export class TestCard extends ExportedCard {
1503
- static displayName = "Test Card";
1504
- }`.trim();
1505
- await visitOperatorMode({
1506
- stacks: [[]],
1507
- submode: "code",
1508
- codePath: `${testRealmURL}in-this-file.gts`
1509
- });
1510
- await waitFor("[data-boxel-selector-item-text=\"ExportedCard\"]");
1511
- await click("[data-boxel-selector-item-text=\"ExportedCard\"]");
1512
- await waitFor("[data-test-card-module-definition]");
1513
- await click("[data-test-action-button=\"Inherit\"]");
1514
- await waitFor(`[data-test-create-file-modal][data-test-ready] [data-test-realm-name="Test Workspace B"]`);
1515
- assert.dom("[data-test-inherits-from-field] .pill").includesText("exported card", "the inherits from is correct");
1516
- assert.dom("[data-test-create-definition]").isDisabled();
1517
- await fillIn("[data-test-display-name-field]", "Test Card");
1518
- assert.dom("[data-test-create-definition]").isEnabled();
1519
- await fillIn("[data-test-file-name-field]", "/test-card");
1520
- assert.dom("[data-test-create-definition]").isEnabled();
1521
- let deferred = new Deferred();
1522
- this.onSave((_, content) => {
1523
- if (typeof content !== "string") throw new Error(`expected string save data`);
1524
- assert.strictEqual(content, expectedSrc, "the source is correct");
1525
- deferred.fulfill();
1526
- });
1527
- await percySnapshot(assert, { scope: "[data-test-create-file-modal] [data-test-modal-container-box]" });
1528
- await click("[data-test-create-definition]");
1529
- await waitFor("[data-test-create-file-modal]", { count: 0 });
1530
- await deferred.promise;
1531
- await settled();
1532
- assert.strictEqual(getMonacoContent(), expectedSrc, "monaco displays the new definition");
1533
- await waitFor("[data-test-card-schema=\"Test Card\"]");
1534
- assert.dom("[data-test-card-schema]").exists({ count: 4 }, "the card hierarchy is displayed in schema editor");
1535
- assert.dom("[data-test-total-fields]").containsText(exportedCardFieldCount);
1536
- await settled();
1537
- await waitFor("[data-test-card-module-definition]");
1538
- await click("[data-test-action-button=\"Inherit\"]");
1539
- await waitFor(`[data-test-create-file-modal][data-test-ready] [data-test-realm-name="Test Workspace B"]`);
1540
- assert.dom("[data-test-inherits-from-field] .pill").includesText("Test Card", "the inherits from is correct");
1541
- assert.dom("[data-test-display-name-field]").hasNoValue("display name field is empty");
1542
- assert.dom("[data-test-file-name-field]").hasNoValue("filename field is empty");
1543
- });
1544
- (0, import_qunit.test)("can inherit from an exported field def declaration", async function(assert) {
1545
- assert.expect(2);
1546
- await visitOperatorMode({
1547
- stacks: [[]],
1548
- submode: "code",
1549
- codePath: `${testRealmURL}in-this-file.gts`
1550
- });
1551
- await waitFor("[data-boxel-selector-item-text=\"ExportedField\"]");
1552
- await click("[data-boxel-selector-item-text=\"ExportedField\"]");
1553
- await waitFor("[data-test-card-module-definition]");
1554
- await click("[data-test-action-button=\"Inherit\"]");
1555
- await waitFor(`[data-test-create-file-modal][data-test-ready] [data-test-realm-name="Test Workspace B"]`);
1556
- assert.dom("[data-test-inherits-from-field] .pill").includesText("exported field", "the inherits from is correct");
1557
- await fillIn("[data-test-display-name-field]", "Test Field");
1558
- await fillIn("[data-test-file-name-field]", "/test-field");
1559
- let deferred = new Deferred();
1560
- this.onSave((_, content) => {
1561
- if (typeof content !== "string") throw new Error(`expected string save data`);
1562
- assert.strictEqual(content, `
1563
- import { ExportedField } from './in-this-file';
1564
- import { Component } from '@cardstack/base/card-api';
1565
- export class TestField extends ExportedField {
1566
- static displayName = "Test Field";
1567
- }`.trim(), "the source is correct");
1568
- deferred.fulfill();
1569
- });
1570
- await click("[data-test-create-definition]");
1571
- await waitFor("[data-test-create-file-modal]", { count: 0 });
1572
- await deferred.promise;
1573
- });
1574
- (0, import_qunit.test)("can inherit from an exported file def declaration", async function(assert) {
1575
- assert.expect(2);
1576
- let expectedSrc = `
1577
- import { CustomFileDef } from './file-def';
1578
- export class TestFileDef extends CustomFileDef {
1579
- static displayName = "Test File Def";
1580
- }`.trim();
1581
- await visitOperatorMode({
1582
- stacks: [[]],
1583
- submode: "code",
1584
- codePath: `${testRealmURL}file-def.gts`
1585
- });
1586
- await waitFor("[data-boxel-selector-item-text=\"CustomFileDef\"]");
1587
- await click("[data-boxel-selector-item-text=\"CustomFileDef\"]");
1588
- await waitFor("[data-test-card-module-definition]");
1589
- await click("[data-test-action-button=\"Inherit\"]");
1590
- await waitFor(`[data-test-create-file-modal][data-test-ready] [data-test-realm-name="Test Workspace B"]`);
1591
- assert.dom("[data-test-inherits-from-field] .pill").includesText("custom file", "the inherits from is correct");
1592
- await fillIn("[data-test-display-name-field]", "Test File Def");
1593
- await fillIn("[data-test-file-name-field]", "/test-file-def");
1594
- let deferred = new Deferred();
1595
- this.onSave((_, content) => {
1596
- if (typeof content !== "string") throw new Error(`expected string save data`);
1597
- assert.strictEqual(content, expectedSrc, "the source is correct - no Component import for file defs");
1598
- deferred.fulfill();
1599
- });
1600
- await click("[data-test-create-definition]");
1601
- await waitFor("[data-test-create-file-modal]", { count: 0 });
1602
- await deferred.promise;
1603
- });
1604
- (0, import_qunit.test)("inherit modal state is cleared when modal is cancelled", async function(assert) {
1605
- assert.expect(3);
1606
- await visitOperatorMode({
1607
- stacks: [[]],
1608
- submode: "code",
1609
- codePath: `${testRealmURL}in-this-file.gts`
1610
- });
1611
- await waitFor("[data-boxel-selector-item-text=\"ExportedCard\"]");
1612
- await click("[data-boxel-selector-item-text=\"ExportedCard\"]");
1613
- await waitFor("[data-test-card-module-definition]");
1614
- await click("[data-test-action-button=\"Inherit\"]");
1615
- await waitFor(`[data-test-create-file-modal][data-test-ready] [data-test-realm-name="Test Workspace B"]`);
1616
- await fillIn("[data-test-display-name-field]", "Test Card");
1617
- await fillIn("[data-test-file-name-field]", "/test-card");
1618
- this.onSave(() => assert.ok(false, "should not save a file"));
1619
- await click("[data-test-cancel-create-file]");
1620
- await waitFor("[data-test-create-file-modal]", { count: 0 });
1621
- await waitFor("[data-test-card-module-definition]");
1622
- await click("[data-test-action-button=\"Inherit\"]");
1623
- await waitFor(`[data-test-create-file-modal][data-test-ready] [data-test-realm-name="Test Workspace B"]`);
1624
- assert.dom("[data-test-inherits-from-field] .pill").includesText("exported card", "the inherits from is correct");
1625
- assert.dom("[data-test-display-name-field]").hasNoValue("display name field is empty");
1626
- assert.dom("[data-test-file-name-field]").hasNoValue("filename field is empty");
1627
- });
1628
- (0, import_qunit.test)(`can handle the situation where there is a class name collision with the inherited cards class name`, async function(assert) {
1629
- assert.expect(4);
1630
- let expectedSrc = `
1631
- import { ExportedCard as ExportedCardParent } from './in-this-file';
1632
- import { Component } from '@cardstack/base/card-api';
1633
- export class ExportedCard extends ExportedCardParent {
1634
- static displayName = "Exported Card";
1635
- }`.trim();
1636
- await visitOperatorMode({
1637
- submode: "code",
1638
- codePath: `${testRealmURL}in-this-file.gts`
1639
- });
1640
- await waitFor("[data-boxel-selector-item-text=\"ExportedCard\"]");
1641
- await click("[data-boxel-selector-item-text=\"ExportedCard\"]");
1642
- await waitFor("[data-test-card-module-definition]");
1643
- await click("[data-test-action-button=\"Inherit\"]");
1644
- await waitFor(`[data-test-create-file-modal][data-test-ready] [data-test-realm-name="Test Workspace B"]`);
1645
- await fillIn("[data-test-display-name-field]", "Exported Card");
1646
- await fillIn("[data-test-file-name-field]", "/test-card");
1647
- let deferred = new Deferred();
1648
- this.onSave((_, content) => {
1649
- if (typeof content !== "string") throw new Error(`expected string save data`);
1650
- assert.strictEqual(content, expectedSrc, "the source is correct");
1651
- deferred.fulfill();
1652
- });
1653
- await click("[data-test-create-definition]");
1654
- await waitFor("[data-test-create-file-modal]", { count: 0 });
1655
- await deferred.promise;
1656
- await settled();
1657
- assert.strictEqual(getMonacoContent(), expectedSrc, "monaco displays the new definition");
1658
- await waitFor("[data-test-card-schema=\"Exported Card\"]");
1659
- assert.dom("[data-test-card-schema]").exists({ count: 4 }, "the card hierarchy is displayed in schema editor");
1660
- assert.dom("[data-test-total-fields]").containsText(exportedCardFieldCount);
1661
- });
1662
- (0, import_qunit.test)("field error message displays if you try to inherit using a filename that already exists", async function(assert) {
1663
- await visitOperatorMode({
1664
- stacks: [[]],
1665
- submode: "code",
1666
- codePath: `${testRealmURL}in-this-file.gts`
1667
- });
1668
- await waitFor("[data-boxel-selector-item-text=\"ExportedCard\"]");
1669
- await click("[data-boxel-selector-item-text=\"ExportedCard\"]");
1670
- await waitFor("[data-test-card-module-definition]");
1671
- await click("[data-test-action-button=\"Inherit\"]");
1672
- await waitFor(`[data-test-create-file-modal][data-test-ready] [data-test-realm-name="Test Workspace B"]`);
1673
- await fillIn("[data-test-display-name-field]", "Test Card");
1674
- await fillIn("[data-test-file-name-field]", "in-this-file");
1675
- await click("[data-test-create-definition]");
1676
- assert.dom("[data-test-file-name-field][data-test-boxel-input-validation-state=\"invalid\"]").exists("error state for filename field is displayed");
1677
- assert.dom("[data-test-boxel-input-error-message]").includesText("This file already exists");
1678
- await fillIn("[data-test-file-name-field]", "test-file");
1679
- assert.dom("[data-test-file-name-field][data-test-boxel-input-validation-state=\"invalid\"]").doesNotExist("error state for filename field is not displayed");
1680
- assert.dom("[data-test-boxel-input-error-message]").doesNotExist("no error message displayed");
1681
- });
1682
- (0, import_qunit.test)("Inherit action item is not displayed when definition is not exported", async function(assert) {
1683
- await visitOperatorMode({
1684
- stacks: [[]],
1685
- submode: "code",
1686
- codePath: `${testRealmURL}in-this-file.gts`
1687
- });
1688
- await waitFor("[data-boxel-selector-item-text=\"LocalCard\"]");
1689
- await click("[data-boxel-selector-item-text=\"LocalCard\"]");
1690
- await waitFor("[data-test-card-module-definition]");
1691
- assert.dom("[data-test-action-button=\"Inherit\"]").doesNotExist("non-exported cards do not display an inherit button");
1692
- });
1693
- (0, import_qunit.test)("can create an instance from an exported card definition", async function(assert) {
1694
- assert.expect(8);
1695
- await visitOperatorMode({
1696
- stacks: [[]],
1697
- submode: "code",
1698
- codePath: `${testRealmURL}in-this-file.gts`
1699
- });
1700
- await waitFor("[data-boxel-selector-item-text=\"ExportedCard\"]");
1701
- await click("[data-boxel-selector-item-text=\"ExportedCard\"]");
1702
- await waitFor("[data-test-card-module-definition]");
1703
- await click("[data-test-action-button=\"Create Instance\"]");
1704
- await waitFor(`[data-test-create-file-modal][data-test-ready] [data-test-realm-name="Test Workspace B"]`);
1705
- assert.dom("[data-test-inherits-from-field] .pill").includesText("exported card", "the inherits from is correct");
1706
- assert.dom("[data-test-create-card-instance]").isEnabled();
1707
- let deferred = new Deferred();
1708
- let id;
1709
- this.onSave((url, json) => {
1710
- if (typeof json === "string") throw new Error(`expected JSON save data`);
1711
- id = url.href;
1712
- assert.strictEqual(json.data.attributes?.someString, null, "someString field is empty");
1713
- assert.strictEqual(json.data.meta.realmURL, testRealmURL, "realm url is correct");
1714
- assert.deepEqual(json.data.meta.adoptsFrom, {
1715
- module: rri("../in-this-file"),
1716
- name: "ExportedCard"
1717
- }, "adoptsFrom is correct");
1718
- deferred.fulfill();
1719
- });
1720
- await click("[data-test-create-card-instance]");
1721
- await waitFor("[data-test-create-file-modal]", { count: 0 });
1722
- await deferred.promise;
1723
- if (!id) assert.ok(false, "card instance ID does not exist");
1724
- await waitFor("[data-test-create-file-modal]", { count: 0 });
1725
- await waitFor(`[data-test-code-mode-card-renderer-header="${id}"]`);
1726
- assert.dom("[data-test-card-resource-loaded]").containsText("exported card");
1727
- assert.dom("[data-test-field=\"someString\"] input").hasValue("");
1728
- assert.dom("[data-test-card-url-bar-input]").hasValue(`${id}.json`);
1729
- });
1730
- (0, import_qunit.test)("Create instance action is not displayed for non-exported Card definition", async function(assert) {
1731
- await visitOperatorMode({
1732
- stacks: [[]],
1733
- submode: "code",
1734
- codePath: `${testRealmURL}in-this-file.gts`
1735
- });
1736
- await waitFor("[data-boxel-selector-item-text=\"LocalCard\"]");
1737
- await click("[data-boxel-selector-item-text=\"LocalCard\"]");
1738
- await waitFor("[data-test-card-module-definition]");
1739
- assert.dom("[data-test-action-button=\"Create Instance\"]").doesNotExist("non-exported card defs do not display a create instance button");
1740
- });
1741
- (0, import_qunit.test)("Create instance action is not displayed for field definition", async function(assert) {
1742
- await visitOperatorMode({
1743
- stacks: [[]],
1744
- submode: "code",
1745
- codePath: `${testRealmURL}in-this-file.gts`
1746
- });
1747
- await waitFor("[data-boxel-selector-item-text=\"ExportedField\"]");
1748
- await click("[data-boxel-selector-item-text=\"ExportedField\"]");
1749
- await waitFor("[data-test-card-module-definition]");
1750
- assert.dom("[data-test-action-button=\"Create Instance\"]").doesNotExist("field defs do not display a create instance button");
1751
- });
1752
- (0, import_qunit.test)("Create listing action is displayed for exported card definition", async function(assert) {
1753
- await visitOperatorMode({
1754
- stacks: [[]],
1755
- submode: "code",
1756
- codePath: `${testRealmURL}in-this-file.gts`
1757
- });
1758
- await waitFor("[data-boxel-selector-item-text=\"ExportedCard\"]");
1759
- await click("[data-boxel-selector-item-text=\"ExportedCard\"]");
1760
- await waitFor("[data-test-card-module-definition]");
1761
- assert.dom("[data-test-action-button=\"Create Listing\"]").exists("exported card defs display a Create Listing button");
1762
- });
1763
- (0, import_qunit.test)("Create listing action is displayed for exported field definition", async function(assert) {
1764
- await visitOperatorMode({
1765
- stacks: [[]],
1766
- submode: "code",
1767
- codePath: `${testRealmURL}in-this-file.gts`
1768
- });
1769
- await waitFor("[data-boxel-selector-item-text=\"ExportedField\"]");
1770
- await click("[data-boxel-selector-item-text=\"ExportedField\"]");
1771
- await waitFor("[data-test-card-module-definition]");
1772
- assert.dom("[data-test-action-button=\"Create Listing\"]").exists("exported field defs display a Create Listing button");
1773
- });
1774
- (0, import_qunit.test)("Create listing action is not displayed for non-exported Card definition", async function(assert) {
1775
- await visitOperatorMode({
1776
- stacks: [[]],
1777
- submode: "code",
1778
- codePath: `${testRealmURL}in-this-file.gts`
1779
- });
1780
- await waitFor("[data-boxel-selector-item-text=\"LocalCard\"]");
1781
- await click("[data-boxel-selector-item-text=\"LocalCard\"]");
1782
- await waitFor("[data-test-card-module-definition]");
1783
- assert.dom("[data-test-action-button=\"Create Listing\"]").doesNotExist("non-exported card defs do not display a Create Listing button");
1784
- });
1785
- (0, import_qunit.test)("can find instances of an exported card definition", async function(assert) {
1786
- await visitOperatorMode({
1787
- stacks: [[]],
1788
- submode: "code",
1789
- codePath: `${testRealmURL}pet`
1790
- });
1791
- await waitFor("[data-boxel-selector-item-text=\"Pet\"]");
1792
- await click("[data-boxel-selector-item-text=\"Pet\"]");
1793
- await waitFor("[data-test-card-module-definition]");
1794
- await click("[data-test-action-button=\"Find instances\"]");
1795
- await waitFor("[data-test-search-sheet-search-result]");
1796
- assert.dom("[data-test-search-field]").hasValue("");
1797
- await waitUntil(() => document.querySelector("[data-test-search-label]")?.innerText.includes("2 results"));
1798
- assert.dom("[data-test-search-label]").includesText("2 results");
1799
- assert.dom(`[data-test-search-result="${testRealmURL}Pet/mango"]`).exists();
1800
- assert.dom(`[data-test-search-result="${testRealmURL}Pet/vangogh"]`).exists();
1801
- });
1802
- (0, import_qunit.test)("find instances of CardDef leaves the type picker on Any", async function(assert) {
1803
- await visitOperatorMode({
1804
- stacks: [[]],
1805
- submode: "code",
1806
- codePath: getService("network").virtualNetwork.toURLHref(baseRRI("card-api.gts"))
1807
- });
1808
- await waitFor("[data-boxel-selector-item-text=\"CardDef\"]");
1809
- await click("[data-boxel-selector-item-text=\"CardDef\"]");
1810
- await waitFor("[data-test-card-module-definition]");
1811
- await click("[data-test-action-button=\"Find instances\"]");
1812
- await waitFor("[data-test-search-sheet-search-result]");
1813
- assert.dom("[data-test-type-picker] [data-test-boxel-picker-selected-item=\"Any\"]").exists("type picker shows Any");
1814
- });
1815
- (0, import_qunit.test)("a base module code path given as its URL is held as its RRI", async function(assert) {
1816
- await visitOperatorMode({
1817
- stacks: [[]],
1818
- submode: "code",
1819
- codePath: getService("network").virtualNetwork.toURLHref(baseRRI("card-api.gts"))
1820
- });
1821
- await waitFor("[data-boxel-selector-item-text=\"CardDef\"]");
1822
- assert.strictEqual(getService("operator-mode-state-service").state.codePath, baseRRI("card-api.gts"), "state holds the prefix form");
1823
- assert.dom("[data-test-card-url-bar-input]").hasValue(baseRRI("card-api.gts"), "URL bar shows the prefix form");
1824
- });
1825
- (0, import_qunit.test)("the URL bar takes a base module by its prefix form, not its URL, and the query param keeps it", async function(assert) {
1826
- await visitOperatorMode({
1827
- stacks: [[]],
1828
- submode: "code",
1829
- codePath: `${testRealmURL}person.gts`
1830
- });
1831
- await waitFor("[data-test-card-url-bar-input]");
1832
- await fillIn("[data-test-card-url-bar-input]", getService("network").virtualNetwork.toURLHref(baseRRI("card-api.gts")));
1833
- assert.dom("[data-test-card-url-bar-error]").containsText(`Use ${baseRRI("card-api.gts")}`);
1834
- await fillIn("[data-test-card-url-bar-input]", baseRRI("card-api.gts"));
1835
- assert.dom("[data-test-card-url-bar-error]").doesNotExist();
1836
- await triggerKeyEvent("[data-test-card-url-bar-input]", "keypress", "Enter");
1837
- await waitFor("[data-boxel-selector-item-text=\"CardDef\"]");
1838
- assert.strictEqual(getService("operator-mode-state-service").state.codePath, baseRRI("card-api.gts"));
1839
- let serializedCodePath = () => JSON.parse(new URL(currentURL(), "http://localhost").searchParams.get("operatorModeState")).codePath;
1840
- await waitUntil(() => serializedCodePath() === baseRRI("card-api.gts"));
1841
- assert.strictEqual(serializedCodePath(), baseRRI("card-api.gts"), "the query param holds the prefix form");
1842
- });
1843
- (0, import_qunit.test)("find instances starts clean, ignoring a previously persisted search", async function(assert) {
1844
- await visitOperatorMode({
1845
- stacks: [[]],
1846
- submode: "code",
1847
- codePath: `${testRealmURL}pet`
1848
- });
1849
- let searchSheetState = getService("search-sheet-state");
1850
- searchSheetState.searchKey = "Mango";
1851
- searchSheetState.selectedRealms = [new URL("http://unrelated-realm/")];
1852
- searchSheetState.resultsScrollTop = 240;
1853
- await waitFor("[data-boxel-selector-item-text=\"Pet\"]");
1854
- await click("[data-boxel-selector-item-text=\"Pet\"]");
1855
- await waitFor("[data-test-card-module-definition]");
1856
- await click("[data-test-action-button=\"Find instances\"]");
1857
- await waitFor("[data-test-search-sheet-search-result]");
1858
- assert.dom(`[data-test-search-result="${testRealmURL}Pet/mango"]`).exists();
1859
- assert.dom(`[data-test-search-result="${testRealmURL}Pet/vangogh"]`).exists();
1860
- assert.deepEqual(searchSheetState.selectedRealms, [], "the leftover realm scope was cleared");
1861
- assert.strictEqual(searchSheetState.resultsScrollTop, 0, "the leftover scroll offset was cleared");
1862
- });
1863
- (0, import_qunit.test)("find instances action is not displayed for non-exported Card definition", async function(assert) {
1864
- await visitOperatorMode({
1865
- stacks: [[]],
1866
- submode: "code",
1867
- codePath: `${testRealmURL}in-this-file.gts`
1868
- });
1869
- await waitFor("[data-boxel-selector-item-text=\"LocalCard\"]");
1870
- await click("[data-boxel-selector-item-text=\"LocalCard\"]");
1871
- await waitFor("[data-test-card-module-definition]");
1872
- assert.dom("[data-test-action-button=\"Find instances\"]").doesNotExist("non-exported card defs do not display a Find instances button");
1873
- });
1874
- (0, import_qunit.test)("find instances action is not displayed for field definition", async function(assert) {
1875
- await visitOperatorMode({
1876
- stacks: [[]],
1877
- submode: "code",
1878
- codePath: `${testRealmURL}in-this-file.gts`
1879
- });
1880
- await waitFor("[data-boxel-selector-item-text=\"ExportedField\"]");
1881
- await click("[data-boxel-selector-item-text=\"ExportedField\"]");
1882
- await waitFor("[data-test-card-module-definition]");
1883
- assert.dom("[data-test-action-button=\"Find instances\"]").doesNotExist("field defs do not display a Find instances button");
1884
- });
1885
- (0, import_qunit.test)("inspector shows empty file panel with delete button when file is empty", async function(assert) {
1886
- await visitOperatorMode({
1887
- stacks: [[]],
1888
- submode: "code",
1889
- codePath: `${testRealmURL}empty-file.gts`
1890
- });
1891
- await waitFor("[data-test-card-inspector-panel]");
1892
- await waitFor("[data-test-current-module-name=\"empty-file.gts\"]");
1893
- assert.dom("[data-test-current-module-name=\"empty-file.gts\"]").exists();
1894
- assert.dom("[data-test-in-this-file-selector]").doesNotExist();
1895
- assert.dom("[data-test-inheritance-panel-header]").doesNotExist();
1896
- assert.dom("[data-test-delete-module-button]").exists();
1897
- });
1898
- (0, import_qunit.test)("code mode recovers when a previously-broken module is fixed by an external write", async function(assert) {
1899
- await visitOperatorMode({
1900
- stacks: [[]],
1901
- submode: "code",
1902
- codePath: `${testRealmURL}broken-then-fixed.gts`
1903
- });
1904
- await waitFor("[data-test-syntax-error]");
1905
- assert.dom("[data-test-syntax-error]").exists("initial broken source surfaces a syntax error");
1906
- let store = getService("store");
1907
- for (let [key, sub] of [...store.subscriptions]) {
1908
- sub.unsubscribe();
1909
- store.subscriptions.delete(key);
1910
- }
1911
- assert.strictEqual(store.subscriptions.size, 0, "store has no realm subscriptions before the external write");
1912
- let incrementalEvent = new Deferred();
1913
- let unsubscribe = getService("message-service").subscribe(testRealmURL, (ev) => {
1914
- if (ev.eventName === "index" && ev.indexType === "incremental") {
1915
- unsubscribe();
1916
- incrementalEvent.fulfill();
1917
- }
1918
- });
1919
- await realm.write("broken-then-fixed.gts", brokenThenFixedValidSource);
1920
- await incrementalEvent.promise;
1921
- await settled();
1922
- assert.dom("[data-test-syntax-error]").doesNotExist("syntax error is cleared after the external write replaces the broken source with a valid one");
1923
- assert.dom("[data-test-card-module-definition]").exists("the module inspector renders the fixed card definition");
1924
- assert.dom("[data-test-card-module-definition]").includesText("Broken Then Fixed", "the fixed displayName is reflected in the inspector");
1925
- });
1926
- (0, import_qunit.test)("can delete an erroring module file", async function(assert) {
1927
- await visitOperatorMode({
1928
- stacks: [[]],
1929
- submode: "code",
1930
- codePath: `${testRealmURL}erroring-module.gts`
1931
- });
1932
- await waitFor("[data-test-syntax-error]");
1933
- await waitFor("[data-test-action-button=\"Delete\"]");
1934
- await click("[data-test-action-button=\"Delete\"]");
1935
- await waitFor(`[data-test-delete-modal="${testRealmURL}erroring-module.gts"]`);
1936
- await click("[data-test-confirm-delete-button]");
1937
- await waitFor("[data-test-empty-code-mode]");
1938
- let notFound = await adapter.openFile("erroring-module.gts");
1939
- assert.strictEqual(notFound, void 0, "file ref does not exist");
1940
- });
1941
- (0, import_qunit.module)("when the user lacks write permissions", function(hooks) {
1942
- hooks.beforeEach(async function() {
1943
- setRealmPermissions({ [testRealmURL]: ["read"] });
1944
- });
1945
- (0, import_qunit.test)("delete button is not displayed for module when user does not have permission to write to realm", async function(assert) {
1946
- await visitOperatorMode({
1947
- submode: "code",
1948
- codePath: `${testRealmURL}pet.gts`
1949
- });
1950
- await waitFor("[data-test-current-module-name=\"pet.gts\"]");
1951
- assert.dom("[data-test-delete-module-button]").doesNotExist();
1952
- });
1953
- (0, import_qunit.test)("delete button is not displayed for card instance when user does not have permission to write to realm", async function(assert) {
1954
- await visitOperatorMode({
1955
- submode: "code",
1956
- codePath: `${testRealmURL}Pet/mango.json`
1957
- });
1958
- assert.dom("[data-test-action-button=\"Delete\"]").doesNotExist();
1959
- });
1960
- (0, import_qunit.test)("delete button is not displayed for misc file when user does not have permission to write to realm", async function(assert) {
1961
- await visitOperatorMode({
1962
- stacks: [[]],
1963
- submode: "code",
1964
- codePath: `${testRealmURL}readme.md`
1965
- });
1966
- assert.dom("[data-test-action-button=\"Delete\"]").doesNotExist();
1967
- });
1968
- (0, import_qunit.test)("delete button is not displayed for empty file when user does not have permission to write to realm", async function(assert) {
1969
- await visitOperatorMode({
1970
- stacks: [[]],
1971
- submode: "code",
1972
- codePath: `${testRealmURL}empty-file.gts`
1973
- });
1974
- await waitFor("[data-test-current-module-name=\"empty-file.gts\"]");
1975
- assert.dom("[data-test-delete-module-button]").doesNotExist();
1976
- });
1977
- (0, import_qunit.test)("Create listing action is not displayed when user does not have permission to write to realm", async function(assert) {
1978
- await visitOperatorMode({
1979
- stacks: [[]],
1980
- submode: "code",
1981
- codePath: `${testRealmURL}in-this-file.gts`
1982
- });
1983
- await waitFor("[data-boxel-selector-item-text=\"ExportedCard\"]");
1984
- await click("[data-boxel-selector-item-text=\"ExportedCard\"]");
1985
- await waitFor("[data-test-card-module-definition]");
1986
- assert.dom("[data-test-action-button=\"Create Listing\"]").doesNotExist("Create Listing button is not displayed when user lacks write permissions");
1987
- });
1988
- (0, import_qunit.test)("inspector shows file inheritance panel for non-module files", async function(assert) {
1989
- await visitOperatorMode({
1990
- stacks: [[]],
1991
- submode: "code",
1992
- codePath: `${testRealmURL}sample-styles.css`
1993
- });
1994
- await waitFor("[data-test-card-inspector-panel]");
1995
- await waitFor("[data-test-inheritance-panel-header]");
1996
- assert.dom("[data-test-inheritance-panel-header]").hasText("File Inheritance");
1997
- assert.dom("[data-test-card-instance-definition]").exists("file instance definition is shown");
1998
- assert.dom("[data-test-card-instance-definition] [data-test-definition-header]").includesText("File Instance");
1999
- assert.dom("[data-test-card-instance-definition] [data-test-definition-file-extension]").includesText(".css");
2000
- assert.dom("[data-test-card-module-definition]").exists("file definition (adopts from) is shown");
2001
- assert.dom("[data-test-card-module-definition]").includesText("File Definition");
2002
- });
2003
- });
2004
- (0, import_qunit.test)("clicking \"Create Listing\" opens confirmation modal for card definition", async function(assert) {
2005
- await visitOperatorMode({
2006
- stacks: [[]],
2007
- submode: "code",
2008
- codePath: `${testRealmURL}in-this-file.gts`
2009
- });
2010
- await waitFor("[data-boxel-selector-item-text=\"ExportedCard\"]");
2011
- await click("[data-boxel-selector-item-text=\"ExportedCard\"]");
2012
- await waitFor("[data-test-card-module-definition]");
2013
- await click("[data-test-action-button=\"Create Listing\"]");
2014
- await waitFor("[data-test-create-listing-modal]");
2015
- assert.dom("[data-test-create-listing-modal]").exists("confirmation modal appears after clicking Create Listing");
2016
- });
2017
- (0, import_qunit.test)("clicking \"Create Listing\" on a card instance opens modal with instance pre-selected", async function(assert) {
2018
- await visitOperatorMode({
2019
- stacks: [[]],
2020
- submode: "code",
2021
- codePath: `${testRealmURL}Pet/mango.json`
2022
- });
2023
- await waitFor("[data-test-card-inspector-panel]");
2024
- await waitFor("[data-test-card-instance-definition]");
2025
- await click("[data-test-action-button=\"Create Listing\"]");
2026
- await waitFor("[data-test-create-listing-modal]");
2027
- assert.dom("[data-test-create-listing-modal]").exists("confirmation modal appears after clicking Create Listing");
2028
- await waitFor(`[data-test-selected-example="${testRealmURL}Pet/mango"]`);
2029
- assert.dom(`[data-test-selected-example="${testRealmURL}Pet/mango"]`).exists("the opened instance is pre-selected");
2030
- assert.dom("[data-test-selected-examples] [data-test-card-format=\"atom\"]").exists({ count: 1 }, "mango instance is shown as atom");
2031
- assert.dom("[data-test-choose-examples-button]").hasText("Add Examples", "button remains the default label");
2032
- });
2033
- (0, import_qunit.test)("Create listing action is not displayed for index.json card instance", async function(assert) {
2034
- await visitOperatorMode({
2035
- stacks: [[]],
2036
- submode: "code",
2037
- codePath: `${testRealmURL}index.json`
2038
- });
2039
- await waitFor("[data-test-card-inspector-panel]");
2040
- await waitFor("[data-test-card-instance-definition]");
2041
- assert.dom("[data-test-action-button=\"Create Listing\"]").doesNotExist("index.json card instances do not display a Create Listing button");
2042
- });
2043
- (0, import_qunit.test)("cancel button in Create Listing modal closes the modal", async function(assert) {
2044
- await visitOperatorMode({
2045
- stacks: [[]],
2046
- submode: "code",
2047
- codePath: `${testRealmURL}in-this-file.gts`
2048
- });
2049
- await waitFor("[data-boxel-selector-item-text=\"ExportedCard\"]");
2050
- await click("[data-boxel-selector-item-text=\"ExportedCard\"]");
2051
- await waitFor("[data-test-card-module-definition]");
2052
- await click("[data-test-action-button=\"Create Listing\"]");
2053
- await waitFor("[data-test-create-listing-modal]");
2054
- await click("[data-test-create-listing-cancel-button]");
2055
- assert.dom("[data-test-create-listing-modal]").doesNotExist("modal is dismissed after clicking Cancel");
2056
- });
2057
- });
2058
- //#endregion