@ai-matrx/records 0.84.2 → 0.84.3

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.
@@ -390,9 +390,20 @@ function takePrimedDoorAnswer(key) {
390
390
  registry2.delete(key);
391
391
  return null;
392
392
  }
393
- function dropPrimedDoorAnswers() {
394
- doorRegistry().clear();
393
+ function dropPrimedDoorAnswers(doors) {
394
+ const registry2 = doorRegistry();
395
+ if (!doors) {
396
+ registry2.clear();
397
+ return;
398
+ }
399
+ for (const key of [...registry2.keys()]) if (doors.some((door) => key.startsWith(`${door}|`))) registry2.delete(key);
395
400
  }
401
+ var LOOK_WRITES = {
402
+ view_declare: ["views", "view_look_read", "grid_layout", "table_page_bundle"],
403
+ view_designate: ["views", "view_look_read", "grid_layout", "table_page_bundle"],
404
+ view_look_set: ["views", "view_look_read", "grid_layout", "table_page_bundle"],
405
+ view_record_order_set: ["views", "view_look_read", "grid_layout", "table_page_bundle"]
406
+ };
396
407
  function isWritingDoor(door) {
397
408
  return /(_declare|_set(_|$)|_update|_write|_delete|_restore|_archive|_upsert|_reparent|_change|_duplicate|_move|_decide|_run$|_submit|_publish|_import_|_start$|_complete|_sign$|_add$|_retire|_propose|_promote|_land$|_pin$|_mute|_snooze|_unsnooze|_clear|_unclear|_revoke|_issue|_bind|_unbind|_apply|_backfill|_sync$|_decorate|_designate|_ensure|^migrate_|^home_add|^capture_|^claim_|^record_stage|^anon_|^io_import_|^io_comment_resolve|^enrich_(declare|land|pin)|^field_(declare|duplicate|propose|restore|retire|update)|^table_(declare|ensure|from_example|move|sync)|^value_restore|^relation_own)/.test(door);
398
409
  }
@@ -2869,6 +2880,11 @@ function createRecordsClient(given) {
2869
2880
  for (const key of [...bundleParts.keys()]) if (key.includes(tableId)) bundleParts.delete(key);
2870
2881
  }
2871
2882
  function primedFor(door, args) {
2883
+ const look = LOOK_WRITES[door];
2884
+ if (look) {
2885
+ dropPrimedDoorAnswers(look);
2886
+ return null;
2887
+ }
2872
2888
  if (isWritingDoor(door)) {
2873
2889
  dropPrimedDoorAnswers();
2874
2890
  return null;