@cardstack/boxel-cli 0.3.2-unstable.59 → 0.3.2-unstable.60

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 (921) hide show
  1. package/api.ts +3 -3
  2. package/bundled-realms/base/command.gts +73 -0
  3. package/bundled-test-harness/assets/adapter-TgpmkD23.js +2 -0
  4. package/bundled-test-harness/assets/add-field-to-card-definition-command-test-BVVD6_Wq.js +111 -0
  5. package/bundled-test-harness/assets/add-workspace-test-BvvYJ2Fk.js +71 -0
  6. package/bundled-test-harness/assets/ai-assistant-Ba_RBqf6.js +129 -0
  7. package/bundled-test-harness/assets/ai-assistant-panel-service-test-DK87n1hh.js +95 -0
  8. package/bundled-test-harness/assets/ai-assistant-test-CZATBlJS.js +2137 -0
  9. package/bundled-test-harness/assets/ai-function-generation-test-e58MHziu.js +996 -0
  10. package/bundled-test-harness/assets/ai-module-creation-test-CEieL3Fa.js +150 -0
  11. package/bundled-test-harness/assets/aibot-message-DhTbAqNk.js +1185 -0
  12. package/bundled-test-harness/assets/amd-transpile-test-CSk5COu7.js +425 -0
  13. package/bundled-test-harness/assets/app-Btfy4HWI.js +21464 -0
  14. package/bundled-test-harness/assets/apply-boxel-formatting-test-BHTP9NBp.js +134 -0
  15. package/bundled-test-harness/assets/apply-markdown-edit-test-BETCndeK.js +230 -0
  16. package/bundled-test-harness/assets/apply-search-replace-block-test-KNolar0-.js +630 -0
  17. package/bundled-test-harness/assets/arc-CA8yZ0zo.js +199 -0
  18. package/bundled-test-harness/assets/architecture-7EHR7CIX-C5JFMGdb.js +3 -0
  19. package/bundled-test-harness/assets/architectureDiagram-3BPJPVTR-CmVPjKgm.js +7400 -0
  20. package/bundled-test-harness/assets/auth-error-guard-test-D0rKESg_.js +30 -0
  21. package/bundled-test-harness/assets/auth-service-worker-test-DGg_vbKo.js +538 -0
  22. package/bundled-test-harness/assets/authed-fetch-test-CHF3eh_H.js +75 -0
  23. package/bundled-test-harness/assets/avif-image-def-test-p9tiyh4_.js +186 -0
  24. package/bundled-test-harness/assets/base-realm-Chjzrp6m.js +2 -0
  25. package/bundled-test-harness/assets/base-realm-DpSTsZxD.js +140 -0
  26. package/bundled-test-harness/assets/basic-test-D7qEz4hw.js +128 -0
  27. package/bundled-test-harness/assets/bfm-card-references-test-D-m1YnL8.js +577 -0
  28. package/bundled-test-harness/assets/binary-upload-dedupe-test-8RKK73EG.js +308 -0
  29. package/bundled-test-harness/assets/blockDiagram-GPEHLZMM-BdVFTa2C.js +4355 -0
  30. package/bundled-test-harness/assets/bot-registration-test-9zYny2wR.js +99 -0
  31. package/bundled-test-harness/assets/box-test-0T92xi3A.js +51 -0
  32. package/bundled-test-harness/assets/brand-guide-attachments-test-5ZtPn4cC.js +87 -0
  33. package/bundled-test-harness/assets/brand-guide-custom-css-test-CKKSgKyp.js +135 -0
  34. package/bundled-test-harness/assets/brand-logo-mark-field-test-nlNNQ3rw.js +87 -0
  35. package/bundled-test-harness/assets/broken-link-template-test-BGIExVof.js +345 -0
  36. package/bundled-test-harness/assets/browser-index-BaR-gTqG.js +3 -0
  37. package/bundled-test-harness/assets/browser-index-G4NKYBAj.js +8802 -0
  38. package/bundled-test-harness/assets/c4Diagram-AAUBKEIU-DyugX7zz.js +3764 -0
  39. package/bundled-test-harness/assets/cached-fetch-test-MtqvDphJ.js +93 -0
  40. package/bundled-test-harness/assets/can-read-realm-test-BZmwIOqS.js +58 -0
  41. package/bundled-test-harness/assets/cancel-indexing-job-test-BsQtQbDu.js +71 -0
  42. package/bundled-test-harness/assets/card-api-test-BxQ8f0-c.js +196 -0
  43. package/bundled-test-harness/assets/card-basics-test-B-uBZ8o4.js +4895 -0
  44. package/bundled-test-harness/assets/card-catalog-test-YmwmyIKf.js +377 -0
  45. package/bundled-test-harness/assets/card-copy-test-LoqdH1CQ.js +777 -0
  46. package/bundled-test-harness/assets/card-def-field-def-relationships-test-DvtBA1jv.js +560 -0
  47. package/bundled-test-harness/assets/card-def-menu-items-test-DHnd0LuM.js +182 -0
  48. package/bundled-test-harness/assets/card-delete-test-vKF0Jf1X.js +412 -0
  49. package/bundled-test-harness/assets/card-directory-name-test-CbCuPwSz.js +71 -0
  50. package/bundled-test-harness/assets/card-playground-test-CRIP3b5-.js +1497 -0
  51. package/bundled-test-harness/assets/card-prerender-ClYlSOBU.js +12661 -0
  52. package/bundled-test-harness/assets/card-search-adorn-test-Mggk5ZgY.js +128 -0
  53. package/bundled-test-harness/assets/card-search-query-builder-test-Cdl12s50.js +88 -0
  54. package/bundled-test-harness/assets/card-search-selection-menu-test-CtuCCLoB.js +108 -0
  55. package/bundled-test-harness/assets/channel-BKUMepxs.js +8 -0
  56. package/bundled-test-harness/assets/check-correctness-test-DBh8DT_f.js +252 -0
  57. package/bundled-test-harness/assets/chunk-2J33WTMH-ClrRoNQU.js +31 -0
  58. package/bundled-test-harness/assets/chunk-3OPIFGDE-g_0Oh8jN.js +5548 -0
  59. package/bundled-test-harness/assets/chunk-4BX2VUAB-D2LCc7Y9.js +11 -0
  60. package/bundled-test-harness/assets/chunk-4EGX6M5U-D8vRS5IG.js +44 -0
  61. package/bundled-test-harness/assets/chunk-55IACEB6-C5j4VAmb.js +10 -0
  62. package/bundled-test-harness/assets/chunk-5DO6E6H7-CPb3jsP0.js +27 -0
  63. package/bundled-test-harness/assets/chunk-5ZQYHXKU-BlVb7vgG.js +1767 -0
  64. package/bundled-test-harness/assets/chunk-727SXJPM-C_NVCDMC.js +3877 -0
  65. package/bundled-test-harness/assets/chunk-AQP2D5EJ-CpwrMix_.js +2622 -0
  66. package/bundled-test-harness/assets/chunk-BR22UD5L-AF0NWdjT.js +85 -0
  67. package/bundled-test-harness/assets/chunk-BSJP7CBP-Dgun5vYb.js +114 -0
  68. package/bundled-test-harness/assets/chunk-CSCIHK7Q-D7nFiAZ-.js +6144 -0
  69. package/bundled-test-harness/assets/chunk-FHYWG6QK-2nuXS9PL.js +27 -0
  70. package/bundled-test-harness/assets/chunk-FMBD7UC4-O-Y8VK1S.js +20 -0
  71. package/bundled-test-harness/assets/chunk-KSCS5N6A-Du5-DprU.js +871 -0
  72. package/bundled-test-harness/assets/chunk-L5ZTLDWV-C2lDtkix.js +43 -0
  73. package/bundled-test-harness/assets/chunk-LZXEDZCA-qAMsMZkF.js +65 -0
  74. package/bundled-test-harness/assets/chunk-MPE355IW-DcT_60Oq.js +27 -0
  75. package/bundled-test-harness/assets/chunk-MZUSXYTE-BsH_YmnC.js +36 -0
  76. package/bundled-test-harness/assets/chunk-N66VUXT2-DMyMHgoS.js +70 -0
  77. package/bundled-test-harness/assets/chunk-ND2GUHAM-DO1Znn8O.js +93 -0
  78. package/bundled-test-harness/assets/chunk-NZK2D7GU-B1YWBxHm.js +89 -0
  79. package/bundled-test-harness/assets/chunk-O5CBEL6O-CZVSBsRq.js +2395 -0
  80. package/bundled-test-harness/assets/chunk-PUPMXCY4-DzOK-Vbt.js +27 -0
  81. package/bundled-test-harness/assets/chunk-QZHKN3VN-DJFnRn99.js +20 -0
  82. package/bundled-test-harness/assets/chunk-UIBZB4QT-5KIxBxjk.js +27 -0
  83. package/bundled-test-harness/assets/chunk-WCWK7LTN-BsQwhliq.js +36 -0
  84. package/bundled-test-harness/assets/chunk-WU5MYG2G-DUVb5MAo.js +12 -0
  85. package/bundled-test-harness/assets/chunk-XPW4576I-DLaJYAOU.js +2341 -0
  86. package/bundled-test-harness/assets/classDiagram-4FO5ZUOK-DjP2uozG.js +31 -0
  87. package/bundled-test-harness/assets/classDiagram-v2-Q7XG4LA2-Dt6ps5uz.js +31 -0
  88. package/bundled-test-harness/assets/code-equality-assertion-BBezFT13.js +474 -0
  89. package/bundled-test-harness/assets/code-patches-test-DzoQGARM.js +1128 -0
  90. package/bundled-test-harness/assets/code-patching-test-D8r-pJ5w.js +114 -0
  91. package/bundled-test-harness/assets/code-ref-test-DU3HChNz.js +138 -0
  92. package/bundled-test-harness/assets/code-semantics-service-test-DArUotKy.js +65 -0
  93. package/bundled-test-harness/assets/code-submode-test-h5wWKsz2.js +1762 -0
  94. package/bundled-test-harness/assets/codeblocks-test-FbuwTy5v.js +492 -0
  95. package/bundled-test-harness/assets/codemirror-context-DVlC9C78.js +2 -0
  96. package/bundled-test-harness/assets/codemirror-editor-test-JDT9uwqM.js +1176 -0
  97. package/bundled-test-harness/assets/color-field-test-BssRlQAX.js +213 -0
  98. package/bundled-test-harness/assets/command-definitions-test-J21kOxBs.js +72 -0
  99. package/bundled-test-harness/assets/commands-DAo0DgCX.js +1379 -0
  100. package/bundled-test-harness/assets/commands-calling-test-C3deVvv_.js +200 -0
  101. package/bundled-test-harness/assets/commands-test--0zViqs2.js +1041 -0
  102. package/bundled-test-harness/assets/commands-test-BwNn2npL.js +1145 -0
  103. package/bundled-test-harness/assets/computed-test-BD_KrZmc.js +882 -0
  104. package/bundled-test-harness/assets/container-C8gu0I0Q.js +14605 -0
  105. package/bundled-test-harness/assets/convert-to-class-name-test-CX21VRzM.js +17 -0
  106. package/bundled-test-harness/assets/copy-and-edit-test-BUy_o8XJ.js +291 -0
  107. package/bundled-test-harness/assets/copy-card-test-LWbugEPe.js +156 -0
  108. package/bundled-test-harness/assets/copy-file-to-realm-test-BS25EUGV.js +99 -0
  109. package/bundled-test-harness/assets/copy-source-test-Dh33cqM8.js +56 -0
  110. package/bundled-test-harness/assets/cose-bilkent-S5V4N54A-CjAFDdpS.js +4275 -0
  111. package/bundled-test-harness/assets/create-file-test-DOc3YYij.js +963 -0
  112. package/bundled-test-harness/assets/create-file-test-DgUya7-i.js +397 -0
  113. package/bundled-test-harness/assets/create-listing-modal-test-DZxZBYS7.js +194 -0
  114. package/bundled-test-harness/assets/create-listing-pr-request-Aw0ms76l.js +64 -0
  115. package/bundled-test-harness/assets/create-listing-pr-request-test-CFvqkgky.js +117 -0
  116. package/bundled-test-harness/assets/create-spec-test-BTRt8oe8.js +239 -0
  117. package/bundled-test-harness/assets/csv-file-def-test-BVffg8wL.js +101 -0
  118. package/bundled-test-harness/assets/dagre-BM42HDAG-GoRrN65x.js +606 -0
  119. package/bundled-test-harness/assets/dagre-ByxOOmYM.js +4195 -0
  120. package/bundled-test-harness/assets/date-time-fields-test-BEcfCqgB.js +322 -0
  121. package/bundled-test-harness/assets/debug-message-test-CAxbe6x2.js +119 -0
  122. package/bundled-test-harness/assets/diagram-2AECGRRQ-B6-pvp9H.js +279 -0
  123. package/bundled-test-harness/assets/diagram-5GNKFQAL-C9M7hXIc.js +142 -0
  124. package/bundled-test-harness/assets/diagram-KO2AKTUF-BNJvCLGK.js +551 -0
  125. package/bundled-test-harness/assets/diagram-LMA3HP47-hlJyTtqP.js +184 -0
  126. package/bundled-test-harness/assets/diagram-OG6HWLK6-BvPoB3IH.js +857 -0
  127. package/bundled-test-harness/assets/diffing-test-De9Ev_Fr.js +210 -0
  128. package/bundled-test-harness/assets/dist-BsEojs3T.js +232 -0
  129. package/bundled-test-harness/assets/dist-CY3T64Hs.js +105 -0
  130. package/bundled-test-harness/assets/dist-q2xz8RMj.js +2 -0
  131. package/bundled-test-harness/assets/editor-test-DOI_TvWQ.js +551 -0
  132. package/bundled-test-harness/assets/editor.main-CpuM6HrX.js +43566 -0
  133. package/bundled-test-harness/assets/editor.main-DkMgS1qm.js +3 -0
  134. package/bundled-test-harness/assets/email-field-test-t-80Z94b.js +74 -0
  135. package/bundled-test-harness/assets/enum-field-test-DVp-2pip.js +909 -0
  136. package/bundled-test-harness/assets/erDiagram-TEJ5UH35-CYniRkua.js +2041 -0
  137. package/bundled-test-harness/assets/error-display-test-IuRxKyLz.js +343 -0
  138. package/bundled-test-harness/assets/evaluate-module-test-DdnfbFp-.js +66 -0
  139. package/bundled-test-harness/assets/eventmodeling-FCH6USID-BO089-Cs.js +3 -0
  140. package/bundled-test-harness/assets/execute-atomic-operations-test-CgbvrBlu.js +75 -0
  141. package/bundled-test-harness/assets/externals-5atxeNU4.js +5533 -0
  142. package/bundled-test-harness/assets/extract-css-variables-test-Cii-CYfc.js +169 -0
  143. package/bundled-test-harness/assets/fallback-banner-test-CUUd-Wuu.js +227 -0
  144. package/bundled-test-harness/assets/fallback-banner-test-D4NWyahM.js +53 -0
  145. package/bundled-test-harness/assets/fallback-models-test-2MJ1jAs8.js +163 -0
  146. package/bundled-test-harness/assets/fetch-card-json-test-Cruqsq6S.js +63 -0
  147. package/bundled-test-harness/assets/fetcher-test-CkHlbTzz.js +85 -0
  148. package/bundled-test-harness/assets/field-configuration-test-CqwsGNib.js +535 -0
  149. package/bundled-test-harness/assets/field-markdown-domain-test-DPjz8i4Y.js +615 -0
  150. package/bundled-test-harness/assets/field-markdown-primitives-test-Dw07UtT7.js +362 -0
  151. package/bundled-test-harness/assets/field-markdown-specialized-test-C-t34PAw.js +527 -0
  152. package/bundled-test-harness/assets/field-path-parser-test-BeNjacPu.js +387 -0
  153. package/bundled-test-harness/assets/field-playground-test-BILTGxqr.js +902 -0
  154. package/bundled-test-harness/assets/field-support-predicates-test-Df24w0Wa.js +170 -0
  155. package/bundled-test-harness/assets/field-test-helpers-P22hxBNz.js +45 -0
  156. package/bundled-test-harness/assets/file-attachment-test-Cjg4NBeM.js +635 -0
  157. package/bundled-test-harness/assets/file-chooser-test-Cl0XujPT.js +439 -0
  158. package/bundled-test-harness/assets/file-def-live-reload-test-D4Obzi12.js +50 -0
  159. package/bundled-test-harness/assets/file-def-manager-DUgR-gjs.js +470 -0
  160. package/bundled-test-harness/assets/file-def-manager-canonicalize-test-D_LWVsvz.js +451 -0
  161. package/bundled-test-harness/assets/file-def-menu-items-test-xvsUTOK4.js +114 -0
  162. package/bundled-test-harness/assets/file-def-navigation-test-DxPceB7E.js +109 -0
  163. package/bundled-test-harness/assets/file-def-serialization-test-CpwbDb8p.js +87 -0
  164. package/bundled-test-harness/assets/file-def-test-CEnKcvW9.js +219 -0
  165. package/bundled-test-harness/assets/file-tree-test-DE2aH6iq.js +773 -0
  166. package/bundled-test-harness/assets/flac-audio-def-test-BCg7LnR6.js +138 -0
  167. package/bundled-test-harness/assets/flowDiagram-I6XJVG4X-Xv8-LIxQ.js +4883 -0
  168. package/bundled-test-harness/assets/formatted-aibot-message-test-CsxFn62P.js +366 -0
  169. package/bundled-test-harness/assets/formatted-user-message-test-DjZc8qnA.js +43 -0
  170. package/bundled-test-harness/assets/freestyle-test-QEZaZCNJ.js +17 -0
  171. package/bundled-test-harness/assets/full-reindex-realm-test-C_c2OTTD.js +103 -0
  172. package/bundled-test-harness/assets/ganttDiagram-6RSMTGT7-DmvkzS5w.js +4060 -0
  173. package/bundled-test-harness/assets/garbage-collection-test-BVuvfidI.js +373 -0
  174. package/bundled-test-harness/assets/general-test-Ydis4jEq.js +926 -0
  175. package/bundled-test-harness/assets/generate-css-variables-test-CZCmgTAO.js +88 -0
  176. package/bundled-test-harness/assets/generate-example-cards-one-shot-test-x_szhkSN.js +67 -0
  177. package/bundled-test-harness/assets/get-available-realm-identifiers-test-DvRnwCHR.js +49 -0
  178. package/bundled-test-harness/assets/get-catalog-realm-identifiers-test-46TE-XA0.js +49 -0
  179. package/bundled-test-harness/assets/get-default-writable-realm-test-DaAkxTNh.js +56 -0
  180. package/bundled-test-harness/assets/get-realm-of-resource-identifier-test-9XEGHVOV.js +55 -0
  181. package/bundled-test-harness/assets/get-relationship-membership-state-test-BY4gk5JZ.js +1306 -0
  182. package/bundled-test-harness/assets/get-type-refs-from-filter-test-BynlX0JE.js +136 -0
  183. package/bundled-test-harness/assets/get-user-system-card-test-D98Xxn1k.js +52 -0
  184. package/bundled-test-harness/assets/gif-image-def-test-FwKGFGWw.js +161 -0
  185. package/bundled-test-harness/assets/gitGraph-WXDBUCRP-Bmn0Z_Xi.js +3 -0
  186. package/bundled-test-harness/assets/gitGraphDiagram-PVQCEYII-BAo0G82W.js +1150 -0
  187. package/bundled-test-harness/assets/gts-file-def-test-ivEk8Muv.js +99 -0
  188. package/bundled-test-harness/assets/head-format-preview-test-CNhvk724.js +156 -0
  189. package/bundled-test-harness/assets/helpers-BH4Yfo_2.js +5 -0
  190. package/bundled-test-harness/assets/host-mode-test-BRNndb2h.js +391 -0
  191. package/bundled-test-harness/assets/host-submode-test-DHd0x-6x.js +904 -0
  192. package/bundled-test-harness/assets/index-query-engine-test-7Fzc09fG.js +2548 -0
  193. package/bundled-test-harness/assets/index-writer-test-D3cL2q2N.js +1842 -0
  194. package/bundled-test-harness/assets/indexeddb-crypto-store-C09Shau-.js +49434 -0
  195. package/bundled-test-harness/assets/info-J43DQDTF-Dz5b1Xgc.js +3 -0
  196. package/bundled-test-harness/assets/infoDiagram-5YYISTIA-Dl8XvIfi.js +23 -0
  197. package/bundled-test-harness/assets/inspector-test-CVZVQdIJ.js +1776 -0
  198. package/bundled-test-harness/assets/instance-filter-matcher-test-C-4z6qUt.js +564 -0
  199. package/bundled-test-harness/assets/instantiate-card-test-eQ22Vt_m.js +104 -0
  200. package/bundled-test-harness/assets/interact-submode-creation-and-permissions-test-hXPsRPMU.js +497 -0
  201. package/bundled-test-harness/assets/interact-submode-setup-D55IIVc5.js +558 -0
  202. package/bundled-test-harness/assets/interact-submode-test-BwrtFe2m.js +725 -0
  203. package/bundled-test-harness/assets/invalidate-realm-identifiers-test-BMk7yd-D.js +101 -0
  204. package/bundled-test-harness/assets/invite-user-to-room-test-B5B0umJQ.js +67 -0
  205. package/bundled-test-harness/assets/ishikawaDiagram-YF4QCWOH-BrO7NAng.js +1009 -0
  206. package/bundled-test-harness/assets/isolated-render-test-DX1wdHoS.js +51 -0
  207. package/bundled-test-harness/assets/item-button-QkVr-FW0.js +203 -0
  208. package/bundled-test-harness/assets/javascript-BWNQhcCY.js +75 -0
  209. package/bundled-test-harness/assets/job-priority-header-test-CuBZloLK.js +81 -0
  210. package/bundled-test-harness/assets/journeyDiagram-JHISSGLW-B7BT66v0.js +1256 -0
  211. package/bundled-test-harness/assets/jpg-image-def-test-DEx462nY.js +430 -0
  212. package/bundled-test-harness/assets/json-file-def-test-Cray6ly6.js +92 -0
  213. package/bundled-test-harness/assets/kanban-definition-UN3LZRKU-C0E5Vmr_.js +1284 -0
  214. package/bundled-test-harness/assets/last-modified-date-test-BzE25NOB.js +18 -0
  215. package/bundled-test-harness/assets/limited-set-test-NwGNoXKc.js +123 -0
  216. package/bundled-test-harness/assets/line-BbGOk93s.js +55 -0
  217. package/bundled-test-harness/assets/linear-CHTo-YQl.js +417 -0
  218. package/bundled-test-harness/assets/linksto-broken-link-placeholder-test-CZdgRM1b.js +315 -0
  219. package/bundled-test-harness/assets/linksto-error-sentinel-test-DhsHO7Xs.js +236 -0
  220. package/bundled-test-harness/assets/linksto-many-broken-link-placeholder-test-mt-RrRta.js +303 -0
  221. package/bundled-test-harness/assets/linksto-many-per-slot-access-test-CdGUXZsi.js +301 -0
  222. package/bundled-test-harness/assets/linksto-sentinel-roundtrip-test-DOJ_6Gwf.js +258 -0
  223. package/bundled-test-harness/assets/linksto-singular-js-access-contract-test-BZC-gslF.js +194 -0
  224. package/bundled-test-harness/assets/live-prerendered-search-BSkwf5AH.js +639 -0
  225. package/bundled-test-harness/assets/live-test-DTfxZnsy.js +100 -0
  226. package/bundled-test-harness/assets/live-test-WOMYpc1I.js +2 -0
  227. package/bundled-test-harness/assets/loader-icon-error-test-F_ukQytn.js +62 -0
  228. package/bundled-test-harness/assets/loader-parallel-prefetch-test-DpNaFnhc.js +257 -0
  229. package/bundled-test-harness/assets/loader-retry-test-EQ2X0bFS.js +173 -0
  230. package/bundled-test-harness/assets/loader-test-BYkWAwc4.js +245 -0
  231. package/bundled-test-harness/assets/loading-test-jfWH_OpH.js +63 -0
  232. package/bundled-test-harness/assets/login-error-text-test-Cldr1X6h.js +51 -0
  233. package/bundled-test-harness/assets/m4a-audio-def-test-BQ1WKApD.js +185 -0
  234. package/bundled-test-harness/assets/main-ByAsLO_g.js +5 -0
  235. package/bundled-test-harness/assets/markdown-fallback-test-dtTaGP1s.js +316 -0
  236. package/bundled-test-harness/assets/markdown-file-def-test-shW9Xxd1.js +286 -0
  237. package/bundled-test-harness/assets/markdown-helpers-test-B6H7p4ay.js +183 -0
  238. package/bundled-test-harness/assets/markdown-highlighting-test-ZIrFNHRe.js +244 -0
  239. package/bundled-test-harness/assets/markdown-preview-KII3nJ2M.js +69 -0
  240. package/bundled-test-harness/assets/markdown-preview-test-De-IaUbK.js +237 -0
  241. package/bundled-test-harness/assets/marked-sync-CGSehq4u.js +2 -0
  242. package/bundled-test-harness/assets/marked-sync-DenC7QgC.js +2561 -0
  243. package/bundled-test-harness/assets/marked-sync-test-jZBr20Hq.js +146 -0
  244. package/bundled-test-harness/assets/matrix-service-sliding-sync-test-Ax4kyAMt.js +33 -0
  245. package/bundled-test-harness/assets/mermaid-parser.core-B_3tzKUl.js +114 -0
  246. package/bundled-test-harness/assets/mermaid.core-D2hqA7Hq.js +1700 -0
  247. package/bundled-test-harness/assets/message-service-subscription-test-B42KnJ91.js +113 -0
  248. package/bundled-test-harness/assets/mindmap-definition-RKZ34NQL-IZz7Qpd0.js +1347 -0
  249. package/bundled-test-harness/assets/mock-matrix-BhFWlMMr.js +14292 -0
  250. package/bundled-test-harness/assets/mock-matrix-CrtMntcN.js +2 -0
  251. package/bundled-test-harness/assets/module-transpile-cache-test-BtWN4OiM.js +66 -0
  252. package/bundled-test-harness/assets/monaco.contribution-B1hOUP3w.js +2 -0
  253. package/bundled-test-harness/assets/monaco.contribution-DhNsYtZe.js +2 -0
  254. package/bundled-test-harness/assets/monaco.contribution-DvJDImx2.js +103 -0
  255. package/bundled-test-harness/assets/monaco.contribution-yXcOyzue.js +243 -0
  256. package/bundled-test-harness/assets/mp3-audio-def-test-D365TuA7.js +129 -0
  257. package/bundled-test-harness/assets/mutex-test-DY09HLvv.js +71 -0
  258. package/bundled-test-harness/assets/number-field-test-wYaQjnzA.js +153 -0
  259. package/bundled-test-harness/assets/ogg-audio-def-test-Dl01PP31.js +191 -0
  260. package/bundled-test-harness/assets/open-create-listing-modal-test-D8C2PUFv.js +117 -0
  261. package/bundled-test-harness/assets/open-workspace-test-DN2n8IkC.js +48 -0
  262. package/bundled-test-harness/assets/operator-mode-acceptance-test-B_hzJZo4.js +1044 -0
  263. package/bundled-test-harness/assets/operator-mode-card-catalog-test-Hrrnkdt9.js +989 -0
  264. package/bundled-test-harness/assets/operator-mode-links-test-DC6sc9TZ.js +797 -0
  265. package/bundled-test-harness/assets/operator-mode-state-service-test-Aqz9_v0U.js +122 -0
  266. package/bundled-test-harness/assets/operator-mode-test-CLgpZGEM.js +617 -0
  267. package/bundled-test-harness/assets/operator-mode-ui-test-CDRrORfC.js +985 -0
  268. package/bundled-test-harness/assets/ordinal-BIRuJQBH.js +85 -0
  269. package/bundled-test-harness/assets/overlay-menu-items-test-of24KuXp.js +316 -0
  270. package/bundled-test-harness/assets/packet-YPE3B663-hs92geQG.js +3 -0
  271. package/bundled-test-harness/assets/panel-rIdTMDfK.js +3371 -0
  272. package/bundled-test-harness/assets/past-sessions-test-ZKr4ACF0.js +321 -0
  273. package/bundled-test-harness/assets/patch-code-test-BZa-Itrt.js +203 -0
  274. package/bundled-test-harness/assets/patch-fields-test-BkaHs-zo.js +992 -0
  275. package/bundled-test-harness/assets/patch-instance-test-CRMgg52p.js +287 -0
  276. package/bundled-test-harness/assets/persist-module-inspector-view-test-CqNy2RXR.js +62 -0
  277. package/bundled-test-harness/assets/phone-number-field-test-CV6gntON.js +72 -0
  278. package/bundled-test-harness/assets/pie-LRSECV5Y-DcM5pWE3.js +3 -0
  279. package/bundled-test-harness/assets/pieDiagram-4H26LBE5-CtO8RHpU.js +253 -0
  280. package/bundled-test-harness/assets/plan-install-test-lfBTuWXU.js +417 -0
  281. package/bundled-test-harness/assets/playground-VscW9KdT.js +57 -0
  282. package/bundled-test-harness/assets/png-image-def-test-CRspcIHP.js +222 -0
  283. package/bundled-test-harness/assets/prerender-file-extract-test-D3SpxfMI.js +176 -0
  284. package/bundled-test-harness/assets/prerender-html-test-WWptGXJ0.js +615 -0
  285. package/bundled-test-harness/assets/prerender-meta-test-DwQEGN6j.js +388 -0
  286. package/bundled-test-harness/assets/prerender-module-test-BM1AOwRF.js +195 -0
  287. package/bundled-test-harness/assets/prerendered-card-search-test-BVJ8IHLe.js +708 -0
  288. package/bundled-test-harness/assets/preview-format-test-DDpiXDN_.js +103 -0
  289. package/bundled-test-harness/assets/preview-test-D2UV1C5D.js +455 -0
  290. package/bundled-test-harness/assets/published-realm-url-DUIZzAJ5.js +52 -0
  291. package/bundled-test-harness/assets/published-realm-url-test-CIgSf4Ub.js +137 -0
  292. package/bundled-test-harness/assets/qs-test-Bi679H5w.js +36 -0
  293. package/bundled-test-harness/assets/quadrantDiagram-W4KKPZXB-GOTAKsCo.js +2324 -0
  294. package/bundled-test-harness/assets/query-field-barrier-test-BlOuVxdS.js +118 -0
  295. package/bundled-test-harness/assets/query-field-error-sentinel-test-BsB76iUQ.js +202 -0
  296. package/bundled-test-harness/assets/query-field-normalization-test-B2YodJCr.js +271 -0
  297. package/bundled-test-harness/assets/query-field-schema-test-CQhJASFx.js +231 -0
  298. package/bundled-test-harness/assets/query-fields-test-CaZ19leM.js +535 -0
  299. package/bundled-test-harness/assets/queue-test-DrSip6mJ.js +216 -0
  300. package/bundled-test-harness/assets/radar-GUYGQ44K-BkAe1nkp.js +3 -0
  301. package/bundled-test-harness/assets/read-card-for-ai-assistant-test-D8yB-OL9.js +91 -0
  302. package/bundled-test-harness/assets/read-file-for-ai-assistant-test-K3M0-lBD.js +45 -0
  303. package/bundled-test-harness/assets/read-source-test-CKlb0ORb.js +67 -0
  304. package/bundled-test-harness/assets/read-text-file-test-CJdasDDU.js +124 -0
  305. package/bundled-test-harness/assets/realm-DhUCLR5r.js +884 -0
  306. package/bundled-test-harness/assets/realm-field-test-kFgxphDI.js +101 -0
  307. package/bundled-test-harness/assets/realm-index-card-id-test-DAnMAqw4.js +18 -0
  308. package/bundled-test-harness/assets/realm-indexing-test-BQkX-Dat.js +4018 -0
  309. package/bundled-test-harness/assets/realm-paths-test-CmEi9rzu.js +33 -0
  310. package/bundled-test-harness/assets/realm-querying-test-eq3qSXLu.js +1062 -0
  311. package/bundled-test-harness/assets/realm-test-DLQAtdMt.js +2409 -0
  312. package/bundled-test-harness/assets/reasoning-test-CwTfyDlj.js +234 -0
  313. package/bundled-test-harness/assets/recent-files-test-MVIGLp8S.js +449 -0
  314. package/bundled-test-harness/assets/reindex-realm-test-BwLgJeB3.js +119 -0
  315. package/bundled-test-harness/assets/relationship-loading-state-test-B4Ca43yD.js +289 -0
  316. package/bundled-test-harness/assets/render-component-BKEihV4U.js +2 -0
  317. package/bundled-test-harness/assets/render-error-test-DWD6tfNe.js +22 -0
  318. package/bundled-test-harness/assets/render-service-test-BjuoVrUK.js +87 -0
  319. package/bundled-test-harness/assets/render-timer-stub-test-BgUY5u3X.js +84 -0
  320. package/bundled-test-harness/assets/rendered-markdown-DOP-s6fW.js +211 -0
  321. package/bundled-test-harness/assets/rendered-markdown-test-CD02UYwA.js +360 -0
  322. package/bundled-test-harness/assets/requirementDiagram-4Y6WPE33-DJIy7eR9.js +2550 -0
  323. package/bundled-test-harness/assets/rich-markdown-field-test-BJeQx1tL.js +806 -0
  324. package/bundled-test-harness/assets/room-message-test-CjD7FlPD.js +171 -0
  325. package/bundled-test-harness/assets/rust-crypto-GS0FFZ7H.js +16141 -0
  326. package/bundled-test-harness/assets/sanitize-module-list-test-gi0pcqSy.js +68 -0
  327. package/bundled-test-harness/assets/sankeyDiagram-5OEKKPKP-wBsbt1Mr.js +1357 -0
  328. package/bundled-test-harness/assets/schema-editor-test-BSqu8W3e.js +784 -0
  329. package/bundled-test-harness/assets/schema-generation-test-DVFuSsLl.js +28 -0
  330. package/bundled-test-harness/assets/scrolling-test-CpzkRiBS.js +292 -0
  331. package/bundled-test-harness/assets/search-and-choose-test-DVWX4XRb.js +156 -0
  332. package/bundled-test-harness/assets/search-cache-key-test-BMnYM4a5.js +79 -0
  333. package/bundled-test-harness/assets/search-command-test-kEfT0AO7.js +135 -0
  334. package/bundled-test-harness/assets/search-correlation-id-test-D08FtVUZ.js +101 -0
  335. package/bundled-test-harness/assets/search-data-test-CTrBEc1m.js +243 -0
  336. package/bundled-test-harness/assets/search-google-images-test-UnKG8qCp.js +168 -0
  337. package/bundled-test-harness/assets/search-in-flight-key-test-9Va-JXFz.js +79 -0
  338. package/bundled-test-harness/assets/search-test-COlO2lZi.js +847 -0
  339. package/bundled-test-harness/assets/send-ai-assistant-message-test-BPjOjt2R.js +52 -0
  340. package/bundled-test-harness/assets/send-bot-trigger-event-test-BB4lHbB_.js +56 -0
  341. package/bundled-test-harness/assets/send-request-via-proxy-test-U8frmHZA.js +333 -0
  342. package/bundled-test-harness/assets/sending-test-DjEzksEX.js +317 -0
  343. package/bundled-test-harness/assets/sequenceDiagram-3UESZ5HK-QAEjhoay.js +5551 -0
  344. package/bundled-test-harness/assets/serialization-test-DHdLriC8.js +8283 -0
  345. package/bundled-test-harness/assets/set-user-system-card-test-C8I1lDBh.js +59 -0
  346. package/bundled-test-harness/assets/setup-BkuybBki.js +769 -0
  347. package/bundled-test-harness/assets/setup-gxkWJKID.js +2 -0
  348. package/bundled-test-harness/assets/show-card-test-DHKQ6AI4.js +362 -0
  349. package/bundled-test-harness/assets/skills-test-DlMgZrPV.js +568 -0
  350. package/bundled-test-harness/assets/spec-test-s9Zj7x2E.js +1012 -0
  351. package/bundled-test-harness/assets/stateDiagram-AJRCARHV-nEhf3efZ.js +363 -0
  352. package/bundled-test-harness/assets/stateDiagram-v2-BHNVJYJU-tZz_3w-7.js +29 -0
  353. package/bundled-test-harness/assets/store-add-test-D44FWRl3.js +52 -0
  354. package/bundled-test-harness/assets/store-test-TTmNBs5v.js +1562 -0
  355. package/bundled-test-harness/assets/summarize-session-test-DHAuNb5K.js +169 -0
  356. package/bundled-test-harness/assets/svg-image-def-test-C2_GGzR6.js +164 -0
  357. package/bundled-test-harness/assets/switch-submode-test-CfGaoxVe.js +168 -0
  358. package/bundled-test-harness/assets/test-realm-service-worker-C21o7yvW.js +73 -0
  359. package/bundled-test-harness/assets/tests-BSt6h9iC.js +2771 -0
  360. package/bundled-test-harness/assets/text-file-def-test-CR4QO7e_.js +93 -0
  361. package/bundled-test-harness/assets/text-input-validator-test-DYS3mFj9.js +155 -0
  362. package/bundled-test-harness/assets/text-suggestion-test-GUxJ7WtF.js +339 -0
  363. package/bundled-test-harness/assets/theme-card-test-Ba2KqFB8.js +573 -0
  364. package/bundled-test-harness/assets/timeline-definition-PNZ67QCA-BQYyTIei.js +1545 -0
  365. package/bundled-test-harness/assets/transform-cards-test-DyA8eCom.js +341 -0
  366. package/bundled-test-harness/assets/treeView-BLDUP644-Z4ezSvef.js +3 -0
  367. package/bundled-test-harness/assets/treemap-LRROVOQU-Bf5rk_He.js +3 -0
  368. package/bundled-test-harness/assets/ts-file-def-test-Cxnc6H74.js +90 -0
  369. package/bundled-test-harness/assets/tsMode-oJEHe-CR.js +968 -0
  370. package/bundled-test-harness/assets/typescript-DLbb7q56.js +2 -0
  371. package/bundled-test-harness/assets/update-room-skills-test-B7VLHU3-.js +197 -0
  372. package/bundled-test-harness/assets/url-test-w-69Zycf.js +103 -0
  373. package/bundled-test-harness/assets/use-ai-assistant-test-DJkFz7_b.js +330 -0
  374. package/bundled-test-harness/assets/validate-realm-test-BioLutB8.js +53 -0
  375. package/bundled-test-harness/assets/vennDiagram-CIIHVFJN-9eLwsQET.js +2833 -0
  376. package/bundled-test-harness/assets/wardley-L42UT6IY-qNP5_917.js +3 -0
  377. package/bundled-test-harness/assets/wardleyDiagram-YWT4CUSO-DZhEm4N4.js +872 -0
  378. package/bundled-test-harness/assets/wav-audio-def-test-DqsTEBw8.js +155 -0
  379. package/bundled-test-harness/assets/webp-image-def-test-23wOLPMu.js +225 -0
  380. package/bundled-test-harness/assets/workspace-chooser-delete-test-Q6S_nGDT.js +189 -0
  381. package/bundled-test-harness/assets/workspace-chooser-test-CzsvY1v_.js +235 -0
  382. package/bundled-test-harness/assets/workspace-delete-multiple-test-BNFHkJpQ.js +213 -0
  383. package/bundled-test-harness/assets/workspace-delete-summary-test-DLzNdjvC.js +63 -0
  384. package/bundled-test-harness/assets/write-binary-file-test-PHHt9fVI.js +100 -0
  385. package/bundled-test-harness/assets/write-text-file-test-DuHe6tR5.js +172 -0
  386. package/bundled-test-harness/assets/xychartDiagram-2RQKCTM6-bflHQbEv.js +2551 -0
  387. package/bundled-test-harness/index.html +24 -23
  388. package/bundled-test-harness/tests/index.html +31 -30
  389. package/bundled-types/base/command.d.ts +48 -0
  390. package/bundled-types/host-app/components/operator-mode/publish-realm-modal.gts +17 -26
  391. package/bundled-types/host-app/lib/published-realm-url.ts +135 -0
  392. package/package.json +2 -2
  393. package/src/build-program.ts +12 -12
  394. package/src/commands/consolidate-workspaces.ts +1 -1
  395. package/src/commands/file/delete.ts +4 -4
  396. package/src/commands/file/index.ts +6 -6
  397. package/src/commands/file/lint.ts +4 -4
  398. package/src/commands/file/list.ts +3 -3
  399. package/src/commands/file/read.ts +3 -3
  400. package/src/commands/file/touch.ts +6 -6
  401. package/src/commands/file/write.ts +3 -3
  402. package/src/commands/lint.ts +6 -6
  403. package/src/commands/parse.ts +6 -6
  404. package/src/commands/profile.ts +4 -4
  405. package/src/commands/read-transpiled.ts +6 -3
  406. package/src/commands/realm/cancel-indexing.ts +3 -3
  407. package/src/commands/realm/create.ts +2 -2
  408. package/src/commands/realm/history.ts +4 -4
  409. package/src/commands/realm/index.ts +15 -15
  410. package/src/commands/realm/indexing-errors.ts +3 -3
  411. package/src/commands/realm/list.ts +2 -2
  412. package/src/commands/realm/milestone.ts +4 -4
  413. package/src/commands/realm/publish.ts +4 -4
  414. package/src/commands/realm/pull.ts +6 -6
  415. package/src/commands/realm/push.ts +7 -7
  416. package/src/commands/realm/remove.ts +3 -3
  417. package/src/commands/realm/status.ts +8 -8
  418. package/src/commands/realm/sync.ts +9 -9
  419. package/src/commands/realm/unpublish.ts +3 -3
  420. package/src/commands/realm/wait-for-ready.ts +2 -2
  421. package/src/commands/realm/watch/index.ts +2 -2
  422. package/src/commands/realm/watch/start.ts +13 -10
  423. package/src/commands/realm/watch/stop.ts +2 -2
  424. package/src/commands/run-command.ts +6 -3
  425. package/src/commands/search.ts +3 -3
  426. package/src/commands/test.ts +5 -5
  427. package/src/index.ts +2 -2
  428. package/src/lib/auth-resolver.ts +3 -3
  429. package/src/lib/boxel-cli-client.ts +18 -15
  430. package/src/lib/checkpoint-manager.ts +1 -1
  431. package/src/lib/find-checkpoint.ts +1 -1
  432. package/src/lib/profile-manager.ts +4 -4
  433. package/src/lib/realm-local-paths.ts +1 -1
  434. package/src/lib/realm-sync-base.ts +1 -1
  435. package/src/lib/seed-auth.ts +1 -1
  436. package/src/lib/sync-logic.ts +1 -1
  437. package/src/lib/watch-process-registry.ts +1 -1
  438. package/bundled-test-harness/assets/adapter-C8oDflNN.js +0 -2
  439. package/bundled-test-harness/assets/add-field-to-card-definition-command-test-Cs670972.js +0 -111
  440. package/bundled-test-harness/assets/add-workspace-test-BviDAUBK.js +0 -71
  441. package/bundled-test-harness/assets/ai-assistant-B5fp2iOz.js +0 -129
  442. package/bundled-test-harness/assets/ai-assistant-panel-service-test-NpHZzZAz.js +0 -95
  443. package/bundled-test-harness/assets/ai-assistant-test-jPV29jEw.js +0 -2137
  444. package/bundled-test-harness/assets/ai-function-generation-test-QRPcE9tQ.js +0 -996
  445. package/bundled-test-harness/assets/ai-module-creation-test-DyuyfnkY.js +0 -150
  446. package/bundled-test-harness/assets/aibot-message-Dwxp5hTW.js +0 -1185
  447. package/bundled-test-harness/assets/amd-transpile-test-CF7Lkbif.js +0 -425
  448. package/bundled-test-harness/assets/app-CgP2IpNG.js +0 -21464
  449. package/bundled-test-harness/assets/apply-boxel-formatting-test-BXyZ3z0I.js +0 -134
  450. package/bundled-test-harness/assets/apply-markdown-edit-test-C6bcaj3a.js +0 -230
  451. package/bundled-test-harness/assets/apply-search-replace-block-test-BSwC4J9g.js +0 -630
  452. package/bundled-test-harness/assets/arc-DNRb_8LA.js +0 -199
  453. package/bundled-test-harness/assets/architecture-7EHR7CIX-BtVh_LBJ.js +0 -3
  454. package/bundled-test-harness/assets/architectureDiagram-3BPJPVTR-D9UYbaKj.js +0 -7400
  455. package/bundled-test-harness/assets/auth-error-guard-test-Bvu8E7Wy.js +0 -30
  456. package/bundled-test-harness/assets/auth-service-worker-test-CC6DzdfK.js +0 -538
  457. package/bundled-test-harness/assets/authed-fetch-test-CfF-IBHI.js +0 -75
  458. package/bundled-test-harness/assets/avif-image-def-test-B9L2z0nR.js +0 -186
  459. package/bundled-test-harness/assets/base-realm-43wjttN2.js +0 -140
  460. package/bundled-test-harness/assets/base-realm-CJ5x9iyX.js +0 -2
  461. package/bundled-test-harness/assets/basic-test-B64a5zCK.js +0 -128
  462. package/bundled-test-harness/assets/bfm-card-references-test-cLQVLpth.js +0 -577
  463. package/bundled-test-harness/assets/binary-upload-dedupe-test-By7Y1iQ3.js +0 -308
  464. package/bundled-test-harness/assets/blockDiagram-GPEHLZMM-LgOorG2O.js +0 -4355
  465. package/bundled-test-harness/assets/bot-registration-test-DOjf0P1R.js +0 -99
  466. package/bundled-test-harness/assets/box-test-Cd1-RcXg.js +0 -51
  467. package/bundled-test-harness/assets/brand-guide-attachments-test-DxRqP8fo.js +0 -87
  468. package/bundled-test-harness/assets/brand-guide-custom-css-test-DBpZiHzJ.js +0 -135
  469. package/bundled-test-harness/assets/brand-logo-mark-field-test-61k4e5Om.js +0 -87
  470. package/bundled-test-harness/assets/broken-link-template-test-A1P4flQ5.js +0 -345
  471. package/bundled-test-harness/assets/browser-index-Bzhpucwe.js +0 -3
  472. package/bundled-test-harness/assets/browser-index-D0mzSWYV.js +0 -8802
  473. package/bundled-test-harness/assets/c4Diagram-AAUBKEIU-1iq94vGa.js +0 -3764
  474. package/bundled-test-harness/assets/cached-fetch-test-ByQ-5OQI.js +0 -93
  475. package/bundled-test-harness/assets/can-read-realm-test-VFLHJdEv.js +0 -58
  476. package/bundled-test-harness/assets/cancel-indexing-job-test-n3Os4ZaX.js +0 -71
  477. package/bundled-test-harness/assets/card-api-test-DvNfLv3V.js +0 -196
  478. package/bundled-test-harness/assets/card-basics-test-CKzZuFdw.js +0 -4895
  479. package/bundled-test-harness/assets/card-catalog-test-JFvkVHED.js +0 -377
  480. package/bundled-test-harness/assets/card-copy-test-iwrFA72s.js +0 -777
  481. package/bundled-test-harness/assets/card-def-field-def-relationships-test-D5s2RH5t.js +0 -560
  482. package/bundled-test-harness/assets/card-def-menu-items-test-XcmkT4NF.js +0 -182
  483. package/bundled-test-harness/assets/card-delete-test-jtAOHk1Y.js +0 -412
  484. package/bundled-test-harness/assets/card-directory-name-test-veQEp5FJ.js +0 -71
  485. package/bundled-test-harness/assets/card-playground-test-P7Ed0tO4.js +0 -1497
  486. package/bundled-test-harness/assets/card-prerender-DXG8cQEv.js +0 -12661
  487. package/bundled-test-harness/assets/card-search-adorn-test-BX0-IJHB.js +0 -128
  488. package/bundled-test-harness/assets/card-search-query-builder-test-D01uixke.js +0 -88
  489. package/bundled-test-harness/assets/card-search-selection-menu-test-DMTeZFmW.js +0 -108
  490. package/bundled-test-harness/assets/channel-BvoW_rbI.js +0 -8
  491. package/bundled-test-harness/assets/check-correctness-test-D7QB1GTo.js +0 -252
  492. package/bundled-test-harness/assets/chunk-2J33WTMH-BbxCvOlt.js +0 -31
  493. package/bundled-test-harness/assets/chunk-3OPIFGDE-DHY3s0oT.js +0 -5548
  494. package/bundled-test-harness/assets/chunk-4BX2VUAB-CRivrLQ6.js +0 -11
  495. package/bundled-test-harness/assets/chunk-4EGX6M5U-qWzlMeqd.js +0 -44
  496. package/bundled-test-harness/assets/chunk-55IACEB6-DOl6NECJ.js +0 -10
  497. package/bundled-test-harness/assets/chunk-5DO6E6H7-scwNnzDb.js +0 -27
  498. package/bundled-test-harness/assets/chunk-5ZQYHXKU-BeETnugr.js +0 -1767
  499. package/bundled-test-harness/assets/chunk-727SXJPM-BlycTxFE.js +0 -3877
  500. package/bundled-test-harness/assets/chunk-AQP2D5EJ-BE3Clw-g.js +0 -2622
  501. package/bundled-test-harness/assets/chunk-BR22UD5L-BTPKlhWA.js +0 -85
  502. package/bundled-test-harness/assets/chunk-BSJP7CBP-BIhtUfvc.js +0 -114
  503. package/bundled-test-harness/assets/chunk-CSCIHK7Q-DnRAp6Bv.js +0 -6144
  504. package/bundled-test-harness/assets/chunk-FHYWG6QK-DpIXIGDC.js +0 -27
  505. package/bundled-test-harness/assets/chunk-FMBD7UC4-B36w3LIg.js +0 -20
  506. package/bundled-test-harness/assets/chunk-KSCS5N6A-gbz9p9BU.js +0 -871
  507. package/bundled-test-harness/assets/chunk-L5ZTLDWV-HNfH9U8K.js +0 -43
  508. package/bundled-test-harness/assets/chunk-LZXEDZCA-CbKHJfzx.js +0 -65
  509. package/bundled-test-harness/assets/chunk-MPE355IW-BGVbCTZH.js +0 -27
  510. package/bundled-test-harness/assets/chunk-MZUSXYTE-DoCjuxcJ.js +0 -36
  511. package/bundled-test-harness/assets/chunk-N66VUXT2-BX17MI-i.js +0 -70
  512. package/bundled-test-harness/assets/chunk-ND2GUHAM-IpeiJZYz.js +0 -93
  513. package/bundled-test-harness/assets/chunk-NZK2D7GU-CH-Gg7qc.js +0 -89
  514. package/bundled-test-harness/assets/chunk-O5CBEL6O-D2JbLgI8.js +0 -2395
  515. package/bundled-test-harness/assets/chunk-PUPMXCY4-DS4ZxM2V.js +0 -27
  516. package/bundled-test-harness/assets/chunk-QZHKN3VN-WLHeRUJ3.js +0 -20
  517. package/bundled-test-harness/assets/chunk-UIBZB4QT-DNIJBpkq.js +0 -27
  518. package/bundled-test-harness/assets/chunk-WCWK7LTN-CqRJ3WOy.js +0 -36
  519. package/bundled-test-harness/assets/chunk-WU5MYG2G-CtItCLbE.js +0 -12
  520. package/bundled-test-harness/assets/chunk-XPW4576I-D2Q7Qo8n.js +0 -2341
  521. package/bundled-test-harness/assets/classDiagram-4FO5ZUOK-CnNFReKQ.js +0 -31
  522. package/bundled-test-harness/assets/classDiagram-v2-Q7XG4LA2-BlhpbohY.js +0 -31
  523. package/bundled-test-harness/assets/code-equality-assertion-C-2g5YGf.js +0 -474
  524. package/bundled-test-harness/assets/code-patches-test-DaV4Mon_.js +0 -1128
  525. package/bundled-test-harness/assets/code-patching-test-CcbWlImN.js +0 -114
  526. package/bundled-test-harness/assets/code-ref-test-8Yj8gbww.js +0 -138
  527. package/bundled-test-harness/assets/code-semantics-service-test-C3srTfDz.js +0 -65
  528. package/bundled-test-harness/assets/code-submode-test-BUhjvWtB.js +0 -1762
  529. package/bundled-test-harness/assets/codeblocks-test-3zAp0_GA.js +0 -492
  530. package/bundled-test-harness/assets/codemirror-context-C7KmSAyy.js +0 -2
  531. package/bundled-test-harness/assets/codemirror-editor-test-WojU4k2h.js +0 -1176
  532. package/bundled-test-harness/assets/color-field-test-yESUakoE.js +0 -213
  533. package/bundled-test-harness/assets/command-definitions-test-UsXsAhn7.js +0 -72
  534. package/bundled-test-harness/assets/commands-CBDBujm_.js +0 -1379
  535. package/bundled-test-harness/assets/commands-calling-test-DJTl0EbL.js +0 -200
  536. package/bundled-test-harness/assets/commands-test-DW2gupNS.js +0 -1041
  537. package/bundled-test-harness/assets/commands-test-DjLnuojW.js +0 -1145
  538. package/bundled-test-harness/assets/computed-test-0n5g8Ez5.js +0 -882
  539. package/bundled-test-harness/assets/container-D8y7fmir.js +0 -14602
  540. package/bundled-test-harness/assets/convert-to-class-name-test-DSIflIV2.js +0 -17
  541. package/bundled-test-harness/assets/copy-and-edit-test-BuK1ZHr-.js +0 -291
  542. package/bundled-test-harness/assets/copy-card-test-DnDC4_7J.js +0 -156
  543. package/bundled-test-harness/assets/copy-file-to-realm-test-CFd_3Iff.js +0 -99
  544. package/bundled-test-harness/assets/copy-source-test-38yUGJor.js +0 -56
  545. package/bundled-test-harness/assets/cose-bilkent-S5V4N54A-DXA1S87S.js +0 -4275
  546. package/bundled-test-harness/assets/create-file-test-B2oem0-V.js +0 -963
  547. package/bundled-test-harness/assets/create-file-test-BHk00RtD.js +0 -397
  548. package/bundled-test-harness/assets/create-listing-modal-test-L-71-Uo2.js +0 -194
  549. package/bundled-test-harness/assets/create-listing-pr-request-CZaLsHhE.js +0 -64
  550. package/bundled-test-harness/assets/create-listing-pr-request-test-OGzk4Q2E.js +0 -117
  551. package/bundled-test-harness/assets/create-spec-test-BsM7VKuH.js +0 -239
  552. package/bundled-test-harness/assets/csv-file-def-test-BhJalhE-.js +0 -101
  553. package/bundled-test-harness/assets/dagre-BIk_r1iU.js +0 -4195
  554. package/bundled-test-harness/assets/dagre-BM42HDAG-FaUWeGOj.js +0 -606
  555. package/bundled-test-harness/assets/date-time-fields-test-Cs5T6Xk1.js +0 -322
  556. package/bundled-test-harness/assets/debug-message-test-WlHe7pJF.js +0 -119
  557. package/bundled-test-harness/assets/diagram-2AECGRRQ-DLve-IVM.js +0 -279
  558. package/bundled-test-harness/assets/diagram-5GNKFQAL-CJG1RTLk.js +0 -142
  559. package/bundled-test-harness/assets/diagram-KO2AKTUF-DYGDq3dD.js +0 -551
  560. package/bundled-test-harness/assets/diagram-LMA3HP47-BNRYdpMl.js +0 -184
  561. package/bundled-test-harness/assets/diagram-OG6HWLK6-BlJH5g83.js +0 -857
  562. package/bundled-test-harness/assets/diffing-test-DO54USSm.js +0 -210
  563. package/bundled-test-harness/assets/dist-BDRmXkWl.js +0 -232
  564. package/bundled-test-harness/assets/dist-BfNSLd0O.js +0 -105
  565. package/bundled-test-harness/assets/dist-BoireClP.js +0 -2
  566. package/bundled-test-harness/assets/editor-test-DChC9LuR.js +0 -551
  567. package/bundled-test-harness/assets/editor.main-BiohyrHK.js +0 -3
  568. package/bundled-test-harness/assets/editor.main-CMU_0pR1.js +0 -43566
  569. package/bundled-test-harness/assets/email-field-test-DWIFSfZ-.js +0 -74
  570. package/bundled-test-harness/assets/enum-field-test-BUc6l4us.js +0 -909
  571. package/bundled-test-harness/assets/erDiagram-TEJ5UH35-pOJ2novh.js +0 -2041
  572. package/bundled-test-harness/assets/error-display-test-CHSE6h6Z.js +0 -343
  573. package/bundled-test-harness/assets/evaluate-module-test-Caa5n0B9.js +0 -66
  574. package/bundled-test-harness/assets/eventmodeling-FCH6USID-B6XXU7R3.js +0 -3
  575. package/bundled-test-harness/assets/execute-atomic-operations-test-CT060oDk.js +0 -75
  576. package/bundled-test-harness/assets/externals-Do1fVZ4j.js +0 -5533
  577. package/bundled-test-harness/assets/extract-css-variables-test-DzjAsMgg.js +0 -169
  578. package/bundled-test-harness/assets/fallback-banner-test-CmxysrDn.js +0 -227
  579. package/bundled-test-harness/assets/fallback-banner-test-DJ4cO8PB.js +0 -53
  580. package/bundled-test-harness/assets/fallback-models-test-r5upJFeA.js +0 -163
  581. package/bundled-test-harness/assets/fetch-card-json-test-Di1wmvy5.js +0 -63
  582. package/bundled-test-harness/assets/fetcher-test-DjzNl_7F.js +0 -85
  583. package/bundled-test-harness/assets/field-configuration-test-C3vr-HhG.js +0 -535
  584. package/bundled-test-harness/assets/field-markdown-domain-test-DG2U4qIm.js +0 -615
  585. package/bundled-test-harness/assets/field-markdown-primitives-test-Bay2v8nT.js +0 -362
  586. package/bundled-test-harness/assets/field-markdown-specialized-test-Bl0Sl4sc.js +0 -527
  587. package/bundled-test-harness/assets/field-path-parser-test-bxxwUjcm.js +0 -387
  588. package/bundled-test-harness/assets/field-playground-test-Bcjfws4m.js +0 -902
  589. package/bundled-test-harness/assets/field-support-predicates-test-DYTqOGvv.js +0 -170
  590. package/bundled-test-harness/assets/field-test-helpers-DYSfSGdh.js +0 -45
  591. package/bundled-test-harness/assets/file-attachment-test-6ypDRDS7.js +0 -635
  592. package/bundled-test-harness/assets/file-chooser-test-mtmcHTFP.js +0 -439
  593. package/bundled-test-harness/assets/file-def-live-reload-test-CX1-lOv6.js +0 -50
  594. package/bundled-test-harness/assets/file-def-manager-DNHII2oj.js +0 -470
  595. package/bundled-test-harness/assets/file-def-manager-canonicalize-test-i_7UVakF.js +0 -451
  596. package/bundled-test-harness/assets/file-def-menu-items-test-Dw458iku.js +0 -114
  597. package/bundled-test-harness/assets/file-def-navigation-test-B3Ztr1Rd.js +0 -109
  598. package/bundled-test-harness/assets/file-def-serialization-test-C_gV8AkU.js +0 -87
  599. package/bundled-test-harness/assets/file-def-test-vXXJmtxX.js +0 -219
  600. package/bundled-test-harness/assets/file-tree-test-BJCiw9jm.js +0 -773
  601. package/bundled-test-harness/assets/flac-audio-def-test-BX3SE1vW.js +0 -138
  602. package/bundled-test-harness/assets/flowDiagram-I6XJVG4X-7Q5ROn4X.js +0 -4883
  603. package/bundled-test-harness/assets/formatted-aibot-message-test-DyqUz2nt.js +0 -366
  604. package/bundled-test-harness/assets/formatted-user-message-test-aqAzqvBP.js +0 -43
  605. package/bundled-test-harness/assets/freestyle-test-CLRrZkAE.js +0 -17
  606. package/bundled-test-harness/assets/full-reindex-realm-test-ClqPVQ0c.js +0 -103
  607. package/bundled-test-harness/assets/ganttDiagram-6RSMTGT7-BkDoIAAE.js +0 -4060
  608. package/bundled-test-harness/assets/garbage-collection-test-Ba2dD3qS.js +0 -373
  609. package/bundled-test-harness/assets/general-test-D0zhs14K.js +0 -926
  610. package/bundled-test-harness/assets/generate-css-variables-test-CKrXSlHs.js +0 -88
  611. package/bundled-test-harness/assets/generate-example-cards-one-shot-test-fSAdGJeT.js +0 -67
  612. package/bundled-test-harness/assets/get-available-realm-identifiers-test-BXMUW65I.js +0 -49
  613. package/bundled-test-harness/assets/get-catalog-realm-identifiers-test-DKEq6Zcq.js +0 -49
  614. package/bundled-test-harness/assets/get-default-writable-realm-test-Dp4nBIRP.js +0 -56
  615. package/bundled-test-harness/assets/get-realm-of-resource-identifier-test-DYNnMgD-.js +0 -55
  616. package/bundled-test-harness/assets/get-relationship-membership-state-test-k9EUNWeq.js +0 -1306
  617. package/bundled-test-harness/assets/get-type-refs-from-filter-test-BPuivF-v.js +0 -136
  618. package/bundled-test-harness/assets/get-user-system-card-test-DSHv00O7.js +0 -52
  619. package/bundled-test-harness/assets/gif-image-def-test-LuDSr5Kz.js +0 -161
  620. package/bundled-test-harness/assets/gitGraph-WXDBUCRP-BrG_LYEh.js +0 -3
  621. package/bundled-test-harness/assets/gitGraphDiagram-PVQCEYII-QJjQcX4J.js +0 -1150
  622. package/bundled-test-harness/assets/gts-file-def-test-bS3ML062.js +0 -99
  623. package/bundled-test-harness/assets/head-format-preview-test-B8IPh71E.js +0 -156
  624. package/bundled-test-harness/assets/helpers-wSIq-bau.js +0 -5
  625. package/bundled-test-harness/assets/host-mode-test-D44nXoQZ.js +0 -391
  626. package/bundled-test-harness/assets/host-submode-test-CefkXg9F.js +0 -904
  627. package/bundled-test-harness/assets/index-query-engine-test-DJnDqmfK.js +0 -2548
  628. package/bundled-test-harness/assets/index-writer-test-BcrCMj37.js +0 -1842
  629. package/bundled-test-harness/assets/indexeddb-crypto-store-RTTNdynf.js +0 -49434
  630. package/bundled-test-harness/assets/info-J43DQDTF-DhDzvz9k.js +0 -3
  631. package/bundled-test-harness/assets/infoDiagram-5YYISTIA-8TmRFIRz.js +0 -23
  632. package/bundled-test-harness/assets/inspector-test-D4iMBlbL.js +0 -1776
  633. package/bundled-test-harness/assets/instance-filter-matcher-test-CYT6N3hN.js +0 -564
  634. package/bundled-test-harness/assets/instantiate-card-test-j1JS5lDe.js +0 -104
  635. package/bundled-test-harness/assets/interact-submode-creation-and-permissions-test-B-aXzOh6.js +0 -497
  636. package/bundled-test-harness/assets/interact-submode-setup-VMwOUl3u.js +0 -558
  637. package/bundled-test-harness/assets/interact-submode-test-D5lNNXdq.js +0 -725
  638. package/bundled-test-harness/assets/invalidate-realm-identifiers-test-71Ze8eGV.js +0 -101
  639. package/bundled-test-harness/assets/invite-user-to-room-test-UfjsvwVp.js +0 -67
  640. package/bundled-test-harness/assets/ishikawaDiagram-YF4QCWOH-7UALIGwM.js +0 -1009
  641. package/bundled-test-harness/assets/isolated-render-test-C2IL-Fz3.js +0 -51
  642. package/bundled-test-harness/assets/item-button-6g7XYj56.js +0 -203
  643. package/bundled-test-harness/assets/javascript-BwLQ7_Nc.js +0 -75
  644. package/bundled-test-harness/assets/job-priority-header-test-C3FfKLPP.js +0 -81
  645. package/bundled-test-harness/assets/journeyDiagram-JHISSGLW-t4gEZYup.js +0 -1256
  646. package/bundled-test-harness/assets/jpg-image-def-test-BTBk9lk5.js +0 -430
  647. package/bundled-test-harness/assets/json-file-def-test-BpU_Eidn.js +0 -92
  648. package/bundled-test-harness/assets/kanban-definition-UN3LZRKU-C_KHB3_r.js +0 -1284
  649. package/bundled-test-harness/assets/last-modified-date-test-fE7IP0q0.js +0 -18
  650. package/bundled-test-harness/assets/limited-set-test-uu2vX1Sv.js +0 -123
  651. package/bundled-test-harness/assets/line-BiZHXOjs.js +0 -55
  652. package/bundled-test-harness/assets/linear-DUaMMmmA.js +0 -417
  653. package/bundled-test-harness/assets/linksto-broken-link-placeholder-test-qZeqQ1gt.js +0 -315
  654. package/bundled-test-harness/assets/linksto-error-sentinel-test-BaV3I8Xx.js +0 -236
  655. package/bundled-test-harness/assets/linksto-many-broken-link-placeholder-test-BvJi1vCb.js +0 -303
  656. package/bundled-test-harness/assets/linksto-many-per-slot-access-test-CK60Cugk.js +0 -301
  657. package/bundled-test-harness/assets/linksto-sentinel-roundtrip-test-BWxdEO9D.js +0 -258
  658. package/bundled-test-harness/assets/linksto-singular-js-access-contract-test-CIsLhqR2.js +0 -194
  659. package/bundled-test-harness/assets/live-prerendered-search-jZe3I16p.js +0 -639
  660. package/bundled-test-harness/assets/live-test-CF_R5WGr.js +0 -2
  661. package/bundled-test-harness/assets/live-test-jO7lXuyB.js +0 -100
  662. package/bundled-test-harness/assets/loader-icon-error-test-N4JYZuTx.js +0 -62
  663. package/bundled-test-harness/assets/loader-parallel-prefetch-test-DteeG7mU.js +0 -257
  664. package/bundled-test-harness/assets/loader-retry-test-DYVgpS_I.js +0 -173
  665. package/bundled-test-harness/assets/loader-test-DLI8JIx-.js +0 -245
  666. package/bundled-test-harness/assets/loading-test-D4ZBtRYf.js +0 -63
  667. package/bundled-test-harness/assets/login-error-text-test-Dcq7q3EY.js +0 -51
  668. package/bundled-test-harness/assets/m4a-audio-def-test-BKqGO-CW.js +0 -185
  669. package/bundled-test-harness/assets/main-BjBdsiQT.js +0 -5
  670. package/bundled-test-harness/assets/markdown-fallback-test-BBj80dZZ.js +0 -316
  671. package/bundled-test-harness/assets/markdown-file-def-test-BnMF5rQF.js +0 -286
  672. package/bundled-test-harness/assets/markdown-helpers-test-DnuuSLfS.js +0 -183
  673. package/bundled-test-harness/assets/markdown-highlighting-test-CWRp2Rce.js +0 -244
  674. package/bundled-test-harness/assets/markdown-preview-test-Bf5OqKGf.js +0 -237
  675. package/bundled-test-harness/assets/markdown-preview-yYHtwNeI.js +0 -69
  676. package/bundled-test-harness/assets/marked-sync-2EfimW4i.js +0 -2
  677. package/bundled-test-harness/assets/marked-sync-DZOVFLjK.js +0 -2561
  678. package/bundled-test-harness/assets/marked-sync-test-BaaYbZNF.js +0 -146
  679. package/bundled-test-harness/assets/matrix-service-sliding-sync-test-CdEy3ASW.js +0 -33
  680. package/bundled-test-harness/assets/mermaid-parser.core-CKNAdXJW.js +0 -114
  681. package/bundled-test-harness/assets/mermaid.core-C0mfwy8A.js +0 -1700
  682. package/bundled-test-harness/assets/message-service-subscription-test-pGz_7rz3.js +0 -113
  683. package/bundled-test-harness/assets/mindmap-definition-RKZ34NQL-ClcHxkdY.js +0 -1347
  684. package/bundled-test-harness/assets/mock-matrix-D7JHfFtT.js +0 -2
  685. package/bundled-test-harness/assets/mock-matrix-DqDbNhEj.js +0 -14292
  686. package/bundled-test-harness/assets/module-transpile-cache-test-D0M-fPxs.js +0 -66
  687. package/bundled-test-harness/assets/monaco.contribution-BEs3qwfd.js +0 -103
  688. package/bundled-test-harness/assets/monaco.contribution-Dpx8UiPl.js +0 -2
  689. package/bundled-test-harness/assets/monaco.contribution-RF_qxJYG.js +0 -2
  690. package/bundled-test-harness/assets/monaco.contribution-jPVrF29f.js +0 -243
  691. package/bundled-test-harness/assets/mp3-audio-def-test-CxeRk1bl.js +0 -129
  692. package/bundled-test-harness/assets/mutex-test-D1xyxTj2.js +0 -71
  693. package/bundled-test-harness/assets/number-field-test-gjAGDy6P.js +0 -153
  694. package/bundled-test-harness/assets/ogg-audio-def-test-B6Ww3Ixr.js +0 -191
  695. package/bundled-test-harness/assets/open-create-listing-modal-test-uN58T3rI.js +0 -117
  696. package/bundled-test-harness/assets/open-workspace-test-DXVsvBFJ.js +0 -48
  697. package/bundled-test-harness/assets/operator-mode-acceptance-test-BxIq2xSS.js +0 -1044
  698. package/bundled-test-harness/assets/operator-mode-card-catalog-test-xFYx9_ng.js +0 -989
  699. package/bundled-test-harness/assets/operator-mode-links-test-qhXWmz-S.js +0 -797
  700. package/bundled-test-harness/assets/operator-mode-state-service-test-BdA_uvaY.js +0 -122
  701. package/bundled-test-harness/assets/operator-mode-test-D3EyTwq3.js +0 -617
  702. package/bundled-test-harness/assets/operator-mode-ui-test-CSrk6Q0A.js +0 -985
  703. package/bundled-test-harness/assets/ordinal-DO1mUmjg.js +0 -85
  704. package/bundled-test-harness/assets/overlay-menu-items-test-CuqqLsQT.js +0 -316
  705. package/bundled-test-harness/assets/packet-YPE3B663--JkMNy78.js +0 -3
  706. package/bundled-test-harness/assets/panel-C2rtbx32.js +0 -3371
  707. package/bundled-test-harness/assets/past-sessions-test-B9SCbbXz.js +0 -316
  708. package/bundled-test-harness/assets/patch-code-test-CcFr9pDb.js +0 -203
  709. package/bundled-test-harness/assets/patch-fields-test-BW1gzcJM.js +0 -992
  710. package/bundled-test-harness/assets/patch-instance-test-DKqA9gQ6.js +0 -287
  711. package/bundled-test-harness/assets/persist-module-inspector-view-test-D1eKBUkt.js +0 -62
  712. package/bundled-test-harness/assets/phone-number-field-test-D1is5RWv.js +0 -72
  713. package/bundled-test-harness/assets/pie-LRSECV5Y-BDVv8Wdy.js +0 -3
  714. package/bundled-test-harness/assets/pieDiagram-4H26LBE5-CSYI-nMz.js +0 -253
  715. package/bundled-test-harness/assets/plan-install-test-DB-PrjPR.js +0 -417
  716. package/bundled-test-harness/assets/playground-B0iQV7dU.js +0 -57
  717. package/bundled-test-harness/assets/png-image-def-test-DnOsJGs6.js +0 -222
  718. package/bundled-test-harness/assets/prerender-file-extract-test-DhOLozj2.js +0 -176
  719. package/bundled-test-harness/assets/prerender-html-test-DKVhQZA9.js +0 -615
  720. package/bundled-test-harness/assets/prerender-meta-test-CnRNyqSz.js +0 -388
  721. package/bundled-test-harness/assets/prerender-module-test-D163QcrZ.js +0 -195
  722. package/bundled-test-harness/assets/prerendered-card-search-test-DX-8yabJ.js +0 -708
  723. package/bundled-test-harness/assets/preview-format-test-H7bnpdlC.js +0 -103
  724. package/bundled-test-harness/assets/preview-test-B7u6uWJR.js +0 -455
  725. package/bundled-test-harness/assets/qs-test-COb0mre6.js +0 -36
  726. package/bundled-test-harness/assets/quadrantDiagram-W4KKPZXB-2Y2ben29.js +0 -2324
  727. package/bundled-test-harness/assets/query-field-barrier-test-Cypj-MhK.js +0 -118
  728. package/bundled-test-harness/assets/query-field-error-sentinel-test-Dnqn8TdN.js +0 -202
  729. package/bundled-test-harness/assets/query-field-normalization-test-B7D8SHBP.js +0 -271
  730. package/bundled-test-harness/assets/query-field-schema-test-DIYY3-c8.js +0 -231
  731. package/bundled-test-harness/assets/query-fields-test-k-VBF9PE.js +0 -535
  732. package/bundled-test-harness/assets/queue-test-B_74vXZE.js +0 -216
  733. package/bundled-test-harness/assets/radar-GUYGQ44K-Cn2A0VBR.js +0 -3
  734. package/bundled-test-harness/assets/read-card-for-ai-assistant-test-SyL9F_La.js +0 -91
  735. package/bundled-test-harness/assets/read-file-for-ai-assistant-test-nLPp49U2.js +0 -45
  736. package/bundled-test-harness/assets/read-source-test-DBELJkhN.js +0 -67
  737. package/bundled-test-harness/assets/read-text-file-test-CP1JuWlX.js +0 -124
  738. package/bundled-test-harness/assets/realm-Dr4iygv_.js +0 -884
  739. package/bundled-test-harness/assets/realm-field-test-Cice2mYk.js +0 -101
  740. package/bundled-test-harness/assets/realm-index-card-id-test-BzpozdWc.js +0 -18
  741. package/bundled-test-harness/assets/realm-indexing-test-C0YSXziR.js +0 -4018
  742. package/bundled-test-harness/assets/realm-paths-test-DV_g07rF.js +0 -33
  743. package/bundled-test-harness/assets/realm-querying-test-B526abM0.js +0 -1062
  744. package/bundled-test-harness/assets/realm-test-D8UN5X-w.js +0 -2409
  745. package/bundled-test-harness/assets/reasoning-test-ClIOvdkX.js +0 -234
  746. package/bundled-test-harness/assets/recent-files-test-C2J_dJUD.js +0 -449
  747. package/bundled-test-harness/assets/reindex-realm-test-DMphy1g6.js +0 -119
  748. package/bundled-test-harness/assets/relationship-loading-state-test-BWrZdLlZ.js +0 -289
  749. package/bundled-test-harness/assets/render-component-BII_KnyK.js +0 -2
  750. package/bundled-test-harness/assets/render-error-test-BUAJJlUi.js +0 -22
  751. package/bundled-test-harness/assets/render-service-test-BKkCjErY.js +0 -87
  752. package/bundled-test-harness/assets/render-timer-stub-test-TUDMWJ8v.js +0 -84
  753. package/bundled-test-harness/assets/rendered-markdown-ColekGTF.js +0 -211
  754. package/bundled-test-harness/assets/rendered-markdown-test-B4CWIo02.js +0 -360
  755. package/bundled-test-harness/assets/requirementDiagram-4Y6WPE33-CTICatxk.js +0 -2550
  756. package/bundled-test-harness/assets/rich-markdown-field-test-B5u6D3Nk.js +0 -806
  757. package/bundled-test-harness/assets/room-message-test-0eJSqQfu.js +0 -171
  758. package/bundled-test-harness/assets/rust-crypto-B0m3j_yZ.js +0 -16141
  759. package/bundled-test-harness/assets/sanitize-module-list-test-rH6OqjKh.js +0 -68
  760. package/bundled-test-harness/assets/sankeyDiagram-5OEKKPKP-hBIg6-LP.js +0 -1357
  761. package/bundled-test-harness/assets/schema-editor-test-DH4MLFCD.js +0 -784
  762. package/bundled-test-harness/assets/schema-generation-test-BZMkX7VA.js +0 -28
  763. package/bundled-test-harness/assets/scrolling-test-CFTyLG8X.js +0 -292
  764. package/bundled-test-harness/assets/search-and-choose-test-CcbVyp4c.js +0 -156
  765. package/bundled-test-harness/assets/search-cache-key-test-BYt46iNT.js +0 -79
  766. package/bundled-test-harness/assets/search-command-test-BRIJPr54.js +0 -135
  767. package/bundled-test-harness/assets/search-correlation-id-test-B298Tfux.js +0 -101
  768. package/bundled-test-harness/assets/search-data-test-DHV2Fd4S.js +0 -243
  769. package/bundled-test-harness/assets/search-google-images-test-CNrazllP.js +0 -168
  770. package/bundled-test-harness/assets/search-in-flight-key-test-Dy3bU2c1.js +0 -79
  771. package/bundled-test-harness/assets/search-test-DL1-gD-G.js +0 -847
  772. package/bundled-test-harness/assets/send-ai-assistant-message-test-CyEkQ5pD.js +0 -52
  773. package/bundled-test-harness/assets/send-bot-trigger-event-test-CAsK28m-.js +0 -56
  774. package/bundled-test-harness/assets/send-request-via-proxy-test-DpMlRvPv.js +0 -333
  775. package/bundled-test-harness/assets/sending-test-BOeGYcTU.js +0 -317
  776. package/bundled-test-harness/assets/sequenceDiagram-3UESZ5HK-DQMiI040.js +0 -5551
  777. package/bundled-test-harness/assets/serialization-test-gY2QQVxS.js +0 -8283
  778. package/bundled-test-harness/assets/set-user-system-card-test-BE3y5GNK.js +0 -59
  779. package/bundled-test-harness/assets/setup-B8O9JQKq.js +0 -769
  780. package/bundled-test-harness/assets/setup-BMqGUBDK.js +0 -2
  781. package/bundled-test-harness/assets/show-card-test-BfJNnWMy.js +0 -362
  782. package/bundled-test-harness/assets/skills-test-CqhnZxBi.js +0 -568
  783. package/bundled-test-harness/assets/spec-test-BUKNn_1q.js +0 -1012
  784. package/bundled-test-harness/assets/stateDiagram-AJRCARHV-BoOij2yt.js +0 -363
  785. package/bundled-test-harness/assets/stateDiagram-v2-BHNVJYJU-Dosil5p2.js +0 -29
  786. package/bundled-test-harness/assets/store-add-test-BR1M-IDR.js +0 -52
  787. package/bundled-test-harness/assets/store-test-DaqI-HRh.js +0 -1562
  788. package/bundled-test-harness/assets/summarize-session-test-BMg54JGF.js +0 -169
  789. package/bundled-test-harness/assets/svg-image-def-test-xNyIKRPV.js +0 -164
  790. package/bundled-test-harness/assets/switch-submode-test-BKvpODUD.js +0 -168
  791. package/bundled-test-harness/assets/test-realm-service-worker-DK4SmTM5.js +0 -73
  792. package/bundled-test-harness/assets/tests-x4_eRjiT.js +0 -2770
  793. package/bundled-test-harness/assets/text-file-def-test-CsXiyVfI.js +0 -93
  794. package/bundled-test-harness/assets/text-input-validator-test-D4s_laO7.js +0 -155
  795. package/bundled-test-harness/assets/text-suggestion-test-CkLf1xuS.js +0 -339
  796. package/bundled-test-harness/assets/theme-card-test-D-6L6OfD.js +0 -573
  797. package/bundled-test-harness/assets/timeline-definition-PNZ67QCA-DD2d81uJ.js +0 -1545
  798. package/bundled-test-harness/assets/transform-cards-test-CRZF2gqZ.js +0 -341
  799. package/bundled-test-harness/assets/treeView-BLDUP644-CUm8wuM-.js +0 -3
  800. package/bundled-test-harness/assets/treemap-LRROVOQU-lbLrY2PE.js +0 -3
  801. package/bundled-test-harness/assets/ts-file-def-test-CDo6ojCf.js +0 -90
  802. package/bundled-test-harness/assets/tsMode-BPQoRibc.js +0 -968
  803. package/bundled-test-harness/assets/typescript-BaU6yDhK.js +0 -2
  804. package/bundled-test-harness/assets/update-room-skills-test-BnSgVFwT.js +0 -197
  805. package/bundled-test-harness/assets/url-test-CK-HB0qu.js +0 -103
  806. package/bundled-test-harness/assets/use-ai-assistant-test-BuJXEP8H.js +0 -330
  807. package/bundled-test-harness/assets/validate-realm-test-Cx7MOtS8.js +0 -53
  808. package/bundled-test-harness/assets/vennDiagram-CIIHVFJN-DtXtzGwZ.js +0 -2833
  809. package/bundled-test-harness/assets/wardley-L42UT6IY-D8aCp_Ox.js +0 -3
  810. package/bundled-test-harness/assets/wardleyDiagram-YWT4CUSO-D-73g3bB.js +0 -872
  811. package/bundled-test-harness/assets/wav-audio-def-test-DIo2GzQL.js +0 -155
  812. package/bundled-test-harness/assets/webp-image-def-test-BQsV0_De.js +0 -225
  813. package/bundled-test-harness/assets/workspace-chooser-delete-test-peDXmnQf.js +0 -189
  814. package/bundled-test-harness/assets/workspace-chooser-test-DS2RtTEF.js +0 -235
  815. package/bundled-test-harness/assets/workspace-delete-multiple-test-DTbjRSzN.js +0 -213
  816. package/bundled-test-harness/assets/workspace-delete-summary-test-B--ink4m.js +0 -63
  817. package/bundled-test-harness/assets/write-binary-file-test-A3TQ5lFn.js +0 -100
  818. package/bundled-test-harness/assets/write-text-file-test-D_rjNDsT.js +0 -172
  819. package/bundled-test-harness/assets/xychartDiagram-2RQKCTM6-D1aoqDp-.js +0 -2551
  820. /package/bundled-test-harness/assets/{abap-CLdVBGqB.js → abap-FZAuBTMl.js} +0 -0
  821. /package/bundled-test-harness/assets/{apex-DV8eHjgQ.js → apex-CAO3qFTc.js} +0 -0
  822. /package/bundled-test-harness/assets/{array-DsDWWqmW.js → array-CRfHnEm4.js} +0 -0
  823. /package/bundled-test-harness/assets/{azcli-C4pZYsiJ.js → azcli-Bnu7jG0Y.js} +0 -0
  824. /package/bundled-test-harness/assets/{bat-DBoaeFpB.js → bat-DdE54Pqq.js} +0 -0
  825. /package/bundled-test-harness/assets/{bicep-VlrJhbeK.js → bicep-Dp4vFp3K.js} +0 -0
  826. /package/bundled-test-harness/assets/{cameligo-jyzrvLUm.js → cameligo-Cym4x98m.js} +0 -0
  827. /package/bundled-test-harness/assets/{chunk-NNHCCRGN-Be15HUz2.js → chunk-NNHCCRGN-PWOfDYpb.js} +0 -0
  828. /package/bundled-test-harness/assets/{clojure-bzahmEtz.js → clojure-B47IJ25u.js} +0 -0
  829. /package/bundled-test-harness/assets/{codemirror-context-BauLYUNt.js → codemirror-context-oJy03XqC.js} +0 -0
  830. /package/bundled-test-harness/assets/{coffee-CMADdzOH.js → coffee-CZlkBXT8.js} +0 -0
  831. /package/bundled-test-harness/assets/{cpp-CEJwzcLE.js → cpp-mX4KaA7p.js} +0 -0
  832. /package/bundled-test-harness/assets/{csharp-XYqm0UE0.js → csharp-C-OeDGwk.js} +0 -0
  833. /package/bundled-test-harness/assets/{csp-82fNWQc2.js → csp-AS2OEE8R.js} +0 -0
  834. /package/bundled-test-harness/assets/{css-B5b0ooFS.js → css-C-TQxhWe.js} +0 -0
  835. /package/bundled-test-harness/assets/{cssMode-DTKuqAkO.js → cssMode-C87GnEsk.js} +0 -0
  836. /package/bundled-test-harness/assets/{cypher-Df9GkdDY.js → cypher-T6F_0eIM.js} +0 -0
  837. /package/bundled-test-harness/assets/{cytoscape.esm-D0iwZ9Jj.js → cytoscape.esm-Bc2V-MhP.js} +0 -0
  838. /package/bundled-test-harness/assets/{dart-C4JY9dMc.js → dart-DzVesk0n.js} +0 -0
  839. /package/bundled-test-harness/assets/{defaultLocale-BtLxQtxy.js → defaultLocale-CAoL4lzt.js} +0 -0
  840. /package/bundled-test-harness/assets/{dist-D-PuK2H3.js → dist-BZ5MfZEJ.js} +0 -0
  841. /package/bundled-test-harness/assets/{dockerfile-Ck0tNttO.js → dockerfile-BH0_bQxC.js} +0 -0
  842. /package/bundled-test-harness/assets/{ecl-BpeXqJR_.js → ecl-KIxjxrJo.js} +0 -0
  843. /package/bundled-test-harness/assets/{elixir-HmBzrXaX.js → elixir-CPPdtCW1.js} +0 -0
  844. /package/bundled-test-harness/assets/{flow9-DhsfsDhH.js → flow9-Dxho7Ldf.js} +0 -0
  845. /package/bundled-test-harness/assets/{freemarker2-D3Yd6nGl.js → freemarker2-DP1aOr3_.js} +0 -0
  846. /package/bundled-test-harness/assets/{fsharp-D56OprHc.js → fsharp-ozN53Joe.js} +0 -0
  847. /package/bundled-test-harness/assets/{go-BITsFLfX.js → go-DPj6Rbqe.js} +0 -0
  848. /package/bundled-test-harness/assets/{graphlib-qkaQhadO.js → graphlib-DOITgaas.js} +0 -0
  849. /package/bundled-test-harness/assets/{graphql-CJJVsEX1.js → graphql-C8_-AnBG.js} +0 -0
  850. /package/bundled-test-harness/assets/{handlebars-Dvw6QbL7.js → handlebars-B2gYBZpU.js} +0 -0
  851. /package/bundled-test-harness/assets/{hcl-DSTZcJuq.js → hcl-r3d7BhXB.js} +0 -0
  852. /package/bundled-test-harness/assets/{helpers-D_JZYUOQ.js → helpers-CItTycq2.js} +0 -0
  853. /package/bundled-test-harness/assets/{html-Bik3qLmc.js → html-DhN1Nxr0.js} +0 -0
  854. /package/bundled-test-harness/assets/{htmlMode-DPCaR3Ab.js → htmlMode-BnBg5hCh.js} +0 -0
  855. /package/bundled-test-harness/assets/{ini-li-kC8ZU.js → ini-CzzRigmS.js} +0 -0
  856. /package/bundled-test-harness/assets/{init-Bq7IGMcH.js → init-Bd2YUhsG.js} +0 -0
  857. /package/bundled-test-harness/assets/{java-CETpuNN7.js → java-BgeDsIoV.js} +0 -0
  858. /package/bundled-test-harness/assets/{jsonMode-CZ3hOG-W.js → jsonMode-sRb0gsB8.js} +0 -0
  859. /package/bundled-test-harness/assets/{julia-hgihs1aN.js → julia-u3K1H5Ts.js} +0 -0
  860. /package/bundled-test-harness/assets/{katex-DqhsSYO4.js → katex-CHY7BUZt.js} +0 -0
  861. /package/bundled-test-harness/assets/{kotlin-CKfyb82K.js → kotlin-DfqmlJ10.js} +0 -0
  862. /package/bundled-test-harness/assets/{less-xB5yXbw8.js → less-CSzH7DPY.js} +0 -0
  863. /package/bundled-test-harness/assets/{lexon-BLwrXVrI.js → lexon-DwPTpxXt.js} +0 -0
  864. /package/bundled-test-harness/assets/{liquid-Bf2lpknJ.js → liquid-95J9g5Vk.js} +0 -0
  865. /package/bundled-test-harness/assets/{lua-Ch5i3IrF.js → lua-CGw6zbeh.js} +0 -0
  866. /package/bundled-test-harness/assets/{m3-D5tNlhaF.js → m3-BfgwloGF.js} +0 -0
  867. /package/bundled-test-harness/assets/{markdown-Dzc9uMky.js → markdown-RZRK7Mc9.js} +0 -0
  868. /package/bundled-test-harness/assets/{mdx-xsI4TJrf.js → mdx-BYD-W2sn.js} +0 -0
  869. /package/bundled-test-harness/assets/{mips-CmdzHkQm.js → mips-DAySN5Lp.js} +0 -0
  870. /package/bundled-test-harness/assets/{msdax-CAZvxB9E.js → msdax-Cy0COjTJ.js} +0 -0
  871. /package/bundled-test-harness/assets/{mysql-CyVS-z5H.js → mysql-CfGw9jyw.js} +0 -0
  872. /package/bundled-test-harness/assets/{objective-c-CCG8cTc_.js → objective-c-B4uU-8T-.js} +0 -0
  873. /package/bundled-test-harness/assets/{pascal-c8B45FOC.js → pascal-CGDuZzXi.js} +0 -0
  874. /package/bundled-test-harness/assets/{pascaligo-CCqwSqBv.js → pascaligo-eg02k4VJ.js} +0 -0
  875. /package/bundled-test-harness/assets/{path-CsS38UoK.js → path-Dxiz9G2t.js} +0 -0
  876. /package/bundled-test-harness/assets/{perl-JUICYbO2.js → perl-BiT-JJJw.js} +0 -0
  877. /package/bundled-test-harness/assets/{pgsql-aNRiL0Cg.js → pgsql-DAMjrVBF.js} +0 -0
  878. /package/bundled-test-harness/assets/{php-B0YZj_Vw.js → php-kOSUYQyc.js} +0 -0
  879. /package/bundled-test-harness/assets/{pla-D3Zb3KCn.js → pla-BShYV-HC.js} +0 -0
  880. /package/bundled-test-harness/assets/{postiats-ks1KABlA.js → postiats-9Xamd4W2.js} +0 -0
  881. /package/bundled-test-harness/assets/{powerquery-D35K_osc.js → powerquery-l2Nw525Q.js} +0 -0
  882. /package/bundled-test-harness/assets/{powershell-DXQo6KTk.js → powershell-B5rdEn86.js} +0 -0
  883. /package/bundled-test-harness/assets/{protobuf-CFDvn49_.js → protobuf-DjFcruCV.js} +0 -0
  884. /package/bundled-test-harness/assets/{pug-CGdWzJm1.js → pug-d79Nz4-Z.js} +0 -0
  885. /package/bundled-test-harness/assets/{python-BHLYjYlP.js → python-d8oxFZIM.js} +0 -0
  886. /package/bundled-test-harness/assets/{qsharp-BIq3i63T.js → qsharp-CeTlfxZW.js} +0 -0
  887. /package/bundled-test-harness/assets/{qunit-2hoQyeAZ.js → qunit-Cqwmt9Vl.js} +0 -0
  888. /package/bundled-test-harness/assets/{r-CBvzvDSA.js → r-BOu7JTro.js} +0 -0
  889. /package/bundled-test-harness/assets/{razor-JQ0RiIvo.js → razor-ZatoG_Is.js} +0 -0
  890. /package/bundled-test-harness/assets/{recent-files-cards-BQMviQb1.js → recent-files-cards-C3vIjaKb.js} +0 -0
  891. /package/bundled-test-harness/assets/{redis-BmSHTqTU.js → redis-DdXYPyQE.js} +0 -0
  892. /package/bundled-test-harness/assets/{redshift-B1NmQEH7.js → redshift-DswnW-YX.js} +0 -0
  893. /package/bundled-test-harness/assets/{render-component-g_fhz2dX.js → render-component-Bs21y6iv.js} +0 -0
  894. /package/bundled-test-harness/assets/{restructuredtext-Br9BtTbk.js → restructuredtext-C75vUmvX.js} +0 -0
  895. /package/bundled-test-harness/assets/{rough.esm-D8VnzNsL.js → rough.esm-B83ARgx6.js} +0 -0
  896. /package/bundled-test-harness/assets/{ruby-D9_-y1I3.js → ruby-D77950a-.js} +0 -0
  897. /package/bundled-test-harness/assets/{rust-1Jjr1EOs.js → rust-C_G4PKsG.js} +0 -0
  898. /package/bundled-test-harness/assets/{sb-X2JE4zEr.js → sb-Cz3P8_Gp.js} +0 -0
  899. /package/bundled-test-harness/assets/{scala-qFJERKkR.js → scala-DYqUg04P.js} +0 -0
  900. /package/bundled-test-harness/assets/{scheme-D-WJPStO.js → scheme-B31XEGu5.js} +0 -0
  901. /package/bundled-test-harness/assets/{scss-DysfZiXA.js → scss-CtvB8On5.js} +0 -0
  902. /package/bundled-test-harness/assets/{shell-C0Iu3NNJ.js → shell-C2QqpcPN.js} +0 -0
  903. /package/bundled-test-harness/assets/{solidity-Bato3Qrk.js → solidity-FHrhZFd-.js} +0 -0
  904. /package/bundled-test-harness/assets/{sophia-DI0cKdK8.js → sophia-Cxv5FOXb.js} +0 -0
  905. /package/bundled-test-harness/assets/{sparql-BTJMtwoD.js → sparql-CgGkGeQB.js} +0 -0
  906. /package/bundled-test-harness/assets/{sql-R6uHqFYU.js → sql-S6Dos2P0.js} +0 -0
  907. /package/bundled-test-harness/assets/{src-CdPyB7gY.js → src-CvuaVSsl.js} +0 -0
  908. /package/bundled-test-harness/assets/{st-CoyBvq37.js → st-Bfa7LAWp.js} +0 -0
  909. /package/bundled-test-harness/assets/{swift-Bj-haAlF.js → swift-BQD5Ef-A.js} +0 -0
  910. /package/bundled-test-harness/assets/{systemverilog-B-x1NEFI.js → systemverilog-DaNkPux4.js} +0 -0
  911. /package/bundled-test-harness/assets/{tcl-DAUdSQgz.js → tcl-gOPgCDyb.js} +0 -0
  912. /package/bundled-test-harness/assets/{test-support-BHjxBpDK.js → test-support-BEQX5x9U.js} +0 -0
  913. /package/bundled-test-harness/assets/{test-support-yKvYEh-u.js → test-support-BL4XKobD.js} +0 -0
  914. /package/bundled-test-harness/assets/{twig-B0sJ-GzS.js → twig-Bk4gPn5b.js} +0 -0
  915. /package/bundled-test-harness/assets/{typescript-DTMIM5Gl.js → typescript-pPYlxWzr.js} +0 -0
  916. /package/bundled-test-harness/assets/{typespec-6yo9VQxY.js → typespec-D9Zz743B.js} +0 -0
  917. /package/bundled-test-harness/assets/{vb-Bh2IfdtJ.js → vb-ziqHIsJV.js} +0 -0
  918. /package/bundled-test-harness/assets/{view-card-demo-U_AOj-RK.js → view-card-demo-CSIVYD3T.js} +0 -0
  919. /package/bundled-test-harness/assets/{wgsl-DsvJnCCt.js → wgsl-BXiwkiJL.js} +0 -0
  920. /package/bundled-test-harness/assets/{xml-CisPXcjD.js → xml-a_tUOik-.js} +0 -0
  921. /package/bundled-test-harness/assets/{yaml-DkHUoYI5.js → yaml-B3H8LDzK.js} +0 -0
@@ -1,2409 +0,0 @@
1
- import { s as __toESM } from "./chunk-CGdGNDIi.js";
2
- import { r as initializeDeferredDecorator, t as decorateFieldV2 } from "./runtime-CYyqkz5q-z3Y1hsJm.js";
3
- import { Ir as isSingleCardDocument, Xn as testRealmInfo, Zn as testRealmURL, ua as rri, vi as baseRealm } from "./runtime-common-C7uLt5dN.js";
4
- import { l as validate } from "./esm-browser-BEW1xlQc.js";
5
- import { $n as setComponentTemplate } from "./service-DJ87xpDt.js";
6
- import { V as templateFactory } from "./index-DaCZcoCY-D2gI_aMw.js";
7
- import "./template-D3TMIrc1.js";
8
- import "./template-factory-DMEv2kVd.js";
9
- import { t as require_qunit } from "./qunit-2hoQyeAZ.js";
10
- import { r as getService } from "./dist-BfNSLd0O.js";
11
- import { A as setupIntegrationTestRealm, O as setupCardLogs, R as testModuleRealm, d as cardInfo, j as setupLocalIndexing, rt as setupRenderingTest, t as setupMockMatrix, w as realmConfigCardJSON, y as getFileCreatedAt } from "./mock-matrix-DqDbNhEj.js";
12
- import { G as contains, I as StringField, K as containsMany, Q as field, a as CardDef, b as FieldDef, d as Component, lt as linksTo, mt as setupBaseRealm, ut as linksToMany } from "./base-realm-43wjttN2.js";
13
- import "./code-equality-assertion-C-2g5YGf.js";
14
- //#region ../runtime-common/etc/test-fixtures.ts
15
- var import_qunit = /* @__PURE__ */ __toESM(require_qunit());
16
- var cardSrc = `
17
- import {
18
- contains,
19
- field,
20
- Component,
21
- CardDef,
22
- } from 'https://cardstack.com/base/card-api';
23
- import StringField from 'https://cardstack.com/base/string';
24
-
25
- export class Person extends CardDef {
26
- static displayName = 'Person';
27
- @field firstName = contains(StringField);
28
- @field cardTitle = contains(StringField, {
29
- computeVia: function (this: Person) {
30
- return this.firstName;
31
- },
32
- });
33
- static isolated = class Isolated extends Component<typeof this> {
34
- <template>
35
- <h1 data-test-card><@fields.firstName /></h1>
36
- </template>
37
- };
38
- }
39
-
40
- export let counter = 0;
41
- export function increment() {
42
- counter++;
43
- }
44
- `.trim();
45
- function compiledCard(id = "null", moduleName = "/dir/person.gts") {
46
- return `
47
- import { contains, field, Component, CardDef } from 'https://cardstack.com/base/card-api';
48
- import StringField from 'https://cardstack.com/base/string';
49
- import { setComponentTemplate } from "@ember/component";
50
- import { createTemplateFactory } from "@ember/template-factory";
51
- export class Person extends CardDef {
52
- static displayName = 'Person';
53
- static {
54
- dt7948.g(this.prototype, "firstName", [field], function () {
55
- return contains(StringField);
56
- });
57
- }
58
- #firstName = (dt7948.i(this, "firstName"), void 0);
59
- static {
60
- dt7948.g(this.prototype, "cardTitle", [field], function () {
61
- return contains(StringField, {
62
- computeVia: function () {
63
- return this.firstName;
64
- }
65
- });
66
- });
67
- }
68
- #cardTitle = (dt7948.i(this, "cardTitle"), void 0);
69
- static isolated = class Isolated extends Component {
70
- static {
71
- setComponentTemplate(createTemplateFactory(
72
- /*
73
- <h1 data-test-card><@fields.firstName /></h1>
74
- */
75
- {
76
- "id": ${id},
77
- "block": "[[[10,\\"h1\\"],[14,\\"data-test-card\\",\\"\\"],[12],[8,[30,1,[\\"firstName\\"]],null,null,null],[13]],[\\"@fields\\"],[]]",
78
- "moduleName": "${moduleName}",
79
- "isStrictMode": true
80
- }), this);
81
- }
82
- };}
83
- export let counter = 0;
84
- export function increment() {
85
- counter++;
86
- }`.trim();
87
- }
88
- //#endregion
89
- //#region ../runtime-common/helpers/strip-scoped-css-glimmer-attributes.ts
90
- function stripScopedCSSGlimmerAttributes(compiledTemplateString) {
91
- let attributeArray = `\\[(14|24),\\\\"data\\-scopedcss\\-[0-9a-f]{10}\\-[0-9a-f]{10}\\\\",\\\\"\\\\"\\]`;
92
- let double = new RegExp(`\\[${attributeArray}\\]`, "g");
93
- let single = new RegExp(`${attributeArray},`, "g");
94
- return compiledTemplateString.replace(double, "null").replace(single, "");
95
- }
96
- //#endregion
97
- //#region tests/integration/realm-test.gts
98
- var loader;
99
- (0, import_qunit.module)("Integration | realm", function(hooks) {
100
- setupRenderingTest(hooks);
101
- setupBaseRealm(hooks);
102
- hooks.beforeEach(function() {
103
- loader = getService("loader-service").loader;
104
- });
105
- let mockMatrixUtils = setupMockMatrix(hooks);
106
- setupLocalIndexing(hooks);
107
- setupCardLogs(hooks, async () => await loader.import(`${baseRealm.url}card-api`));
108
- async function handle(realm, ...args) {
109
- let result = await realm.handle(...args);
110
- if (!result) throw new Error(`realm didn't handle request`);
111
- return result;
112
- }
113
- (0, import_qunit.test)("realm can serve GET card requests", async function(assert) {
114
- let { realm, adapter } = await setupIntegrationTestRealm({
115
- mockMatrixUtils,
116
- contents: { "dir/empty.json": { data: { meta: { adoptsFrom: {
117
- module: "https://cardstack.com/base/card-api",
118
- name: "CardDef"
119
- } } } } }
120
- });
121
- let response = await handle(realm, new Request(`${testRealmURL}dir/empty`, { headers: { Accept: "application/vnd.card+json" } }));
122
- assert.strictEqual(response.status, 200, "successful http status");
123
- let json = await response.json();
124
- let resourceCreatedAt = await getFileCreatedAt(realm, "dir/empty.json");
125
- assert.deepEqual(json, { data: {
126
- type: "card",
127
- id: `${testRealmURL}dir/empty`,
128
- attributes: {
129
- cardInfo,
130
- cardDescription: null,
131
- cardThumbnailURL: null,
132
- cardTitle: "Untitled Card"
133
- },
134
- relationships: { "cardInfo.theme": { links: { self: null } } },
135
- meta: {
136
- adoptsFrom: {
137
- module: "https://cardstack.com/base/card-api",
138
- name: "CardDef"
139
- },
140
- lastModified: adapter.lastModifiedMap.get(`${testRealmURL}dir/empty.json`),
141
- resourceCreatedAt,
142
- realmInfo: testRealmInfo,
143
- realmURL: testRealmURL
144
- },
145
- links: { self: `${testRealmURL}dir/empty` }
146
- } });
147
- assert.ok(json.data.meta.lastModified, "lastModified is populated");
148
- });
149
- (0, import_qunit.test)("realm can serve GET card requests with linksTo relationships", async function(assert) {
150
- let { realm, adapter } = await setupIntegrationTestRealm({
151
- mockMatrixUtils,
152
- contents: {
153
- "dir/owner.json": { data: {
154
- id: `${testRealmURL}dir/owner`,
155
- attributes: {
156
- firstName: "Hassan",
157
- lastName: "Abdel-Rahman",
158
- cardInfo,
159
- cardDescription: null,
160
- cardThumbnailURL: null
161
- },
162
- relationships: { "cardInfo.theme": { links: { self: null } } },
163
- meta: { adoptsFrom: {
164
- module: "https://localhost:4202/test/person",
165
- name: "Person"
166
- } }
167
- } },
168
- "dir/mango.json": { data: {
169
- id: `${testRealmURL}dir/mango`,
170
- attributes: {
171
- firstName: "Mango",
172
- cardInfo,
173
- cardDescription: null,
174
- cardThumbnailURL: null
175
- },
176
- relationships: {
177
- owner: { links: { self: `${testRealmURL}dir/owner` } },
178
- "cardInfo.theme": { links: { self: null } }
179
- },
180
- meta: { adoptsFrom: {
181
- module: "https://localhost:4202/test/pet",
182
- name: "Pet"
183
- } }
184
- } }
185
- }
186
- });
187
- let response = await handle(realm, new Request(`${testRealmURL}dir/mango`, { headers: { Accept: "application/vnd.card+json" } }));
188
- assert.strictEqual(response.status, 200, "successful http status");
189
- let json = await response.json();
190
- let mangoCreatedAt = await getFileCreatedAt(realm, "dir/mango.json");
191
- let ownerCreatedAt = await getFileCreatedAt(realm, "dir/owner.json");
192
- assert.deepEqual(json, {
193
- data: {
194
- type: "card",
195
- id: `${testRealmURL}dir/mango`,
196
- attributes: {
197
- firstName: "Mango",
198
- cardTitle: "Mango",
199
- cardInfo,
200
- cardDescription: null,
201
- cardThumbnailURL: null
202
- },
203
- relationships: {
204
- owner: {
205
- links: { self: `./owner` },
206
- data: {
207
- type: "card",
208
- id: `${testRealmURL}dir/owner`
209
- }
210
- },
211
- "cardInfo.theme": { links: { self: null } }
212
- },
213
- meta: {
214
- adoptsFrom: {
215
- module: "https://localhost:4202/test/pet",
216
- name: "Pet"
217
- },
218
- lastModified: adapter.lastModifiedMap.get(`${testRealmURL}dir/mango.json`),
219
- resourceCreatedAt: mangoCreatedAt,
220
- realmInfo: testRealmInfo,
221
- realmURL: testRealmURL
222
- },
223
- links: { self: `${testRealmURL}dir/mango` }
224
- },
225
- included: [{
226
- type: "card",
227
- id: `${testRealmURL}dir/owner`,
228
- attributes: {
229
- cardDescription: "Person",
230
- email: null,
231
- posts: null,
232
- cardThumbnailURL: null,
233
- firstName: "Hassan",
234
- lastName: "Abdel-Rahman",
235
- cardTitle: "Hassan Abdel-Rahman",
236
- fullName: "Hassan Abdel-Rahman",
237
- cardInfo
238
- },
239
- relationships: { "cardInfo.theme": { links: { self: null } } },
240
- meta: {
241
- adoptsFrom: {
242
- module: "https://localhost:4202/test/person",
243
- name: "Person"
244
- },
245
- lastModified: adapter.lastModifiedMap.get(`${testRealmURL}dir/owner.json`),
246
- resourceCreatedAt: ownerCreatedAt,
247
- realmInfo: testRealmInfo,
248
- realmURL: testRealmURL
249
- },
250
- links: { self: `./owner` }
251
- }]
252
- });
253
- });
254
- (0, import_qunit.test)("realm can serve GET card requests with linksTo relationships to other realms", async function(assert) {
255
- let { realm, adapter } = await setupIntegrationTestRealm({
256
- mockMatrixUtils,
257
- contents: { "dir/mango.json": { data: {
258
- id: `${testRealmURL}dir/mango`,
259
- attributes: {
260
- cardDescription: null,
261
- cardThumbnailURL: null,
262
- firstName: "Mango"
263
- },
264
- relationships: { owner: { links: { self: `https://localhost:4202/test/hassan` } } },
265
- meta: { adoptsFrom: {
266
- module: "https://localhost:4202/test/pet",
267
- name: "Pet"
268
- } }
269
- } } }
270
- });
271
- let response = await handle(realm, new Request(`${testRealmURL}dir/mango`, { headers: { Accept: "application/vnd.card+json" } }));
272
- assert.strictEqual(response.status, 200, "successful http status");
273
- let json = await response.json();
274
- let { included = [] } = json;
275
- delete included[0]?.meta.lastModified;
276
- delete included[0]?.meta.resourceCreatedAt;
277
- let resourceCreatedAt = await getFileCreatedAt(realm, "dir/mango.json");
278
- assert.strictEqual(json.data.id, `${testRealmURL}dir/mango`, "mango id");
279
- assert.strictEqual(json.data.attributes.firstName, "Mango", "mango firstName");
280
- assert.strictEqual(json.data.relationships.owner.links.self, "https://localhost:4202/test/hassan", "owner self link points to other realm");
281
- assert.strictEqual(json.data.relationships.owner.data.id, "https://localhost:4202/test/hassan", "owner data id points to other realm");
282
- assert.strictEqual(json.data.relationships["cardInfo.theme"].links.self, null, "mango theme is null");
283
- assert.strictEqual(json.data.meta.lastModified, adapter.lastModifiedMap.get(`${testRealmURL}dir/mango.json`), "mango lastModified");
284
- assert.strictEqual(json.data.meta.resourceCreatedAt, resourceCreatedAt, "mango resourceCreatedAt");
285
- assert.strictEqual(included.length, 1, "one included card");
286
- let hassan = included[0];
287
- assert.strictEqual(hassan.id, "https://localhost:4202/test/hassan", "included hassan id");
288
- assert.strictEqual(hassan.relationships["cardInfo.theme"].links.self, null, "included hassan theme is null");
289
- });
290
- (0, import_qunit.test)("realm can route requests correctly when mounted in the origin's subdir", async function(assert) {
291
- let { realm } = await setupIntegrationTestRealm({
292
- mockMatrixUtils,
293
- contents: { "dir/empty.json": { data: { meta: { adoptsFrom: {
294
- module: "https://cardstack.com/base/card-api",
295
- name: "CardDef"
296
- } } } } },
297
- realmURL: `${testRealmURL}root/`
298
- });
299
- {
300
- let response = await handle(realm, new Request(`${testRealmURL}root/dir/empty`, { headers: { Accept: "application/vnd.card+json" } }));
301
- assert.strictEqual(response.status, 200, "successful http status");
302
- let json = await response.json();
303
- assert.strictEqual(json.data.id, `${testRealmURL}root/dir/empty`, "card ID is correct");
304
- }
305
- {
306
- let json = await (await handle(realm, new Request(`${testRealmURL}root/_search`, {
307
- method: "QUERY",
308
- headers: { Accept: "application/vnd.card+json" },
309
- body: JSON.stringify({})
310
- }))).json();
311
- assert.strictEqual(json.data.length, 1, "the card is returned in the search results");
312
- assert.strictEqual(json.data[0].id, `${testRealmURL}root/dir/empty`, "card ID is correct");
313
- }
314
- });
315
- (0, import_qunit.test)("realm can serve create card requests", async function(assert) {
316
- let { realm, adapter } = await setupIntegrationTestRealm({
317
- mockMatrixUtils,
318
- contents: {}
319
- });
320
- let json = await (await handle(realm, new Request(testRealmURL, {
321
- method: "POST",
322
- headers: { Accept: "application/vnd.card+json" },
323
- body: JSON.stringify({ data: {
324
- type: "card",
325
- meta: { adoptsFrom: {
326
- module: "https://cardstack.com/base/card-api",
327
- name: "CardDef"
328
- } }
329
- } }, null, 2)
330
- }))).json();
331
- let id;
332
- if (isSingleCardDocument(json)) {
333
- id = json.data.id.split("/").pop();
334
- assert.true(validate(id), "card ID is a UUID");
335
- assert.strictEqual(json.data.id, `${testRealmURL}CardDef/${id}`, "the card URL is correct");
336
- assert.ok((await adapter.openFile(`CardDef/${id}.json`))?.content, "file contents exist");
337
- let createdAt = await getFileCreatedAt(realm, `CardDef/${id}.json`);
338
- assert.ok(json.data.meta?.resourceCreatedAt, "resourceCreatedAt meta exists on created card");
339
- assert.strictEqual(json.data.meta?.resourceCreatedAt, createdAt, "resourceCreatedAt matches file created time");
340
- } else assert.ok(false, "response body is not a card document");
341
- if (!id) assert.ok(false, "card document is missing an ID");
342
- let result = await realm.realmIndexQueryEngine.cardDocument(new URL(json.data.links.self));
343
- if (result?.type === "error") throw new Error(`unexpected error when getting card from index: ${result.error.errorDetail.message}`);
344
- assert.strictEqual(result?.doc.data.id, `${testRealmURL}CardDef/${id}`, "found card in index");
345
- });
346
- (0, import_qunit.test)("realm cannot create card request which is NOT directory", async function(assert) {
347
- let { realm } = await setupIntegrationTestRealm({
348
- mockMatrixUtils,
349
- contents: {}
350
- });
351
- let notDirPath = `${testRealmURL}SomeDirectory`;
352
- let notFoundResponse = await handle(realm, new Request(notDirPath, {
353
- method: "POST",
354
- headers: { Accept: "application/vnd.card+json" },
355
- body: JSON.stringify({ data: {
356
- type: "card",
357
- meta: { adoptsFrom: {
358
- module: "https://cardstack.com/base/card-api",
359
- name: "CardDef"
360
- } }
361
- } }, null, 2)
362
- }));
363
- let notFoundJson = await notFoundResponse.json();
364
- assert.strictEqual(notFoundJson.errors[0].status, 404);
365
- assert.strictEqual(notFoundResponse.status, 404);
366
- });
367
- (0, import_qunit.test)("realm allows create card requests into directories of the realm", async function(assert) {
368
- let { realm, adapter } = await setupIntegrationTestRealm({
369
- mockMatrixUtils,
370
- contents: {}
371
- });
372
- let dirName = "SomeDirectory";
373
- let dirPath = `${testRealmURL}${dirName}/`;
374
- let json = await (await handle(realm, new Request(dirPath, {
375
- method: "POST",
376
- headers: { Accept: "application/vnd.card+json" },
377
- body: JSON.stringify({ data: {
378
- type: "card",
379
- meta: { adoptsFrom: {
380
- module: "https://cardstack.com/base/card-api",
381
- name: "CardDef"
382
- } }
383
- } }, null, 2)
384
- }))).json();
385
- let id;
386
- if (isSingleCardDocument(json)) {
387
- id = json.data.id.split("/").pop();
388
- assert.true(validate(id), "card ID is a UUID");
389
- assert.strictEqual(json.data.id, `${dirPath}CardDef/${id}`, "the card URL is correct");
390
- assert.ok((await adapter.openFile(`${dirName}/CardDef/${id}.json`))?.content, "file contents exist");
391
- let createdAt = await getFileCreatedAt(realm, `${dirName}/CardDef/${id}.json`);
392
- assert.ok(json.data.meta?.resourceCreatedAt, "resourceCreatedAt meta exists on created card in directory");
393
- assert.strictEqual(json.data.meta?.resourceCreatedAt, createdAt, "resourceCreatedAt matches file created time (directory)");
394
- } else assert.ok(false, "response body is not a card document");
395
- if (!id) assert.ok(false, "card document is missing an ID");
396
- let result = await realm.realmIndexQueryEngine.cardDocument(new URL(json.data.links.self));
397
- if (result?.type === "error") throw new Error(`unexpected error when getting card from index: ${result.error.errorDetail.message}`);
398
- assert.strictEqual(result?.doc.data.id, `${testRealmURL}${dirName}/CardDef/${id}`, "found card in index");
399
- });
400
- (0, import_qunit.test)("realm can serve POST requests that include linksTo fields", async function(assert) {
401
- let { realm, adapter } = await setupIntegrationTestRealm({
402
- mockMatrixUtils,
403
- contents: { "dir/owner.json": { data: {
404
- id: `${testRealmURL}dir/owner`,
405
- attributes: {
406
- firstName: "Hassan",
407
- lastName: "Abdel-Rahman"
408
- },
409
- meta: { adoptsFrom: {
410
- module: "https://localhost:4202/test/person",
411
- name: "Person"
412
- } }
413
- } } }
414
- });
415
- let response = await handle(realm, new Request(testRealmURL, {
416
- method: "POST",
417
- headers: { Accept: "application/vnd.card+json" },
418
- body: JSON.stringify({ data: {
419
- attributes: { firstName: "Mango" },
420
- relationships: { owner: { links: { self: `${testRealmURL}dir/owner` } } },
421
- meta: { adoptsFrom: {
422
- module: "https://localhost:4202/test/pet",
423
- name: "Pet"
424
- } }
425
- } }, null, 2)
426
- }));
427
- assert.strictEqual(response.status, 201, "successful http status");
428
- let json = await response.json();
429
- let id = json.data.id.split("/").pop();
430
- let ownerCreatedAt = await getFileCreatedAt(realm, "dir/owner.json");
431
- let petCreatedAt = await getFileCreatedAt(realm, `Pet/${id}.json`);
432
- assert.ok(validate(id), "card ID is a UUID");
433
- assert.deepEqual(json, {
434
- data: {
435
- type: "card",
436
- id: `${testRealmURL}Pet/${id}`,
437
- attributes: {
438
- firstName: "Mango",
439
- cardTitle: "Mango",
440
- cardDescription: null,
441
- cardThumbnailURL: null,
442
- cardInfo
443
- },
444
- relationships: {
445
- owner: {
446
- links: { self: `../dir/owner` },
447
- data: {
448
- type: "card",
449
- id: `${testRealmURL}dir/owner`
450
- }
451
- },
452
- "cardInfo.theme": { links: { self: null } }
453
- },
454
- meta: {
455
- adoptsFrom: {
456
- module: "https://localhost:4202/test/pet",
457
- name: "Pet"
458
- },
459
- lastModified: adapter.lastModifiedMap.get(`${testRealmURL}Pet/${id}.json`),
460
- resourceCreatedAt: petCreatedAt,
461
- realmInfo: testRealmInfo,
462
- realmURL: testRealmURL
463
- },
464
- links: { self: `${testRealmURL}Pet/${id}` }
465
- },
466
- included: [{
467
- type: "card",
468
- id: `${testRealmURL}dir/owner`,
469
- attributes: {
470
- cardDescription: "Person",
471
- email: null,
472
- posts: null,
473
- cardThumbnailURL: null,
474
- firstName: "Hassan",
475
- lastName: "Abdel-Rahman",
476
- cardTitle: "Hassan Abdel-Rahman",
477
- fullName: "Hassan Abdel-Rahman",
478
- cardInfo
479
- },
480
- relationships: { "cardInfo.theme": { links: { self: null } } },
481
- meta: {
482
- adoptsFrom: {
483
- module: "https://localhost:4202/test/person",
484
- name: "Person"
485
- },
486
- lastModified: adapter.lastModifiedMap.get(`${testRealmURL}dir/owner.json`),
487
- resourceCreatedAt: ownerCreatedAt,
488
- realmInfo: testRealmInfo,
489
- realmURL: testRealmURL
490
- },
491
- links: { self: `../dir/owner` }
492
- }]
493
- });
494
- let fileRef = await adapter.openFile(`Pet/${id}.json`);
495
- if (!fileRef) throw new Error("file not found");
496
- assert.deepEqual(JSON.parse(fileRef.content), { data: {
497
- type: "card",
498
- attributes: { firstName: "Mango" },
499
- relationships: { owner: { links: { self: `../dir/owner` } } },
500
- meta: { adoptsFrom: {
501
- module: "https://localhost:4202/test/pet",
502
- name: "Pet"
503
- } }
504
- } }, "file contents are correct");
505
- });
506
- (0, import_qunit.test)("realm returns 500 error for POST requests that set the value of a polymorphic field to an incompatible type", async function(assert) {
507
- class Person extends FieldDef {
508
- static {
509
- decorateFieldV2(this.prototype, "firstName", [field], function() {
510
- return contains(StringField);
511
- });
512
- }
513
- #firstName = (initializeDeferredDecorator(this, "firstName"), void 0);
514
- }
515
- class Car extends FieldDef {
516
- static {
517
- decorateFieldV2(this.prototype, "make", [field], function() {
518
- return contains(StringField);
519
- });
520
- }
521
- #make = (initializeDeferredDecorator(this, "make"), void 0);
522
- static {
523
- decorateFieldV2(this.prototype, "model", [field], function() {
524
- return contains(StringField);
525
- });
526
- }
527
- #model = (initializeDeferredDecorator(this, "model"), void 0);
528
- static {
529
- decorateFieldV2(this.prototype, "year", [field], function() {
530
- return contains(StringField);
531
- });
532
- }
533
- #year = (initializeDeferredDecorator(this, "year"), void 0);
534
- }
535
- class Driver extends CardDef {
536
- static {
537
- decorateFieldV2(this.prototype, "card", [field], function() {
538
- return contains(Person);
539
- });
540
- }
541
- #card = (initializeDeferredDecorator(this, "card"), void 0);
542
- }
543
- let { realm } = await setupIntegrationTestRealm({
544
- mockMatrixUtils,
545
- contents: {
546
- "driver.gts": { Driver },
547
- "person.gts": { Person },
548
- "car.gts": { Car }
549
- }
550
- });
551
- let response = await handle(realm, new Request(testRealmURL, {
552
- method: "POST",
553
- headers: { Accept: "application/vnd.card+json" },
554
- body: JSON.stringify({ data: {
555
- type: "card",
556
- attributes: { card: {
557
- firstName: null,
558
- make: "Mercedes Benz",
559
- model: "C300",
560
- year: "2024"
561
- } },
562
- meta: {
563
- adoptsFrom: {
564
- module: `${testRealmURL}driver`,
565
- name: "Driver"
566
- },
567
- fields: { card: { adoptsFrom: {
568
- module: `${testRealmURL}car`,
569
- name: "Car"
570
- } } }
571
- }
572
- } }, null, 2)
573
- }));
574
- assert.strictEqual(response.status, 500, "500 server error");
575
- let json = await response.json();
576
- assert.strictEqual(json.errors[0].additionalErrors[0].errorDetail.message, "field validation error: tried set instance of Car as field 'card' but it is not an instance of Person");
577
- });
578
- (0, import_qunit.test)("realm can serve patch card requests", async function(assert) {
579
- let { realm, adapter } = await setupIntegrationTestRealm({
580
- mockMatrixUtils,
581
- contents: { "dir/card.json": { data: {
582
- attributes: {
583
- firstName: "Mango",
584
- lastName: "Abdel-Rahman"
585
- },
586
- meta: { adoptsFrom: {
587
- module: "https://localhost:4202/test/person",
588
- name: "Person"
589
- } }
590
- } } }
591
- });
592
- let response = await handle(realm, new Request(`${testRealmURL}dir/card`, {
593
- method: "PATCH",
594
- headers: { Accept: "application/vnd.card+json" },
595
- body: JSON.stringify({ data: {
596
- type: "card",
597
- attributes: { firstName: "Van Gogh" },
598
- meta: { adoptsFrom: {
599
- module: "https://localhost:4202/test/person",
600
- name: "Person"
601
- } }
602
- } }, null, 2)
603
- }));
604
- await realm.flushUpdateEvents();
605
- assert.strictEqual(response.status, 200, "successful http status");
606
- let json = await response.json();
607
- if (isSingleCardDocument(json)) {
608
- assert.strictEqual(json.data.id, `${testRealmURL}dir/card`, "the id is correct");
609
- assert.strictEqual(json.data.attributes?.firstName, "Van Gogh", "field value is correct");
610
- assert.strictEqual(json.data.attributes?.lastName, "Abdel-Rahman", "field value is correct");
611
- assert.strictEqual(json.data.meta.lastModified, adapter.lastModifiedMap.get(`${testRealmURL}dir/card.json`), "lastModified is correct");
612
- let fileRef = await adapter.openFile("dir/card.json");
613
- if (!fileRef) throw new Error("file not found");
614
- assert.deepEqual(JSON.parse(fileRef.content), { data: {
615
- type: "card",
616
- attributes: {
617
- email: null,
618
- posts: null,
619
- firstName: "Van Gogh",
620
- lastName: "Abdel-Rahman",
621
- cardInfo
622
- },
623
- relationships: { "cardInfo.theme": { links: { self: null } } },
624
- meta: { adoptsFrom: {
625
- module: "https://localhost:4202/test/person",
626
- name: "Person"
627
- } }
628
- } }, "file contents are correct");
629
- } else assert.ok(false, "response body is not a card document");
630
- let queryEngine = realm.realmIndexQueryEngine;
631
- let result = await queryEngine.cardDocument(new URL(json.data.links.self));
632
- if (result?.type === "error") throw new Error(`unexpected error when getting card from index: ${result.error.errorDetail.message}`);
633
- assert.strictEqual(result?.doc.data.id, `${testRealmURL}dir/card`, "found card in index");
634
- assert.strictEqual(result?.doc.data.attributes?.firstName, "Van Gogh", "field value is correct");
635
- assert.strictEqual(result?.doc.data.attributes?.lastName, "Abdel-Rahman", "field value is correct");
636
- let { data: cards } = await queryEngine.searchCards({ filter: {
637
- on: {
638
- module: rri(`https://localhost:4202/test/person`),
639
- name: "Person"
640
- },
641
- eq: { firstName: "Van Gogh" }
642
- } });
643
- assert.strictEqual(cards.length, 1, "search finds updated value");
644
- });
645
- (0, import_qunit.test)("realm can remove item from containsMany field via PATCH request", async function(assert) {
646
- let { realm, adapter } = await setupIntegrationTestRealm({
647
- mockMatrixUtils,
648
- contents: { "ski-trip.json": { data: {
649
- attributes: {
650
- cardTitle: "Gore Mountain Ski Trip",
651
- venue: "Gore Mountain",
652
- startTime: "2023-02-18T10:00:00.000Z",
653
- endTime: "2023-02-19T02:00:00.000Z",
654
- hosts: [{ firstName: "Hassan" }, { firstName: "Mango" }],
655
- sponsors: ["Burton", "Spy Optics"],
656
- posts: []
657
- },
658
- meta: { adoptsFrom: {
659
- module: "https://localhost:4202/test/booking",
660
- name: "Booking"
661
- } }
662
- } } }
663
- });
664
- let resourceCreatedAt = await getFileCreatedAt(realm, "ski-trip.json");
665
- let response = await handle(realm, new Request(`${testRealmURL}ski-trip`, {
666
- method: "PATCH",
667
- headers: { Accept: "application/vnd.card+json" },
668
- body: JSON.stringify({ data: {
669
- type: "card",
670
- attributes: {
671
- hosts: [{
672
- firstName: "Hassan",
673
- lastName: null
674
- }],
675
- sponsors: ["Burton"]
676
- },
677
- meta: { adoptsFrom: {
678
- module: "https://localhost:4202/test/booking",
679
- name: "Booking"
680
- } }
681
- } }, null, 2)
682
- }));
683
- assert.strictEqual(response.status, 200, "successful http status");
684
- let json = await response.json();
685
- assert.deepEqual(json, { data: {
686
- type: "card",
687
- id: `${testRealmURL}ski-trip`,
688
- links: { self: `${testRealmURL}ski-trip` },
689
- attributes: {
690
- cardTitle: "Gore Mountain Ski Trip",
691
- venue: "Gore Mountain",
692
- startTime: "2023-02-18T10:00:00.000Z",
693
- endTime: "2023-02-19T02:00:00.000Z",
694
- hosts: [{
695
- cardDescription: "Person",
696
- firstName: "Hassan",
697
- lastName: null,
698
- fullName: "Hassan ",
699
- cardTitle: "Hassan ",
700
- email: null,
701
- posts: null
702
- }],
703
- sponsors: ["Burton"],
704
- posts: [],
705
- cardDescription: "Gore Mountain",
706
- cardThumbnailURL: null,
707
- cardInfo
708
- },
709
- relationships: { "cardInfo.theme": { links: { self: null } } },
710
- meta: {
711
- adoptsFrom: {
712
- module: "https://localhost:4202/test/booking",
713
- name: "Booking"
714
- },
715
- lastModified: adapter.lastModifiedMap.get(`${testRealmURL}ski-trip.json`),
716
- resourceCreatedAt,
717
- realmInfo: testRealmInfo,
718
- realmURL: testRealmURL
719
- }
720
- } });
721
- let fileRef = await adapter.openFile("ski-trip.json");
722
- if (!fileRef) throw new Error("file not found");
723
- assert.deepEqual(JSON.parse(fileRef.content), { data: {
724
- type: "card",
725
- attributes: {
726
- cardTitle: "Gore Mountain Ski Trip",
727
- venue: "Gore Mountain",
728
- startTime: "2023-02-18T10:00:00.000Z",
729
- endTime: "2023-02-19T02:00:00.000Z",
730
- hosts: [{
731
- firstName: "Hassan",
732
- lastName: null
733
- }],
734
- sponsors: ["Burton"],
735
- posts: [],
736
- cardInfo
737
- },
738
- relationships: { "cardInfo.theme": { links: { self: null } } },
739
- meta: { adoptsFrom: {
740
- module: `${testModuleRealm}booking`,
741
- name: "Booking"
742
- } }
743
- } }, "file contents are correct");
744
- });
745
- (0, import_qunit.test)("realm can remove item from linksToMany field via PATCH request", async function(assert) {
746
- let { realm, adapter } = await setupIntegrationTestRealm({
747
- mockMatrixUtils,
748
- contents: {
749
- "dir/van-gogh.json": { data: {
750
- id: `${testRealmURL}dir/van-gogh`,
751
- attributes: { firstName: "Van Gogh" },
752
- relationships: { owner: { links: { self: null } } },
753
- meta: { adoptsFrom: {
754
- module: `https://localhost:4202/test/pet`,
755
- name: "Pet"
756
- } }
757
- } },
758
- "dir/mango.json": { data: {
759
- id: `${testRealmURL}dir/mango`,
760
- attributes: { firstName: "Mango" },
761
- relationships: { owner: { links: { self: null } } },
762
- meta: { adoptsFrom: {
763
- module: `https://localhost:4202/test/pet`,
764
- name: "Pet"
765
- } }
766
- } },
767
- "dir/friend.json": { data: {
768
- id: `${testRealmURL}dir/friend`,
769
- attributes: {
770
- firstName: "Hassan",
771
- lastName: "Abdel-Rahman"
772
- },
773
- meta: { adoptsFrom: {
774
- module: "https://localhost:4202/test/person",
775
- name: "Person"
776
- } }
777
- } },
778
- "jackie.json": { data: {
779
- id: `${testRealmURL}jackie`,
780
- attributes: { firstName: "Jackie" },
781
- relationships: {
782
- "pets.0": { links: { self: `${testRealmURL}dir/van-gogh` } },
783
- friend: { links: { self: `${testRealmURL}dir/friend` } }
784
- },
785
- meta: { adoptsFrom: {
786
- module: `https://localhost:4202/test/pet-person`,
787
- name: "PetPerson"
788
- } }
789
- } }
790
- }
791
- });
792
- let resourceCreatedAt = await getFileCreatedAt(realm, "jackie.json");
793
- let friendCreatedAt = await getFileCreatedAt(realm, "dir/friend.json");
794
- let vanGoghCreatedAt = await getFileCreatedAt(realm, "dir/van-gogh.json");
795
- let response = await handle(realm, new Request(`${testRealmURL}jackie`, {
796
- method: "PATCH",
797
- headers: { Accept: "application/vnd.card+json" },
798
- body: JSON.stringify({ data: {
799
- type: "card",
800
- relationships: { "pets.0": { links: { self: `${testRealmURL}dir/van-gogh` } } },
801
- meta: { adoptsFrom: {
802
- module: `https://localhost:4202/test/pet-person`,
803
- name: "PetPerson"
804
- } }
805
- } }, null, 2)
806
- }));
807
- assert.strictEqual(response.status, 200, "successful http status");
808
- let json = await response.json();
809
- assert.deepEqual(json, {
810
- data: {
811
- type: "card",
812
- id: `${testRealmURL}jackie`,
813
- links: { self: `${testRealmURL}jackie` },
814
- attributes: {
815
- firstName: "Jackie",
816
- cardTitle: "Jackie Pet Person",
817
- cardDescription: "A person with pets",
818
- cardThumbnailURL: null,
819
- cardInfo
820
- },
821
- relationships: {
822
- "pets.0": {
823
- links: { self: `./dir/van-gogh` },
824
- data: {
825
- id: `${testRealmURL}dir/van-gogh`,
826
- type: "card"
827
- }
828
- },
829
- friend: {
830
- links: { self: `./dir/friend` },
831
- data: {
832
- id: `${testRealmURL}dir/friend`,
833
- type: "card"
834
- }
835
- },
836
- "cardInfo.theme": { links: { self: null } }
837
- },
838
- meta: {
839
- adoptsFrom: {
840
- module: `${testModuleRealm}pet-person`,
841
- name: "PetPerson"
842
- },
843
- realmInfo: testRealmInfo,
844
- realmURL: testRealmURL,
845
- lastModified: adapter.lastModifiedMap.get(`${testRealmURL}jackie.json`),
846
- resourceCreatedAt
847
- }
848
- },
849
- included: [{
850
- type: "card",
851
- id: `${testRealmURL}dir/friend`,
852
- links: { self: `./dir/friend` },
853
- attributes: {
854
- cardDescription: "Person",
855
- email: null,
856
- posts: null,
857
- cardThumbnailURL: null,
858
- firstName: "Hassan",
859
- lastName: "Abdel-Rahman",
860
- fullName: "Hassan Abdel-Rahman",
861
- cardTitle: "Hassan Abdel-Rahman",
862
- cardInfo
863
- },
864
- relationships: { "cardInfo.theme": { links: { self: null } } },
865
- meta: {
866
- adoptsFrom: {
867
- module: `${testModuleRealm}person`,
868
- name: "Person"
869
- },
870
- lastModified: adapter.lastModifiedMap.get(`${testRealmURL}dir/friend.json`),
871
- resourceCreatedAt: friendCreatedAt,
872
- realmInfo: testRealmInfo,
873
- realmURL: testRealmURL
874
- }
875
- }, {
876
- type: "card",
877
- id: `${testRealmURL}dir/van-gogh`,
878
- links: { self: `./dir/van-gogh` },
879
- attributes: {
880
- firstName: "Van Gogh",
881
- cardTitle: "Van Gogh",
882
- cardDescription: null,
883
- cardThumbnailURL: null,
884
- cardInfo
885
- },
886
- relationships: {
887
- owner: { links: { self: null } },
888
- "cardInfo.theme": { links: { self: null } }
889
- },
890
- meta: {
891
- adoptsFrom: {
892
- module: `${testModuleRealm}pet`,
893
- name: "Pet"
894
- },
895
- lastModified: adapter.lastModifiedMap.get(`${testRealmURL}dir/van-gogh.json`),
896
- resourceCreatedAt: vanGoghCreatedAt,
897
- realmInfo: testRealmInfo,
898
- realmURL: testRealmURL
899
- }
900
- }]
901
- });
902
- let fileRef = await adapter.openFile("jackie.json");
903
- if (!fileRef) throw new Error("file not found");
904
- assert.deepEqual(JSON.parse(fileRef.content), { data: {
905
- type: "card",
906
- attributes: {
907
- firstName: "Jackie",
908
- cardInfo
909
- },
910
- relationships: {
911
- "pets.0": { links: { self: `./dir/van-gogh` } },
912
- friend: { links: { self: `./dir/friend` } },
913
- "cardInfo.theme": { links: { self: null } }
914
- },
915
- meta: { adoptsFrom: {
916
- module: `https://localhost:4202/test/pet-person`,
917
- name: "PetPerson"
918
- } }
919
- } }, "file contents are correct");
920
- });
921
- (0, import_qunit.test)("realm can add an item to linksToMany relationships via PATCH request", async function(assert) {
922
- let { realm, adapter } = await setupIntegrationTestRealm({
923
- mockMatrixUtils,
924
- contents: {
925
- "dir/van-gogh.json": { data: {
926
- id: `${testRealmURL}dir/van-gogh`,
927
- attributes: { firstName: "Van Gogh" },
928
- relationships: { owner: { links: { self: null } } },
929
- meta: { adoptsFrom: {
930
- module: `https://localhost:4202/test/pet`,
931
- name: "Pet"
932
- } }
933
- } },
934
- "dir/mango.json": { data: {
935
- id: `${testRealmURL}dir/mango`,
936
- attributes: { firstName: "Mango" },
937
- relationships: { owner: { links: { self: null } } },
938
- meta: { adoptsFrom: {
939
- module: `https://localhost:4202/test/pet`,
940
- name: "Pet"
941
- } }
942
- } },
943
- "dir/friend.json": { data: {
944
- id: `${testRealmURL}dir/friend`,
945
- attributes: {
946
- firstName: "Hassan",
947
- lastName: "Abdel-Rahman"
948
- },
949
- meta: { adoptsFrom: {
950
- module: "https://localhost:4202/test/person",
951
- name: "Person"
952
- } }
953
- } },
954
- "jackie.json": { data: {
955
- id: `${testRealmURL}jackie`,
956
- attributes: { firstName: "Jackie" },
957
- relationships: {
958
- "pets.0": { links: { self: `${testRealmURL}dir/van-gogh` } },
959
- friend: { links: { self: `${testRealmURL}dir/friend` } }
960
- },
961
- meta: { adoptsFrom: {
962
- module: `https://localhost:4202/test/pet-person`,
963
- name: "PetPerson"
964
- } }
965
- } }
966
- }
967
- });
968
- let resourceCreatedAt = await getFileCreatedAt(realm, "jackie.json");
969
- let response = await handle(realm, new Request(`${testRealmURL}jackie`, {
970
- method: "PATCH",
971
- headers: { Accept: "application/vnd.card+json" },
972
- body: JSON.stringify({ data: {
973
- type: "card",
974
- relationships: {
975
- "pets.0": { links: { self: `${testRealmURL}dir/mango` } },
976
- "pets.1": { links: { self: `${testRealmURL}dir/van-gogh` } }
977
- },
978
- meta: { adoptsFrom: {
979
- module: `https://localhost:4202/test/pet-person`,
980
- name: "PetPerson"
981
- } }
982
- } }, null, 2)
983
- }));
984
- assert.strictEqual(response.status, 200, "successful http status");
985
- let json = await response.json();
986
- assert.deepEqual(json.data, {
987
- type: "card",
988
- id: `${testRealmURL}jackie`,
989
- links: { self: `${testRealmURL}jackie` },
990
- attributes: {
991
- firstName: "Jackie",
992
- cardTitle: "Jackie Pet Person",
993
- cardDescription: "A person with pets",
994
- cardThumbnailURL: null,
995
- cardInfo
996
- },
997
- relationships: {
998
- "pets.0": {
999
- links: { self: `./dir/mango` },
1000
- data: {
1001
- id: `${testRealmURL}dir/mango`,
1002
- type: "card"
1003
- }
1004
- },
1005
- "pets.1": {
1006
- links: { self: `./dir/van-gogh` },
1007
- data: {
1008
- id: `${testRealmURL}dir/van-gogh`,
1009
- type: "card"
1010
- }
1011
- },
1012
- friend: {
1013
- links: { self: `./dir/friend` },
1014
- data: {
1015
- id: `${testRealmURL}dir/friend`,
1016
- type: "card"
1017
- }
1018
- },
1019
- "cardInfo.theme": { links: { self: null } }
1020
- },
1021
- meta: {
1022
- adoptsFrom: {
1023
- module: `https://localhost:4202/test/pet-person`,
1024
- name: "PetPerson"
1025
- },
1026
- lastModified: adapter.lastModifiedMap.get(`${testRealmURL}jackie.json`),
1027
- resourceCreatedAt,
1028
- realmInfo: testRealmInfo,
1029
- realmURL: testRealmURL
1030
- }
1031
- });
1032
- });
1033
- (0, import_qunit.test)("realm can add items to null linksToMany relationship via PATCH request", async function(assert) {
1034
- let { realm, adapter } = await setupIntegrationTestRealm({
1035
- mockMatrixUtils,
1036
- contents: {
1037
- "dir/van-gogh.json": { data: {
1038
- id: `${testRealmURL}dir/van-gogh`,
1039
- attributes: { firstName: "Van Gogh" },
1040
- relationships: { owner: { links: { self: null } } },
1041
- meta: { adoptsFrom: {
1042
- module: `https://localhost:4202/test/pet`,
1043
- name: "Pet"
1044
- } }
1045
- } },
1046
- "dir/mango.json": { data: {
1047
- id: `${testRealmURL}dir/mango`,
1048
- attributes: { firstName: "Mango" },
1049
- relationships: { owner: { links: { self: null } } },
1050
- meta: { adoptsFrom: {
1051
- module: `https://localhost:4202/test/pet`,
1052
- name: "Pet"
1053
- } }
1054
- } },
1055
- "jackie.json": { data: {
1056
- id: `${testRealmURL}jackie`,
1057
- attributes: { firstName: "Jackie" },
1058
- relationships: { pets: { links: { self: null } } },
1059
- meta: { adoptsFrom: {
1060
- module: `https://localhost:4202/test/pet-person`,
1061
- name: "PetPerson"
1062
- } }
1063
- } }
1064
- }
1065
- });
1066
- let resourceCreatedAt = await getFileCreatedAt(realm, "jackie.json");
1067
- let response = await handle(realm, new Request(`${testRealmURL}jackie`, {
1068
- method: "PATCH",
1069
- headers: { Accept: "application/vnd.card+json" },
1070
- body: JSON.stringify({ data: {
1071
- type: "card",
1072
- relationships: {
1073
- "pets.0": { links: { self: `${testRealmURL}dir/mango` } },
1074
- "pets.1": { links: { self: `${testRealmURL}dir/van-gogh` } }
1075
- },
1076
- meta: { adoptsFrom: {
1077
- module: `https://localhost:4202/test/pet-person`,
1078
- name: "PetPerson"
1079
- } }
1080
- } }, null, 2)
1081
- }));
1082
- assert.strictEqual(response.status, 200, "successful http status");
1083
- let json = await response.json();
1084
- assert.deepEqual(json.data, {
1085
- type: "card",
1086
- id: `${testRealmURL}jackie`,
1087
- links: { self: `${testRealmURL}jackie` },
1088
- attributes: {
1089
- firstName: "Jackie",
1090
- cardTitle: "Jackie Pet Person",
1091
- cardDescription: "A person with pets",
1092
- cardThumbnailURL: null,
1093
- cardInfo
1094
- },
1095
- relationships: {
1096
- "pets.0": {
1097
- links: { self: `./dir/mango` },
1098
- data: {
1099
- id: `${testRealmURL}dir/mango`,
1100
- type: "card"
1101
- }
1102
- },
1103
- "pets.1": {
1104
- links: { self: `./dir/van-gogh` },
1105
- data: {
1106
- id: `${testRealmURL}dir/van-gogh`,
1107
- type: "card"
1108
- }
1109
- },
1110
- friend: { links: { self: null } },
1111
- "cardInfo.theme": { links: { self: null } }
1112
- },
1113
- meta: {
1114
- adoptsFrom: {
1115
- module: `https://localhost:4202/test/pet-person`,
1116
- name: "PetPerson"
1117
- },
1118
- lastModified: adapter.lastModifiedMap.get(`${testRealmURL}jackie.json`),
1119
- resourceCreatedAt,
1120
- realmInfo: testRealmInfo,
1121
- realmURL: testRealmURL
1122
- }
1123
- });
1124
- });
1125
- (0, import_qunit.test)("realm PATCH request can set a linksTo nested within a containsMany", async function(assert) {
1126
- class Other extends CardDef {
1127
- static displayName = "Other";
1128
- static {
1129
- decorateFieldV2(this.prototype, "name", [field], function() {
1130
- return contains(StringField);
1131
- });
1132
- }
1133
- #name = (initializeDeferredDecorator(this, "name"), void 0);
1134
- }
1135
- class Inner extends FieldDef {
1136
- static {
1137
- decorateFieldV2(this.prototype, "message", [field], function() {
1138
- return contains(StringField);
1139
- });
1140
- }
1141
- #message = (initializeDeferredDecorator(this, "message"), void 0);
1142
- static {
1143
- decorateFieldV2(this.prototype, "other", [field], function() {
1144
- return linksTo(Other);
1145
- });
1146
- }
1147
- #other = (initializeDeferredDecorator(this, "other"), void 0);
1148
- static embedded = class Embedded extends Component {
1149
- static {
1150
- setComponentTemplate(templateFactory({
1151
- "id": "k2LMuWBu",
1152
- "block": "[[[1,\"x: \"],[1,[30,1,[\"other\",\"name\"]]]],[\"@model\"],[]]",
1153
- "moduleName": "/home/runner/work/boxel/boxel/packages/host/tests/integration/realm-test.gts",
1154
- "isStrictMode": true
1155
- }), this);
1156
- }
1157
- };
1158
- }
1159
- class Outer extends CardDef {
1160
- static displayName = "Outer2";
1161
- static {
1162
- decorateFieldV2(this.prototype, "inners", [field], function() {
1163
- return containsMany(Inner);
1164
- });
1165
- }
1166
- #inners = (initializeDeferredDecorator(this, "inners"), void 0);
1167
- }
1168
- let { realm, adapter } = await setupIntegrationTestRealm({
1169
- mockMatrixUtils,
1170
- contents: {
1171
- "outer.gts": {
1172
- Outer,
1173
- Inner,
1174
- Other
1175
- },
1176
- "1.json": { data: {
1177
- id: `${testRealmURL}1`,
1178
- attributes: { inners: [{ message: "hello" }] },
1179
- relationships: { owner: { links: { self: null } } },
1180
- meta: { adoptsFrom: {
1181
- module: `${testRealmURL}outer`,
1182
- name: "Outer"
1183
- } }
1184
- } },
1185
- "2.json": { data: {
1186
- id: `${testRealmURL}2`,
1187
- attributes: { name: "Jackie" },
1188
- meta: { adoptsFrom: {
1189
- module: `${testRealmURL}outer`,
1190
- name: "Other"
1191
- } }
1192
- } }
1193
- }
1194
- });
1195
- let response = await handle(realm, new Request(`${testRealmURL}1`, {
1196
- method: "PATCH",
1197
- headers: { Accept: "application/vnd.card+json" },
1198
- body: JSON.stringify({ data: {
1199
- type: "card",
1200
- relationships: { "inners.0.other": { links: { self: `${testRealmURL}2` } } },
1201
- meta: { adoptsFrom: {
1202
- module: `${testRealmURL}outer`,
1203
- name: "Outer"
1204
- } }
1205
- } }, null, 2)
1206
- }));
1207
- assert.strictEqual(response.status, 200, "successful http status");
1208
- let json = await response.json();
1209
- assert.deepEqual(json.data.relationships, {
1210
- "inners.0.other": {
1211
- links: { self: `./2` },
1212
- data: {
1213
- id: `${testRealmURL}2`,
1214
- type: "card"
1215
- }
1216
- },
1217
- "cardInfo.theme": { links: { self: null } }
1218
- });
1219
- assert.deepEqual(JSON.parse(adapter.files.contents["1.json"].content).data.relationships, {
1220
- "cardInfo.theme": { links: { self: null } },
1221
- "inners.0.other": { links: { self: "./2" } }
1222
- });
1223
- });
1224
- (0, import_qunit.test)("realm can remove all items to in a linksToMany relationship via PATCH request", async function(assert) {
1225
- let { realm, adapter } = await setupIntegrationTestRealm({
1226
- mockMatrixUtils,
1227
- contents: {
1228
- "dir/van-gogh.json": { data: {
1229
- id: `${testRealmURL}dir/van-gogh`,
1230
- attributes: { firstName: "Van Gogh" },
1231
- relationships: { owner: { links: { self: null } } },
1232
- meta: { adoptsFrom: {
1233
- module: `https://localhost:4202/test/pet`,
1234
- name: "Pet"
1235
- } }
1236
- } },
1237
- "dir/mango.json": { data: {
1238
- id: `${testRealmURL}dir/mango`,
1239
- attributes: { firstName: "Mango" },
1240
- relationships: { owner: { links: { self: null } } },
1241
- meta: { adoptsFrom: {
1242
- module: `https://localhost:4202/test/pet`,
1243
- name: "Pet"
1244
- } }
1245
- } },
1246
- "jackie.json": { data: {
1247
- id: `${testRealmURL}jackie`,
1248
- attributes: { firstName: "Jackie" },
1249
- relationships: {
1250
- "pets.0": { links: { self: `${testRealmURL}dir/mango` } },
1251
- "pets.1": { links: { self: `${testRealmURL}dir/van-gogh` } }
1252
- },
1253
- meta: { adoptsFrom: {
1254
- module: `https://localhost:4202/test/pet-person`,
1255
- name: "PetPerson"
1256
- } }
1257
- } }
1258
- }
1259
- });
1260
- let response = await handle(realm, new Request(`${testRealmURL}jackie`, {
1261
- method: "PATCH",
1262
- headers: { Accept: "application/vnd.card+json" },
1263
- body: JSON.stringify({ data: {
1264
- type: "card",
1265
- relationships: { pets: { links: { self: null } } },
1266
- meta: { adoptsFrom: {
1267
- module: `https://localhost:4202/test/pet-person`,
1268
- name: "PetPerson"
1269
- } }
1270
- } }, null, 2)
1271
- }));
1272
- let resourceCreatedAt = await getFileCreatedAt(realm, "jackie.json");
1273
- assert.strictEqual(response.status, 200, "successful http status");
1274
- let json = await response.json();
1275
- assert.deepEqual(json.data, {
1276
- type: "card",
1277
- id: `${testRealmURL}jackie`,
1278
- links: { self: `${testRealmURL}jackie` },
1279
- attributes: {
1280
- firstName: "Jackie",
1281
- cardTitle: "Jackie Pet Person",
1282
- cardDescription: "A person with pets",
1283
- cardThumbnailURL: null,
1284
- cardInfo
1285
- },
1286
- relationships: {
1287
- pets: { links: { self: null } },
1288
- friend: { links: { self: null } },
1289
- "cardInfo.theme": { links: { self: null } }
1290
- },
1291
- meta: {
1292
- adoptsFrom: {
1293
- module: `https://localhost:4202/test/pet-person`,
1294
- name: "PetPerson"
1295
- },
1296
- lastModified: adapter.lastModifiedMap.get(`${testRealmURL}jackie.json`),
1297
- resourceCreatedAt,
1298
- realmInfo: testRealmInfo,
1299
- realmURL: testRealmURL
1300
- }
1301
- });
1302
- });
1303
- (0, import_qunit.test)("realm can serve PATCH requests to linksTo field in a card that also has a linksToMany field", async function(assert) {
1304
- let { realm, adapter } = await setupIntegrationTestRealm({
1305
- mockMatrixUtils,
1306
- contents: {
1307
- "dir/van-gogh.json": { data: {
1308
- id: `${testRealmURL}dir/van-gogh`,
1309
- attributes: { firstName: "Van Gogh" },
1310
- relationships: { owner: { links: { self: null } } },
1311
- meta: { adoptsFrom: {
1312
- module: `https://localhost:4202/test/pet`,
1313
- name: "Pet"
1314
- } }
1315
- } },
1316
- "dir/friend.json": { data: {
1317
- id: `${testRealmURL}dir/friend`,
1318
- attributes: {
1319
- firstName: "Hassan",
1320
- lastName: "Abdel-Rahman"
1321
- },
1322
- meta: { adoptsFrom: {
1323
- module: "https://localhost:4202/test/person",
1324
- name: "Person"
1325
- } }
1326
- } },
1327
- "dir/different-friend.json": { data: {
1328
- id: `${testRealmURL}dir/different-friend`,
1329
- attributes: { firstName: "Burcu" },
1330
- meta: { adoptsFrom: {
1331
- module: "https://localhost:4202/test/person",
1332
- name: "Person"
1333
- } }
1334
- } },
1335
- "jackie.json": { data: {
1336
- id: `${testRealmURL}jackie`,
1337
- attributes: { firstName: "Jackie" },
1338
- relationships: {
1339
- "pets.0": { links: { self: `${testRealmURL}dir/van-gogh` } },
1340
- friend: { links: { self: `${testRealmURL}dir/friend` } }
1341
- },
1342
- meta: { adoptsFrom: {
1343
- module: `https://localhost:4202/test/pet-person`,
1344
- name: "PetPerson"
1345
- } }
1346
- } }
1347
- }
1348
- });
1349
- let resourceCreatedAt = await getFileCreatedAt(realm, "jackie.json");
1350
- let response = await handle(realm, new Request(`${testRealmURL}jackie`, {
1351
- method: "PATCH",
1352
- headers: { Accept: "application/vnd.card+json" },
1353
- body: JSON.stringify({ data: {
1354
- type: "card",
1355
- relationships: { friend: { links: { self: `${testRealmURL}dir/different-friend` } } },
1356
- meta: { adoptsFrom: {
1357
- module: `https://localhost:4202/test/pet-person`,
1358
- name: "PetPerson"
1359
- } }
1360
- } }, null, 2)
1361
- }));
1362
- assert.strictEqual(response.status, 200, "successful http status");
1363
- let json = await response.json();
1364
- assert.deepEqual(json.data, {
1365
- type: "card",
1366
- id: `${testRealmURL}jackie`,
1367
- links: { self: `${testRealmURL}jackie` },
1368
- attributes: {
1369
- firstName: "Jackie",
1370
- cardTitle: "Jackie Pet Person",
1371
- cardDescription: "A person with pets",
1372
- cardThumbnailURL: null,
1373
- cardInfo
1374
- },
1375
- relationships: {
1376
- "pets.0": {
1377
- links: { self: `./dir/van-gogh` },
1378
- data: {
1379
- id: `${testRealmURL}dir/van-gogh`,
1380
- type: "card"
1381
- }
1382
- },
1383
- friend: {
1384
- links: { self: `./dir/different-friend` },
1385
- data: {
1386
- id: `${testRealmURL}dir/different-friend`,
1387
- type: "card"
1388
- }
1389
- },
1390
- "cardInfo.theme": { links: { self: null } }
1391
- },
1392
- meta: {
1393
- adoptsFrom: {
1394
- module: `https://localhost:4202/test/pet-person`,
1395
- name: "PetPerson"
1396
- },
1397
- lastModified: adapter.lastModifiedMap.get(`${testRealmURL}jackie.json`),
1398
- resourceCreatedAt,
1399
- realmInfo: testRealmInfo,
1400
- realmURL: testRealmURL
1401
- }
1402
- });
1403
- });
1404
- (0, import_qunit.test)("realm can serve PATCH requests to both linksTo and linksToMany fields", async function(assert) {
1405
- let { realm, adapter } = await setupIntegrationTestRealm({
1406
- mockMatrixUtils,
1407
- contents: {
1408
- "dir/van-gogh.json": { data: {
1409
- id: `${testRealmURL}dir/van-gogh`,
1410
- attributes: { firstName: "Van Gogh" },
1411
- relationships: { owner: { links: { self: null } } },
1412
- meta: { adoptsFrom: {
1413
- module: `https://localhost:4202/test/pet`,
1414
- name: "Pet"
1415
- } }
1416
- } },
1417
- "dir/mango.json": { data: {
1418
- id: `${testRealmURL}dir/mango`,
1419
- attributes: { firstName: "Mango" },
1420
- relationships: { owner: { links: { self: null } } },
1421
- meta: { adoptsFrom: {
1422
- module: `https://localhost:4202/test/pet`,
1423
- name: "Pet"
1424
- } }
1425
- } },
1426
- "dir/friend.json": { data: {
1427
- id: `${testRealmURL}dir/friend`,
1428
- attributes: {
1429
- firstName: "Hassan",
1430
- lastName: "Abdel-Rahman"
1431
- },
1432
- meta: { adoptsFrom: {
1433
- module: "https://localhost:4202/test/person",
1434
- name: "Person"
1435
- } }
1436
- } },
1437
- "dir/different-friend.json": { data: {
1438
- id: `${testRealmURL}dir/different-friend`,
1439
- attributes: { firstName: "Burcu" },
1440
- meta: { adoptsFrom: {
1441
- module: "https://localhost:4202/test/person",
1442
- name: "Person"
1443
- } }
1444
- } },
1445
- "jackie.json": { data: {
1446
- id: `${testRealmURL}jackie`,
1447
- attributes: { firstName: "Jackie" },
1448
- relationships: {
1449
- "pets.0": { links: { self: `${testRealmURL}dir/van-gogh` } },
1450
- friend: { links: { self: `${testRealmURL}dir/friend` } }
1451
- },
1452
- meta: { adoptsFrom: {
1453
- module: `https://localhost:4202/test/pet-person`,
1454
- name: "PetPerson"
1455
- } }
1456
- } }
1457
- }
1458
- });
1459
- let resourceCreatedAt = await getFileCreatedAt(realm, "jackie.json");
1460
- let response = await handle(realm, new Request(`${testRealmURL}jackie`, {
1461
- method: "PATCH",
1462
- headers: { Accept: "application/vnd.card+json" },
1463
- body: JSON.stringify({ data: {
1464
- type: "card",
1465
- relationships: {
1466
- pets: { links: { self: null } },
1467
- friend: { links: { self: `${testRealmURL}dir/different-friend` } }
1468
- },
1469
- meta: { adoptsFrom: {
1470
- module: `https://localhost:4202/test/pet-person`,
1471
- name: "PetPerson"
1472
- } }
1473
- } }, null, 2)
1474
- }));
1475
- assert.strictEqual(response.status, 200, "successful http status");
1476
- let json = await response.json();
1477
- assert.deepEqual(json.data, {
1478
- type: "card",
1479
- id: `${testRealmURL}jackie`,
1480
- links: { self: `${testRealmURL}jackie` },
1481
- attributes: {
1482
- firstName: "Jackie",
1483
- cardTitle: "Jackie Pet Person",
1484
- cardDescription: "A person with pets",
1485
- cardThumbnailURL: null,
1486
- cardInfo
1487
- },
1488
- relationships: {
1489
- pets: { links: { self: null } },
1490
- friend: {
1491
- links: { self: `./dir/different-friend` },
1492
- data: {
1493
- id: `${testRealmURL}dir/different-friend`,
1494
- type: "card"
1495
- }
1496
- },
1497
- "cardInfo.theme": { links: { self: null } }
1498
- },
1499
- meta: {
1500
- adoptsFrom: {
1501
- module: `https://localhost:4202/test/pet-person`,
1502
- name: "PetPerson"
1503
- },
1504
- lastModified: adapter.lastModifiedMap.get(`${testRealmURL}jackie.json`),
1505
- resourceCreatedAt,
1506
- realmInfo: testRealmInfo,
1507
- realmURL: testRealmURL
1508
- }
1509
- });
1510
- });
1511
- (0, import_qunit.test)("realm can serve PATCH requests that include linksTo fields", async function(assert) {
1512
- let { realm, adapter } = await setupIntegrationTestRealm({
1513
- mockMatrixUtils,
1514
- contents: {
1515
- "dir/hassan.json": { data: {
1516
- id: `${testRealmURL}dir/hassan`,
1517
- attributes: {
1518
- firstName: "Hassan",
1519
- lastName: "Abdel-Rahman"
1520
- },
1521
- meta: { adoptsFrom: {
1522
- module: "https://localhost:4202/test/person",
1523
- name: "Person"
1524
- } }
1525
- } },
1526
- "dir/mariko.json": { data: {
1527
- id: `${testRealmURL}dir/mariko`,
1528
- attributes: {
1529
- firstName: "Mariko",
1530
- lastName: "Abdel-Rahman"
1531
- },
1532
- meta: { adoptsFrom: {
1533
- module: "https://localhost:4202/test/person",
1534
- name: "Person"
1535
- } }
1536
- } },
1537
- "dir/mango.json": { data: {
1538
- id: `${testRealmURL}dir/mango`,
1539
- attributes: {
1540
- cardDescription: null,
1541
- cardThumbnailURL: null,
1542
- firstName: "Mango"
1543
- },
1544
- relationships: { owner: { links: { self: `${testRealmURL}dir/hassan` } } },
1545
- meta: { adoptsFrom: {
1546
- module: "https://localhost:4202/test/pet",
1547
- name: "Pet"
1548
- } }
1549
- } }
1550
- }
1551
- });
1552
- let response = await handle(realm, new Request(`${testRealmURL}dir/mango`, {
1553
- method: "PATCH",
1554
- headers: { Accept: "application/vnd.card+json" },
1555
- body: JSON.stringify({ data: {
1556
- type: "card",
1557
- relationships: { owner: { links: { self: `${testRealmURL}dir/mariko` } } },
1558
- meta: { adoptsFrom: {
1559
- module: `${testModuleRealm}pet`,
1560
- name: "Pet"
1561
- } }
1562
- } }, null, 2)
1563
- }));
1564
- assert.strictEqual(response.status, 200, "successful http status");
1565
- let json = await response.json();
1566
- let mangoCreatedAt = await getFileCreatedAt(realm, "dir/mango.json");
1567
- let marikoCreatedAt = await getFileCreatedAt(realm, "dir/mariko.json");
1568
- assert.deepEqual(json, {
1569
- data: {
1570
- type: "card",
1571
- id: `${testRealmURL}dir/mango`,
1572
- attributes: {
1573
- firstName: "Mango",
1574
- cardTitle: "Mango",
1575
- cardDescription: null,
1576
- cardThumbnailURL: null,
1577
- cardInfo
1578
- },
1579
- relationships: {
1580
- owner: {
1581
- links: { self: `./mariko` },
1582
- data: {
1583
- type: "card",
1584
- id: `${testRealmURL}dir/mariko`
1585
- }
1586
- },
1587
- "cardInfo.theme": { links: { self: null } }
1588
- },
1589
- meta: {
1590
- adoptsFrom: {
1591
- module: `${testModuleRealm}pet`,
1592
- name: "Pet"
1593
- },
1594
- lastModified: adapter.lastModifiedMap.get(`${testRealmURL}dir/mango.json`),
1595
- resourceCreatedAt: mangoCreatedAt,
1596
- realmInfo: testRealmInfo,
1597
- realmURL: testRealmURL
1598
- },
1599
- links: { self: `${testRealmURL}dir/mango` }
1600
- },
1601
- included: [{
1602
- type: "card",
1603
- id: `${testRealmURL}dir/mariko`,
1604
- attributes: {
1605
- firstName: "Mariko",
1606
- lastName: "Abdel-Rahman",
1607
- fullName: "Mariko Abdel-Rahman",
1608
- cardTitle: "Mariko Abdel-Rahman",
1609
- cardDescription: "Person",
1610
- email: null,
1611
- posts: null,
1612
- cardThumbnailURL: null,
1613
- cardInfo
1614
- },
1615
- relationships: { "cardInfo.theme": { links: { self: null } } },
1616
- meta: {
1617
- adoptsFrom: {
1618
- module: `${testModuleRealm}person`,
1619
- name: "Person"
1620
- },
1621
- lastModified: adapter.lastModifiedMap.get(`${testRealmURL}dir/mariko.json`),
1622
- resourceCreatedAt: marikoCreatedAt,
1623
- realmInfo: testRealmInfo,
1624
- realmURL: testRealmURL
1625
- },
1626
- links: { self: `./mariko` }
1627
- }]
1628
- });
1629
- let fileRef = await adapter.openFile("dir/mango.json");
1630
- if (!fileRef) throw new Error("file not found");
1631
- assert.deepEqual(JSON.parse(fileRef.content), { data: {
1632
- type: "card",
1633
- attributes: {
1634
- firstName: "Mango",
1635
- cardInfo
1636
- },
1637
- relationships: {
1638
- owner: { links: { self: `./mariko` } },
1639
- "cardInfo.theme": { links: { self: null } }
1640
- },
1641
- meta: { adoptsFrom: {
1642
- module: `${testModuleRealm}pet`,
1643
- name: "Pet"
1644
- } }
1645
- } }, "file contents are correct");
1646
- });
1647
- (0, import_qunit.test)("realm can serve PATCH requests that include polymorphic updates", async function(assert) {
1648
- class Driver extends CardDef {
1649
- static {
1650
- decorateFieldV2(this.prototype, "card", [field], function() {
1651
- return contains(FieldDef);
1652
- });
1653
- }
1654
- #card = (initializeDeferredDecorator(this, "card"), void 0);
1655
- }
1656
- class Person extends FieldDef {
1657
- static {
1658
- decorateFieldV2(this.prototype, "firstName", [field], function() {
1659
- return contains(StringField);
1660
- });
1661
- }
1662
- #firstName = (initializeDeferredDecorator(this, "firstName"), void 0);
1663
- }
1664
- class Car extends FieldDef {
1665
- static {
1666
- decorateFieldV2(this.prototype, "make", [field], function() {
1667
- return contains(StringField);
1668
- });
1669
- }
1670
- #make = (initializeDeferredDecorator(this, "make"), void 0);
1671
- static {
1672
- decorateFieldV2(this.prototype, "model", [field], function() {
1673
- return contains(StringField);
1674
- });
1675
- }
1676
- #model = (initializeDeferredDecorator(this, "model"), void 0);
1677
- static {
1678
- decorateFieldV2(this.prototype, "year", [field], function() {
1679
- return contains(StringField);
1680
- });
1681
- }
1682
- #year = (initializeDeferredDecorator(this, "year"), void 0);
1683
- }
1684
- let { realm, adapter } = await setupIntegrationTestRealm({
1685
- mockMatrixUtils,
1686
- contents: {
1687
- "driver.gts": { Driver },
1688
- "person.gts": { Person },
1689
- "car.gts": { Car },
1690
- "dir/driver.json": { data: {
1691
- id: `${testRealmURL}dir/driver`,
1692
- attributes: { card: { firstName: "Mango" } },
1693
- meta: {
1694
- adoptsFrom: {
1695
- module: `${testRealmURL}driver`,
1696
- name: "Driver"
1697
- },
1698
- fields: { card: { adoptsFrom: {
1699
- module: `${testRealmURL}person`,
1700
- name: "Person"
1701
- } } }
1702
- }
1703
- } }
1704
- }
1705
- });
1706
- let resourceCreatedAt = await getFileCreatedAt(realm, "dir/driver.json");
1707
- let response = await handle(realm, new Request(`${testRealmURL}dir/driver`, {
1708
- method: "PATCH",
1709
- headers: { Accept: "application/vnd.card+json" },
1710
- body: JSON.stringify({ data: {
1711
- type: "card",
1712
- attributes: { card: {
1713
- firstName: null,
1714
- make: "Mercedes Benz",
1715
- model: "C300",
1716
- year: "2024"
1717
- } },
1718
- meta: {
1719
- adoptsFrom: {
1720
- module: `${testRealmURL}driver`,
1721
- name: "Driver"
1722
- },
1723
- fields: { card: { adoptsFrom: {
1724
- module: `${testRealmURL}car`,
1725
- name: "Car"
1726
- } } }
1727
- }
1728
- } }, null, 2)
1729
- }));
1730
- assert.strictEqual(response.status, 200, "successful http status");
1731
- let json = await response.json();
1732
- assert.deepEqual(json, { data: {
1733
- type: "card",
1734
- id: `${testRealmURL}dir/driver`,
1735
- attributes: {
1736
- card: {
1737
- make: "Mercedes Benz",
1738
- model: "C300",
1739
- year: "2024"
1740
- },
1741
- cardDescription: null,
1742
- cardThumbnailURL: null,
1743
- cardTitle: "Untitled Card",
1744
- cardInfo
1745
- },
1746
- relationships: { "cardInfo.theme": { links: { self: null } } },
1747
- meta: {
1748
- adoptsFrom: {
1749
- module: `../driver`,
1750
- name: "Driver"
1751
- },
1752
- fields: { card: { adoptsFrom: {
1753
- module: `../car`,
1754
- name: "Car"
1755
- } } },
1756
- lastModified: adapter.lastModifiedMap.get(`${testRealmURL}dir/driver.json`),
1757
- resourceCreatedAt,
1758
- realmInfo: testRealmInfo,
1759
- realmURL: testRealmURL
1760
- },
1761
- links: { self: `${testRealmURL}dir/driver` }
1762
- } });
1763
- let fileRef = await adapter.openFile("dir/driver.json");
1764
- if (!fileRef) throw new Error("file not found");
1765
- assert.deepEqual(JSON.parse(fileRef.content), { data: {
1766
- type: "card",
1767
- attributes: {
1768
- card: {
1769
- make: "Mercedes Benz",
1770
- model: "C300",
1771
- year: "2024"
1772
- },
1773
- cardInfo
1774
- },
1775
- relationships: { "cardInfo.theme": { links: { self: null } } },
1776
- meta: {
1777
- adoptsFrom: {
1778
- module: `../driver`,
1779
- name: "Driver"
1780
- },
1781
- fields: { card: { adoptsFrom: {
1782
- module: `../car`,
1783
- name: "Car"
1784
- } } }
1785
- }
1786
- } }, "file contents are correct");
1787
- });
1788
- (0, import_qunit.test)("realm returns 400 error for PATCH requests that change the type of the underlying instance", async function(assert) {
1789
- class Person extends CardDef {
1790
- static {
1791
- decorateFieldV2(this.prototype, "firstName", [field], function() {
1792
- return contains(StringField);
1793
- });
1794
- }
1795
- #firstName = (initializeDeferredDecorator(this, "firstName"), void 0);
1796
- }
1797
- class Car extends CardDef {
1798
- static {
1799
- decorateFieldV2(this.prototype, "make", [field], function() {
1800
- return contains(StringField);
1801
- });
1802
- }
1803
- #make = (initializeDeferredDecorator(this, "make"), void 0);
1804
- static {
1805
- decorateFieldV2(this.prototype, "model", [field], function() {
1806
- return contains(StringField);
1807
- });
1808
- }
1809
- #model = (initializeDeferredDecorator(this, "model"), void 0);
1810
- static {
1811
- decorateFieldV2(this.prototype, "year", [field], function() {
1812
- return contains(StringField);
1813
- });
1814
- }
1815
- #year = (initializeDeferredDecorator(this, "year"), void 0);
1816
- }
1817
- let { realm, adapter } = await setupIntegrationTestRealm({
1818
- mockMatrixUtils,
1819
- contents: {
1820
- "person.gts": { Person },
1821
- "car.gts": { Car },
1822
- "dir/person.json": { data: {
1823
- attributes: { firstName: "Mango" },
1824
- meta: { adoptsFrom: {
1825
- module: `../person`,
1826
- name: "Person"
1827
- } }
1828
- } }
1829
- }
1830
- });
1831
- let response = await handle(realm, new Request(`${testRealmURL}dir/person`, {
1832
- method: "PATCH",
1833
- headers: { Accept: "application/vnd.card+json" },
1834
- body: JSON.stringify({ data: {
1835
- type: "card",
1836
- attributes: {
1837
- make: "Mercedes Benz",
1838
- model: "C300",
1839
- year: "2024"
1840
- },
1841
- meta: { adoptsFrom: {
1842
- module: `${testRealmURL}car`,
1843
- name: "Car"
1844
- } }
1845
- } }, null, 2)
1846
- }));
1847
- assert.strictEqual(response.status, 400, "400 server error");
1848
- let fileRef = await adapter.openFile("dir/person.json");
1849
- if (!fileRef) throw new Error("file not found");
1850
- assert.deepEqual(JSON.parse(fileRef.content), { data: {
1851
- attributes: { firstName: "Mango" },
1852
- meta: { adoptsFrom: {
1853
- module: `../person`,
1854
- name: "Person"
1855
- } }
1856
- } }, "file contents are correct");
1857
- });
1858
- (0, import_qunit.test)("realm returns 500 error for PATCH requests that set the value of a polymorphic field to an incompatible type", async function(assert) {
1859
- class Person extends FieldDef {
1860
- static {
1861
- decorateFieldV2(this.prototype, "firstName", [field], function() {
1862
- return contains(StringField);
1863
- });
1864
- }
1865
- #firstName = (initializeDeferredDecorator(this, "firstName"), void 0);
1866
- }
1867
- class Car extends FieldDef {
1868
- static {
1869
- decorateFieldV2(this.prototype, "make", [field], function() {
1870
- return contains(StringField);
1871
- });
1872
- }
1873
- #make = (initializeDeferredDecorator(this, "make"), void 0);
1874
- static {
1875
- decorateFieldV2(this.prototype, "model", [field], function() {
1876
- return contains(StringField);
1877
- });
1878
- }
1879
- #model = (initializeDeferredDecorator(this, "model"), void 0);
1880
- static {
1881
- decorateFieldV2(this.prototype, "year", [field], function() {
1882
- return contains(StringField);
1883
- });
1884
- }
1885
- #year = (initializeDeferredDecorator(this, "year"), void 0);
1886
- }
1887
- class Driver extends CardDef {
1888
- static {
1889
- decorateFieldV2(this.prototype, "card", [field], function() {
1890
- return contains(Person);
1891
- });
1892
- }
1893
- #card = (initializeDeferredDecorator(this, "card"), void 0);
1894
- }
1895
- let { realm } = await setupIntegrationTestRealm({
1896
- mockMatrixUtils,
1897
- contents: {
1898
- "driver.gts": { Driver },
1899
- "person.gts": { Person },
1900
- "car.gts": { Car },
1901
- "dir/driver.json": { data: {
1902
- attributes: { card: { firstName: "Mango" } },
1903
- meta: {
1904
- adoptsFrom: {
1905
- module: `${testRealmURL}driver`,
1906
- name: "Driver"
1907
- },
1908
- fields: { card: { adoptsFrom: {
1909
- module: `../person`,
1910
- name: "Person"
1911
- } } }
1912
- }
1913
- } }
1914
- }
1915
- });
1916
- try {
1917
- globalThis.__emulateServerPatchFailure = true;
1918
- let response = await handle(realm, new Request(`${testRealmURL}dir/driver`, {
1919
- method: "PATCH",
1920
- headers: { Accept: "application/vnd.card+json" },
1921
- body: JSON.stringify({ data: {
1922
- type: "card",
1923
- attributes: { card: {
1924
- firstName: null,
1925
- make: "Mercedes Benz",
1926
- model: "C300",
1927
- year: "2024"
1928
- } },
1929
- meta: {
1930
- adoptsFrom: {
1931
- module: `${testRealmURL}driver`,
1932
- name: "Driver"
1933
- },
1934
- fields: { card: { adoptsFrom: {
1935
- module: `${testRealmURL}car`,
1936
- name: "Car"
1937
- } } }
1938
- }
1939
- } }, null, 2)
1940
- }));
1941
- assert.strictEqual(response.status, 500, "500 server error");
1942
- let json = await response.json();
1943
- assert.strictEqual(json.errors[0].additionalErrors[0].errorDetail.message, "field validation error: tried set instance of Car as field 'card' but it is not an instance of Person");
1944
- } finally {
1945
- delete globalThis.__emulateServerPatchFailure;
1946
- }
1947
- });
1948
- (0, import_qunit.test)("realm can serve delete card requests", async function(assert) {
1949
- let { realm, adapter } = await setupIntegrationTestRealm({
1950
- mockMatrixUtils,
1951
- contents: {
1952
- "cards/1.json": { data: { meta: { adoptsFrom: {
1953
- module: "https://cardstack.com/base/card-api",
1954
- name: "CardDef"
1955
- } } } },
1956
- "cards/2.json": { data: { meta: { adoptsFrom: {
1957
- module: "https://cardstack.com/base/card-api",
1958
- name: "CardDef"
1959
- } } } }
1960
- }
1961
- });
1962
- let queryEngine = realm.realmIndexQueryEngine;
1963
- let { data: cards } = await queryEngine.searchCards({});
1964
- assert.strictEqual(cards.length, 2, "two cards found");
1965
- let result = await queryEngine.cardDocument(new URL(`${testRealmURL}cards/2`));
1966
- if (result?.type === "error") throw new Error(`unexpected error when getting card from index: ${result.error.errorDetail.message}`);
1967
- assert.strictEqual(result?.doc.data.id, `${testRealmURL}cards/2`, "found card in index");
1968
- let response = await handle(realm, new Request(`${testRealmURL}cards/2`, {
1969
- method: "DELETE",
1970
- headers: { Accept: "application/vnd.card+json" }
1971
- }));
1972
- await realm.flushUpdateEvents();
1973
- assert.strictEqual(response.status, 204, "status was 204");
1974
- result = await queryEngine.cardDocument(new URL(`${testRealmURL}cards/2`));
1975
- assert.strictEqual(result, void 0, "card was deleted");
1976
- let deletedFile = await adapter.openFile("cards/2.json");
1977
- assert.strictEqual(deletedFile, void 0, "underlying file for deleted card no longer exists");
1978
- result = await queryEngine.cardDocument(new URL(`${testRealmURL}cards/1`));
1979
- if (result?.type === "error") throw new Error(`unexpected error when getting card from index: ${result.error.errorDetail.message}`);
1980
- assert.strictEqual(result?.doc.data.id, `${testRealmURL}cards/1`, "card 1 is still there");
1981
- cards = (await queryEngine.searchCards({})).data;
1982
- assert.strictEqual(cards.length, 1, "only one card remains");
1983
- });
1984
- (0, import_qunit.test)("realm can serve card source file", async function(assert) {
1985
- let { realm } = await setupIntegrationTestRealm({
1986
- mockMatrixUtils,
1987
- contents: { "dir/person.gts": cardSrc }
1988
- });
1989
- let response = await handle(realm, new Request(`${testRealmURL}dir/person.gts`, { headers: { Accept: "application/vnd.card+source" } }));
1990
- assert.strictEqual(response.status, 200, "200 HTTP status");
1991
- let responseText = await response.text();
1992
- assert.strictEqual(responseText, cardSrc, "the card source is correct");
1993
- assert.ok(response.headers.get("last-modified"), "last-modified header exists");
1994
- });
1995
- (0, import_qunit.test)("realm provide redirect for card source", async function(assert) {
1996
- let { realm } = await setupIntegrationTestRealm({
1997
- mockMatrixUtils,
1998
- contents: { "dir/person.gts": cardSrc }
1999
- });
2000
- let response = await handle(realm, new Request(`${testRealmURL}dir/person`, { headers: { Accept: "application/vnd.card+source" } }));
2001
- assert.strictEqual(response.status, 302, "302 HTTP status");
2002
- assert.strictEqual(response.headers.get("Location"), "/test/dir/person.gts", "Location header is correct");
2003
- });
2004
- (0, import_qunit.test)("realm returns 404 when no card source can be found", async function(assert) {
2005
- let { realm } = await setupIntegrationTestRealm({
2006
- mockMatrixUtils,
2007
- contents: {}
2008
- });
2009
- let response = await handle(realm, new Request(`${testRealmURL}dir/person`, { headers: { Accept: "application/vnd.card+source" } }));
2010
- assert.strictEqual(response.status, 404, "404 HTTP status");
2011
- });
2012
- (0, import_qunit.test)("realm can serve card source post request", async function(assert) {
2013
- let { realm } = await setupIntegrationTestRealm({
2014
- mockMatrixUtils,
2015
- contents: {}
2016
- });
2017
- {
2018
- let response = await handle(realm, new Request(`${testRealmURL}dir/person.gts`, {
2019
- method: "POST",
2020
- headers: { Accept: "application/vnd.card+source" },
2021
- body: cardSrc
2022
- }));
2023
- await realm.flushUpdateEvents();
2024
- assert.strictEqual(response.status, 204, "HTTP status is 204");
2025
- assert.ok(response.headers.get("last-modified"), "last-modified header exists");
2026
- }
2027
- {
2028
- let response = await handle(realm, new Request(`${testRealmURL}dir/person.gts`, { headers: { Accept: "application/vnd.card+source" } }));
2029
- assert.strictEqual(response.status, 200, "200 HTTP status");
2030
- let responseText = await response.text();
2031
- assert.strictEqual(responseText, cardSrc, "the card source is correct");
2032
- }
2033
- });
2034
- (0, import_qunit.test)("realm can serve card source delete request", async function(assert) {
2035
- let { field, contains, CardDef } = await loader.import("https://cardstack.com/base/card-api");
2036
- let { default: StringField } = await loader.import("https://cardstack.com/base/string");
2037
- class Person extends CardDef {
2038
- static {
2039
- decorateFieldV2(this.prototype, "firstName", [field], function() {
2040
- return contains(StringField);
2041
- });
2042
- }
2043
- #firstName = (initializeDeferredDecorator(this, "firstName"), void 0);
2044
- static {
2045
- decorateFieldV2(this.prototype, "lastName", [field], function() {
2046
- return contains(StringField);
2047
- });
2048
- }
2049
- #lastName = (initializeDeferredDecorator(this, "lastName"), void 0);
2050
- }
2051
- let { realm } = await setupIntegrationTestRealm({
2052
- mockMatrixUtils,
2053
- contents: { "person.gts": { Person } }
2054
- });
2055
- let response = await handle(realm, new Request(`${testRealmURL}person`, { headers: { Accept: "application/vnd.card+source" } }));
2056
- await realm.flushUpdateEvents();
2057
- assert.strictEqual(response.status, 302, "file exists");
2058
- response = await handle(realm, new Request(`${testRealmURL}person`, {
2059
- method: "DELETE",
2060
- headers: { Accept: "application/vnd.card+source" }
2061
- }));
2062
- await realm.flushUpdateEvents();
2063
- assert.strictEqual(response.status, 204, "file is deleted");
2064
- response = await handle(realm, new Request(`${testRealmURL}person`, { headers: { Accept: "application/vnd.card+source" } }));
2065
- assert.strictEqual(response.status, 404, "file no longer exists");
2066
- });
2067
- (0, import_qunit.test)("realm can serve compiled js file when requested without file extension ", async function(assert) {
2068
- let { realm } = await setupIntegrationTestRealm({
2069
- mockMatrixUtils,
2070
- contents: { "dir/person.gts": cardSrc }
2071
- });
2072
- let response = await handle(realm, new Request(`${testRealmURL}dir/person`));
2073
- assert.strictEqual(response.status, 200, "HTTP 200 status code");
2074
- let compiledJS = await response.text();
2075
- assert.codeEqual(stripScopedCSSGlimmerAttributes(compiledJS.replace(/"id":\s"[^"]+"/, "\"id\": \"<id>\"")), compiledCard("\"<id>\""), "compiled card is correct");
2076
- });
2077
- (0, import_qunit.test)("realm can serve compiled js file when requested with file extension ", async function(assert) {
2078
- let { realm } = await setupIntegrationTestRealm({
2079
- mockMatrixUtils,
2080
- contents: { "dir/person.gts": cardSrc }
2081
- });
2082
- let response = await handle(realm, new Request(`${testRealmURL}dir/person.gts`));
2083
- assert.strictEqual(response.status, 200, "HTTP 200 status code");
2084
- let compiledJS = await response.text();
2085
- assert.codeEqual(stripScopedCSSGlimmerAttributes(compiledJS.replace(/"id":\s"[^"]+"/, "\"id\": \"<id>\"")), compiledCard("\"<id>\""), "compiled card is correct");
2086
- });
2087
- (0, import_qunit.test)("realm can serve file asset (not card source, not js, not JSON-API)", async function(assert) {
2088
- let html = `
2089
- <html>
2090
- <body>
2091
- <h1>Hello World</h1>
2092
- </body>
2093
- </html>
2094
- `.trim();
2095
- let { realm } = await setupIntegrationTestRealm({
2096
- mockMatrixUtils,
2097
- contents: { "dir/index.html": html }
2098
- });
2099
- let response = await handle(realm, new Request(`${testRealmURL}dir/index.html`));
2100
- assert.strictEqual(response.status, 200, "HTTP 200 status code");
2101
- let responseText = await response.text();
2102
- assert.strictEqual(responseText, html, "asset contents are correct");
2103
- });
2104
- (0, import_qunit.test)("realm can serve search requests", async function(assert) {
2105
- let { realm } = await setupIntegrationTestRealm({
2106
- mockMatrixUtils,
2107
- contents: { "dir/empty.json": { data: {
2108
- attributes: {},
2109
- meta: { adoptsFrom: {
2110
- module: "https://cardstack.com/base/card-api",
2111
- name: "CardDef"
2112
- } }
2113
- } } }
2114
- });
2115
- let json = await (await handle(realm, new Request(`${testRealmURL}_search`, {
2116
- method: "QUERY",
2117
- headers: { Accept: "application/vnd.card+json" },
2118
- body: JSON.stringify({})
2119
- }))).json();
2120
- assert.strictEqual(json.data.length, 1, "the card is returned in the search results");
2121
- assert.strictEqual(json.data[0].id, `${testRealmURL}dir/empty`, "card ID is correct");
2122
- });
2123
- (0, import_qunit.test)("realm can serve search requests whose results have linksTo fields", async function(assert) {
2124
- let { realm } = await setupIntegrationTestRealm({
2125
- mockMatrixUtils,
2126
- contents: {
2127
- "dir/mariko.json": { data: {
2128
- id: `${testRealmURL}dir/mariko`,
2129
- attributes: {
2130
- firstName: "Mariko",
2131
- lastName: "Abdel-Rahman"
2132
- },
2133
- meta: { adoptsFrom: {
2134
- module: `${testModuleRealm}person`,
2135
- name: "Person"
2136
- } }
2137
- } },
2138
- "dir/mango.json": { data: {
2139
- id: `${testRealmURL}dir/mango`,
2140
- attributes: {
2141
- cardDescription: null,
2142
- cardThumbnailURL: null,
2143
- firstName: "Mango"
2144
- },
2145
- relationships: { owner: { links: { self: `${testRealmURL}dir/mariko` } } },
2146
- meta: { adoptsFrom: {
2147
- module: `${testModuleRealm}pet`,
2148
- name: "Pet"
2149
- } }
2150
- } },
2151
- "dir/vanGogh.json": { data: {
2152
- id: `${testRealmURL}dir/vanGogh`,
2153
- attributes: { firstName: "Van Gogh" },
2154
- relationships: { owner: { links: { self: `${testModuleRealm}hassan` } } },
2155
- meta: { adoptsFrom: {
2156
- module: `${testModuleRealm}pet`,
2157
- name: "Pet"
2158
- } }
2159
- } }
2160
- }
2161
- });
2162
- let json = await (await handle(realm, new Request(`${testRealmURL}_search`, {
2163
- method: "QUERY",
2164
- headers: { Accept: "application/vnd.card+json" },
2165
- body: JSON.stringify({ sort: [{
2166
- by: "id",
2167
- on: {
2168
- module: `${baseRealm.url}card-api`,
2169
- name: "CardDef"
2170
- }
2171
- }] })
2172
- }))).json();
2173
- delete json.included?.[0].meta.lastModified;
2174
- delete json.included?.[0].meta.resourceCreatedAt;
2175
- let mangoCreatedAt = await getFileCreatedAt(realm, "dir/mango.json");
2176
- let marikoCreatedAt = await getFileCreatedAt(realm, "dir/mariko.json");
2177
- let vanGoghCreatedAt = await getFileCreatedAt(realm, "dir/vanGogh.json");
2178
- let resources = json.data;
2179
- assert.strictEqual(resources.length, 3, "returns 3 cards");
2180
- assert.strictEqual(json.meta.page.total, 3, "meta page total is 3");
2181
- let mango = resources.find((r) => r.id === `${testRealmURL}dir/mango`);
2182
- assert.ok(mango, "mango is in results");
2183
- assert.strictEqual(mango.attributes.firstName, "Mango", "mango name");
2184
- assert.strictEqual(mango.relationships.owner.links.self, "./mariko", "mango owner self link");
2185
- assert.strictEqual(mango.relationships.owner.data.id, `${testRealmURL}dir/mariko`, "mango owner id");
2186
- assert.strictEqual(mango.relationships["cardInfo.theme"].links.self, null, "mango theme is null");
2187
- assert.strictEqual(mango.meta.resourceCreatedAt, mangoCreatedAt, "mango createdAt");
2188
- let mariko = resources.find((r) => r.id === `${testRealmURL}dir/mariko`);
2189
- assert.ok(mariko, "mariko is in results");
2190
- assert.strictEqual(mariko.attributes.fullName, "Mariko Abdel-Rahman", "mariko fullName");
2191
- assert.strictEqual(mariko.relationships["cardInfo.theme"].links.self, null, "mariko theme is null");
2192
- assert.strictEqual(mariko.meta.resourceCreatedAt, marikoCreatedAt, "mariko createdAt");
2193
- let vanGogh = resources.find((r) => r.id === `${testRealmURL}dir/vanGogh`);
2194
- assert.ok(vanGogh, "vanGogh is in results");
2195
- assert.strictEqual(vanGogh.relationships.owner.links.self, `${testModuleRealm}hassan`, "vanGogh owner self link");
2196
- assert.strictEqual(vanGogh.relationships.owner.data.id, `${testModuleRealm}hassan`, "vanGogh owner id");
2197
- assert.strictEqual(vanGogh.relationships["cardInfo.theme"].links.self, null, "vanGogh theme is null");
2198
- assert.strictEqual(vanGogh.meta.resourceCreatedAt, vanGoghCreatedAt, "vanGogh createdAt");
2199
- let hassan = (json.included ?? []).find((r) => r.id === `${testModuleRealm}hassan`);
2200
- assert.ok(hassan, "hassan is included");
2201
- assert.strictEqual(hassan.relationships["cardInfo.theme"].links.self, null, "included hassan theme is null");
2202
- });
2203
- (0, import_qunit.test)("included card uses correct module path when realm is mounted", async function(assert) {
2204
- let mountedRealmURL = "https://localhost:4201/mounted-test/";
2205
- let spreadsheet1Id = "spreadsheet-1";
2206
- let spreadsheet2Id = "spreadsheet-2";
2207
- class Spreadsheet extends CardDef {
2208
- static displayName = "Spreadsheet";
2209
- static {
2210
- decorateFieldV2(this.prototype, "name", [field], function() {
2211
- return contains(StringField);
2212
- });
2213
- }
2214
- #name = (initializeDeferredDecorator(this, "name"), void 0);
2215
- }
2216
- class CatalogIndex extends CardDef {
2217
- static displayName = "CatalogIndex";
2218
- static {
2219
- decorateFieldV2(this.prototype, "spreadsheets", [field], function() {
2220
- return linksToMany(Spreadsheet);
2221
- });
2222
- }
2223
- #spreadsheets = (initializeDeferredDecorator(this, "spreadsheets"), void 0);
2224
- }
2225
- let { realm } = await setupIntegrationTestRealm({
2226
- mockMatrixUtils,
2227
- realmURL: mountedRealmURL,
2228
- contents: {
2229
- "spreadsheet/spreadsheet.gts": { Spreadsheet },
2230
- "index.gts": { CatalogIndex },
2231
- [`spreadsheet/Spreadsheet/${spreadsheet1Id}.json`]: { data: {
2232
- attributes: { name: "Sheet 1" },
2233
- meta: { adoptsFrom: {
2234
- module: "../spreadsheet",
2235
- name: "Spreadsheet"
2236
- } }
2237
- } },
2238
- [`spreadsheet/Spreadsheet/${spreadsheet2Id}.json`]: { data: {
2239
- attributes: { name: "Sheet 2" },
2240
- meta: { adoptsFrom: {
2241
- module: "../spreadsheet",
2242
- name: "Spreadsheet"
2243
- } }
2244
- } },
2245
- "index.json": { data: {
2246
- relationships: {
2247
- "spreadsheets.0": { links: { self: `./spreadsheet/Spreadsheet/${spreadsheet1Id}` } },
2248
- "spreadsheets.1": { links: { self: `./spreadsheet/Spreadsheet/${spreadsheet2Id}` } }
2249
- },
2250
- meta: { adoptsFrom: {
2251
- module: "./index",
2252
- name: "CatalogIndex"
2253
- } }
2254
- } }
2255
- }
2256
- });
2257
- let response = await handle(realm, new Request(`${mountedRealmURL}index`, { headers: { Accept: "application/vnd.card+json" } }));
2258
- assert.strictEqual(response.status, 200, "successful http status");
2259
- let included = (await response.json()).included?.find((resource) => resource.id === `${mountedRealmURL}spreadsheet/Spreadsheet/${spreadsheet1Id}`);
2260
- assert.ok(included, "linked spreadsheet card is included");
2261
- assert.strictEqual(included?.meta?.adoptsFrom?.module, "./spreadsheet/spreadsheet", "adoptsFrom.module has the correct path");
2262
- });
2263
- (0, import_qunit.test)("realm can serve directory requests", async function(assert) {
2264
- let { realm, adapter } = await setupIntegrationTestRealm({
2265
- mockMatrixUtils,
2266
- contents: {
2267
- "dir/empty.json": { data: {
2268
- attributes: {},
2269
- meta: { adoptsFrom: {
2270
- module: "https://cardstack.com/base/card-api",
2271
- name: "CardDef"
2272
- } }
2273
- } },
2274
- "dir/subdir/file.txt": ""
2275
- }
2276
- });
2277
- let response = await handle(realm, new Request(`${testRealmURL}dir/`, { headers: { Accept: "application/vnd.api+json" } }));
2278
- assert.strictEqual(response.status, 200, "HTTP 200 status code");
2279
- let json = await response.json();
2280
- let resourceCreatedAt = await getFileCreatedAt(realm, "dir/empty.json");
2281
- assert.deepEqual(json, { data: {
2282
- id: `${testRealmURL}dir/`,
2283
- type: "directory",
2284
- relationships: {
2285
- "subdir/": {
2286
- links: { related: `${testRealmURL}dir/subdir/` },
2287
- meta: { kind: "directory" }
2288
- },
2289
- "empty.json": {
2290
- links: { related: `${testRealmURL}dir/empty.json` },
2291
- meta: {
2292
- kind: "file",
2293
- lastModified: adapter.lastModifiedMap.get(`${testRealmURL}dir/empty.json`),
2294
- resourceCreatedAt
2295
- }
2296
- }
2297
- }
2298
- } }, "the directory response is correct");
2299
- });
2300
- (0, import_qunit.test)("requests do not contain entries that match patterns in ignore files", async function(assert) {
2301
- const cardSource = `
2302
- import { CardDef } from 'https://cardstack.com/base/card-api';
2303
- export class Post extends CardDef {}
2304
- `;
2305
- let { realm } = await setupIntegrationTestRealm({
2306
- mockMatrixUtils,
2307
- contents: {
2308
- "sample-post.json": "",
2309
- "posts/1.json": "",
2310
- "posts/nested.gts": cardSource,
2311
- "posts/ignore-me.gts": cardSource,
2312
- "posts/2.json": "",
2313
- "post.gts": cardSource,
2314
- "dir/card.gts": cardSource,
2315
- ".gitignore": `
2316
- *.json
2317
- /dir
2318
- posts/ignore-me.gts
2319
- `
2320
- }
2321
- });
2322
- {
2323
- let response = await handle(realm, new Request(`${testRealmURL}dir/`, { headers: { Accept: "application/vnd.api+json" } }));
2324
- assert.strictEqual(response.status, 404, "HTTP 404 response");
2325
- }
2326
- {
2327
- let json = await (await handle(realm, new Request(testRealmURL, { headers: { Accept: "application/vnd.api+json" } }))).json();
2328
- assert.deepEqual(Object.keys(json.data.relationships).sort(), [
2329
- ".gitignore",
2330
- "post.gts",
2331
- "posts/"
2332
- ], "top level entries are correct");
2333
- }
2334
- {
2335
- let json = await (await handle(realm, new Request(`${testRealmURL}posts/`, { headers: { Accept: "application/vnd.api+json" } }))).json();
2336
- assert.deepEqual(Object.keys(json.data.relationships).sort(), ["nested.gts"], "nested entries are correct");
2337
- }
2338
- });
2339
- (0, import_qunit.test)("realm can serve info requests by reading the RealmConfig card", async function(assert) {
2340
- let { realm } = await setupIntegrationTestRealm({
2341
- mockMatrixUtils,
2342
- contents: { "realm.json": realmConfigCardJSON({
2343
- name: "Example Workspace",
2344
- backgroundURL: "https://example-background-url.com",
2345
- iconURL: "https://example-icon-url.com"
2346
- }) }
2347
- });
2348
- let json = await (await handle(realm, new Request(`${testRealmURL}_info`, {
2349
- method: "QUERY",
2350
- headers: { Accept: "application/vnd.api+json" }
2351
- }))).json();
2352
- assert.strictEqual(json.data.id, testRealmURL, "id is correct");
2353
- assert.strictEqual(json.data.type, "realm-info", "type is correct");
2354
- let attributes = json.data.attributes;
2355
- assert.strictEqual(attributes.name, "Example Workspace", "name");
2356
- assert.strictEqual(attributes.backgroundURL, "https://example-background-url.com", "backgroundURL");
2357
- assert.strictEqual(attributes.iconURL, "https://example-icon-url.com", "iconURL");
2358
- assert.strictEqual(attributes.realmUserId, "@realm_server:localhost", "realmUserId");
2359
- assert.strictEqual(attributes.showAsCatalog, null, "showAsCatalog");
2360
- assert.strictEqual(attributes.visibility, "public", "visibility");
2361
- assert.strictEqual(attributes.publishable, null, "publishable");
2362
- assert.strictEqual(attributes.lastPublishedAt, null, "lastPublishedAt");
2363
- assert.strictEqual(attributes.includePrerenderedDefaultRealmIndex, null, "includePrerenderedDefaultRealmIndex");
2364
- });
2365
- (0, import_qunit.test)("realm can serve info requests if the RealmConfig card is missing", async function(assert) {
2366
- let { realm } = await setupIntegrationTestRealm({
2367
- mockMatrixUtils,
2368
- contents: {}
2369
- });
2370
- let json = await (await handle(realm, new Request(`${testRealmURL}_info`, {
2371
- method: "QUERY",
2372
- headers: { Accept: "application/vnd.api+json" }
2373
- }))).json();
2374
- assert.deepEqual(json, { data: {
2375
- id: testRealmURL,
2376
- type: "realm-info",
2377
- attributes: testRealmInfo
2378
- } }, "/_info response is correct");
2379
- });
2380
- (0, import_qunit.test)("realm can serve info requests if the RealmConfig card is malformed", async function(assert) {
2381
- let { realm } = await setupIntegrationTestRealm({
2382
- mockMatrixUtils,
2383
- contents: { "realm.json": `Some example content that is not valid json` }
2384
- });
2385
- let json = await (await handle(realm, new Request(`${testRealmURL}_info`, {
2386
- method: "QUERY",
2387
- headers: { Accept: "application/vnd.api+json" }
2388
- }))).json();
2389
- assert.deepEqual(json, { data: {
2390
- id: testRealmURL,
2391
- type: "realm-info",
2392
- attributes: testRealmInfo
2393
- } }, "/_info response is correct");
2394
- });
2395
- (0, import_qunit.test)("realm does not crash when indexing a broken instance", async function(assert) {
2396
- await setupIntegrationTestRealm({
2397
- mockMatrixUtils,
2398
- contents: { "FieldDef/1.json": { data: {
2399
- type: "card",
2400
- meta: { adoptsFrom: {
2401
- module: "https://cardstack.com/base/card-api",
2402
- name: "FieldDef"
2403
- } }
2404
- } } }
2405
- });
2406
- assert.ok(true, "realm did not crash when trying to index a broken instance");
2407
- });
2408
- });
2409
- //#endregion