@cardstack/boxel-cli 0.9.0 → 0.10.0-unstable.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (995) hide show
  1. package/README.md +12 -0
  2. package/bundled-test-harness/assets/account-switch-failed-GCSVbJML.js +23 -0
  3. package/bundled-test-harness/assets/account-switch-failed-GsWni_Gk.css +18 -0
  4. package/bundled-test-harness/assets/account-switch-failed-test-CdZWNths.js +45 -0
  5. package/bundled-test-harness/assets/add-workspace-c7L50Gx8.js +141 -0
  6. package/bundled-test-harness/assets/add-workspace-test-BZxHa6Pe.js +72 -0
  7. package/bundled-test-harness/assets/advanced-color-picker-0pGF-3WG.js +504 -0
  8. package/bundled-test-harness/assets/advanced-color-picker-pbO4HWc_.js +2 -0
  9. package/bundled-test-harness/assets/ai-assistant-test-Dnm4o9vK.js +2211 -0
  10. package/bundled-test-harness/assets/ai-module-creation-test-C6253CMt.js +151 -0
  11. package/bundled-test-harness/assets/aibot-message-miKyGeKk.js +278 -0
  12. package/bundled-test-harness/assets/app-i8pGdQkw.js +22855 -0
  13. package/bundled-test-harness/assets/app-zC7o6PyQ.css +2718 -0
  14. package/bundled-test-harness/assets/audio-file-def-DHnydP0t.js +133 -0
  15. package/bundled-test-harness/assets/auth-container-BP2gSoo4.css +51 -0
  16. package/bundled-test-harness/assets/auth-container-DN94iVfX.js +24 -0
  17. package/bundled-test-harness/assets/avif-meta-extractor-Bo5zRX1V.js +162 -0
  18. package/bundled-test-harness/assets/base64-image-B0RYxzHT.js +2 -0
  19. package/bundled-test-harness/assets/base64-image-Bxjqdwew.js +262 -0
  20. package/bundled-test-harness/assets/big-integer-7RLj5_7H.js +89 -0
  21. package/bundled-test-harness/assets/big-integer-C9sJxKVy.js +2 -0
  22. package/bundled-test-harness/assets/binary-upload-dedupe-test-DZo3EaV0.js +308 -0
  23. package/bundled-test-harness/assets/boolean-CcKPYUph.js +94 -0
  24. package/bundled-test-harness/assets/boolean-DvsSmtM7.js +2 -0
  25. package/bundled-test-harness/assets/brand-functional-palette-KpVSY2Sa.js +137 -0
  26. package/bundled-test-harness/assets/brand-logo-DDiOec0t.js +295 -0
  27. package/bundled-test-harness/assets/broken-link-template-test-DAngUbFJ.js +192 -0
  28. package/bundled-test-harness/assets/bundled-base-C_lumba6.js +254 -0
  29. package/bundled-test-harness/assets/bundled-base-modules-test-CSF7Rl4Z.js +54 -0
  30. package/bundled-test-harness/assets/buried-stack-item-scroll-test-B0J_EP88.js +236 -0
  31. package/bundled-test-harness/assets/bxl-expression-test-Dej7WgI6.js +250 -0
  32. package/bundled-test-harness/assets/can-invoke-test-elyUcOKT.js +401 -0
  33. package/bundled-test-harness/assets/card-api-CjWXCkqh.js +8 -0
  34. package/bundled-test-harness/assets/card-api-Dzje0smT.js +4393 -0
  35. package/bundled-test-harness/assets/card-api-test-DA8d4Ooc.js +198 -0
  36. package/bundled-test-harness/assets/card-basics-test-mp1Odo-l.js +5364 -0
  37. package/bundled-test-harness/assets/card-chooser-paging-test-y8OfboYd.js +235 -0
  38. package/bundled-test-harness/assets/card-chooser-test-nmg2zkDj.js +393 -0
  39. package/bundled-test-harness/assets/card-collection-BXiO3i7R.js +118 -0
  40. package/bundled-test-harness/assets/card-context-search-results-Dbhn7lvW.js +30 -0
  41. package/bundled-test-harness/assets/card-context-search-results-test-DVXT-YC5.js +184 -0
  42. package/bundled-test-harness/assets/card-def-field-def-relationships-test-mX4rxrtO.js +562 -0
  43. package/bundled-test-harness/assets/card-delete-test-BxFsqFnX.js +466 -0
  44. package/bundled-test-harness/assets/card-error-C-7hjxu9.js +72 -0
  45. package/bundled-test-harness/assets/card-error-awaiting-index-test-BvfY2eaW.js +53 -0
  46. package/bundled-test-harness/assets/card-error-detail-nMwopDir.js +271 -0
  47. package/bundled-test-harness/assets/card-info-CTFxdohf.js +2 -0
  48. package/bundled-test-harness/assets/card-list-B9QrkJ97.js +2 -0
  49. package/bundled-test-harness/assets/card-list-XbwLCXZS.js +202 -0
  50. package/bundled-test-harness/assets/card-resource-JGLjQUy6.js +86 -0
  51. package/bundled-test-harness/assets/cards-grid-CWG41hZE.js +344 -0
  52. package/bundled-test-harness/assets/cards-grid-DSpX99p6.js +2 -0
  53. package/bundled-test-harness/assets/cards-grid-layout-Bht0LwZy.js +2 -0
  54. package/bundled-test-harness/assets/cards-grid-layout-CdpKlHUb.js +111 -0
  55. package/bundled-test-harness/assets/check-correctness-test-C4BrUeKA.js +554 -0
  56. package/bundled-test-harness/assets/clip-BEVvLrXx.js +2 -0
  57. package/bundled-test-harness/assets/clip-CoB714qX.js +92 -0
  58. package/bundled-test-harness/assets/code-ref-C2uguisI.js +2 -0
  59. package/bundled-test-harness/assets/code-ref-Cy7sV5a4.js +138 -0
  60. package/bundled-test-harness/assets/code-submode-availability-test-BsA_Ul01.js +198 -0
  61. package/bundled-test-harness/assets/code-submode-test-DkBhpEPB.js +1839 -0
  62. package/bundled-test-harness/assets/codeblocks-test-B1eZ2_JF.js +418 -0
  63. package/bundled-test-harness/assets/codemirror-editor-C6pxSm5y.js +2 -0
  64. package/bundled-test-harness/assets/codemirror-editor-DzM46Cd8.js +701 -0
  65. package/bundled-test-harness/assets/codemirror-embed-toolbar-test-BemP-ZdG.js +366 -0
  66. package/bundled-test-harness/assets/color-C-jGNFWZ.js +2 -0
  67. package/bundled-test-harness/assets/color-field-test-DPIRaBec.js +212 -0
  68. package/bundled-test-harness/assets/color-picker-field-Bv4IjS-d.js +139 -0
  69. package/bundled-test-harness/assets/color-picker-field-D1bYCQIg.js +2 -0
  70. package/bundled-test-harness/assets/color-wheel-picker-IIaCQplL.js +283 -0
  71. package/bundled-test-harness/assets/color-wheel-picker-Kw-UN3kV.js +2 -0
  72. package/bundled-test-harness/assets/color-zzCBneih.js +65 -0
  73. package/bundled-test-harness/assets/command-data-BMBtjT1E.js +95 -0
  74. package/bundled-test-harness/assets/command-data-BXC5Z0oA.js +2 -0
  75. package/bundled-test-harness/assets/compaction-test-CxUKnxlQ.js +150 -0
  76. package/bundled-test-harness/assets/components-Ct_agx0G.js +14294 -0
  77. package/bundled-test-harness/assets/computed-test-C-lpGQQ3.js +1320 -0
  78. package/bundled-test-harness/assets/container-BdPu8rvc.css +5565 -0
  79. package/bundled-test-harness/assets/container-Dj-5prh9.js +11288 -0
  80. package/bundled-test-harness/assets/contains-many-component-CAWqzX8W.js +2 -0
  81. package/bundled-test-harness/assets/contrast-checker-addon-BTLD7oMx.js +2 -0
  82. package/bundled-test-harness/assets/contrast-checker-addon-DBzizR04.js +71 -0
  83. package/bundled-test-harness/assets/convert-to-class-name-test-zZuKxYvF.js +17 -0
  84. package/bundled-test-harness/assets/coordinate-Bw8va6tO.js +48 -0
  85. package/bundled-test-harness/assets/copy-file-to-realm-test-DtCKPzqj.js +148 -0
  86. package/bundled-test-harness/assets/country-B_tWpLlO.js +199 -0
  87. package/bundled-test-harness/assets/create-file-modal-D-VPyEYp.js +570 -0
  88. package/bundled-test-harness/assets/create-listing-modal-test-hyLkQY0u.js +273 -0
  89. package/bundled-test-harness/assets/create-listing-pr-request-test-rjWFA_5S.js +117 -0
  90. package/bundled-test-harness/assets/create-spec-test-HKIxZGxK.js +256 -0
  91. package/bundled-test-harness/assets/create-specs-9-ELVyJP.js +215 -0
  92. package/bundled-test-harness/assets/create-submission-workflow-test-DNZrbRX8.js +132 -0
  93. package/bundled-test-harness/assets/credential-fields-test-xPEdA911.js +157 -0
  94. package/bundled-test-harness/assets/css-value-Du3HL39X.js +48 -0
  95. package/bundled-test-harness/assets/csv-file-def-EHRmilrp.js +277 -0
  96. package/bundled-test-harness/assets/currency-y6ZCHIqG.js +134 -0
  97. package/bundled-test-harness/assets/date-B27PrSFT.js +183 -0
  98. package/bundled-test-harness/assets/date-CiP5Eb9i.js +2 -0
  99. package/bundled-test-harness/assets/date-time-fields-test-Clf5vxRW.js +359 -0
  100. package/bundled-test-harness/assets/datetime-BEbR9YgU.js +201 -0
  101. package/bundled-test-harness/assets/datetime-DPnrt1wl.js +2 -0
  102. package/bundled-test-harness/assets/datetime-stamp-AuT7F7qn.js +2 -0
  103. package/bundled-test-harness/assets/datetime-stamp-CGwP2P3f.js +81 -0
  104. package/bundled-test-harness/assets/day-BFLxZ9bQ.js +2 -0
  105. package/bundled-test-harness/assets/day-CQoEkqgE.js +113 -0
  106. package/bundled-test-harness/assets/debug-message-test-CzgOpfcI.js +117 -0
  107. package/bundled-test-harness/assets/dist-B-fYvxfL.js +389 -0
  108. package/bundled-test-harness/assets/dist-C2IXvIKX.js +323 -0
  109. package/bundled-test-harness/assets/dist-CdNZu43l.js +1710 -0
  110. package/bundled-test-harness/assets/docx-file-def-BQMw460_.js +60 -0
  111. package/bundled-test-harness/assets/docx-meta-extractor-DBlmH_kV.js +60 -0
  112. package/bundled-test-harness/assets/docx-meta-extractor-Dw4gZ0ae.js +2 -0
  113. package/bundled-test-harness/assets/duration-B0SnEiw1.js +184 -0
  114. package/bundled-test-harness/assets/duration-DbjJTFeA.js +2 -0
  115. package/bundled-test-harness/assets/email-C-8cyWiQ.js +80 -0
  116. package/bundled-test-harness/assets/email-field-test-BOBmvQqx.js +75 -0
  117. package/bundled-test-harness/assets/email-xUgCst-p.js +2 -0
  118. package/bundled-test-harness/assets/enum-BWiCyJlu.js +167 -0
  119. package/bundled-test-harness/assets/enum-CzYjivhO.js +2 -0
  120. package/bundled-test-harness/assets/enum-field-test-Bea9EsQR.js +953 -0
  121. package/bundled-test-harness/assets/error-display-test-Cbl2D_0c.js +343 -0
  122. package/bundled-test-harness/assets/ethereum-address-Bw_J05bD.js +78 -0
  123. package/bundled-test-harness/assets/ethereum-address-C9wHMBt3.js +2 -0
  124. package/bundled-test-harness/assets/expiration-warning-BHcJEjZt.js +90 -0
  125. package/bundled-test-harness/assets/expiration-warning-_G8SKZd0.js +2 -0
  126. package/bundled-test-harness/assets/externals-CKblKBo1.js +4393 -0
  127. package/bundled-test-harness/assets/fallback-banner-BqCrvTDt.js +24 -0
  128. package/bundled-test-harness/assets/fallback-banner-live-delete-test-D_AYMvf6.js +207 -0
  129. package/bundled-test-harness/assets/fallback-banner-test-B8Ne9a5g.js +225 -0
  130. package/bundled-test-harness/assets/fallback-banner-test-C7oaSxd1.js +53 -0
  131. package/bundled-test-harness/assets/fallback-models-test-DY-PvU9k.js +161 -0
  132. package/bundled-test-harness/assets/field-component-Bj8YthPE.js +2 -0
  133. package/bundled-test-harness/assets/field-configuration-test-B5LztQ47.js +548 -0
  134. package/bundled-test-harness/assets/field-edit-Cx_haspD.js +36 -0
  135. package/bundled-test-harness/assets/field-edit-DQZWUz3F.js +2 -0
  136. package/bundled-test-harness/assets/field-markdown-domain-test-DnqK3CrE.js +616 -0
  137. package/bundled-test-harness/assets/field-markdown-oversize-test-BEpbXIvl.js +88 -0
  138. package/bundled-test-harness/assets/field-markdown-primitives-test-BDORWoOk.js +365 -0
  139. package/bundled-test-harness/assets/field-markdown-specialized-test-BmIzadYq.js +534 -0
  140. package/bundled-test-harness/assets/field-test-helpers-CRF9-jFw.js +45 -0
  141. package/bundled-test-harness/assets/file-api-DPMJghBY.js +7 -0
  142. package/bundled-test-harness/assets/file-attachment-test-DFLXg3xV.js +796 -0
  143. package/bundled-test-harness/assets/file-chooser-panel-test-B4DzCWkt.js +153 -0
  144. package/bundled-test-harness/assets/file-chooser-test-DpjOWgpB.js +504 -0
  145. package/bundled-test-harness/assets/file-def-edit-Bstl7Kkl.js +2 -0
  146. package/bundled-test-harness/assets/file-def-edit-C1dzJxmQ.js +26 -0
  147. package/bundled-test-harness/assets/file-def-embedded-CUy4G7Vc.js +2 -0
  148. package/bundled-test-harness/assets/file-def-embedded-DJs6P5t0.js +38 -0
  149. package/bundled-test-harness/assets/file-def-fitted-BlrBFfLh.js +38 -0
  150. package/bundled-test-harness/assets/file-def-fitted-Bo5Qfkyf.js +2 -0
  151. package/bundled-test-harness/assets/file-def-isolated-BsHydanv.js +38 -0
  152. package/bundled-test-harness/assets/file-def-isolated-Dp-Lc99-.js +2 -0
  153. package/bundled-test-harness/assets/file-def-serialization-test-CISKpt_o.js +89 -0
  154. package/bundled-test-harness/assets/file-menu-items-7_ltrFZq.js +117 -0
  155. package/bundled-test-harness/assets/file-menu-items-BnRG9ydE.js +2 -0
  156. package/bundled-test-harness/assets/file-preview-stage-CV3qZpiK.js +72 -0
  157. package/bundled-test-harness/assets/file-preview-stage-DTA5X8rX.js +2 -0
  158. package/bundled-test-harness/assets/file-shell-embedded-BpmiVzIG.js +2 -0
  159. package/bundled-test-harness/assets/file-shell-embedded-CEv0-6OE.js +68 -0
  160. package/bundled-test-harness/assets/file-shell-fitted-C6k3GnMc.js +2 -0
  161. package/bundled-test-harness/assets/file-shell-fitted-iSTg3PJa.js +98 -0
  162. package/bundled-test-harness/assets/file-shell-isolated-C-pEod2J.js +195 -0
  163. package/bundled-test-harness/assets/file-shell-isolated-DI9oU7ix.js +2 -0
  164. package/bundled-test-harness/assets/file-tree-from-index-BtOOMqnb.js +151 -0
  165. package/bundled-test-harness/assets/file-tree-from-index-test-T8w3hPw_.js +96 -0
  166. package/bundled-test-harness/assets/film-5n9_gRqZ.js +4074 -0
  167. package/bundled-test-harness/assets/film-Ca2Vzlfu.js +13 -0
  168. package/bundled-test-harness/assets/film-DEvhBbBu.js +2 -0
  169. package/bundled-test-harness/assets/fitted-6OGuHgoU.js +2 -0
  170. package/bundled-test-harness/assets/fitted-B2l1jlSp.js +34 -0
  171. package/bundled-test-harness/assets/flac-meta-extractor-BoJqvmDC.js +99 -0
  172. package/bundled-test-harness/assets/font-file-def-Czzt5paT.js +64 -0
  173. package/bundled-test-harness/assets/font-meta-extractor-DQYT_e5b.js +2 -0
  174. package/bundled-test-harness/assets/font-meta-extractor-IHD-pG8V.js +303 -0
  175. package/bundled-test-harness/assets/formatted-aibot-message-test-Djsl8RzE.js +109 -0
  176. package/bundled-test-harness/assets/from-elsewhere-BXcLYxxu.js +131 -0
  177. package/bundled-test-harness/assets/frontmatter-field-CciolgL3.js +41 -0
  178. package/bundled-test-harness/assets/garbage-collection-test-BTOLAfB6.js +403 -0
  179. package/bundled-test-harness/assets/gauge-C1loqGq3.js +2 -0
  180. package/bundled-test-harness/assets/gauge-u8dxl90d.js +106 -0
  181. package/bundled-test-harness/assets/general-test-Cd5WtVvd.js +926 -0
  182. package/bundled-test-harness/assets/get-relationship-membership-state-test-DJAuhOVM.js +1308 -0
  183. package/bundled-test-harness/assets/gif-meta-extractor-tSaPtuYW.js +114 -0
  184. package/bundled-test-harness/assets/glimmer-motion-and-choreo-in-cards-test-DNSy5l59.js +160 -0
  185. package/bundled-test-harness/assets/glimmer-motion-and-choreo-test-B6BbQxYq.js +74 -0
  186. package/bundled-test-harness/assets/helper-m6jA5HmU.js +478 -0
  187. package/bundled-test-harness/assets/host-submode-test-CsgdksBi.js +1243 -0
  188. package/bundled-test-harness/assets/html-file-def-yKtdMSa-.js +82 -0
  189. package/bundled-test-harness/assets/hydratable-card-CxNfbqly.js +147 -0
  190. package/bundled-test-harness/assets/hydratable-card-test-NJ4CI4ey.js +426 -0
  191. package/bundled-test-harness/assets/icons-B3SAtRoj.js +894 -0
  192. package/bundled-test-harness/assets/image-file-def-B0rpS3Yy.js +3 -0
  193. package/bundled-test-harness/assets/image-file-def-DUFmjNL8.js +65 -0
  194. package/bundled-test-harness/assets/image-olOUqgMQ.js +47 -0
  195. package/bundled-test-harness/assets/index-changes-test-D7OE-99k.js +367 -0
  196. package/bundled-test-harness/assets/index-query-engine-test-BBKqgSmg.js +2593 -0
  197. package/bundled-test-harness/assets/inspector-test-DV6Ms2uz.js +1930 -0
  198. package/bundled-test-harness/assets/instance-filter-matcher-test-Bs4kf7E8.js +788 -0
  199. package/bundled-test-harness/assets/interact-submode-creation-and-permissions-test-DIfgRhIN.js +475 -0
  200. package/bundled-test-harness/assets/interact-submode-setup-D4M_e580.js +566 -0
  201. package/bundled-test-harness/assets/is-component-declaration-test-jPGRTVh1.js +50 -0
  202. package/bundled-test-harness/assets/iso-bmff-DHtkSbQM.js +205 -0
  203. package/bundled-test-harness/assets/iso-bmff-zmOHoSVg.js +2 -0
  204. package/bundled-test-harness/assets/isolated-and-edit-BAnwcK1T.js +2 -0
  205. package/bundled-test-harness/assets/job-priority-header-test-7j2f3Dtl.js +81 -0
  206. package/bundled-test-harness/assets/job-scoped-instance-residency-test-DPzVQUL3.js +103 -0
  207. package/bundled-test-harness/assets/join-the-community-Ft5fjeIA.js +86 -0
  208. package/bundled-test-harness/assets/jpg-meta-extractor-Dsq6rZ8F.js +88 -0
  209. package/bundled-test-harness/assets/json-field-CxOZvp3k.js +19 -0
  210. package/bundled-test-harness/assets/json-field-ojdwGD6T.js +2 -0
  211. package/bundled-test-harness/assets/json-file-def-Da_5-zSM.js +298 -0
  212. package/bundled-test-harness/assets/last-modified-date-BnyJsc04.js +43 -0
  213. package/bundled-test-harness/assets/last-modified-date-test-DFl2mo1B.js +28 -0
  214. package/bundled-test-harness/assets/links-to-editor-DO24-71w.js +2 -0
  215. package/bundled-test-harness/assets/links-to-many-component-C7DabwAY.js +2 -0
  216. package/bundled-test-harness/assets/linksto-broken-link-placeholder-test-D4lDhvnQ.js +398 -0
  217. package/bundled-test-harness/assets/linksto-error-sentinel-test-oWgDz00K.js +238 -0
  218. package/bundled-test-harness/assets/linksto-many-broken-link-placeholder-test-CpSl7zJ7.js +354 -0
  219. package/bundled-test-harness/assets/linksto-many-per-slot-access-test-DJY3J8Xl.js +303 -0
  220. package/bundled-test-harness/assets/linksto-sentinel-reload-test-BxzfoONe.js +197 -0
  221. package/bundled-test-harness/assets/linksto-sentinel-roundtrip-test-DyE99km_.js +260 -0
  222. package/bundled-test-harness/assets/linksto-singular-js-access-contract-test-dcWAAgxt.js +196 -0
  223. package/bundled-test-harness/assets/llm-model-DrswiczZ.js +64 -0
  224. package/bundled-test-harness/assets/login-C-EIG0-Q.css +543 -0
  225. package/bundled-test-harness/assets/login-CNeL-9IC.js +408 -0
  226. package/bundled-test-harness/assets/login-error-text-test-CEH2tjNP.js +51 -0
  227. package/bundled-test-harness/assets/login-test-BpMx7qwV.js +246 -0
  228. package/bundled-test-harness/assets/m4a-meta-extractor-BJkMHUIK.js +204 -0
  229. package/bundled-test-harness/assets/main-BaUgfpPE.js +5 -0
  230. package/bundled-test-harness/assets/markdown-ByEGbwov.js +7 -0
  231. package/bundled-test-harness/assets/markdown-KJzgTg-A.js +2 -0
  232. package/bundled-test-harness/assets/markdown-editor-mode-select-BUGPXaSE.js +2 -0
  233. package/bundled-test-harness/assets/markdown-editor-mode-select-DBk8dG0O.js +54 -0
  234. package/bundled-test-harness/assets/markdown-embed-chooser-modal-test-BIlEmna9.js +470 -0
  235. package/bundled-test-harness/assets/markdown-embed-preview-pane-test-B6rscKpk.js +447 -0
  236. package/bundled-test-harness/assets/markdown-embed-preview-test-CTQw1wq-.js +368 -0
  237. package/bundled-test-harness/assets/markdown-fallback-BVsco6gJ.js +2 -0
  238. package/bundled-test-harness/assets/markdown-fallback-test-C_CIFEzH.js +316 -0
  239. package/bundled-test-harness/assets/markdown-highlighting-test-D6YvywF5.js +244 -0
  240. package/bundled-test-harness/assets/markdown-preview-1TSMSUv0.js +64 -0
  241. package/bundled-test-harness/assets/markdown-preview-jbuUjLoD.js +72 -0
  242. package/bundled-test-harness/assets/markdown-preview-test-zuU5uoA_.js +238 -0
  243. package/bundled-test-harness/assets/markdown-skill-frontmatter-test-CoicGRkb.js +146 -0
  244. package/bundled-test-harness/assets/menu-items-DZ_uOoYu.js +2 -0
  245. package/bundled-test-harness/assets/message-tool-test-K6LgTq5d.js +33 -0
  246. package/bundled-test-harness/assets/metadata-fields-WiOuUCDl.js +1415 -0
  247. package/bundled-test-harness/assets/metadata-fields-iu5AfQp3.js +2 -0
  248. package/bundled-test-harness/assets/midi-audio-def-CD2-4Wjx.js +52 -0
  249. package/bundled-test-harness/assets/midi-meta-extractor-CE3sLiEV.js +284 -0
  250. package/bundled-test-harness/assets/midi-meta-extractor-O7c8LHYV.js +2 -0
  251. package/bundled-test-harness/assets/migrate-skill-test-Beh-AeSN.js +161 -0
  252. package/bundled-test-harness/assets/mini-BNXINKKF.js +85 -0
  253. package/bundled-test-harness/assets/mini-C43Q4BWp.js +1519 -0
  254. package/bundled-test-harness/assets/mini-card-chooser-test-B1GMp-31.js +272 -0
  255. package/bundled-test-harness/assets/mini-file-chooser-test-CbI1vrQn.js +201 -0
  256. package/bundled-test-harness/assets/missing-template-BPhJRbDs.js +48 -0
  257. package/bundled-test-harness/assets/missing-template-DP-Pi-HQ.js +2 -0
  258. package/bundled-test-harness/assets/modal-KpPz2f8x.js +322 -0
  259. package/bundled-test-harness/assets/modal-container-0Efz_h2z.js +40 -0
  260. package/bundled-test-harness/assets/model-cost-tier-test-D-5VSjh6.js +173 -0
  261. package/bundled-test-harness/assets/module-contents-service-BRkTETb6.js +256 -0
  262. package/bundled-test-harness/assets/moment-Cln59YUK.js +3474 -0
  263. package/bundled-test-harness/assets/monaco-AbHCoDJY.js +143 -0
  264. package/bundled-test-harness/assets/monaco-test-DCPi18sy.js +100 -0
  265. package/bundled-test-harness/assets/monaco-test-waiter-lvFEYpFj.js +190 -0
  266. package/bundled-test-harness/assets/month-1eUIsvWN.js +2 -0
  267. package/bundled-test-harness/assets/month-BeUdWMWQ.js +123 -0
  268. package/bundled-test-harness/assets/month-day-Bbsd8YbR.js +192 -0
  269. package/bundled-test-harness/assets/month-day-Dks5STJu.js +2 -0
  270. package/bundled-test-harness/assets/month-year-pL_rpUhX.js +2 -0
  271. package/bundled-test-harness/assets/month-year-wH_YnYgL.js +93 -0
  272. package/bundled-test-harness/assets/mp3-meta-extractor-C3u34UHM.js +476 -0
  273. package/bundled-test-harness/assets/mp4-meta-extractor-Bj3F7dxs.js +188 -0
  274. package/bundled-test-harness/assets/multiple-stacks-test-mkNdTUMI.js +208 -0
  275. package/bundled-test-harness/assets/nested-query-field-render-test-BQLn3wg9.js +249 -0
  276. package/bundled-test-harness/assets/no-stacks-test-DpwZQAJ-.js +48 -0
  277. package/bundled-test-harness/assets/number-DZa-fHpu.js +151 -0
  278. package/bundled-test-harness/assets/number-Dvua76YP.js +3 -0
  279. package/bundled-test-harness/assets/number-field-test-BiaH2eaB.js +184 -0
  280. package/bundled-test-harness/assets/number-input-D5nDYDkK.js +82 -0
  281. package/bundled-test-harness/assets/office-extract-JzYva33g.js +27 -0
  282. package/bundled-test-harness/assets/office-extract-XMpsyYRh.js +2 -0
  283. package/bundled-test-harness/assets/ogg-meta-extractor-DJosZ9LA.js +225 -0
  284. package/bundled-test-harness/assets/on-key-BBVkS8Bi.js +472 -0
  285. package/bundled-test-harness/assets/ooxml-BlAE2w4d.js +172 -0
  286. package/bundled-test-harness/assets/ooxml-D-p8OmuM.js +2 -0
  287. package/bundled-test-harness/assets/open-image-in-new-tab-test-DWBU5pw9.js +52 -0
  288. package/bundled-test-harness/assets/operation-lowering-test-nzqprueU.js +2812 -0
  289. package/bundled-test-harness/assets/operations-CPvfTuY3.js +766 -0
  290. package/bundled-test-harness/assets/operations-invocation-test-C75T6zn3.js +523 -0
  291. package/bundled-test-harness/assets/operations-query-test-BoCszQEW.js +459 -0
  292. package/bundled-test-harness/assets/operations-test-79ipSnpM.js +2518 -0
  293. package/bundled-test-harness/assets/operations-x3Aw2Nky.js +3 -0
  294. package/bundled-test-harness/assets/operator-mode-acceptance-test-jjsYtt96.js +1188 -0
  295. package/bundled-test-harness/assets/operator-mode-card-chooser-test-hZP9gEQK.js +1036 -0
  296. package/bundled-test-harness/assets/operator-mode-links-test-DN16SuIx.js +793 -0
  297. package/bundled-test-harness/assets/operator-mode-state-service-gwiTSiWX.js +1275 -0
  298. package/bundled-test-harness/assets/operator-mode-state-service-test-Dt2qnKKP.js +206 -0
  299. package/bundled-test-harness/assets/operator-mode-test-BZnnxO9q.js +683 -0
  300. package/bundled-test-harness/assets/operator-mode-ui-test-O--qEo-y.js +1027 -0
  301. package/bundled-test-harness/assets/overlay-menu-items-test-Bl2k0aAa.js +317 -0
  302. package/bundled-test-harness/assets/overlays-CdN_JokA.js +270 -0
  303. package/bundled-test-harness/assets/overlays-clip-test-DpbR1ZTz.js +91 -0
  304. package/bundled-test-harness/assets/overlays-detached-element-test-cLgEGvMs.js +56 -0
  305. package/bundled-test-harness/assets/pane-PYdezM7g.js +330 -0
  306. package/bundled-test-harness/assets/panel-7FDqkxrr.js +474 -0
  307. package/bundled-test-harness/assets/panel-C3E0s49q.js +3540 -0
  308. package/bundled-test-harness/assets/past-sessions-test-BsjEeoze.js +321 -0
  309. package/bundled-test-harness/assets/patch-fields-test-CsixJmSr.js +1014 -0
  310. package/bundled-test-harness/assets/patch-instance-test-CBDgTi0L.js +348 -0
  311. package/bundled-test-harness/assets/pdf-file-def-9VNjnqDa.js +76 -0
  312. package/bundled-test-harness/assets/pdf-meta-extractor-BF4e5kMR.js +156 -0
  313. package/bundled-test-harness/assets/pdf-meta-extractor-D8Bxh2cc.js +2 -0
  314. package/bundled-test-harness/assets/pdf-viewer-Bu413sN8.js +112 -0
  315. package/bundled-test-harness/assets/pdf-viewer-GKDi_xmf.js +2 -0
  316. package/bundled-test-harness/assets/percentage-TOr6qK2T.js +84 -0
  317. package/bundled-test-harness/assets/permission-checking-realm-test-BRNVYszm.js +306 -0
  318. package/bundled-test-harness/assets/phone-number-D5SR8nWu.js +236 -0
  319. package/bundled-test-harness/assets/phone-number-field-test-DffwtqGd.js +73 -0
  320. package/bundled-test-harness/assets/phone-number-hf_xIVGQ.js +2 -0
  321. package/bundled-test-harness/assets/plate-Vojc88hM.js +41 -0
  322. package/bundled-test-harness/assets/plate-dTUzEMj5.js +2 -0
  323. package/bundled-test-harness/assets/player-CmRw0uM5.js +82 -0
  324. package/bundled-test-harness/assets/player-Dt85lPZl.js +2 -0
  325. package/bundled-test-harness/assets/plural-field-components-test-DNpGuH1D.js +198 -0
  326. package/bundled-test-harness/assets/png-image-def-GY7gjqya.js +48 -0
  327. package/bundled-test-harness/assets/png-meta-extractor-4pI611re.js +2 -0
  328. package/bundled-test-harness/assets/png-meta-extractor-CHp_rpAi.js +111 -0
  329. package/bundled-test-harness/assets/policy-scoped-search-test-CipPu7tY.js +339 -0
  330. package/bundled-test-harness/assets/pptx-file-def-lBBiebvn.js +60 -0
  331. package/bundled-test-harness/assets/pptx-meta-extractor-BjJYWiOJ.js +77 -0
  332. package/bundled-test-harness/assets/pptx-meta-extractor-DbT-dPRg.js +2 -0
  333. package/bundled-test-harness/assets/prerender-persistence-block-test-ClHMVvJt.js +124 -0
  334. package/bundled-test-harness/assets/prerender-serialize-cycle-test-LdqaMTK8.js +134 -0
  335. package/bundled-test-harness/assets/preview-CYlam_aW.js +74 -0
  336. package/bundled-test-harness/assets/preview-format-CiSo4kEa.js +41 -0
  337. package/bundled-test-harness/assets/preview-format-test-MsB1TOLB.js +103 -0
  338. package/bundled-test-harness/assets/process-card-B3xBGkv1.js +2 -0
  339. package/bundled-test-harness/assets/process-card-DumVcx9E.js +114 -0
  340. package/bundled-test-harness/assets/process-card-test-C44H8yVy.js +94 -0
  341. package/bundled-test-harness/assets/profile-settings-modal-ipYzrVTz.js +708 -0
  342. package/bundled-test-harness/assets/progress-circle-DJ6WSO2E.js +95 -0
  343. package/bundled-test-harness/assets/progress-circle-q358_9Sn.js +2 -0
  344. package/bundled-test-harness/assets/quarter-BjO5DlU2.js +2 -0
  345. package/bundled-test-harness/assets/quarter-_D72FwfS.js +168 -0
  346. package/bundled-test-harness/assets/query-field-membership-status-test-CzDyfK49.js +323 -0
  347. package/bundled-test-harness/assets/query-field-page-optin-test-B-x3vsmC.js +126 -0
  348. package/bundled-test-harness/assets/query-field-schema-test-DFw6KuYv.js +231 -0
  349. package/bundled-test-harness/assets/query-field-stale-prerender-test-DSQ-cv_O.js +152 -0
  350. package/bundled-test-harness/assets/query-fields-test-DQiMFRCe.js +535 -0
  351. package/bundled-test-harness/assets/rail-CNspDFyn.js +44 -0
  352. package/bundled-test-harness/assets/rail-D2YcQ0VP.js +2 -0
  353. package/bundled-test-harness/assets/realm-82Z5RUM_.js +95 -0
  354. package/bundled-test-harness/assets/realm-config-SgrwqjRu.js +844 -0
  355. package/bundled-test-harness/assets/realm-config-policy-standing-test-C6sQNk2u.js +290 -0
  356. package/bundled-test-harness/assets/realm-config-routing-rule-edit-test-DcYXBlvi.js +274 -0
  357. package/bundled-test-harness/assets/realm-config-settings-test-DblJv06X.js +187 -0
  358. package/bundled-test-harness/assets/realm-dropdown-CDvL8k3B.js +560 -0
  359. package/bundled-test-harness/assets/realm-et890flh.js +2 -0
  360. package/bundled-test-harness/assets/realm-field-test-pBK_x-Xw.js +100 -0
  361. package/bundled-test-harness/assets/realm-indexing-test-DSFn2F8F.js +4380 -0
  362. package/bundled-test-harness/assets/realm-policy-test-DYnLqzTS.js +1141 -0
  363. package/bundled-test-harness/assets/realm-test-DOZT2EG5.js +2363 -0
  364. package/bundled-test-harness/assets/realm-url-tooltip-qaXTjRb-.js +56 -0
  365. package/bundled-test-harness/assets/realm-url-tooltip-test-DGTEeLH9.js +78 -0
  366. package/bundled-test-harness/assets/reasoning-test-BRkhvYjr.js +234 -0
  367. package/bundled-test-harness/assets/recent-colors-addon-BreXcpg8.js +2 -0
  368. package/bundled-test-harness/assets/recent-colors-addon-CmCkbJ2_.js +61 -0
  369. package/bundled-test-harness/assets/relationship-loading-state-test-B6UGYKzG.js +290 -0
  370. package/bundled-test-harness/assets/relative-time-BjHvL023.js +2 -0
  371. package/bundled-test-harness/assets/relative-time-ChYKOMIM.js +129 -0
  372. package/bundled-test-harness/assets/remix-card-test-CpV0kKfq.js +58 -0
  373. package/bundled-test-harness/assets/rendered-markdown-CJa7IzCC.js +263 -0
  374. package/bundled-test-harness/assets/rendered-markdown-test-CVKsHS4P.js +587 -0
  375. package/bundled-test-harness/assets/resident-instance-reuse-test-jQfW1NMn.js +82 -0
  376. package/bundled-test-harness/assets/response-field-B2-daCl2.js +38 -0
  377. package/bundled-test-harness/assets/result-tile-BSg4mzbc.js +140 -0
  378. package/bundled-test-harness/assets/rich-markdown-BtP1yamM.js +2 -0
  379. package/bundled-test-harness/assets/rich-markdown-C6rQUngb.js +218 -0
  380. package/bundled-test-harness/assets/rich-markdown-field-test-9yB6ykCe.js +1647 -0
  381. package/bundled-test-harness/assets/room-C7tKd02X.js +1008 -0
  382. package/bundled-test-harness/assets/room-message-test-DsMmRYpV.js +445 -0
  383. package/bundled-test-harness/assets/room-test-golI1H61.js +95 -0
  384. package/bundled-test-harness/assets/run-realm-code-CbXk6bnK.js +1600 -0
  385. package/bundled-test-harness/assets/run-realm-code-test-B9JeesaW.js +2468 -0
  386. package/bundled-test-harness/assets/schema-generation-test-uLLGm5Vh.js +28 -0
  387. package/bundled-test-harness/assets/score-BQhCQdUP.js +2 -0
  388. package/bundled-test-harness/assets/score-CoWEzENH.js +100 -0
  389. package/bundled-test-harness/assets/scrolling-test-WHWEkKeZ.js +384 -0
  390. package/bundled-test-harness/assets/search-BkQYpQDY.js +605 -0
  391. package/bundled-test-harness/assets/search-adorn-test-CW92JPOk.js +136 -0
  392. package/bundled-test-harness/assets/search-entries-BU4w6Ymc.js +472 -0
  393. package/bundled-test-harness/assets/search-entries-result-test-9eydsDtD.js +234 -0
  394. package/bundled-test-harness/assets/search-entries-test-ByUREx0G.js +1486 -0
  395. package/bundled-test-harness/assets/search-result-header-UFkdo0Bx.js +128 -0
  396. package/bundled-test-harness/assets/search-results-DrHTuVRZ.js +266 -0
  397. package/bundled-test-harness/assets/search-results-test-krtQQM57.js +578 -0
  398. package/bundled-test-harness/assets/search-selection-menu-test-DoqSbez7.js +108 -0
  399. package/bundled-test-harness/assets/search-sheet-persistence-test-4ZPaEY-y.js +131 -0
  400. package/bundled-test-harness/assets/search-test-BYpq32RM.js +2241 -0
  401. package/bundled-test-harness/assets/searchable-BXw4T11q.js +192 -0
  402. package/bundled-test-harness/assets/searchable-CVvPDA3Q.js +2 -0
  403. package/bundled-test-harness/assets/searchable-option-test-BhLFI4ei.js +322 -0
  404. package/bundled-test-harness/assets/searchable-search-doc-test-DrNLCF73.js +1271 -0
  405. package/bundled-test-harness/assets/secure-sign-in-VNQhe0ae.js +130 -0
  406. package/bundled-test-harness/assets/secure-sign-in-Za8PX9cD.css +24 -0
  407. package/bundled-test-harness/assets/secure-sign-in-aunWHCrB.js +73 -0
  408. package/bundled-test-harness/assets/secure-sign-in-test-BcY1TcNd.js +32 -0
  409. package/bundled-test-harness/assets/secure-sign-in-test-DRdz89BT.js +245 -0
  410. package/bundled-test-harness/assets/sending-test-mbHpGZUu.js +576 -0
  411. package/bundled-test-harness/assets/serialization-rri-form-audit-test-nypV9J82.js +136 -0
  412. package/bundled-test-harness/assets/serialization-test-aLwrFv4d.js +8758 -0
  413. package/bundled-test-harness/assets/setup-Dgn0s6Zk.js +772 -0
  414. package/bundled-test-harness/assets/shared-link-target-reuse-test-D9MR2UNc.js +207 -0
  415. package/bundled-test-harness/assets/show-card-Dwfk332M.js +67 -0
  416. package/bundled-test-harness/assets/show-card-test-CRPwwJvc.js +365 -0
  417. package/bundled-test-harness/assets/show-file-DLdFPHMR.js +34 -0
  418. package/bundled-test-harness/assets/signed-capture-DUR9PohQ.js +204 -0
  419. package/bundled-test-harness/assets/signed-capture-link-test-DfTAB6OT.js +132 -0
  420. package/bundled-test-harness/assets/single-stack-test-Crr_8nti.js +652 -0
  421. package/bundled-test-harness/assets/skill-DQ00VonZ.js +3 -0
  422. package/bundled-test-harness/assets/skill-reference-LEitQV9i.js +112 -0
  423. package/bundled-test-harness/assets/skill-yZXS1VHQ.js +76 -0
  424. package/bundled-test-harness/assets/skills-test-D3-C-Dbm.js +648 -0
  425. package/bundled-test-harness/assets/slider-picker-B6AxKL2j.js +245 -0
  426. package/bundled-test-harness/assets/slider-picker-C4Tc5o-s.js +2 -0
  427. package/bundled-test-harness/assets/spec-Cl_LB6nC.js +602 -0
  428. package/bundled-test-harness/assets/spinner-BHFM7zcR.js +39 -0
  429. package/bundled-test-harness/assets/spinner-DvAvsyDT.css +21 -0
  430. package/bundled-test-harness/assets/store-BV6WX8oV.js +2205 -0
  431. package/bundled-test-harness/assets/store-module-rebuild-test-HyphFJiF.js +454 -0
  432. package/bundled-test-harness/assets/store-search-test-nUeJ5opb.js +175 -0
  433. package/bundled-test-harness/assets/store-test-BebUIJAg.js +3460 -0
  434. package/bundled-test-harness/assets/string-BHZZwNlZ.js +9 -0
  435. package/bundled-test-harness/assets/submode-switcher-D-U9cXo0.js +169 -0
  436. package/bundled-test-harness/assets/svg-meta-extractor-BsG4w2nX.js +42 -0
  437. package/bundled-test-harness/assets/swatches-picker-4vFztxHo.js +33 -0
  438. package/bundled-test-harness/assets/swatches-picker-C7RE7uJ8.js +2 -0
  439. package/bundled-test-harness/assets/switch-submode-CuA0Zfjn.js +79 -0
  440. package/bundled-test-harness/assets/switch-submode-test-i1Qic_Cp.js +168 -0
  441. package/bundled-test-harness/assets/tag-CZNs3DPN.js +105 -0
  442. package/bundled-test-harness/assets/tests-BneuP252.js +3523 -0
  443. package/bundled-test-harness/assets/text-area-DAShQQBe.js +9 -0
  444. package/bundled-test-harness/assets/text-file-def-D2Rs6nS1.js +151 -0
  445. package/bundled-test-harness/assets/text-input-validator-test-C9IG-1GZ.js +156 -0
  446. package/bundled-test-harness/assets/theme-Dm8LWaRK.js +9 -0
  447. package/bundled-test-harness/assets/theme-card-test-Cbb6tAap.js +621 -0
  448. package/bundled-test-harness/assets/theme-scheme-island-test-DOVLakx3.js +264 -0
  449. package/bundled-test-harness/assets/three-d-model-def-DWSPQGgD.js +70 -0
  450. package/bundled-test-harness/assets/time--_Txqya1.js +126 -0
  451. package/bundled-test-harness/assets/time-DKD7Bdjd.js +2 -0
  452. package/bundled-test-harness/assets/time-slots-BZaugjq_.js +2 -0
  453. package/bundled-test-harness/assets/time-slots-C85M0rWl.js +85 -0
  454. package/bundled-test-harness/assets/timeline-B3KGDm3M.js +2 -0
  455. package/bundled-test-harness/assets/timeline-BMwgaZZu.js +59 -0
  456. package/bundled-test-harness/assets/to-device-streaming-test-CMp5bFiz.js +163 -0
  457. package/bundled-test-harness/assets/token-usage-test-CXA0b8Ep.js +166 -0
  458. package/bundled-test-harness/assets/tool-field-BGLelnsr.js +94 -0
  459. package/bundled-test-harness/assets/tool-field-BOFuDDt3.js +2 -0
  460. package/bundled-test-harness/assets/tools-CTjy7Aub.js +725 -0
  461. package/bundled-test-harness/assets/tools-calling-test--JR-7AK7.js +200 -0
  462. package/bundled-test-harness/assets/tools-test-6yAW3W5I.js +2820 -0
  463. package/bundled-test-harness/assets/tools-test-DhpMUQkz.js +1624 -0
  464. package/bundled-test-harness/assets/ts-file-def-CDbf8aw2.js +159 -0
  465. package/bundled-test-harness/assets/update-room-skills-test-DoKsS_1C.js +240 -0
  466. package/bundled-test-harness/assets/url-D0ooeJxC.js +2 -0
  467. package/bundled-test-harness/assets/url-mFskVPSX.js +96 -0
  468. package/bundled-test-harness/assets/video-file-def-AcmWqzev.js +76 -0
  469. package/bundled-test-harness/assets/wav-meta-extractor-CbTLruQf.js +368 -0
  470. package/bundled-test-harness/assets/webm-meta-extractor-C9JH-CMX.js +178 -0
  471. package/bundled-test-harness/assets/webp-meta-extractor-C6sHm4J7.js +98 -0
  472. package/bundled-test-harness/assets/website-Bxuk_OmR.js +92 -0
  473. package/bundled-test-harness/assets/week-Bxssxce7.js +2 -0
  474. package/bundled-test-harness/assets/week-DQLj9974.js +111 -0
  475. package/bundled-test-harness/assets/welcome-to-boxel-BH82RsW5.js +172 -0
  476. package/bundled-test-harness/assets/workspace-DJ_s2x4g.js +614 -0
  477. package/bundled-test-harness/assets/workspace-a11y-test-BJbZNgoP.js +197 -0
  478. package/bundled-test-harness/assets/workspace-behavior-test-BLBARTfb.js +200 -0
  479. package/bundled-test-harness/assets/workspace-chooser-BpmlVrVn.js +2219 -0
  480. package/bundled-test-harness/assets/workspace-chooser-CqLR2Dzh.css +1296 -0
  481. package/bundled-test-harness/assets/workspace-chooser-catalog-order-test-CmAVNAWC.js +36 -0
  482. package/bundled-test-harness/assets/workspace-chooser-unreachable-notice-test-DEfG7Uh9.js +60 -0
  483. package/bundled-test-harness/assets/workspace-delete-multiple-test-DE7Z8ooj.js +212 -0
  484. package/bundled-test-harness/assets/workspace-delete-summary-test-CwtG_zLH.js +63 -0
  485. package/bundled-test-harness/assets/workspace-timestamp-labels-test-DFAaRmJW.js +58 -0
  486. package/bundled-test-harness/assets/xlsx-file-def-DcvaRYnZ.js +60 -0
  487. package/bundled-test-harness/assets/xlsx-meta-extractor-0RlViVaf.js +101 -0
  488. package/bundled-test-harness/assets/xlsx-meta-extractor-BH30Vuem.js +2 -0
  489. package/bundled-test-harness/assets/year-B_MBk_hE.js +78 -0
  490. package/bundled-test-harness/assets/year-hSpccI9L.js +2 -0
  491. package/bundled-test-harness/assets/zip-file-def-c84iddi9.js +288 -0
  492. package/bundled-test-harness/index.html +78 -68
  493. package/bundled-test-harness/tests/index.html +78 -68
  494. package/bundled-types/host-app/components/matrix/account-switch-failed.gts +2 -2
  495. package/bundled-types/host-app/components/matrix/auth.gts +2 -2
  496. package/bundled-types/host-app/components/matrix/cli-auth.gts +7 -6
  497. package/bundled-types/host-app/components/matrix/forgot-password.gts +43 -129
  498. package/bundled-types/host-app/components/matrix/login.gts +15 -118
  499. package/bundled-types/host-app/components/matrix/register-user.gts +45 -226
  500. package/bundled-types/host-app/components/matrix/secure-sign-in.gts +235 -0
  501. package/bundled-types/host-app/components/operator-mode/container.gts +13 -1
  502. package/bundled-types/host-app/components/operator-mode/profile-info-popover.gts +1 -1
  503. package/bundled-types/host-app/config/environment.ts +1 -1
  504. package/bundled-types/host-app/lib/secure-sign-in.ts +130 -0
  505. package/bundled-types/host-app/services/matrix-service.ts +46 -0
  506. package/bundled-types/host-app/services/monaco-service.ts +0 -5
  507. package/bundled-types/host-app/utils/login-token.ts +23 -10
  508. package/dist/api.js +1 -1
  509. package/dist/index.js +289 -285
  510. package/package.json +1 -1
  511. package/src/build-program.ts +6 -2
  512. package/src/commands/profile.ts +72 -3
  513. package/src/lib/profile-manager.ts +5 -1
  514. package/src/lib/secure-session.ts +29 -0
  515. package/src/lib/sso-login.ts +94 -15
  516. package/bundled-test-harness/assets/account-switch-failed-B3pr_iC3.js +0 -32
  517. package/bundled-test-harness/assets/account-switch-failed-DTGZZo-G.css +0 -61
  518. package/bundled-test-harness/assets/account-switch-failed-test-9ENVgvlx.js +0 -45
  519. package/bundled-test-harness/assets/add-workspace-BAbk0250.js +0 -141
  520. package/bundled-test-harness/assets/add-workspace-test-ChAja_t-.js +0 -72
  521. package/bundled-test-harness/assets/advanced-color-picker-C-xBFJ2S.js +0 -504
  522. package/bundled-test-harness/assets/advanced-color-picker-bWAmCT-8.js +0 -2
  523. package/bundled-test-harness/assets/ai-assistant-test-BJ9yetuC.js +0 -2211
  524. package/bundled-test-harness/assets/ai-module-creation-test-Bw3TKS9d.js +0 -151
  525. package/bundled-test-harness/assets/aibot-message-DkgHT6eJ.js +0 -465
  526. package/bundled-test-harness/assets/app-DW5QjtRp.js +0 -22816
  527. package/bundled-test-harness/assets/app-yCDjO4mk.css +0 -2718
  528. package/bundled-test-harness/assets/audio-file-def-bJ3cXVmC.js +0 -133
  529. package/bundled-test-harness/assets/avif-meta-extractor-CrSDfYEt.js +0 -162
  530. package/bundled-test-harness/assets/base64-image-C7UBjK5W.js +0 -262
  531. package/bundled-test-harness/assets/base64-image-CjWpxROT.js +0 -2
  532. package/bundled-test-harness/assets/big-integer-BBql7oGZ.js +0 -89
  533. package/bundled-test-harness/assets/big-integer-B_TrzRy_.js +0 -2
  534. package/bundled-test-harness/assets/binary-upload-dedupe-test-BiX8kS7D.js +0 -308
  535. package/bundled-test-harness/assets/boolean-9LNUUTfw.js +0 -2
  536. package/bundled-test-harness/assets/boolean-BAmK01TF.js +0 -94
  537. package/bundled-test-harness/assets/brand-functional-palette-CFuoS-LS.js +0 -137
  538. package/bundled-test-harness/assets/brand-logo-By89eknI.js +0 -295
  539. package/bundled-test-harness/assets/broken-link-template-test-odBriDSP.js +0 -192
  540. package/bundled-test-harness/assets/bundled-base-CLQkkmN4.js +0 -254
  541. package/bundled-test-harness/assets/bundled-base-modules-test-BYrTaTwa.js +0 -54
  542. package/bundled-test-harness/assets/buried-stack-item-scroll-test-DU4bM5nd.js +0 -236
  543. package/bundled-test-harness/assets/bxl-expression-test-Cs9JaZbC.js +0 -250
  544. package/bundled-test-harness/assets/can-invoke-test-ccMc06BU.js +0 -401
  545. package/bundled-test-harness/assets/card-api-Bn65NUT0.js +0 -8
  546. package/bundled-test-harness/assets/card-api-test-COrFXu2i.js +0 -198
  547. package/bundled-test-harness/assets/card-api-u1pOrwS6.js +0 -4393
  548. package/bundled-test-harness/assets/card-basics-test-D4rn3iN-.js +0 -5364
  549. package/bundled-test-harness/assets/card-chooser-paging-test-bZhdrUXt.js +0 -235
  550. package/bundled-test-harness/assets/card-chooser-test-D9w1duob.js +0 -393
  551. package/bundled-test-harness/assets/card-collection-ClCV-__1.js +0 -118
  552. package/bundled-test-harness/assets/card-context-search-results-H_rN3Upz.js +0 -30
  553. package/bundled-test-harness/assets/card-context-search-results-test-jciyaouV.js +0 -184
  554. package/bundled-test-harness/assets/card-def-field-def-relationships-test-BVZoQzM8.js +0 -562
  555. package/bundled-test-harness/assets/card-delete-test-CuLcZFnY.js +0 -466
  556. package/bundled-test-harness/assets/card-error-DIOivSkD.js +0 -72
  557. package/bundled-test-harness/assets/card-error-awaiting-index-test-JMwcRONq.js +0 -53
  558. package/bundled-test-harness/assets/card-error-detail-96jWBx6B.js +0 -271
  559. package/bundled-test-harness/assets/card-info-BxPtwG1h.js +0 -2
  560. package/bundled-test-harness/assets/card-list-B34qY3io.js +0 -2
  561. package/bundled-test-harness/assets/card-list-BpCaKkZJ.js +0 -202
  562. package/bundled-test-harness/assets/card-resource-DcPbIwH9.js +0 -86
  563. package/bundled-test-harness/assets/cards-grid-CTN8nBT_.js +0 -344
  564. package/bundled-test-harness/assets/cards-grid-Cx44vL-M.js +0 -2
  565. package/bundled-test-harness/assets/cards-grid-layout-BdL0Uzxl.js +0 -111
  566. package/bundled-test-harness/assets/cards-grid-layout-Dn8Yb4ma.js +0 -2
  567. package/bundled-test-harness/assets/check-correctness-test-BfMV-MC0.js +0 -554
  568. package/bundled-test-harness/assets/clip-CK6mVuyN.js +0 -92
  569. package/bundled-test-harness/assets/clip-CfXD1JTr.js +0 -2
  570. package/bundled-test-harness/assets/code-ref-85Bih6Zl.js +0 -138
  571. package/bundled-test-harness/assets/code-ref-DATHaoyt.js +0 -2
  572. package/bundled-test-harness/assets/code-submode-availability-test-DLYlx0wo.js +0 -198
  573. package/bundled-test-harness/assets/code-submode-test-CDIi7MjD.js +0 -1824
  574. package/bundled-test-harness/assets/codeblocks-test-CNPyTvuv.js +0 -418
  575. package/bundled-test-harness/assets/codemirror-editor-BPOPTR-f.js +0 -2
  576. package/bundled-test-harness/assets/codemirror-editor-DPhG0pec.js +0 -701
  577. package/bundled-test-harness/assets/codemirror-embed-toolbar-test-Dk5lFOUq.js +0 -366
  578. package/bundled-test-harness/assets/color-BxN5gRSg.js +0 -65
  579. package/bundled-test-harness/assets/color-CrunRcis.js +0 -2
  580. package/bundled-test-harness/assets/color-field-test-COjFIpXV.js +0 -212
  581. package/bundled-test-harness/assets/color-picker-field-C-GS1CIw.js +0 -139
  582. package/bundled-test-harness/assets/color-picker-field-D3RXhbCK.js +0 -2
  583. package/bundled-test-harness/assets/color-wheel-picker-Bz8cBmf4.js +0 -283
  584. package/bundled-test-harness/assets/color-wheel-picker-DrwPrB8B.js +0 -2
  585. package/bundled-test-harness/assets/command-data-BxXgtNBf.js +0 -2
  586. package/bundled-test-harness/assets/command-data-ZdkcpEgG.js +0 -95
  587. package/bundled-test-harness/assets/compaction-test-DS7DTGT_.js +0 -150
  588. package/bundled-test-harness/assets/components-CbCTWAON.js +0 -17777
  589. package/bundled-test-harness/assets/computed-test-D_OrXDtR.js +0 -1320
  590. package/bundled-test-harness/assets/container-DDolu1gk.js +0 -11109
  591. package/bundled-test-harness/assets/container-DndcCIMv.css +0 -5169
  592. package/bundled-test-harness/assets/contains-many-component-BtgnAXih.js +0 -2
  593. package/bundled-test-harness/assets/contrast-checker-addon-kwtLKWdL.js +0 -2
  594. package/bundled-test-harness/assets/contrast-checker-addon-zFY5cen1.js +0 -71
  595. package/bundled-test-harness/assets/convert-to-class-name-test-BcGWl2K1.js +0 -17
  596. package/bundled-test-harness/assets/coordinate-D72EF1Pl.js +0 -48
  597. package/bundled-test-harness/assets/copy-file-to-realm-test-CYoDX4YV.js +0 -148
  598. package/bundled-test-harness/assets/country-B-iIe5v8.js +0 -199
  599. package/bundled-test-harness/assets/create-file-modal-PpvMksjR.js +0 -570
  600. package/bundled-test-harness/assets/create-listing-modal-test-CQtEf_UD.js +0 -273
  601. package/bundled-test-harness/assets/create-listing-pr-request-test-CDtKWyfk.js +0 -117
  602. package/bundled-test-harness/assets/create-spec-test-Cbqk8I9T.js +0 -256
  603. package/bundled-test-harness/assets/create-specs-CZg2cpnh.js +0 -215
  604. package/bundled-test-harness/assets/create-submission-workflow-test-CYrxF7bg.js +0 -132
  605. package/bundled-test-harness/assets/credential-fields-test-Di4jCJgU.js +0 -157
  606. package/bundled-test-harness/assets/css-value-CceJyI5o.js +0 -48
  607. package/bundled-test-harness/assets/csv-file-def-DJL2aZI9.js +0 -277
  608. package/bundled-test-harness/assets/currency-Bn5WIqzF.js +0 -134
  609. package/bundled-test-harness/assets/date-XI2CVYA2.js +0 -2
  610. package/bundled-test-harness/assets/date-h83UJcFR.js +0 -183
  611. package/bundled-test-harness/assets/date-time-fields-test-Cterr2mj.js +0 -359
  612. package/bundled-test-harness/assets/datetime-DadI80tC.js +0 -201
  613. package/bundled-test-harness/assets/datetime-Dpb_Sejj.js +0 -2
  614. package/bundled-test-harness/assets/datetime-stamp-C4vv397u.js +0 -81
  615. package/bundled-test-harness/assets/datetime-stamp-DIsJdQux.js +0 -2
  616. package/bundled-test-harness/assets/day-C4pZoGNM.js +0 -113
  617. package/bundled-test-harness/assets/day-D0goBhKb.js +0 -2
  618. package/bundled-test-harness/assets/debug-message-test-CV0sj-fl.js +0 -117
  619. package/bundled-test-harness/assets/dist-CAIttNZm.js +0 -1710
  620. package/bundled-test-harness/assets/dist-CLbqnmnm.js +0 -389
  621. package/bundled-test-harness/assets/dist-qkBOmIQy.js +0 -323
  622. package/bundled-test-harness/assets/docx-file-def-hz2tVQKf.js +0 -60
  623. package/bundled-test-harness/assets/docx-meta-extractor-CeRshlxL.js +0 -60
  624. package/bundled-test-harness/assets/docx-meta-extractor-muK5CKF3.js +0 -2
  625. package/bundled-test-harness/assets/duration-BYx1dLfm.js +0 -2
  626. package/bundled-test-harness/assets/duration-FAmTFeUa.js +0 -184
  627. package/bundled-test-harness/assets/email-D-bFy_C1.js +0 -80
  628. package/bundled-test-harness/assets/email-field-test-CY9K2zur.js +0 -75
  629. package/bundled-test-harness/assets/email-j4DZNH2-.js +0 -2
  630. package/bundled-test-harness/assets/enum-B7_baAn_.js +0 -167
  631. package/bundled-test-harness/assets/enum-BQqNzVQS.js +0 -2
  632. package/bundled-test-harness/assets/enum-field-test-BJ9Epz15.js +0 -953
  633. package/bundled-test-harness/assets/error-display-test-CbDWjJ2F.js +0 -343
  634. package/bundled-test-harness/assets/ethereum-address-BOLEnKsm.js +0 -78
  635. package/bundled-test-harness/assets/ethereum-address-s3Kvb2wG.js +0 -2
  636. package/bundled-test-harness/assets/expiration-warning-BaIP1MOZ.js +0 -2
  637. package/bundled-test-harness/assets/expiration-warning-gjEtxPk0.js +0 -90
  638. package/bundled-test-harness/assets/externals-Bih8ejPS.js +0 -4393
  639. package/bundled-test-harness/assets/fallback-banner-MlImHjSD.js +0 -24
  640. package/bundled-test-harness/assets/fallback-banner-live-delete-test-Bm7IKXPf.js +0 -207
  641. package/bundled-test-harness/assets/fallback-banner-test-C7TGA0Ob.js +0 -53
  642. package/bundled-test-harness/assets/fallback-banner-test-lvuaVRXu.js +0 -225
  643. package/bundled-test-harness/assets/fallback-models-test-Dy7iIKUS.js +0 -161
  644. package/bundled-test-harness/assets/field-component-DBoOxTke.js +0 -2
  645. package/bundled-test-harness/assets/field-configuration-test-DnAnzyC-.js +0 -548
  646. package/bundled-test-harness/assets/field-edit-DdJ8Akso.js +0 -2
  647. package/bundled-test-harness/assets/field-edit-XAop92l8.js +0 -36
  648. package/bundled-test-harness/assets/field-markdown-domain-test-cZCqbcjj.js +0 -616
  649. package/bundled-test-harness/assets/field-markdown-oversize-test-BuATetVz.js +0 -88
  650. package/bundled-test-harness/assets/field-markdown-primitives-test-BsubQfhv.js +0 -365
  651. package/bundled-test-harness/assets/field-markdown-specialized-test-4eNLiYpF.js +0 -534
  652. package/bundled-test-harness/assets/field-test-helpers-9I7cHnaU.js +0 -45
  653. package/bundled-test-harness/assets/file-api-CC86I7Er.js +0 -7
  654. package/bundled-test-harness/assets/file-attachment-test-o9191GMb.js +0 -796
  655. package/bundled-test-harness/assets/file-chooser-panel-test-C8aZuJlk.js +0 -153
  656. package/bundled-test-harness/assets/file-chooser-test-B0Tn8CCR.js +0 -504
  657. package/bundled-test-harness/assets/file-def-edit-BSiF2Lje.js +0 -2
  658. package/bundled-test-harness/assets/file-def-edit-C5TYBp_q.js +0 -26
  659. package/bundled-test-harness/assets/file-def-embedded-BLVTCiVB.js +0 -2
  660. package/bundled-test-harness/assets/file-def-embedded-Bep4iD6s.js +0 -38
  661. package/bundled-test-harness/assets/file-def-fitted-BTs-AS78.js +0 -2
  662. package/bundled-test-harness/assets/file-def-fitted-DcPitdYu.js +0 -38
  663. package/bundled-test-harness/assets/file-def-isolated-Kg1YVhm-.js +0 -38
  664. package/bundled-test-harness/assets/file-def-isolated-tK5JWCam.js +0 -2
  665. package/bundled-test-harness/assets/file-def-serialization-test-D4wnd5XK.js +0 -89
  666. package/bundled-test-harness/assets/file-menu-items-CH4-naSK.js +0 -117
  667. package/bundled-test-harness/assets/file-menu-items-emUxx3ZI.js +0 -2
  668. package/bundled-test-harness/assets/file-preview-stage-B1McIWwu.js +0 -2
  669. package/bundled-test-harness/assets/file-preview-stage-BgZLNMN4.js +0 -72
  670. package/bundled-test-harness/assets/file-shell-embedded-BmfuwWfU.js +0 -2
  671. package/bundled-test-harness/assets/file-shell-embedded-zh8CJanA.js +0 -68
  672. package/bundled-test-harness/assets/file-shell-fitted-DSFUNRGJ.js +0 -2
  673. package/bundled-test-harness/assets/file-shell-fitted-DXKDH0fn.js +0 -98
  674. package/bundled-test-harness/assets/file-shell-isolated-0F1MFv4q.js +0 -2
  675. package/bundled-test-harness/assets/file-shell-isolated-DduZZzmi.js +0 -195
  676. package/bundled-test-harness/assets/file-tree-from-index-BzDvvUHy.js +0 -151
  677. package/bundled-test-harness/assets/file-tree-from-index-test-D0hfI4a1.js +0 -96
  678. package/bundled-test-harness/assets/film-BN_HVXBU.js +0 -13
  679. package/bundled-test-harness/assets/film-CKkbUi0L.js +0 -2
  680. package/bundled-test-harness/assets/film-CMNJITZ-.js +0 -4074
  681. package/bundled-test-harness/assets/fitted-CAvdcKpu.js +0 -34
  682. package/bundled-test-harness/assets/fitted-CbKOwd1u.js +0 -2
  683. package/bundled-test-harness/assets/flac-meta-extractor-e8qajPSl.js +0 -99
  684. package/bundled-test-harness/assets/font-file-def-9atde5W8.js +0 -64
  685. package/bundled-test-harness/assets/font-meta-extractor-IralDC8M.js +0 -303
  686. package/bundled-test-harness/assets/font-meta-extractor-zPBVOfoR.js +0 -2
  687. package/bundled-test-harness/assets/formatted-aibot-message-test-CWOiZUng.js +0 -109
  688. package/bundled-test-harness/assets/from-elsewhere-ChxbtsBa.js +0 -131
  689. package/bundled-test-harness/assets/frontmatter-field-cdig7KR9.js +0 -41
  690. package/bundled-test-harness/assets/garbage-collection-test-Dg-ww_Sb.js +0 -403
  691. package/bundled-test-harness/assets/gauge-B45nLOGe.js +0 -106
  692. package/bundled-test-harness/assets/gauge-BK-768BM.js +0 -2
  693. package/bundled-test-harness/assets/general-test-D7cn7PUr.js +0 -926
  694. package/bundled-test-harness/assets/get-relationship-membership-state-test-Skmj9V6y.js +0 -1308
  695. package/bundled-test-harness/assets/gif-meta-extractor-BychhK9q.js +0 -114
  696. package/bundled-test-harness/assets/glimmer-motion-and-choreo-in-cards-test-C09YUmk4.js +0 -160
  697. package/bundled-test-harness/assets/glimmer-motion-and-choreo-test-DYskx_Kk.js +0 -74
  698. package/bundled-test-harness/assets/helper-BHX0HLF2.js +0 -478
  699. package/bundled-test-harness/assets/host-submode-test-Clw_QnvF.js +0 -1243
  700. package/bundled-test-harness/assets/html-file-def-C0P9giwU.js +0 -82
  701. package/bundled-test-harness/assets/hydratable-card-DnjrxKsT.js +0 -147
  702. package/bundled-test-harness/assets/hydratable-card-test-BAmWHfv1.js +0 -426
  703. package/bundled-test-harness/assets/icons-DBXBZgLe.js +0 -894
  704. package/bundled-test-harness/assets/image-Cip6ojDd.js +0 -47
  705. package/bundled-test-harness/assets/image-file-def-BdQxjZcN.js +0 -65
  706. package/bundled-test-harness/assets/image-file-def-DP4aqWcS.js +0 -3
  707. package/bundled-test-harness/assets/index-changes-test-D8b_56Ke.js +0 -367
  708. package/bundled-test-harness/assets/index-query-engine-test-CCyaUwMX.js +0 -2593
  709. package/bundled-test-harness/assets/inspector-test-BJTVGdOO.js +0 -1930
  710. package/bundled-test-harness/assets/instance-filter-matcher-test-DjsPrXL7.js +0 -788
  711. package/bundled-test-harness/assets/interact-submode-creation-and-permissions-test-DSqM0vxh.js +0 -475
  712. package/bundled-test-harness/assets/interact-submode-setup-DF31UMX-.js +0 -566
  713. package/bundled-test-harness/assets/is-component-declaration-test-Did47eG9.js +0 -50
  714. package/bundled-test-harness/assets/iso-bmff-LuWkGL__.js +0 -205
  715. package/bundled-test-harness/assets/iso-bmff-_flO6c20.js +0 -2
  716. package/bundled-test-harness/assets/isolated-and-edit-frocLHin.js +0 -2
  717. package/bundled-test-harness/assets/job-priority-header-test-DHLAXfp7.js +0 -81
  718. package/bundled-test-harness/assets/job-scoped-instance-residency-test-C1Bt5j98.js +0 -103
  719. package/bundled-test-harness/assets/join-the-community-BBUSO2cs.js +0 -86
  720. package/bundled-test-harness/assets/jpg-meta-extractor-CoybO4Hq.js +0 -88
  721. package/bundled-test-harness/assets/json-field-8sdH5RQb.js +0 -2
  722. package/bundled-test-harness/assets/json-field-BDD3iTUh.js +0 -19
  723. package/bundled-test-harness/assets/json-file-def-BKibsfc6.js +0 -298
  724. package/bundled-test-harness/assets/last-modified-date-CR5jru2m.js +0 -43
  725. package/bundled-test-harness/assets/last-modified-date-test-jJ00YdTm.js +0 -28
  726. package/bundled-test-harness/assets/links-to-editor-rDoCYaN-.js +0 -2
  727. package/bundled-test-harness/assets/links-to-many-component-BqZT88Fb.js +0 -2
  728. package/bundled-test-harness/assets/linksto-broken-link-placeholder-test-Cp1Eb_4U.js +0 -398
  729. package/bundled-test-harness/assets/linksto-error-sentinel-test-Bddavnh_.js +0 -238
  730. package/bundled-test-harness/assets/linksto-many-broken-link-placeholder-test-c5WegXnR.js +0 -354
  731. package/bundled-test-harness/assets/linksto-many-per-slot-access-test-CWskzfGW.js +0 -303
  732. package/bundled-test-harness/assets/linksto-sentinel-reload-test-ByeVNhr8.js +0 -197
  733. package/bundled-test-harness/assets/linksto-sentinel-roundtrip-test-DP26i6Gb.js +0 -260
  734. package/bundled-test-harness/assets/linksto-singular-js-access-contract-test-fDUXx8tO.js +0 -196
  735. package/bundled-test-harness/assets/llm-model-BcLEkTV7.js +0 -64
  736. package/bundled-test-harness/assets/login-CeuuNVvU.css +0 -139
  737. package/bundled-test-harness/assets/login-DV0WlJv-.js +0 -348
  738. package/bundled-test-harness/assets/login-error-text-test-BMGY_9gW.js +0 -51
  739. package/bundled-test-harness/assets/login-test-CL9YpMH5.js +0 -246
  740. package/bundled-test-harness/assets/m4a-meta-extractor-CHO1JQtb.js +0 -204
  741. package/bundled-test-harness/assets/main-CPLT8JNu.js +0 -5
  742. package/bundled-test-harness/assets/markdown-BvBALLGh.js +0 -7
  743. package/bundled-test-harness/assets/markdown-DFezmrFD.js +0 -2
  744. package/bundled-test-harness/assets/markdown-editor-mode-select-Au64bcIO.js +0 -2
  745. package/bundled-test-harness/assets/markdown-editor-mode-select-rK9PP8rv.js +0 -54
  746. package/bundled-test-harness/assets/markdown-embed-chooser-modal-test-CIxizf5k.js +0 -470
  747. package/bundled-test-harness/assets/markdown-embed-preview-pane-test-C7GoNN7l.js +0 -447
  748. package/bundled-test-harness/assets/markdown-embed-preview-test-CDnj4uhd.js +0 -368
  749. package/bundled-test-harness/assets/markdown-fallback-n7PsLNmO.js +0 -2
  750. package/bundled-test-harness/assets/markdown-fallback-test-DTHT6OwQ.js +0 -316
  751. package/bundled-test-harness/assets/markdown-highlighting-test-DJ-4WSE_.js +0 -244
  752. package/bundled-test-harness/assets/markdown-preview-Ccelx5W-.js +0 -64
  753. package/bundled-test-harness/assets/markdown-preview-JXuMC_ve.js +0 -72
  754. package/bundled-test-harness/assets/markdown-preview-test-ByZqrpPk.js +0 -238
  755. package/bundled-test-harness/assets/markdown-skill-frontmatter-test-DAHGeL4K.js +0 -146
  756. package/bundled-test-harness/assets/menu-items-DzJm9H_H.js +0 -2
  757. package/bundled-test-harness/assets/message-tool-test-lmdrIEdY.js +0 -33
  758. package/bundled-test-harness/assets/metadata-fields-BZZr4Qe5.js +0 -2
  759. package/bundled-test-harness/assets/metadata-fields-BtdjGsKE.js +0 -1415
  760. package/bundled-test-harness/assets/midi-audio-def-uYbYFmFi.js +0 -52
  761. package/bundled-test-harness/assets/midi-meta-extractor-DNI5gc1q.js +0 -284
  762. package/bundled-test-harness/assets/midi-meta-extractor-DbKZ4fMG.js +0 -2
  763. package/bundled-test-harness/assets/migrate-skill-test-DI1xceiL.js +0 -161
  764. package/bundled-test-harness/assets/mini-CNoDyHqG.js +0 -1519
  765. package/bundled-test-harness/assets/mini-DexlIeKK.js +0 -85
  766. package/bundled-test-harness/assets/mini-card-chooser-test-DT5eIf1_.js +0 -272
  767. package/bundled-test-harness/assets/mini-file-chooser-test-DTQnKTZJ.js +0 -201
  768. package/bundled-test-harness/assets/missing-template-DL2mwddM.js +0 -2
  769. package/bundled-test-harness/assets/missing-template-ltqlJ4JC.js +0 -48
  770. package/bundled-test-harness/assets/modal-container-DRnt95-S.js +0 -40
  771. package/bundled-test-harness/assets/modal-zE95eEFp.js +0 -322
  772. package/bundled-test-harness/assets/model-cost-tier-test-CcFz7hcv.js +0 -173
  773. package/bundled-test-harness/assets/module-contents-service-Dk_zWt-V.js +0 -256
  774. package/bundled-test-harness/assets/month-BqReBYWo.js +0 -2
  775. package/bundled-test-harness/assets/month-RhvmIp40.js +0 -123
  776. package/bundled-test-harness/assets/month-day-XFAQA72z.js +0 -2
  777. package/bundled-test-harness/assets/month-day-XzKpk6nz.js +0 -192
  778. package/bundled-test-harness/assets/month-year-BeuNr2Cl.js +0 -2
  779. package/bundled-test-harness/assets/month-year-DhU7hATV.js +0 -93
  780. package/bundled-test-harness/assets/mp3-meta-extractor-Dx2RnJc5.js +0 -476
  781. package/bundled-test-harness/assets/mp4-meta-extractor--k0m8KsT.js +0 -188
  782. package/bundled-test-harness/assets/multiple-stacks-test-bC24IWcJ.js +0 -208
  783. package/bundled-test-harness/assets/nested-query-field-render-test-qxElXx1e.js +0 -249
  784. package/bundled-test-harness/assets/no-stacks-test-Br7IGAgV.js +0 -48
  785. package/bundled-test-harness/assets/number-73SsCMEF.js +0 -3
  786. package/bundled-test-harness/assets/number-CicTBWQd.js +0 -151
  787. package/bundled-test-harness/assets/number-field-test-kV5zXo1J.js +0 -184
  788. package/bundled-test-harness/assets/number-input-CQy4xUeA.js +0 -82
  789. package/bundled-test-harness/assets/office-extract-Bo8sbNkK.js +0 -27
  790. package/bundled-test-harness/assets/office-extract-CfBaoRMD.js +0 -2
  791. package/bundled-test-harness/assets/ogg-meta-extractor-aIf5q_Rq.js +0 -225
  792. package/bundled-test-harness/assets/on-key-C8acaldQ.js +0 -472
  793. package/bundled-test-harness/assets/ooxml-Bu3iZezv.js +0 -172
  794. package/bundled-test-harness/assets/ooxml-jQPBQK25.js +0 -2
  795. package/bundled-test-harness/assets/open-image-in-new-tab-test-CP7q3kMm.js +0 -52
  796. package/bundled-test-harness/assets/operation-lowering-test-9Mdr0hRT.js +0 -2812
  797. package/bundled-test-harness/assets/operations-R9b661Qn.js +0 -3
  798. package/bundled-test-harness/assets/operations-Zv_V3Api.js +0 -766
  799. package/bundled-test-harness/assets/operations-invocation-test-BJPpWb2H.js +0 -523
  800. package/bundled-test-harness/assets/operations-query-test-DufdmPQF.js +0 -459
  801. package/bundled-test-harness/assets/operations-test-CzT051YH.js +0 -2518
  802. package/bundled-test-harness/assets/operator-mode-acceptance-test-ByOIOcD0.js +0 -1188
  803. package/bundled-test-harness/assets/operator-mode-card-chooser-test-CNhR9mvv.js +0 -1036
  804. package/bundled-test-harness/assets/operator-mode-links-test-CuxSVTPR.js +0 -793
  805. package/bundled-test-harness/assets/operator-mode-state-service-CCeHt5SH.js +0 -1275
  806. package/bundled-test-harness/assets/operator-mode-state-service-test-C8TI9WWg.js +0 -206
  807. package/bundled-test-harness/assets/operator-mode-test-DG-mG8Tn.js +0 -683
  808. package/bundled-test-harness/assets/operator-mode-ui-test-DB7xhjS0.js +0 -1027
  809. package/bundled-test-harness/assets/overlay-menu-items-test-C6rcdF_S.js +0 -317
  810. package/bundled-test-harness/assets/overlays-D2zmPxzK.js +0 -270
  811. package/bundled-test-harness/assets/overlays-clip-test-Clpq3JzQ.js +0 -91
  812. package/bundled-test-harness/assets/overlays-detached-element-test-BtsTeJch.js +0 -56
  813. package/bundled-test-harness/assets/pane-f-IYhcWT.js +0 -330
  814. package/bundled-test-harness/assets/panel-B3PCSBbf.js +0 -3540
  815. package/bundled-test-harness/assets/panel-Ban7zCBP.js +0 -474
  816. package/bundled-test-harness/assets/past-sessions-test-uM2m-oKV.js +0 -321
  817. package/bundled-test-harness/assets/patch-fields-test-COPjDhnt.js +0 -1014
  818. package/bundled-test-harness/assets/patch-instance-test-CRb3dfby.js +0 -348
  819. package/bundled-test-harness/assets/pdf-file-def-J_yOUU8_.js +0 -76
  820. package/bundled-test-harness/assets/pdf-meta-extractor-83T5Bdo7.js +0 -156
  821. package/bundled-test-harness/assets/pdf-meta-extractor-INFIklMy.js +0 -2
  822. package/bundled-test-harness/assets/pdf-viewer-B4rRluWA.js +0 -2
  823. package/bundled-test-harness/assets/pdf-viewer-vYem8ozk.js +0 -112
  824. package/bundled-test-harness/assets/percentage-ChagfNRG.js +0 -84
  825. package/bundled-test-harness/assets/permission-checking-realm-test-Dmb2a428.js +0 -306
  826. package/bundled-test-harness/assets/phone-number-BiD2eaSd.js +0 -236
  827. package/bundled-test-harness/assets/phone-number-C-wt4_UK.js +0 -2
  828. package/bundled-test-harness/assets/phone-number-field-test-BHzAmuBP.js +0 -73
  829. package/bundled-test-harness/assets/plate-CqN2nM6P.js +0 -41
  830. package/bundled-test-harness/assets/plate-DaIfpORN.js +0 -2
  831. package/bundled-test-harness/assets/player-CGt5fTd5.js +0 -2
  832. package/bundled-test-harness/assets/player-CN0l44LK.js +0 -82
  833. package/bundled-test-harness/assets/plural-field-components-test-CO2g2opW.js +0 -198
  834. package/bundled-test-harness/assets/png-image-def-B_oou2wS.js +0 -48
  835. package/bundled-test-harness/assets/png-meta-extractor-BfPz1qP_.js +0 -2
  836. package/bundled-test-harness/assets/png-meta-extractor-C8ai8sPw.js +0 -111
  837. package/bundled-test-harness/assets/policy-scoped-search-test-BRRp2a1A.js +0 -339
  838. package/bundled-test-harness/assets/pptx-file-def-C3qYEHDM.js +0 -60
  839. package/bundled-test-harness/assets/pptx-meta-extractor-8IuoBq4I.js +0 -77
  840. package/bundled-test-harness/assets/pptx-meta-extractor-BPhy9RMM.js +0 -2
  841. package/bundled-test-harness/assets/prerender-persistence-block-test-Cteb_Rs_.js +0 -124
  842. package/bundled-test-harness/assets/prerender-serialize-cycle-test-CH7b6Ra9.js +0 -134
  843. package/bundled-test-harness/assets/preview-CmERZpI6.js +0 -74
  844. package/bundled-test-harness/assets/preview-format-BPMlCSbb.js +0 -41
  845. package/bundled-test-harness/assets/preview-format-test-B7sA8fbZ.js +0 -103
  846. package/bundled-test-harness/assets/process-card-CtDzDB-_.js +0 -2
  847. package/bundled-test-harness/assets/process-card-erbWKY5h.js +0 -114
  848. package/bundled-test-harness/assets/process-card-test-DXOt1jDW.js +0 -94
  849. package/bundled-test-harness/assets/profile-settings-modal-11BrR058.js +0 -708
  850. package/bundled-test-harness/assets/progress-circle-Cd79Zqh2.js +0 -2
  851. package/bundled-test-harness/assets/progress-circle-sc-W5aUl.js +0 -95
  852. package/bundled-test-harness/assets/quarter-B61kCpcD.js +0 -168
  853. package/bundled-test-harness/assets/quarter-d5jkTzcz.js +0 -2
  854. package/bundled-test-harness/assets/query-field-membership-status-test-BmpVfohw.js +0 -323
  855. package/bundled-test-harness/assets/query-field-page-optin-test-9_Cce-OJ.js +0 -126
  856. package/bundled-test-harness/assets/query-field-schema-test-CwV7xanX.js +0 -231
  857. package/bundled-test-harness/assets/query-field-stale-prerender-test-RkdnZ-VV.js +0 -152
  858. package/bundled-test-harness/assets/query-fields-test-BLxYkTAM.js +0 -535
  859. package/bundled-test-harness/assets/rail-CFPU0tFe.js +0 -2
  860. package/bundled-test-harness/assets/rail-CQ53Dakr.js +0 -44
  861. package/bundled-test-harness/assets/realm-DdVH9lSZ.js +0 -95
  862. package/bundled-test-harness/assets/realm-DdsFw3b-.js +0 -2
  863. package/bundled-test-harness/assets/realm-config-DIslxoB7.js +0 -844
  864. package/bundled-test-harness/assets/realm-config-policy-standing-test-b4WxNDor.js +0 -290
  865. package/bundled-test-harness/assets/realm-config-routing-rule-edit-test-C-rcvkkD.js +0 -274
  866. package/bundled-test-harness/assets/realm-config-settings-test-DDUkM3zw.js +0 -187
  867. package/bundled-test-harness/assets/realm-dropdown-1j55Dy-1.js +0 -560
  868. package/bundled-test-harness/assets/realm-field-test-D-uEtFKO.js +0 -100
  869. package/bundled-test-harness/assets/realm-indexing-test-U9m0epR-.js +0 -4380
  870. package/bundled-test-harness/assets/realm-policy-test-DhKabhlk.js +0 -1141
  871. package/bundled-test-harness/assets/realm-test-BX6C9SS5.js +0 -2363
  872. package/bundled-test-harness/assets/realm-url-tooltip-BjjcKqBx.js +0 -56
  873. package/bundled-test-harness/assets/realm-url-tooltip-test-DW0ZwEEE.js +0 -78
  874. package/bundled-test-harness/assets/reasoning-test-BWT94KXG.js +0 -234
  875. package/bundled-test-harness/assets/recent-colors-addon-CfgmgilF.js +0 -61
  876. package/bundled-test-harness/assets/recent-colors-addon-D--Ry3Pf.js +0 -2
  877. package/bundled-test-harness/assets/relationship-loading-state-test-C5R6jao_.js +0 -290
  878. package/bundled-test-harness/assets/relative-time-Bq7pqums.js +0 -2
  879. package/bundled-test-harness/assets/relative-time-D0QyW4ig.js +0 -129
  880. package/bundled-test-harness/assets/remix-card-test-Cy0h3Xdf.js +0 -58
  881. package/bundled-test-harness/assets/rendered-markdown-Hw_EF8SO.js +0 -263
  882. package/bundled-test-harness/assets/rendered-markdown-test-CqeF-UZd.js +0 -587
  883. package/bundled-test-harness/assets/resident-instance-reuse-test-BiI6L40n.js +0 -82
  884. package/bundled-test-harness/assets/response-field-BCxG5phG.js +0 -38
  885. package/bundled-test-harness/assets/result-tile-DMzRnTP8.js +0 -140
  886. package/bundled-test-harness/assets/rich-markdown-C4RUl7L0.js +0 -2
  887. package/bundled-test-harness/assets/rich-markdown-DxQSCg-o.js +0 -218
  888. package/bundled-test-harness/assets/rich-markdown-field-test-B7wpedKs.js +0 -1647
  889. package/bundled-test-harness/assets/room-D0M0Zwrs.js +0 -1008
  890. package/bundled-test-harness/assets/room-message-test-BWWd4xC8.js +0 -445
  891. package/bundled-test-harness/assets/room-test-DFH-nOwi.js +0 -95
  892. package/bundled-test-harness/assets/run-realm-code-DyVyEDBl.js +0 -1600
  893. package/bundled-test-harness/assets/run-realm-code-test-BpxF-tOz.js +0 -2468
  894. package/bundled-test-harness/assets/schema-generation-test-DjaJqpYP.js +0 -28
  895. package/bundled-test-harness/assets/score-Cfp34BE7.js +0 -2
  896. package/bundled-test-harness/assets/score-DIWWpeyf.js +0 -100
  897. package/bundled-test-harness/assets/scrolling-test-hA_uBwBg.js +0 -384
  898. package/bundled-test-harness/assets/search-C0-b7dJI.js +0 -605
  899. package/bundled-test-harness/assets/search-adorn-test-C6KP3AwA.js +0 -136
  900. package/bundled-test-harness/assets/search-entries-BfPq5sPS.js +0 -472
  901. package/bundled-test-harness/assets/search-entries-result-test-Bl9u_BOD.js +0 -234
  902. package/bundled-test-harness/assets/search-entries-test-BDC_lS43.js +0 -1486
  903. package/bundled-test-harness/assets/search-result-header-DCAze_cg.js +0 -128
  904. package/bundled-test-harness/assets/search-results-Dd0enVun.js +0 -266
  905. package/bundled-test-harness/assets/search-results-test-T5KEEII4.js +0 -578
  906. package/bundled-test-harness/assets/search-selection-menu-test-CCssnBq1.js +0 -108
  907. package/bundled-test-harness/assets/search-sheet-persistence-test-BzQiO-FK.js +0 -131
  908. package/bundled-test-harness/assets/search-test-fyCWb24m.js +0 -2241
  909. package/bundled-test-harness/assets/searchable-BkgeKQMl.js +0 -2
  910. package/bundled-test-harness/assets/searchable-D_6p6fyb.js +0 -192
  911. package/bundled-test-harness/assets/searchable-option-test-CnCUYGaq.js +0 -322
  912. package/bundled-test-harness/assets/searchable-search-doc-test-B8Q0D98v.js +0 -1271
  913. package/bundled-test-harness/assets/sending-test-D5PGBDys.js +0 -576
  914. package/bundled-test-harness/assets/serialization-rri-form-audit-test-BRJ1cJ31.js +0 -136
  915. package/bundled-test-harness/assets/serialization-test-DM6hK258.js +0 -8758
  916. package/bundled-test-harness/assets/setup-C_GgVgzM.js +0 -772
  917. package/bundled-test-harness/assets/shared-link-target-reuse-test-Be-lSKib.js +0 -207
  918. package/bundled-test-harness/assets/show-card-BFG6KR1m.js +0 -67
  919. package/bundled-test-harness/assets/show-card-test-l0wMrfZq.js +0 -365
  920. package/bundled-test-harness/assets/show-file-B8-FRVHj.js +0 -34
  921. package/bundled-test-harness/assets/signed-capture-D_Q44TQ7.js +0 -204
  922. package/bundled-test-harness/assets/signed-capture-link-test-DOS5xpYv.js +0 -132
  923. package/bundled-test-harness/assets/single-stack-test-BIEtzHVS.js +0 -652
  924. package/bundled-test-harness/assets/skill-BUTGmSsm.js +0 -76
  925. package/bundled-test-harness/assets/skill-Bo7R_2Ud.js +0 -3
  926. package/bundled-test-harness/assets/skill-reference-Cs64py3k.js +0 -112
  927. package/bundled-test-harness/assets/skills-test-CXxSIkYa.js +0 -648
  928. package/bundled-test-harness/assets/slider-picker-C81errGI.js +0 -245
  929. package/bundled-test-harness/assets/slider-picker-mvKsy6cR.js +0 -2
  930. package/bundled-test-harness/assets/spec-B55lJurX.js +0 -602
  931. package/bundled-test-harness/assets/store-DyQ0KiyI.js +0 -2205
  932. package/bundled-test-harness/assets/store-module-rebuild-test-C7532_bS.js +0 -454
  933. package/bundled-test-harness/assets/store-search-test-80NMJuoW.js +0 -175
  934. package/bundled-test-harness/assets/store-test-dHiWXXMs.js +0 -3460
  935. package/bundled-test-harness/assets/string-DHlQEHYm.js +0 -9
  936. package/bundled-test-harness/assets/submode-switcher-DQv-CD6G.js +0 -169
  937. package/bundled-test-harness/assets/svg-meta-extractor-Uw_EJytF.js +0 -42
  938. package/bundled-test-harness/assets/swatches-picker-CaEoibN1.js +0 -33
  939. package/bundled-test-harness/assets/swatches-picker-gPl50JbP.js +0 -2
  940. package/bundled-test-harness/assets/switch-submode-BKDnJd4m.js +0 -79
  941. package/bundled-test-harness/assets/switch-submode-test-_E2mVk4z.js +0 -168
  942. package/bundled-test-harness/assets/tag-B60lDr-j.js +0 -105
  943. package/bundled-test-harness/assets/tests-BBBgPBB6.js +0 -3520
  944. package/bundled-test-harness/assets/text-area-CJjWmwpi.js +0 -9
  945. package/bundled-test-harness/assets/text-file-def-u_dl0i2z.js +0 -151
  946. package/bundled-test-harness/assets/text-input-validator-test-BTwnkSS2.js +0 -156
  947. package/bundled-test-harness/assets/theme-BK-fAHVn.js +0 -9
  948. package/bundled-test-harness/assets/theme-card-test-BQmT7rqr.js +0 -621
  949. package/bundled-test-harness/assets/theme-scheme-island-test-Oi3aeyp1.js +0 -264
  950. package/bundled-test-harness/assets/three-d-model-def-B4KckPVC.js +0 -70
  951. package/bundled-test-harness/assets/time-BcuaSkHg.js +0 -126
  952. package/bundled-test-harness/assets/time-f7Irg7Z7.js +0 -2
  953. package/bundled-test-harness/assets/time-slots-ClYIZN53.js +0 -2
  954. package/bundled-test-harness/assets/time-slots-TI1aaqRN.js +0 -85
  955. package/bundled-test-harness/assets/timeline-Cof9eyq0.js +0 -59
  956. package/bundled-test-harness/assets/timeline-DFWQtCWE.js +0 -2
  957. package/bundled-test-harness/assets/to-device-streaming-test-BDrUUlOt.js +0 -163
  958. package/bundled-test-harness/assets/token-usage-test-CiZo03fY.js +0 -166
  959. package/bundled-test-harness/assets/tool-field-BXHr9r0w.js +0 -94
  960. package/bundled-test-harness/assets/tool-field-CoRO5C4R.js +0 -2
  961. package/bundled-test-harness/assets/tools-CmVaYDIS.js +0 -725
  962. package/bundled-test-harness/assets/tools-calling-test-B454__XF.js +0 -200
  963. package/bundled-test-harness/assets/tools-test-CLu51dJO.js +0 -1624
  964. package/bundled-test-harness/assets/tools-test-XGRAvVug.js +0 -2820
  965. package/bundled-test-harness/assets/ts-file-def-C05BDwdg.js +0 -159
  966. package/bundled-test-harness/assets/update-room-skills-test-jOvP14JX.js +0 -240
  967. package/bundled-test-harness/assets/url-BFf2CNo-.js +0 -2
  968. package/bundled-test-harness/assets/url-CYm-CeXp.js +0 -96
  969. package/bundled-test-harness/assets/video-file-def-B2UIrOFS.js +0 -76
  970. package/bundled-test-harness/assets/wav-meta-extractor-BNkv7e2f.js +0 -368
  971. package/bundled-test-harness/assets/webm-meta-extractor-C933kYyc.js +0 -178
  972. package/bundled-test-harness/assets/webp-meta-extractor-BLz0z1pZ.js +0 -98
  973. package/bundled-test-harness/assets/website-BuOMUW1v.js +0 -92
  974. package/bundled-test-harness/assets/week-Bo0666ji.js +0 -111
  975. package/bundled-test-harness/assets/week-CaVFA8Vc.js +0 -2
  976. package/bundled-test-harness/assets/welcome-to-boxel-PWard7GF.js +0 -172
  977. package/bundled-test-harness/assets/workspace-KXfFTQNV.js +0 -614
  978. package/bundled-test-harness/assets/workspace-a11y-test-Buwb-rfO.js +0 -197
  979. package/bundled-test-harness/assets/workspace-behavior-test-CbgFUOOo.js +0 -200
  980. package/bundled-test-harness/assets/workspace-chooser-BmQvhhrl.js +0 -2248
  981. package/bundled-test-harness/assets/workspace-chooser-Cu84Gd_E.css +0 -1317
  982. package/bundled-test-harness/assets/workspace-chooser-catalog-order-test-rcRw6sni.js +0 -36
  983. package/bundled-test-harness/assets/workspace-chooser-unreachable-notice-test-DUXnBIdY.js +0 -60
  984. package/bundled-test-harness/assets/workspace-delete-multiple-test-DjRKhZ2g.js +0 -212
  985. package/bundled-test-harness/assets/workspace-delete-summary-test-CvkLVYyN.js +0 -63
  986. package/bundled-test-harness/assets/workspace-timestamp-labels-test-AYJT4inv.js +0 -58
  987. package/bundled-test-harness/assets/xlsx-file-def-DuKdbGrJ.js +0 -60
  988. package/bundled-test-harness/assets/xlsx-meta-extractor-Bz-C2JWP.js +0 -101
  989. package/bundled-test-harness/assets/xlsx-meta-extractor-ClwwgABg.js +0 -2
  990. package/bundled-test-harness/assets/year-B6ctHikl.js +0 -2
  991. package/bundled-test-harness/assets/year-C11uAQE6.js +0 -78
  992. package/bundled-test-harness/assets/zip-file-def-B8XN-OS_.js +0 -288
  993. package/bundled-types/host-app/components/matrix/auth-button.gts +0 -39
  994. package/bundled-types/host-app/components/matrix/auth-container.gts +0 -69
  995. package/bundled-types/host-app/components/matrix/auth-form-field.gts +0 -43
@@ -1,1486 +0,0 @@
1
- import { s as __toESM } from "./chunk-Rp0pCe6z.js";
2
- import { r as initializeDeferredDecorator, t as decorateFieldV2 } from "./runtime--fcdnjmJ-BoCBNIsz.js";
3
- import { Ar as testRealmURL, Dr as testRRI, Ja as EntryResourceType, Xa as HtmlResourceType, eo as htmlResourceId } from "./runtime-common-ClpqhbwG.js";
4
- import { r as setOwner } from "./owner-CP0__uFm.js";
5
- import { Tn as destroy, wt as setComponentTemplate } from "./cache-DtDz7X5V-Wn8jRDfL.js";
6
- import { H as templateFactory } from "./index-DaCZcoCY-CgzbilMy.js";
7
- import "./destroyable-mdLYRn_o.js";
8
- import "./component-BJO47HTh.js";
9
- import { t as Component } from "./dist-CkA1rgqO.js";
10
- import { n as tracked } from "./tracking-800VJb8b.js";
11
- import "./template-factory-ds9s0u8l.js";
12
- import { t as templateOnly } from "./template-only-6nVzLWF-.js";
13
- import { n as knownFileMetaUrls, t as clearKnownFileMetaUrls } from "./known-file-meta-urls-BtSTkGnL.js";
14
- import { n as getSearchEntriesResource, t as SearchEntriesResource } from "./search-entries-BfPq5sPS.js";
15
- import { M as waitUntil, T as settled, h as render } from "./dist-BOAdzfkP.js";
16
- import { t as require_qunit } from "./qunit-C-Foo4Nd.js";
17
- import { F as setupLocalIndexing, P as setupIntegrationTestRealm, lt as setupRenderingTest, t as setupMockMatrix } from "./mock-matrix-DPQ0j2MD.js";
18
- import { r as getService } from "./dist-CPfIHBla.js";
19
- import { A as field, a as CardDef, w as contains } from "./card-api-u1pOrwS6.js";
20
- import { t as string_default } from "./string-DHlQEHYm.js";
21
- //#region tests/integration/resources/search-entries-test.gts
22
- var import_qunit = /* @__PURE__ */ __toESM(require_qunit());
23
- var testRealm2URL = "http://test-realm/test2/";
24
- function getResourceForTest(parent, args) {
25
- return SearchEntriesResource.from(parent, args);
26
- }
27
- (0, import_qunit.module)("Integration | search-entries resource", function(hooks) {
28
- let loader;
29
- let loaderService;
30
- let storeService;
31
- let realm;
32
- let realm2;
33
- setupRenderingTest(hooks);
34
- setupLocalIndexing(hooks);
35
- let mockMatrixUtils = setupMockMatrix(hooks, {
36
- loggedInAs: "@testuser:localhost",
37
- activeRealms: [testRealmURL, testRealm2URL],
38
- autostart: true
39
- });
40
- let bookRef = {
41
- module: testRRI("book"),
42
- name: "Book"
43
- };
44
- hooks.beforeEach(async function() {
45
- loaderService = getService("loader-service");
46
- loader = loaderService.loader;
47
- storeService = getService("store");
48
- class Book extends CardDef {
49
- static displayName = "Book";
50
- static {
51
- decorateFieldV2(this.prototype, "title", [field], function() {
52
- return contains(string_default);
53
- });
54
- }
55
- #title = (initializeDeferredDecorator(this, "title"), void 0);
56
- static {
57
- decorateFieldV2(this.prototype, "status", [field], function() {
58
- return contains(string_default);
59
- });
60
- }
61
- #status = (initializeDeferredDecorator(this, "status"), void 0);
62
- }
63
- ({realm} = await setupIntegrationTestRealm({
64
- mockMatrixUtils,
65
- realmURL: testRealmURL,
66
- contents: {
67
- "book.gts": { Book },
68
- "catalog.gts": { Book },
69
- "books/1.json": new Book({
70
- title: "Mango",
71
- status: "ready"
72
- }),
73
- "books/2.json": new Book({
74
- title: "Van Gogh",
75
- status: "draft"
76
- })
77
- }
78
- }));
79
- ({realm: realm2} = await setupIntegrationTestRealm({
80
- mockMatrixUtils,
81
- realmURL: testRealm2URL,
82
- contents: { "books/other.json": { data: {
83
- type: "card",
84
- attributes: {
85
- title: "Paper",
86
- status: "ready"
87
- },
88
- meta: { adoptsFrom: {
89
- module: testRRI("book"),
90
- name: "Book"
91
- } }
92
- } } }
93
- }));
94
- });
95
- function bookDoc(title) {
96
- return JSON.stringify({ data: {
97
- type: "card",
98
- attributes: {
99
- title,
100
- status: "ready"
101
- },
102
- meta: { adoptsFrom: {
103
- module: testRRI("book"),
104
- name: "Book"
105
- } }
106
- } });
107
- }
108
- function fittedHtmlId(id) {
109
- return htmlResourceId({
110
- url: id,
111
- format: "fitted",
112
- renderType: bookRef
113
- });
114
- }
115
- function entryResourceFor(spec) {
116
- return {
117
- type: EntryResourceType,
118
- id: spec.id,
119
- relationships: { html: { data: spec.htmlGen !== void 0 ? [{
120
- type: HtmlResourceType,
121
- id: fittedHtmlId(spec.id)
122
- }] : [] } },
123
- meta: { generation: spec.indexGen }
124
- };
125
- }
126
- function htmlResourceFor(spec) {
127
- return {
128
- type: HtmlResourceType,
129
- id: fittedHtmlId(spec.id),
130
- attributes: {
131
- html: spec.html ?? "<div>book</div>",
132
- cardType: "Book",
133
- format: "fitted",
134
- renderType: bookRef
135
- },
136
- relationships: { styles: { data: spec.cssHref ? [{
137
- type: "css",
138
- id: `css-${spec.id}`
139
- }] : [] } },
140
- meta: { generation: spec.htmlGen }
141
- };
142
- }
143
- function cssResourcesFor(specs) {
144
- return specs.filter((spec) => spec.cssHref !== void 0).map((spec) => ({
145
- type: "css",
146
- id: `css-${spec.id}`,
147
- attributes: { href: spec.cssHref }
148
- }));
149
- }
150
- function entryCollectionDoc(specs) {
151
- return {
152
- data: specs.map(entryResourceFor),
153
- included: specs.filter((spec) => spec.htmlGen !== void 0).map(htmlResourceFor),
154
- meta: {
155
- page: { total: specs.length },
156
- htmlQuery: { eq: { format: "fitted" } }
157
- }
158
- };
159
- }
160
- function entrySingleDoc(spec) {
161
- return {
162
- data: entryResourceFor(spec),
163
- included: spec.htmlGen !== void 0 ? [htmlResourceFor(spec), ...cssResourcesFor([spec])] : []
164
- };
165
- }
166
- (0, import_qunit.test)("exposes entries joined from the wire document (default fieldset: html renderings)", async function(assert) {
167
- let search = getResourceForTest(storeService, () => ({ named: { query: {
168
- filter: { "item.on": bookRef },
169
- realms: [testRealmURL]
170
- } } }));
171
- await search.loaded;
172
- assert.strictEqual(search.entries.length, 2, "both books are returned");
173
- assert.strictEqual(search.meta.page.total, 2);
174
- assert.strictEqual(search.errors, void 0);
175
- for (let entry of search.entries) {
176
- assert.strictEqual(entry.realmUrl, testRealmURL);
177
- assert.strictEqual(entry.html.length, 1, "the default htmlQuery selects the fitted rendering");
178
- let [rendering] = entry.html;
179
- assert.strictEqual(rendering.format, "fitted");
180
- assert.strictEqual(rendering.cardType, "Book");
181
- assert.false(rendering.isError);
182
- assert.ok(rendering.html, "the rendering carries markup");
183
- assert.strictEqual(entry.item, void 0, "an html-bearing entry has no item fallback");
184
- }
185
- });
186
- (0, import_qunit.test)("a card-initiated no-realm search scopes to the default realm instead of fanning out", async function(assert) {
187
- let search = getResourceForTest(storeService, () => ({ named: {
188
- query: { filter: { "item.on": bookRef } },
189
- cardInitiated: true,
190
- getDefaultRealm: () => testRealmURL
191
- } }));
192
- await search.loaded;
193
- assert.strictEqual(search.entries.length, 2, "only the two books in the default realm are returned");
194
- assert.true(search.entries.every((entry) => entry.realmUrl === testRealmURL), "every result is from the default realm");
195
- assert.false(search.entries.some((entry) => entry.realmUrl === testRealm2URL), "realm2 was never searched — no fan-out");
196
- });
197
- (0, import_qunit.test)("a card-initiated no-realm search with no resolvable default realm yields no results", async function(assert) {
198
- let search = getResourceForTest(storeService, () => ({ named: {
199
- query: { filter: { "item.on": bookRef } },
200
- cardInitiated: true,
201
- getDefaultRealm: () => void 0
202
- } }));
203
- await search.loaded;
204
- assert.strictEqual(search.entries.length, 0, "no results, rather than a fan-out across all realms");
205
- });
206
- (0, import_qunit.test)("a host-owned no-realm search keeps the all-realms fallback", async function(assert) {
207
- let search = getResourceForTest(storeService, () => ({ named: { query: { filter: { "item.on": bookRef } } } }));
208
- await search.loaded;
209
- assert.true(search.entries.some((entry) => entry.realmUrl === testRealmURL), "the default realm is searched");
210
- assert.true(search.entries.some((entry) => entry.realmUrl === testRealm2URL), "realm2 is searched too — the all-realms fallback still fans out");
211
- });
212
- (0, import_qunit.test)("registers file result URLs so clicks/overlay classify them as files", async function(assert) {
213
- let itemFileUrl = `${testRealmURL}notes.txt`;
214
- let htmlFileUrl = `${testRealmURL}readme.md`;
215
- let renderingId = htmlResourceId({
216
- url: htmlFileUrl,
217
- format: "fitted"
218
- });
219
- let doc = {
220
- data: [{
221
- type: EntryResourceType,
222
- id: itemFileUrl,
223
- relationships: { item: { data: {
224
- type: "file-meta",
225
- id: itemFileUrl
226
- } } }
227
- }, {
228
- type: EntryResourceType,
229
- id: htmlFileUrl,
230
- relationships: { html: { data: [{
231
- type: HtmlResourceType,
232
- id: renderingId
233
- }] } }
234
- }],
235
- included: [{
236
- type: HtmlResourceType,
237
- id: renderingId,
238
- attributes: {
239
- html: "<div>readme</div>",
240
- cardType: "",
241
- format: "fitted"
242
- },
243
- relationships: { styles: { data: [] } }
244
- }],
245
- meta: { page: { total: 2 } }
246
- };
247
- let originalSearchEntries = storeService.searchEntries.bind(storeService);
248
- storeService.searchEntries = async () => doc;
249
- clearKnownFileMetaUrls();
250
- try {
251
- await getResourceForTest(storeService, () => ({ named: { query: {
252
- filter: { "item.on": bookRef },
253
- realms: [testRealmURL]
254
- } } })).loaded;
255
- assert.true(knownFileMetaUrls.has(itemFileUrl), "the item-only file row is registered");
256
- assert.true(knownFileMetaUrls.has(htmlFileUrl), "the html-backed file row (no render type) is registered");
257
- } finally {
258
- storeService.searchEntries = originalSearchEntries;
259
- clearKnownFileMetaUrls();
260
- }
261
- });
262
- (0, import_qunit.test)("exposes raw item serializations per the fieldset, without touching the store", async function(assert) {
263
- let search = getResourceForTest(storeService, () => ({ named: { query: {
264
- filter: { "item.on": bookRef },
265
- fields: { entry: ["item"] },
266
- realms: [testRealmURL]
267
- } } }));
268
- await search.loaded;
269
- assert.strictEqual(search.entries.length, 2);
270
- for (let entry of search.entries) {
271
- assert.deepEqual(entry.html, [], "an item-only fieldset pins an empty html branch");
272
- assert.ok(entry.item, "the raw serialization rides on the entry");
273
- assert.strictEqual(entry.item.type, "card");
274
- assert.strictEqual(storeService.peek(entry.id), void 0, "nothing is hydrated into the store");
275
- }
276
- assert.deepEqual(search.entries.map((entry) => entry.item.attributes?.title).sort(), ["Mango", "Van Gogh"]);
277
- });
278
- (0, import_qunit.test)("registers the in-flight search with the render store readiness signal during a prerender", async function(assert) {
279
- let renderStore = getService("render-store");
280
- let trackedLoads = [];
281
- let originalTrackLoad = renderStore.trackLoad.bind(renderStore);
282
- renderStore.trackLoad = (load) => {
283
- trackedLoads.push(load);
284
- originalTrackLoad(load);
285
- };
286
- let generationBefore = renderStore.loadGeneration;
287
- globalThis.__boxelRenderContext = true;
288
- try {
289
- let search = getResourceForTest(storeService, () => ({ named: { query: {
290
- filter: { "item.on": bookRef },
291
- realms: [testRealmURL]
292
- } } }));
293
- let load = search.loaded;
294
- assert.strictEqual(trackedLoads.length, 1, "the search registers exactly one load with the render store");
295
- assert.strictEqual(trackedLoads[0], load, "the registered load is the in-flight search");
296
- assert.true(renderStore.loadGeneration > generationBefore, "registering the search advances the render store load generation, so the settle loop waits for it");
297
- await load;
298
- assert.strictEqual(search.entries.length, 2, "the tracked load is the real search and it produced results");
299
- } finally {
300
- delete renderStore.trackLoad;
301
- delete globalThis.__boxelRenderContext;
302
- }
303
- });
304
- (0, import_qunit.test)("re-runs the search on an incremental index event", async function(assert) {
305
- let search = getResourceForTest(storeService, () => ({ named: { query: {
306
- filter: { "item.on": bookRef },
307
- realms: [testRealmURL]
308
- } } }));
309
- await search.loaded;
310
- assert.strictEqual(search.entries.length, 2);
311
- await realm.write("books/3.json", bookDoc("Paper"));
312
- await waitUntil(() => search.entries.length === 3, { timeout: 1e4 });
313
- assert.ok(search.entries.find((entry) => entry.id === `${testRealmURL}books/3`), "the new book appears after the incremental index event");
314
- });
315
- (0, import_qunit.module)("index event type gating", function() {
316
- const unrelatedType = "http://test-realm/test/observation/Observation";
317
- function relayIndexEvent(invalidatedTypes) {
318
- getService("message-service").relayRealmEvent({
319
- eventName: "index",
320
- indexType: "incremental",
321
- invalidations: [`${testRealmURL}observations/1.json`],
322
- ...invalidatedTypes !== void 0 ? { invalidatedTypes } : {},
323
- realmURL: testRealmURL
324
- });
325
- }
326
- function countingSearch() {
327
- let searchCount = 0;
328
- storeService.searchEntries = async () => {
329
- searchCount++;
330
- return entryCollectionDoc([{
331
- id: `${testRealmURL}books/1`,
332
- indexGen: 1,
333
- htmlGen: 1,
334
- html: "<div>Mango</div>"
335
- }]);
336
- };
337
- return () => searchCount;
338
- }
339
- (0, import_qunit.test)("an event that touched no anchored type does not re-run the query", async function(assert) {
340
- let originalSearchEntries = storeService.searchEntries.bind(storeService);
341
- let searchCount = countingSearch();
342
- try {
343
- await getResourceForTest(storeService, () => ({ named: { query: {
344
- filter: { "item.on": bookRef },
345
- realms: [testRealmURL]
346
- } } })).loaded;
347
- let baseline = searchCount();
348
- relayIndexEvent([unrelatedType]);
349
- await settled();
350
- assert.strictEqual(searchCount(), baseline + 1, "the first typed event re-runs while the anchors resolve");
351
- relayIndexEvent([unrelatedType]);
352
- await settled();
353
- assert.strictEqual(searchCount(), baseline + 1, "a write to a type the query is not anchored on is skipped");
354
- relayIndexEvent([unrelatedType, `${testRealmURL}book/Book`]);
355
- await settled();
356
- assert.strictEqual(searchCount(), baseline + 2, "an event naming the anchored type re-runs the query");
357
- relayIndexEvent();
358
- await settled();
359
- assert.strictEqual(searchCount(), baseline + 3, "an event carrying no type information re-runs the query");
360
- } finally {
361
- storeService.searchEntries = originalSearchEntries;
362
- }
363
- });
364
- (0, import_qunit.test)("an anchor resolves through the module that defines the type, not only the one the query names", async function(assert) {
365
- let originalSearchEntries = storeService.searchEntries.bind(storeService);
366
- let searchCount = countingSearch();
367
- try {
368
- await getResourceForTest(storeService, () => ({ named: { query: {
369
- filter: { "item.on": {
370
- module: testRRI("catalog"),
371
- name: "Book"
372
- } },
373
- realms: [testRealmURL]
374
- } } })).loaded;
375
- let baseline = searchCount();
376
- relayIndexEvent([unrelatedType]);
377
- await settled();
378
- assert.strictEqual(searchCount(), baseline + 1, "the first typed event re-runs while the anchors resolve");
379
- relayIndexEvent([`${testRealmURL}book/Book`]);
380
- await settled();
381
- assert.strictEqual(searchCount(), baseline + 2, "an event naming the defining module re-runs a query anchored through the re-exporting one");
382
- } finally {
383
- storeService.searchEntries = originalSearchEntries;
384
- }
385
- });
386
- (0, import_qunit.test)("a loader replacement re-resolves the anchors before they gate again", async function(assert) {
387
- let originalSearchEntries = storeService.searchEntries.bind(storeService);
388
- let searchCount = countingSearch();
389
- try {
390
- await getResourceForTest(storeService, () => ({ named: { query: {
391
- filter: { "item.on": bookRef },
392
- realms: [testRealmURL]
393
- } } })).loaded;
394
- let baseline = searchCount();
395
- relayIndexEvent([unrelatedType]);
396
- await settled();
397
- relayIndexEvent([unrelatedType]);
398
- await settled();
399
- assert.strictEqual(searchCount(), baseline + 1, "the anchors resolve and the second event is skipped");
400
- getService("loader-service").resetLoader({
401
- clearFetchCache: true,
402
- reason: "test",
403
- codeChange: true
404
- });
405
- relayIndexEvent([unrelatedType]);
406
- await settled();
407
- assert.strictEqual(searchCount(), baseline + 2, "the first event after the replacement re-runs while the anchors re-resolve");
408
- relayIndexEvent([unrelatedType]);
409
- await settled();
410
- assert.strictEqual(searchCount(), baseline + 2, "the re-resolved anchors gate again");
411
- } finally {
412
- storeService.searchEntries = originalSearchEntries;
413
- }
414
- });
415
- (0, import_qunit.test)("a query that admits an entry of any type re-runs on every event", async function(assert) {
416
- let originalSearchEntries = storeService.searchEntries.bind(storeService);
417
- let searchCount = countingSearch();
418
- try {
419
- await getResourceForTest(storeService, () => ({ named: { query: {
420
- filter: { eq: { "item.status": "ready" } },
421
- realms: [testRealmURL]
422
- } } })).loaded;
423
- let baseline = searchCount();
424
- relayIndexEvent([unrelatedType]);
425
- await settled();
426
- relayIndexEvent([unrelatedType]);
427
- await settled();
428
- assert.strictEqual(searchCount(), baseline + 2, "an unanchored filter can gain a member of any type, so nothing is skipped");
429
- } finally {
430
- storeService.searchEntries = originalSearchEntries;
431
- }
432
- });
433
- });
434
- (0, import_qunit.test)("a burst of realm events coalesces into a single re-run", async function(assert) {
435
- let searchCount = 0;
436
- let originalSearchEntries = storeService.searchEntries.bind(storeService);
437
- storeService.searchEntries = async () => {
438
- searchCount++;
439
- return entryCollectionDoc([{
440
- id: `${testRealmURL}books/1`,
441
- indexGen: 1,
442
- htmlGen: 1,
443
- html: "<div>Mango</div>"
444
- }]);
445
- };
446
- try {
447
- await getResourceForTest(storeService, () => ({ named: { query: {
448
- filter: { "item.on": bookRef },
449
- realms: [testRealmURL]
450
- } } })).loaded;
451
- let baseline = searchCount;
452
- let messageService = getService("message-service");
453
- for (let i = 1; i <= 5; i++) messageService.relayRealmEvent({
454
- eventName: "index",
455
- indexType: "incremental",
456
- invalidations: [`${testRealmURL}books/${i}.json`],
457
- realmURL: testRealmURL
458
- });
459
- await settled();
460
- assert.strictEqual(searchCount, baseline + 1, "five index events inside one window produce one re-run");
461
- messageService.relayRealmEvent({
462
- eventName: "index",
463
- indexType: "incremental",
464
- invalidations: [`${testRealmURL}books/1.json`],
465
- realmURL: testRealmURL
466
- });
467
- await settled();
468
- assert.strictEqual(searchCount, baseline + 2, "an event after the flush schedules its own re-run");
469
- } finally {
470
- storeService.searchEntries = originalSearchEntries;
471
- }
472
- });
473
- (0, import_qunit.test)("a query change inside the window cancels the armed re-run", async function(assert) {
474
- let searchCount = 0;
475
- let originalSearchEntries = storeService.searchEntries.bind(storeService);
476
- storeService.searchEntries = async () => {
477
- searchCount++;
478
- return entryCollectionDoc([{
479
- id: `${testRealmURL}books/1`,
480
- indexGen: 1,
481
- htmlGen: 1,
482
- html: "<div>Mango</div>"
483
- }]);
484
- };
485
- try {
486
- let search = getResourceForTest(storeService, () => ({ named: { query: {
487
- filter: { "item.on": bookRef },
488
- realms: [testRealmURL]
489
- } } }));
490
- await search.loaded;
491
- let baseline = searchCount;
492
- getService("message-service").relayRealmEvent({
493
- eventName: "index",
494
- indexType: "incremental",
495
- invalidations: [`${testRealmURL}books/1.json`],
496
- realmURL: testRealmURL
497
- });
498
- search.modify([], { query: {
499
- filter: {
500
- "item.on": bookRef,
501
- eq: { "item.status": "ready" }
502
- },
503
- realms: [testRealmURL]
504
- } });
505
- await settled();
506
- assert.strictEqual(searchCount, baseline + 1, "the query change cancels the armed flush; only its own search runs");
507
- } finally {
508
- storeService.searchEntries = originalSearchEntries;
509
- }
510
- });
511
- (0, import_qunit.module)("prerender_html selective per-member refresh", function() {
512
- function relayPrerenderHtml(invalidations, generation) {
513
- getService("message-service").relayRealmEvent({
514
- eventName: "prerender_html",
515
- realmURL: testRealmURL,
516
- generation,
517
- invalidations
518
- });
519
- }
520
- (0, import_qunit.test)("refreshes only the invalidated member via a card+html GET; no full re-query", async function(assert) {
521
- let searchCount = 0;
522
- let originalSearchEntries = storeService.searchEntries.bind(storeService);
523
- storeService.searchEntries = async () => {
524
- searchCount++;
525
- return entryCollectionDoc([{
526
- id: `${testRealmURL}books/1`,
527
- indexGen: 1,
528
- htmlGen: 1,
529
- html: "<div>Mango v1</div>"
530
- }, {
531
- id: `${testRealmURL}books/2`,
532
- indexGen: 1,
533
- htmlGen: 1,
534
- html: "<div>Van Gogh v1</div>"
535
- }]);
536
- };
537
- let getCalls = [];
538
- let originalFetchCardEntry = storeService.fetchCardEntry.bind(storeService);
539
- storeService.fetchCardEntry = async (url, opts) => {
540
- getCalls.push({
541
- url,
542
- ifNoneMatch: opts.ifNoneMatch,
543
- format: opts.format
544
- });
545
- return {
546
- notModified: false,
547
- doc: entrySingleDoc({
548
- id: `${testRealmURL}books/1`,
549
- indexGen: 1,
550
- htmlGen: 2,
551
- html: "<div>Mango v2</div>"
552
- })
553
- };
554
- };
555
- try {
556
- let search = getResourceForTest(storeService, () => ({ named: { query: {
557
- filter: { "item.on": bookRef },
558
- realms: [testRealmURL]
559
- } } }));
560
- await search.loaded;
561
- assert.strictEqual(search.entries.length, 2);
562
- let book2Before = search.entries.find((entry) => entry.id === `${testRealmURL}books/2`);
563
- let baseline = searchCount;
564
- relayPrerenderHtml([`${testRealmURL}books/1.json`], 2);
565
- await waitUntil(() => getCalls.length > 0, { timeout: 1e4 });
566
- await settled();
567
- assert.strictEqual(searchCount, baseline, "no whole-search re-query is issued");
568
- assert.strictEqual(getCalls.length, 1, "exactly one card+html GET");
569
- assert.strictEqual(getCalls[0].url, `${testRealmURL}books/1`);
570
- assert.strictEqual(getCalls[0].ifNoneMatch, "\"1:1\"", "the held composite validator (index:html) is sent as If-None-Match");
571
- assert.strictEqual(getCalls[0].format, "fitted");
572
- assert.strictEqual(search.entries[0].html[0].html, "<div>Mango v2</div>", "the invalidated member swaps in the fresh HTML");
573
- assert.strictEqual(search.entries.find((entry) => entry.id === `${testRealmURL}books/2`), book2Before, "the uninvalidated member keeps its identity");
574
- } finally {
575
- storeService.searchEntries = originalSearchEntries;
576
- storeService.fetchCardEntry = originalFetchCardEntry;
577
- }
578
- });
579
- (0, import_qunit.test)("a member that comes back without the markup the search served it re-runs the whole search", async function(assert) {
580
- let searchCount = 0;
581
- let originalSearchEntries = storeService.searchEntries.bind(storeService);
582
- storeService.searchEntries = async () => {
583
- searchCount++;
584
- return entryCollectionDoc([{
585
- id: `${testRealmURL}books/1`,
586
- indexGen: 1,
587
- htmlGen: searchCount,
588
- html: `<div>Mango v${searchCount}</div>`
589
- }]);
590
- };
591
- let getCount = 0;
592
- let originalFetchCardEntry = storeService.fetchCardEntry.bind(storeService);
593
- storeService.fetchCardEntry = async () => {
594
- getCount++;
595
- return {
596
- notModified: false,
597
- doc: entrySingleDoc({
598
- id: `${testRealmURL}books/1`,
599
- indexGen: 1
600
- })
601
- };
602
- };
603
- try {
604
- let search = getResourceForTest(storeService, () => ({ named: { query: {
605
- filter: { "item.on": bookRef },
606
- realms: [testRealmURL]
607
- } } }));
608
- await search.loaded;
609
- let baseline = searchCount;
610
- relayPrerenderHtml([`${testRealmURL}books/1.json`], 2);
611
- await waitUntil(() => searchCount > baseline, { timeout: 1e4 });
612
- await settled();
613
- assert.strictEqual(getCount, 1, "the member was asked for first");
614
- assert.strictEqual(search.entries[0].html[0]?.html, `<div>Mango v${searchCount}</div>`, "and the search’s own answer, with its markup, is what the member shows");
615
- } finally {
616
- storeService.searchEntries = originalSearchEntries;
617
- storeService.fetchCardEntry = originalFetchCardEntry;
618
- }
619
- });
620
- (0, import_qunit.test)("a 304 keeps the current rendering and the member identity", async function(assert) {
621
- let originalSearchEntries = storeService.searchEntries.bind(storeService);
622
- storeService.searchEntries = async () => entryCollectionDoc([{
623
- id: `${testRealmURL}books/1`,
624
- indexGen: 1,
625
- htmlGen: 1,
626
- html: "<div>Mango v1</div>"
627
- }]);
628
- let getCount = 0;
629
- let originalFetchCardEntry = storeService.fetchCardEntry.bind(storeService);
630
- storeService.fetchCardEntry = async () => {
631
- getCount++;
632
- return { notModified: true };
633
- };
634
- try {
635
- let search = getResourceForTest(storeService, () => ({ named: { query: {
636
- filter: { "item.on": bookRef },
637
- realms: [testRealmURL]
638
- } } }));
639
- await search.loaded;
640
- let before = search.entries[0];
641
- relayPrerenderHtml([`${testRealmURL}books/1.json`], 2);
642
- await waitUntil(() => getCount > 0, { timeout: 1e4 });
643
- await settled();
644
- assert.strictEqual(getCount, 1, "the conditional GET was issued");
645
- assert.strictEqual(search.entries[0], before, "a 304 leaves the member object untouched (a hydrated row stays live)");
646
- } finally {
647
- storeService.searchEntries = originalSearchEntries;
648
- storeService.fetchCardEntry = originalFetchCardEntry;
649
- }
650
- });
651
- (0, import_qunit.test)("a member already at or above the event generation is not fetched", async function(assert) {
652
- let originalSearchEntries = storeService.searchEntries.bind(storeService);
653
- storeService.searchEntries = async () => entryCollectionDoc([{
654
- id: `${testRealmURL}books/1`,
655
- indexGen: 5,
656
- htmlGen: 5,
657
- html: "<div>Mango</div>"
658
- }]);
659
- let getCount = 0;
660
- let originalFetchCardEntry = storeService.fetchCardEntry.bind(storeService);
661
- storeService.fetchCardEntry = async () => {
662
- getCount++;
663
- return { notModified: true };
664
- };
665
- try {
666
- let search = getResourceForTest(storeService, () => ({ named: { query: {
667
- filter: { "item.on": bookRef },
668
- realms: [testRealmURL]
669
- } } }));
670
- await search.loaded;
671
- let before = search.entries[0];
672
- relayPrerenderHtml([`${testRealmURL}books/1.json`], 5);
673
- await settled();
674
- assert.strictEqual(getCount, 0, "no GET is issued for a fresh member");
675
- assert.strictEqual(search.entries[0], before, "the member is untouched");
676
- } finally {
677
- storeService.searchEntries = originalSearchEntries;
678
- storeService.fetchCardEntry = originalFetchCardEntry;
679
- }
680
- });
681
- (0, import_qunit.test)("an event whose URLs are not in the visible set does no work", async function(assert) {
682
- let originalSearchEntries = storeService.searchEntries.bind(storeService);
683
- storeService.searchEntries = async () => entryCollectionDoc([{
684
- id: `${testRealmURL}books/1`,
685
- indexGen: 1,
686
- htmlGen: 1,
687
- html: "<div>Mango</div>"
688
- }]);
689
- let getCount = 0;
690
- let originalFetchCardEntry = storeService.fetchCardEntry.bind(storeService);
691
- storeService.fetchCardEntry = async () => {
692
- getCount++;
693
- return { notModified: true };
694
- };
695
- try {
696
- let search = getResourceForTest(storeService, () => ({ named: { query: {
697
- filter: { "item.on": bookRef },
698
- realms: [testRealmURL]
699
- } } }));
700
- await search.loaded;
701
- let before = search.entries[0];
702
- relayPrerenderHtml([`${testRealmURL}books/999.json`], 9);
703
- await settled();
704
- assert.strictEqual(getCount, 0, "no GET for an unrelated invalidation");
705
- assert.strictEqual(search.entries[0], before);
706
- } finally {
707
- storeService.searchEntries = originalSearchEntries;
708
- storeService.fetchCardEntry = originalFetchCardEntry;
709
- }
710
- });
711
- (0, import_qunit.test)("an empty-html member upgrades when its rendering lands", async function(assert) {
712
- let originalSearchEntries = storeService.searchEntries.bind(storeService);
713
- storeService.searchEntries = async () => entryCollectionDoc([{
714
- id: `${testRealmURL}books/1`,
715
- indexGen: 2
716
- }]);
717
- let originalFetchCardEntry = storeService.fetchCardEntry.bind(storeService);
718
- let capturedIfNoneMatch;
719
- storeService.fetchCardEntry = async (_url, opts) => {
720
- capturedIfNoneMatch = opts.ifNoneMatch;
721
- return {
722
- notModified: false,
723
- doc: entrySingleDoc({
724
- id: `${testRealmURL}books/1`,
725
- indexGen: 2,
726
- htmlGen: 2,
727
- html: "<div>Mango</div>"
728
- })
729
- };
730
- };
731
- try {
732
- let search = getResourceForTest(storeService, () => ({ named: { query: {
733
- filter: { "item.on": bookRef },
734
- realms: [testRealmURL]
735
- } } }));
736
- await search.loaded;
737
- assert.deepEqual(search.entries[0].html, [], "no rendering initially");
738
- relayPrerenderHtml([`${testRealmURL}books/1.json`], 2);
739
- await waitUntil(() => search.entries[0]?.html.length === 1, { timeout: 1e4 });
740
- assert.strictEqual(search.entries[0].html[0].html, "<div>Mango</div>");
741
- assert.strictEqual(capturedIfNoneMatch, "\"2:none\"", "a member with no rendering sends the none-html validator");
742
- } finally {
743
- storeService.searchEntries = originalSearchEntries;
744
- storeService.fetchCardEntry = originalFetchCardEntry;
745
- }
746
- });
747
- (0, import_qunit.test)("a full-text (matches) query re-runs in full instead of refreshing members", async function(assert) {
748
- let searchCount = 0;
749
- let originalSearchEntries = storeService.searchEntries.bind(storeService);
750
- storeService.searchEntries = async () => {
751
- searchCount++;
752
- return entryCollectionDoc([{
753
- id: `${testRealmURL}books/1`,
754
- indexGen: 1,
755
- htmlGen: 1,
756
- html: "<div>Mango</div>"
757
- }]);
758
- };
759
- let getCount = 0;
760
- let originalFetchCardEntry = storeService.fetchCardEntry.bind(storeService);
761
- storeService.fetchCardEntry = async () => {
762
- getCount++;
763
- return { notModified: true };
764
- };
765
- try {
766
- await getResourceForTest(storeService, () => ({ named: { query: {
767
- filter: {
768
- "item.on": bookRef,
769
- matches: "mango"
770
- },
771
- realms: [testRealmURL]
772
- } } })).loaded;
773
- let baseline = searchCount;
774
- relayPrerenderHtml([`${testRealmURL}books/1.json`], 2);
775
- await waitUntil(() => searchCount > baseline, { timeout: 1e4 });
776
- await settled();
777
- assert.ok(searchCount > baseline, "a matches query re-runs the whole search (membership can change)");
778
- assert.strictEqual(getCount, 0, "no per-member GET for a matches query");
779
- } finally {
780
- storeService.searchEntries = originalSearchEntries;
781
- storeService.fetchCardEntry = originalFetchCardEntry;
782
- }
783
- });
784
- (0, import_qunit.test)("a failed member GET falls back to a full re-run", async function(assert) {
785
- let searchCount = 0;
786
- let originalSearchEntries = storeService.searchEntries.bind(storeService);
787
- storeService.searchEntries = async () => {
788
- searchCount++;
789
- return entryCollectionDoc([{
790
- id: `${testRealmURL}books/1`,
791
- indexGen: 1,
792
- htmlGen: 1,
793
- html: "<div>Mango</div>"
794
- }]);
795
- };
796
- let originalFetchCardEntry = storeService.fetchCardEntry.bind(storeService);
797
- storeService.fetchCardEntry = async () => {
798
- throw new Error("boom");
799
- };
800
- try {
801
- await getResourceForTest(storeService, () => ({ named: { query: {
802
- filter: { "item.on": bookRef },
803
- realms: [testRealmURL]
804
- } } })).loaded;
805
- let baseline = searchCount;
806
- relayPrerenderHtml([`${testRealmURL}books/1.json`], 2);
807
- await waitUntil(() => searchCount > baseline, { timeout: 1e4 });
808
- await settled();
809
- assert.ok(searchCount > baseline, "a member the GET could not refresh triggers a coarse re-run");
810
- } finally {
811
- storeService.searchEntries = originalSearchEntries;
812
- storeService.fetchCardEntry = originalFetchCardEntry;
813
- }
814
- });
815
- (0, import_qunit.test)("an item-only fieldset takes the coarse re-run — render errors can flip its membership", async function(assert) {
816
- let itemOnlyDoc = {
817
- data: [{
818
- type: EntryResourceType,
819
- id: `${testRealmURL}books/1`,
820
- relationships: {},
821
- meta: { generation: 1 }
822
- }],
823
- meta: { page: { total: 1 } }
824
- };
825
- let searchCount = 0;
826
- let originalSearchEntries = storeService.searchEntries.bind(storeService);
827
- storeService.searchEntries = async () => {
828
- searchCount++;
829
- return itemOnlyDoc;
830
- };
831
- let getCount = 0;
832
- let originalFetchCardEntry = storeService.fetchCardEntry.bind(storeService);
833
- storeService.fetchCardEntry = async () => {
834
- getCount++;
835
- return { notModified: true };
836
- };
837
- try {
838
- await getResourceForTest(storeService, () => ({ named: { query: {
839
- filter: { "item.on": bookRef },
840
- fields: { entry: ["item"] },
841
- realms: [testRealmURL]
842
- } } })).loaded;
843
- let baseline = searchCount;
844
- relayPrerenderHtml([`${testRealmURL}books/1.json`], 2);
845
- await waitUntil(() => searchCount > baseline, { timeout: 1e4 });
846
- await settled();
847
- assert.ok(searchCount > baseline, "an item-only query re-runs the whole search on a prerender_html event");
848
- assert.strictEqual(getCount, 0, "no per-member GET is attempted");
849
- } finally {
850
- storeService.searchEntries = originalSearchEntries;
851
- storeService.fetchCardEntry = originalFetchCardEntry;
852
- }
853
- });
854
- (0, import_qunit.test)("coalesced events refresh the union of their members, each judged at its own generation", async function(assert) {
855
- let book1 = `${testRealmURL}books/1`;
856
- let book2 = `${testRealmURL}books/2`;
857
- let originalSearchEntries = storeService.searchEntries.bind(storeService);
858
- storeService.searchEntries = async () => entryCollectionDoc([{
859
- id: book1,
860
- indexGen: 1,
861
- htmlGen: 1,
862
- html: "<div>Mango v1</div>"
863
- }, {
864
- id: book2,
865
- indexGen: 1,
866
- htmlGen: 1,
867
- html: "<div>Van Gogh v1</div>"
868
- }]);
869
- let getUrls = [];
870
- let originalFetchCardEntry = storeService.fetchCardEntry.bind(storeService);
871
- storeService.fetchCardEntry = async (url) => {
872
- getUrls.push(url);
873
- if (getUrls.length === 1) return new Promise(() => {});
874
- return {
875
- notModified: false,
876
- doc: entrySingleDoc({
877
- id: url,
878
- indexGen: 1,
879
- htmlGen: url === book2 ? 3 : 2,
880
- html: `<div>${url === book2 ? "Van Gogh" : "Mango"} v2</div>`
881
- })
882
- };
883
- };
884
- try {
885
- let search = getResourceForTest(storeService, () => ({ named: { query: {
886
- filter: { "item.on": bookRef },
887
- realms: [testRealmURL]
888
- } } }));
889
- await search.loaded;
890
- relayPrerenderHtml([`${testRealmURL}books/1.json`], 2);
891
- await waitUntil(() => getUrls.length === 1, { timeout: 1e4 });
892
- relayPrerenderHtml([`${testRealmURL}books/2.json`], 3);
893
- await waitUntil(() => search.entries.find((e) => e.id === book1)?.htmlGeneration === 2 && search.entries.find((e) => e.id === book2)?.htmlGeneration === 3, { timeout: 1e4 });
894
- await settled();
895
- assert.deepEqual(getUrls.slice(1).sort(), [book1, book2], "the replacement run refreshes both events' members");
896
- assert.strictEqual(search.entries.find((e) => e.id === book1)?.html[0]?.html, "<div>Mango v2</div>");
897
- assert.strictEqual(search.entries.find((e) => e.id === book2)?.html[0]?.html, "<div>Van Gogh v2</div>");
898
- } finally {
899
- storeService.searchEntries = originalSearchEntries;
900
- storeService.fetchCardEntry = originalFetchCardEntry;
901
- }
902
- });
903
- (0, import_qunit.test)("an index event on another realm mid-refresh does not drop the HTML update", async function(assert) {
904
- let bookAId = `${testRealmURL}books/1`;
905
- let bookBId = `${testRealm2URL}books/other`;
906
- let staleDoc = entryCollectionDoc([{
907
- id: bookAId,
908
- indexGen: 1,
909
- htmlGen: 1,
910
- html: "<div>Mango v1</div>"
911
- }, {
912
- id: bookBId,
913
- indexGen: 1,
914
- htmlGen: 1,
915
- html: "<div>Paper</div>"
916
- }]);
917
- let freshDoc = entryCollectionDoc([{
918
- id: bookAId,
919
- indexGen: 1,
920
- htmlGen: 2,
921
- html: "<div>Mango v2</div>"
922
- }, {
923
- id: bookBId,
924
- indexGen: 1,
925
- htmlGen: 1,
926
- html: "<div>Paper</div>"
927
- }]);
928
- let fetchedRealms = [];
929
- let originalSearchEntries = storeService.searchEntries.bind(storeService);
930
- storeService.searchEntries = async (_query, realms) => {
931
- fetchedRealms.push([...realms ?? []].sort());
932
- return fetchedRealms.length === 1 ? staleDoc : freshDoc;
933
- };
934
- let getCount = 0;
935
- let originalFetchCardEntry = storeService.fetchCardEntry.bind(storeService);
936
- storeService.fetchCardEntry = async () => {
937
- getCount++;
938
- return new Promise(() => {});
939
- };
940
- try {
941
- let search = getResourceForTest(storeService, () => ({ named: { query: {
942
- filter: { "item.on": bookRef },
943
- realms: [testRealmURL, testRealm2URL]
944
- } } }));
945
- await search.loaded;
946
- assert.strictEqual(search.entries.length, 2);
947
- relayPrerenderHtml([`${testRealmURL}books/1.json`], 2);
948
- await waitUntil(() => getCount > 0, { timeout: 1e4 });
949
- getService("message-service").relayRealmEvent({
950
- eventName: "index",
951
- indexType: "incremental",
952
- invalidations: [],
953
- realmURL: testRealm2URL
954
- });
955
- await waitUntil(() => search.entries.find((e) => e.id === bookAId)?.htmlGeneration === 2, { timeout: 1e4 });
956
- await settled();
957
- assert.deepEqual(fetchedRealms[fetchedRealms.length - 1], [testRealmURL, testRealm2URL].sort(), "the coarse re-run covers the prerender event's realm too");
958
- assert.strictEqual(search.entries.find((e) => e.id === bookAId)?.html[0]?.html, "<div>Mango v2</div>", "the invalidated member picked up the fresh HTML through the fold");
959
- } finally {
960
- storeService.searchEntries = originalSearchEntries;
961
- storeService.fetchCardEntry = originalFetchCardEntry;
962
- }
963
- });
964
- (0, import_qunit.test)("a stylesheet-import failure during a member refresh degrades that entry to unstyled without a full re-run", async function(assert) {
965
- let cssHref = `${testRealmURL}book.gts.deadbeef.glimmer-scoped.css`;
966
- let searchCount = 0;
967
- let originalSearchEntries = storeService.searchEntries.bind(storeService);
968
- storeService.searchEntries = async () => {
969
- searchCount++;
970
- return entryCollectionDoc([{
971
- id: `${testRealmURL}books/1`,
972
- indexGen: 1,
973
- htmlGen: 1,
974
- html: "<div>Mango v1</div>"
975
- }]);
976
- };
977
- let originalFetchCardEntry = storeService.fetchCardEntry.bind(storeService);
978
- storeService.fetchCardEntry = async () => ({
979
- notModified: false,
980
- doc: entrySingleDoc({
981
- id: `${testRealmURL}books/1`,
982
- indexGen: 1,
983
- htmlGen: 2,
984
- html: "<div>Mango v2</div>",
985
- cssHref
986
- })
987
- });
988
- let importCalls = [];
989
- let stubbedLoader;
990
- let originalImport;
991
- try {
992
- let search = getResourceForTest(storeService, () => ({ named: { query: {
993
- filter: { "item.on": bookRef },
994
- realms: [testRealmURL]
995
- } } }));
996
- await search.loaded;
997
- let baseline = searchCount;
998
- stubbedLoader = loaderService.loader;
999
- originalImport = stubbedLoader.import.bind(stubbedLoader);
1000
- stubbedLoader.import = async (url) => {
1001
- importCalls.push(url);
1002
- if (url === cssHref) throw new Error("stylesheet fetch failed");
1003
- return originalImport(url);
1004
- };
1005
- relayPrerenderHtml([`${testRealmURL}books/1.json`], 2);
1006
- await waitUntil(() => search.entries[0]?.htmlGeneration === 2, { timeout: 1e4 });
1007
- await settled();
1008
- assert.true(importCalls.includes(cssHref), "the member refresh actually attempted the stylesheet import");
1009
- assert.strictEqual(searchCount, baseline, "a failed stylesheet import degrades the entry rather than triggering the coarse re-run");
1010
- assert.strictEqual(search.entries[0]?.htmlGeneration, 2, "the member's refresh is applied even though its stylesheet failed to load");
1011
- } finally {
1012
- storeService.searchEntries = originalSearchEntries;
1013
- storeService.fetchCardEntry = originalFetchCardEntry;
1014
- if (stubbedLoader && originalImport) stubbedLoader.import = originalImport;
1015
- }
1016
- });
1017
- (0, import_qunit.test)("a row whose only change is its generation stamps keeps identity and adopts the stamps", async function(assert) {
1018
- let docs = [entryCollectionDoc([{
1019
- id: `${testRealmURL}books/1`,
1020
- indexGen: 1,
1021
- htmlGen: 1,
1022
- html: "<div>Mango</div>"
1023
- }]), entryCollectionDoc([{
1024
- id: `${testRealmURL}books/1`,
1025
- indexGen: 2,
1026
- htmlGen: 2,
1027
- html: "<div>Mango</div>"
1028
- }])];
1029
- let originalSearchEntries = storeService.searchEntries.bind(storeService);
1030
- storeService.searchEntries = async () => docs.shift() ?? docs[0];
1031
- try {
1032
- let search = getResourceForTest(storeService, () => ({ named: { query: {
1033
- filter: { "item.on": bookRef },
1034
- realms: [testRealmURL]
1035
- } } }));
1036
- await search.loaded;
1037
- let before = search.entries[0];
1038
- assert.strictEqual(before.htmlGeneration, 1);
1039
- getService("message-service").relayRealmEvent({
1040
- eventName: "index",
1041
- indexType: "incremental",
1042
- invalidations: [`${testRealmURL}books/1.json`],
1043
- realmURL: testRealmURL
1044
- });
1045
- await waitUntil(() => search.entries[0]?.htmlGeneration === 2, { timeout: 1e4 });
1046
- await settled();
1047
- assert.strictEqual(search.entries[0], before, "the content-unchanged row keeps its object identity");
1048
- assert.strictEqual(before.indexGeneration, 2, "the stamps are adopted");
1049
- } finally {
1050
- storeService.searchEntries = originalSearchEntries;
1051
- }
1052
- });
1053
- (0, import_qunit.test)("clearing the query mid-refresh stops the remaining member GETs", async function(assert) {
1054
- let originalSearchEntries = storeService.searchEntries.bind(storeService);
1055
- storeService.searchEntries = async () => entryCollectionDoc([{
1056
- id: `${testRealmURL}books/1`,
1057
- indexGen: 1,
1058
- htmlGen: 1,
1059
- html: "<div>Mango</div>"
1060
- }, {
1061
- id: `${testRealmURL}books/2`,
1062
- indexGen: 1,
1063
- htmlGen: 1,
1064
- html: "<div>Van Gogh</div>"
1065
- }]);
1066
- let getCount = 0;
1067
- let releaseFirstGet;
1068
- let firstGet = new Promise((resolve) => releaseFirstGet = resolve);
1069
- let originalFetchCardEntry = storeService.fetchCardEntry.bind(storeService);
1070
- storeService.fetchCardEntry = async () => {
1071
- getCount++;
1072
- return firstGet;
1073
- };
1074
- try {
1075
- let search = getResourceForTest(storeService, () => ({ named: { query: {
1076
- filter: { "item.on": bookRef },
1077
- realms: [testRealmURL]
1078
- } } }));
1079
- await search.loaded;
1080
- relayPrerenderHtml([`${testRealmURL}books/1.json`, `${testRealmURL}books/2.json`], 2);
1081
- await waitUntil(() => getCount === 1, { timeout: 1e4 });
1082
- search.modify([], { query: void 0 });
1083
- releaseFirstGet({
1084
- notModified: false,
1085
- doc: entrySingleDoc({
1086
- id: `${testRealmURL}books/1`,
1087
- indexGen: 1,
1088
- htmlGen: 2,
1089
- html: "<div>Mango v2</div>"
1090
- })
1091
- });
1092
- await settled();
1093
- assert.strictEqual(getCount, 1, "no further member GET fires after the query is cleared");
1094
- } finally {
1095
- storeService.searchEntries = originalSearchEntries;
1096
- storeService.fetchCardEntry = originalFetchCardEntry;
1097
- }
1098
- });
1099
- (0, import_qunit.test)("a non-incremental index event does not re-run the search", async function(assert) {
1100
- let searchCount = 0;
1101
- let originalSearchEntries = storeService.searchEntries.bind(storeService);
1102
- storeService.searchEntries = async () => {
1103
- searchCount++;
1104
- return entryCollectionDoc([{
1105
- id: `${testRealmURL}books/1`,
1106
- indexGen: 1,
1107
- htmlGen: 1,
1108
- html: "<div>Mango</div>"
1109
- }]);
1110
- };
1111
- try {
1112
- await getResourceForTest(storeService, () => ({ named: { query: {
1113
- filter: { "item.on": bookRef },
1114
- realms: [testRealmURL]
1115
- } } })).loaded;
1116
- let baseline = searchCount;
1117
- getService("message-service").relayRealmEvent({
1118
- eventName: "index",
1119
- indexType: "full",
1120
- realmURL: testRealmURL
1121
- });
1122
- await settled();
1123
- assert.strictEqual(searchCount, baseline, "a full (non-incremental) index event leaves the search alone");
1124
- } finally {
1125
- storeService.searchEntries = originalSearchEntries;
1126
- }
1127
- });
1128
- (0, import_qunit.test)("the real card+html GET round-trips and its ETag matches the reconstructed validator", async function(assert) {
1129
- let url = `${testRealmURL}books/1`;
1130
- let first = await storeService.fetchCardEntry(url, {
1131
- kind: "card",
1132
- format: "fitted"
1133
- });
1134
- assert.false(first.notModified, "the first GET returns the entry");
1135
- if (!first.notModified) {
1136
- let entry = first.doc.data;
1137
- assert.strictEqual(entry.id, url);
1138
- let htmlRef = entry.relationships.html?.data?.[0];
1139
- assert.ok(htmlRef, "the entry carries a rendering");
1140
- let htmlResource = first.doc.included?.find((resource) => resource.id === htmlRef.id);
1141
- assert.ok(htmlResource, "the rendering rides in included");
1142
- let indexGeneration = entry.meta?.generation;
1143
- let htmlGeneration = htmlResource?.meta?.generation;
1144
- let validator = `"${indexGeneration ?? 0}:${htmlGeneration ?? "none"}"`;
1145
- let second = await storeService.fetchCardEntry(url, {
1146
- kind: "card",
1147
- format: "fitted",
1148
- ifNoneMatch: validator
1149
- });
1150
- assert.true(second.notModified, "the reconstructed validator matches the server ETag, so the GET 304s");
1151
- }
1152
- });
1153
- });
1154
- (0, import_qunit.test)("an entry with an empty html array upgrades when its rendering lands on a later event", async function(assert) {
1155
- let entryURL = `${testRealmURL}books/1`;
1156
- let renderingId = htmlResourceId({
1157
- url: entryURL,
1158
- format: "fitted",
1159
- renderType: bookRef
1160
- });
1161
- let cssHref = `${testRealmURL}book.gts.abc123.glimmer-scoped.css`;
1162
- let unrenderedDoc = {
1163
- data: [{
1164
- type: EntryResourceType,
1165
- id: entryURL,
1166
- relationships: { html: { data: [] } }
1167
- }],
1168
- meta: { page: { total: 1 } }
1169
- };
1170
- let renderedDoc = {
1171
- data: [{
1172
- type: EntryResourceType,
1173
- id: entryURL,
1174
- relationships: { html: { data: [{
1175
- type: HtmlResourceType,
1176
- id: renderingId
1177
- }] } }
1178
- }],
1179
- included: [{
1180
- type: HtmlResourceType,
1181
- id: renderingId,
1182
- attributes: {
1183
- html: "<div>Mango</div>",
1184
- cardType: "Book",
1185
- format: "fitted",
1186
- renderType: bookRef
1187
- },
1188
- relationships: { styles: { data: [{
1189
- type: "css",
1190
- id: "deadbeef"
1191
- }] } }
1192
- }, {
1193
- type: "css",
1194
- id: "deadbeef",
1195
- attributes: { href: cssHref }
1196
- }],
1197
- meta: { page: { total: 1 } }
1198
- };
1199
- let docs = [
1200
- unrenderedDoc,
1201
- renderedDoc,
1202
- renderedDoc
1203
- ];
1204
- let originalSearchEntries = storeService.searchEntries.bind(storeService);
1205
- storeService.searchEntries = async () => docs.shift() ?? renderedDoc;
1206
- let originalImport = loader.import.bind(loader);
1207
- loader.import = async (url) => url === cssHref ? {} : originalImport(url);
1208
- try {
1209
- let search = getResourceForTest(storeService, () => ({ named: { query: {
1210
- filter: { "item.on": bookRef },
1211
- realms: [testRealmURL]
1212
- } } }));
1213
- await search.loaded;
1214
- assert.strictEqual(search.entries.length, 1);
1215
- assert.deepEqual(search.entries[0].html, [], "the entry matched but carries no rendering yet");
1216
- await realm.write("books/9.json", bookDoc("Trigger"));
1217
- await waitUntil(() => search.entries[0]?.html.length === 1, { timeout: 1e4 });
1218
- let [rendering] = search.entries[0].html;
1219
- assert.strictEqual(rendering.id, renderingId);
1220
- assert.strictEqual(rendering.html, "<div>Mango</div>");
1221
- assert.deepEqual(rendering.cssUrls, [cssHref], "the styles references resolve to the stylesheet hrefs");
1222
- } finally {
1223
- storeService.searchEntries = originalSearchEntries;
1224
- loader.import = originalImport;
1225
- }
1226
- });
1227
- (0, import_qunit.test)("an incremental event refreshes only its own realm, leaving other realms untouched", async function(assert) {
1228
- let fetchedRealms = [];
1229
- let originalSearchEntries = storeService.searchEntries.bind(storeService);
1230
- storeService.searchEntries = async (query, realms) => {
1231
- fetchedRealms.push(realms ?? []);
1232
- return await originalSearchEntries(query, realms);
1233
- };
1234
- try {
1235
- let search = getResourceForTest(storeService, () => ({ named: { query: {
1236
- filter: { "item.on": bookRef },
1237
- realms: [testRealmURL, testRealm2URL]
1238
- } } }));
1239
- await search.loaded;
1240
- assert.strictEqual(search.entries.length, 3, "both realms contribute entries");
1241
- let entriesBefore = [...search.entries];
1242
- let orderBefore = entriesBefore.map((entry) => entry.id);
1243
- let realm2EntryBefore = entriesBefore.find((entry) => entry.realmUrl === testRealm2URL);
1244
- assert.ok(realm2EntryBefore, "realm 2 contributed an entry");
1245
- await realm.write("books/3.json", bookDoc("Paper"));
1246
- await waitUntil(() => search.entries.length === 4, { timeout: 1e4 });
1247
- assert.deepEqual(fetchedRealms[fetchedRealms.length - 1], [testRealmURL], "the refresh fetch is scoped to the realm whose index moved");
1248
- assert.deepEqual(search.entries.map((entry) => entry.id), [...orderBefore, `${testRealmURL}books/3`], "surviving rows keep their positions; the new row appends");
1249
- let realm2EntryAfter = search.entries.find((entry) => entry.realmUrl === testRealm2URL);
1250
- assert.strictEqual(realm2EntryAfter, realm2EntryBefore, "realm 2's entry keeps its identity through realm 1's refresh");
1251
- for (let entryBefore of entriesBefore.filter((entry) => entry.realmUrl === testRealmURL)) assert.strictEqual(search.entries.find((entry) => entry.id === entryBefore.id), entryBefore, `unchanged refreshed row ${entryBefore.id} keeps its identity`);
1252
- assert.strictEqual(search.meta.page.total, 4);
1253
- } finally {
1254
- storeService.searchEntries = originalSearchEntries;
1255
- }
1256
- });
1257
- (0, import_qunit.test)("a paginated query takes a full re-run on an incremental event, keeping the server total", async function(assert) {
1258
- let fetchedRealms = [];
1259
- let originalSearchEntries = storeService.searchEntries.bind(storeService);
1260
- storeService.searchEntries = async (query, realms) => {
1261
- fetchedRealms.push(realms ?? []);
1262
- return await originalSearchEntries(query, realms);
1263
- };
1264
- try {
1265
- let search = getResourceForTest(storeService, () => ({ named: { query: {
1266
- filter: { "item.on": bookRef },
1267
- page: { size: 2 },
1268
- realms: [testRealmURL, testRealm2URL]
1269
- } } }));
1270
- await search.loaded;
1271
- assert.strictEqual(search.entries.length, 3);
1272
- assert.strictEqual(search.meta.page.total, 3, "the server total spans all pages");
1273
- await realm.write("books/3.json", bookDoc("Paper"));
1274
- await waitUntil(() => search.meta.page.total === 4, { timeout: 1e4 });
1275
- assert.deepEqual(fetchedRealms[fetchedRealms.length - 1], [testRealmURL, testRealm2URL], "a paginated query re-fetches all realms — no realm-scoped splice");
1276
- assert.strictEqual(search.entries.length, 3, "realm 1's contribution stays page-limited");
1277
- assert.strictEqual(search.meta.page.total, 4, "the total stays server-accurate after the live update");
1278
- } finally {
1279
- storeService.searchEntries = originalSearchEntries;
1280
- }
1281
- });
1282
- (0, import_qunit.test)("a realm named by a registered prefix is searched, tagged and refreshed by the spelling the caller used", async function(assert) {
1283
- let { virtualNetwork } = getService("network");
1284
- virtualNetwork.addRealmMapping("@test/mapped/", testRealm2URL);
1285
- let fetchedRealms = [];
1286
- let originalSearchEntries = storeService.searchEntries.bind(storeService);
1287
- storeService.searchEntries = async (query, realms) => {
1288
- fetchedRealms.push(realms ?? []);
1289
- return await originalSearchEntries(query, realms);
1290
- };
1291
- try {
1292
- let search = getResourceForTest(storeService, () => ({ named: { query: {
1293
- filter: { "item.on": bookRef },
1294
- realms: [testRealmURL, "@test/mapped/"]
1295
- } } }));
1296
- await search.loaded;
1297
- assert.strictEqual(search.entries.length, 3, "both realms answer");
1298
- let realm1EntriesBefore = search.entries.filter((entry) => entry.realmUrl === testRealmURL);
1299
- assert.strictEqual(realm1EntriesBefore.length, 2);
1300
- assert.deepEqual(search.entries.filter((entry) => entry.realmUrl === "@test/mapped/").map((entry) => entry.id), [`${testRealm2URL}books/other`], "the prefixed realm's row carries the realm as the caller named it");
1301
- await realm2.write("books/another.json", bookDoc("Hassan"));
1302
- await waitUntil(() => search.entries.length === 4, { timeout: 1e4 });
1303
- assert.deepEqual(fetchedRealms[fetchedRealms.length - 1], ["@test/mapped/"], "the event on the backing realm refreshes that realm alone");
1304
- for (let entryBefore of realm1EntriesBefore) assert.strictEqual(search.entries.find((entry) => entry.id === entryBefore.id), entryBefore, `the other realm's row ${entryBefore.id} keeps its identity`);
1305
- } finally {
1306
- storeService.searchEntries = originalSearchEntries;
1307
- virtualNetwork.removeRealmMapping("@test/mapped/");
1308
- }
1309
- });
1310
- (0, import_qunit.test)("an event in realm 2 refreshes realm 2's rows", async function(assert) {
1311
- let search = getResourceForTest(storeService, () => ({ named: { query: {
1312
- filter: { "item.on": bookRef },
1313
- realms: [testRealmURL, testRealm2URL]
1314
- } } }));
1315
- await search.loaded;
1316
- assert.strictEqual(search.entries.length, 3);
1317
- await realm2.write("books/another.json", JSON.stringify({ data: {
1318
- type: "card",
1319
- attributes: {
1320
- title: "Hassan",
1321
- status: "ready"
1322
- },
1323
- meta: { adoptsFrom: {
1324
- module: testRRI("book"),
1325
- name: "Book"
1326
- } }
1327
- } }));
1328
- await waitUntil(() => search.entries.length === 4, { timeout: 1e4 });
1329
- assert.ok(search.entries.find((entry) => entry.id === `${testRealm2URL}books/another`), "realm 2's new book appears");
1330
- });
1331
- (0, import_qunit.test)("does not re-fetch when the query is structurally unchanged", async function(assert) {
1332
- let fetchCount = 0;
1333
- let originalSearchEntries = storeService.searchEntries.bind(storeService);
1334
- storeService.searchEntries = async (query, realms) => {
1335
- fetchCount++;
1336
- return await originalSearchEntries(query, realms);
1337
- };
1338
- try {
1339
- let query = {
1340
- filter: { "item.on": bookRef },
1341
- realms: [testRealmURL]
1342
- };
1343
- let search = getResourceForTest(storeService, () => ({ named: { query } }));
1344
- await search.loaded;
1345
- assert.strictEqual(fetchCount, 1, "initial search performed once");
1346
- search.modify([], { query: JSON.parse(JSON.stringify(query)) });
1347
- await settled();
1348
- assert.strictEqual(fetchCount, 1, "no re-fetch for a deep-equal query");
1349
- search.modify([], { query: {
1350
- filter: {
1351
- "item.on": bookRef,
1352
- eq: { "item.status": "ready" }
1353
- },
1354
- realms: [testRealmURL]
1355
- } });
1356
- await settled();
1357
- assert.strictEqual(fetchCount, 2, "a changed query re-runs the search");
1358
- assert.strictEqual(search.entries.length, 1, "the new query narrows the result set");
1359
- } finally {
1360
- storeService.searchEntries = originalSearchEntries;
1361
- }
1362
- });
1363
- (0, import_qunit.test)("destroying the resource tears down its realm subscriptions", async function(assert) {
1364
- let fetchCount = 0;
1365
- let originalSearchEntries = storeService.searchEntries.bind(storeService);
1366
- storeService.searchEntries = async (query, realms) => {
1367
- fetchCount++;
1368
- return await originalSearchEntries(query, realms);
1369
- };
1370
- try {
1371
- let parent = {};
1372
- setOwner(parent, this.owner);
1373
- await getResourceForTest(parent, () => ({ named: { query: {
1374
- filter: { "item.on": bookRef },
1375
- realms: [testRealmURL]
1376
- } } })).loaded;
1377
- assert.strictEqual(fetchCount, 1);
1378
- destroy(parent);
1379
- await settled();
1380
- await realm.write("books/3.json", bookDoc("Paper"));
1381
- await settled();
1382
- assert.strictEqual(fetchCount, 1, "no fetch fires for a realm event after the resource is destroyed");
1383
- } finally {
1384
- storeService.searchEntries = originalSearchEntries;
1385
- }
1386
- });
1387
- (0, import_qunit.test)("a failed fetch surfaces errors; a later successful run clears them", async function(assert) {
1388
- let failNext = true;
1389
- let originalSearchEntries = storeService.searchEntries.bind(storeService);
1390
- storeService.searchEntries = async (query, realms) => {
1391
- if (failNext) {
1392
- failNext = false;
1393
- let err = /* @__PURE__ */ new Error("search exploded");
1394
- err.status = 500;
1395
- throw err;
1396
- }
1397
- return await originalSearchEntries(query, realms);
1398
- };
1399
- try {
1400
- let search = getResourceForTest(storeService, () => ({ named: { query: {
1401
- filter: { "item.on": bookRef },
1402
- realms: [testRealmURL]
1403
- } } }));
1404
- await search.loaded;
1405
- assert.strictEqual(search.entries.length, 0);
1406
- assert.strictEqual(search.errors?.length, 1);
1407
- assert.strictEqual(search.errors?.[0].type, "instance-error");
1408
- assert.false(search.isLoading, "a failed run settles isLoading (no permanent \"Searching…\")");
1409
- await realm.write("books/3.json", bookDoc("Paper"));
1410
- await waitUntil(() => search.entries.length === 3, { timeout: 1e4 });
1411
- assert.strictEqual(search.errors, void 0, "a successful re-run clears the errors");
1412
- } finally {
1413
- storeService.searchEntries = originalSearchEntries;
1414
- }
1415
- });
1416
- (0, import_qunit.module)("rendered consumption", function() {
1417
- class QueryState {
1418
- static {
1419
- decorateFieldV2(this.prototype, "query", [tracked]);
1420
- }
1421
- #query = (initializeDeferredDecorator(this, "query"), void 0);
1422
- }
1423
- class Harness extends Component {
1424
- search = getSearchEntriesResource(this, () => this.args.state.query);
1425
- static {
1426
- setComponentTemplate(templateFactory({
1427
- "id": "cYXtxh4U",
1428
- "block": "[[[10,0],[14,\"data-test-entry-count\",\"\"],[12],[1,[30,0,[\"search\",\"entries\",\"length\"]]],[13]],[],[]]",
1429
- "moduleName": "/home/runner/work/boxel/boxel/packages/host/tests/integration/resources/search-entries-test.gts",
1430
- "isStrictMode": true
1431
- }), this);
1432
- }
1433
- }
1434
- (0, import_qunit.test)("a rendered consumer activates from an idle query and clears back to idle", async function(assert) {
1435
- let state = new QueryState();
1436
- await render(setComponentTemplate(templateFactory({
1437
- "id": "DewS/Yhh",
1438
- "block": "[[[8,[32,0],null,[[\"@state\"],[[32,1]]],null]],[],[]]",
1439
- "moduleName": "/home/runner/work/boxel/boxel/packages/host/tests/integration/resources/search-entries-test.gts",
1440
- "scope": () => [Harness, state],
1441
- "isStrictMode": true
1442
- }), templateOnly()));
1443
- assert.dom("[data-test-entry-count]").hasText("0", "an idle (undefined) query renders empty");
1444
- state.query = {
1445
- filter: { "item.on": bookRef },
1446
- realms: [testRealmURL]
1447
- };
1448
- await settled();
1449
- assert.dom("[data-test-entry-count]").hasText("2", "setting the query activates the search");
1450
- state.query = void 0;
1451
- await settled();
1452
- assert.dom("[data-test-entry-count]").hasText("0", "returning to idle clears the standing entries");
1453
- state.query = {
1454
- filter: {
1455
- "item.on": bookRef,
1456
- eq: { "item.status": "ready" }
1457
- },
1458
- realms: [testRealmURL]
1459
- };
1460
- await settled();
1461
- assert.dom("[data-test-entry-count]").hasText("1", "a fresh query after idle re-activates");
1462
- });
1463
- (0, import_qunit.test)("changing realms while entries are standing re-runs cleanly", async function(assert) {
1464
- let state = new QueryState();
1465
- state.query = {
1466
- filter: { "item.on": bookRef },
1467
- realms: [testRealmURL]
1468
- };
1469
- await render(setComponentTemplate(templateFactory({
1470
- "id": "DewS/Yhh",
1471
- "block": "[[[8,[32,0],null,[[\"@state\"],[[32,1]]],null]],[],[]]",
1472
- "moduleName": "/home/runner/work/boxel/boxel/packages/host/tests/integration/resources/search-entries-test.gts",
1473
- "scope": () => [Harness, state],
1474
- "isStrictMode": true
1475
- }), templateOnly()));
1476
- assert.dom("[data-test-entry-count]").hasText("2");
1477
- state.query = {
1478
- filter: { "item.on": bookRef },
1479
- realms: [testRealm2URL]
1480
- };
1481
- await settled();
1482
- assert.dom("[data-test-entry-count]").hasText("1", "only the new realm's entries remain after the re-run");
1483
- });
1484
- });
1485
- });
1486
- //#endregion