@powerhousedao/reactor-browser 5.1.0-dev.4 → 5.1.0-dev.40

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 (132) hide show
  1. package/README.md +17 -3
  2. package/dist/src/actions/dispatch.d.ts +16 -2
  3. package/dist/src/actions/dispatch.d.ts.map +1 -1
  4. package/dist/src/actions/dispatch.js +20 -2
  5. package/dist/src/actions/dispatch.js.map +1 -1
  6. package/dist/src/actions/document.d.ts +7 -4
  7. package/dist/src/actions/document.d.ts.map +1 -1
  8. package/dist/src/actions/document.js +295 -131
  9. package/dist/src/actions/document.js.map +1 -1
  10. package/dist/src/actions/drive.d.ts +2 -2
  11. package/dist/src/actions/drive.d.ts.map +1 -1
  12. package/dist/src/actions/drive.js +153 -50
  13. package/dist/src/actions/drive.js.map +1 -1
  14. package/dist/src/actions/queue.d.ts.map +1 -1
  15. package/dist/src/actions/queue.js +48 -24
  16. package/dist/src/actions/queue.js.map +1 -1
  17. package/dist/src/actions/sign.js +1 -1
  18. package/dist/src/actions/sign.js.map +1 -1
  19. package/dist/src/document-cache.d.ts +17 -0
  20. package/dist/src/document-cache.d.ts.map +1 -0
  21. package/dist/src/document-cache.js +143 -0
  22. package/dist/src/document-cache.js.map +1 -0
  23. package/dist/src/hooks/add-ph-event-handlers.d.ts.map +1 -1
  24. package/dist/src/hooks/add-ph-event-handlers.js +11 -2
  25. package/dist/src/hooks/add-ph-event-handlers.js.map +1 -1
  26. package/dist/src/hooks/config/connect.d.ts +2 -2
  27. package/dist/src/hooks/connect.d.ts +1 -1
  28. package/dist/src/hooks/connect.d.ts.map +1 -1
  29. package/dist/src/hooks/connect.js +1 -1
  30. package/dist/src/hooks/connect.js.map +1 -1
  31. package/dist/src/hooks/dispatch.d.ts +7 -2
  32. package/dist/src/hooks/dispatch.d.ts.map +1 -1
  33. package/dist/src/hooks/dispatch.js +13 -3
  34. package/dist/src/hooks/dispatch.js.map +1 -1
  35. package/dist/src/hooks/document-by-id.d.ts +1 -1
  36. package/dist/src/hooks/document-by-id.d.ts.map +1 -1
  37. package/dist/src/hooks/document-by-id.js +3 -3
  38. package/dist/src/hooks/document-by-id.js.map +1 -1
  39. package/dist/src/hooks/document-cache.d.ts +19 -3
  40. package/dist/src/hooks/document-cache.d.ts.map +1 -1
  41. package/dist/src/hooks/document-cache.js +41 -14
  42. package/dist/src/hooks/document-cache.js.map +1 -1
  43. package/dist/src/hooks/features.d.ts +5 -0
  44. package/dist/src/hooks/features.d.ts.map +1 -0
  45. package/dist/src/hooks/features.js +6 -0
  46. package/dist/src/hooks/features.js.map +1 -0
  47. package/dist/src/hooks/index.d.ts +5 -2
  48. package/dist/src/hooks/index.d.ts.map +1 -1
  49. package/dist/src/hooks/index.js +5 -2
  50. package/dist/src/hooks/index.js.map +1 -1
  51. package/dist/src/hooks/reactor.d.ts +39 -6
  52. package/dist/src/hooks/reactor.d.ts.map +1 -1
  53. package/dist/src/hooks/reactor.js +41 -6
  54. package/dist/src/hooks/reactor.js.map +1 -1
  55. package/dist/src/hooks/selected-document.d.ts +1 -1
  56. package/dist/src/hooks/selected-document.d.ts.map +1 -1
  57. package/dist/src/hooks/selected-drive.d.ts.map +1 -1
  58. package/dist/src/hooks/selected-drive.js +3 -3
  59. package/dist/src/hooks/selected-drive.js.map +1 -1
  60. package/dist/src/hooks/selected-node.d.ts.map +1 -1
  61. package/dist/src/hooks/selected-node.js +3 -3
  62. package/dist/src/hooks/selected-node.js.map +1 -1
  63. package/dist/src/hooks/toast.d.ts +7 -0
  64. package/dist/src/hooks/toast.d.ts.map +1 -0
  65. package/dist/src/hooks/toast.js +9 -0
  66. package/dist/src/hooks/toast.js.map +1 -0
  67. package/dist/src/hooks/use-feature-flags.d.ts +44 -0
  68. package/dist/src/hooks/use-feature-flags.d.ts.map +1 -0
  69. package/dist/src/hooks/use-feature-flags.js +65 -0
  70. package/dist/src/hooks/use-feature-flags.js.map +1 -0
  71. package/dist/src/hooks/vetra-packages.js +1 -1
  72. package/dist/src/hooks/vetra-packages.js.map +1 -1
  73. package/dist/src/index.d.ts +2 -0
  74. package/dist/src/index.d.ts.map +1 -1
  75. package/dist/src/index.js +2 -0
  76. package/dist/src/index.js.map +1 -1
  77. package/dist/src/pglite/drop.d.ts +3 -0
  78. package/dist/src/pglite/drop.d.ts.map +1 -0
  79. package/dist/src/pglite/drop.js +19 -0
  80. package/dist/src/pglite/drop.js.map +1 -0
  81. package/dist/src/pglite/index.d.ts +1 -0
  82. package/dist/src/pglite/index.d.ts.map +1 -1
  83. package/dist/src/pglite/index.js +1 -0
  84. package/dist/src/pglite/index.js.map +1 -1
  85. package/dist/src/reactor-client-document-cache.d.ts +31 -0
  86. package/dist/src/reactor-client-document-cache.d.ts.map +1 -0
  87. package/dist/src/reactor-client-document-cache.js +142 -0
  88. package/dist/src/reactor-client-document-cache.js.map +1 -0
  89. package/dist/src/reactor.d.ts +5 -6
  90. package/dist/src/reactor.d.ts.map +1 -1
  91. package/dist/src/reactor.js +36 -61
  92. package/dist/src/reactor.js.map +1 -1
  93. package/dist/src/renown/utils.d.ts.map +1 -1
  94. package/dist/src/renown/utils.js +2 -2
  95. package/dist/src/renown/utils.js.map +1 -1
  96. package/dist/src/types/documents.d.ts +10 -5
  97. package/dist/src/types/documents.d.ts.map +1 -1
  98. package/dist/src/types/global.d.ts +15 -1
  99. package/dist/src/types/global.d.ts.map +1 -1
  100. package/dist/src/types/index.d.ts +1 -0
  101. package/dist/src/types/index.d.ts.map +1 -1
  102. package/dist/src/types/modals.d.ts +2 -0
  103. package/dist/src/types/modals.d.ts.map +1 -1
  104. package/dist/src/types/toast.d.ts +9 -0
  105. package/dist/src/types/toast.d.ts.map +1 -0
  106. package/dist/src/types/toast.js +2 -0
  107. package/dist/src/types/toast.js.map +1 -0
  108. package/dist/src/utils/drives.d.ts.map +1 -1
  109. package/dist/src/utils/drives.js +41 -24
  110. package/dist/src/utils/drives.js.map +1 -1
  111. package/dist/src/utils/url.d.ts +4 -0
  112. package/dist/src/utils/url.d.ts.map +1 -1
  113. package/dist/src/utils/url.js +7 -0
  114. package/dist/src/utils/url.js.map +1 -1
  115. package/dist/test/document-cache.test.d.ts +2 -0
  116. package/dist/test/document-cache.test.d.ts.map +1 -0
  117. package/dist/test/document-cache.test.js +457 -0
  118. package/dist/test/document-cache.test.js.map +1 -0
  119. package/dist/test/drop.test.d.ts +2 -0
  120. package/dist/test/drop.test.d.ts.map +1 -0
  121. package/dist/test/drop.test.js +88 -0
  122. package/dist/test/drop.test.js.map +1 -0
  123. package/dist/test/getSwitchboardUrl.test.js +3 -1
  124. package/dist/test/getSwitchboardUrl.test.js.map +1 -1
  125. package/dist/test/hooks/document-cache.test.d.ts +2 -0
  126. package/dist/test/hooks/document-cache.test.d.ts.map +1 -0
  127. package/dist/test/hooks/document-cache.test.js +642 -0
  128. package/dist/test/hooks/document-cache.test.js.map +1 -0
  129. package/dist/test/switchboard.test.js +4 -2
  130. package/dist/test/switchboard.test.js.map +1 -1
  131. package/dist/tsconfig.tsbuildinfo +1 -1
  132. package/package.json +9 -7
@@ -1,87 +1,180 @@
1
+ import { driveCollectionId } from "@powerhousedao/reactor";
1
2
  import { PullResponderTransmitter, addTrigger as baseAddTrigger, removeTrigger as baseRemoveTrigger, setAvailableOffline, setDriveName, setSharingType, } from "document-drive";
2
3
  import { generateId } from "document-model/core";
4
+ import { isChannelSyncEnabledSync, isLegacyWriteEnabledSync, } from "../hooks/use-feature-flags.js";
3
5
  import { getUserPermissions } from "../utils/user.js";
4
6
  import { queueActions } from "./queue.js";
5
7
  export async function addDrive(input, preferredEditor) {
6
- const reactor = window.ph?.reactor;
7
- if (!reactor) {
8
- return;
9
- }
10
8
  const { isAllowedToCreateDocuments } = getUserPermissions();
11
9
  if (!isAllowedToCreateDocuments) {
12
10
  throw new Error("User is not allowed to create drives");
13
11
  }
14
- const id = input.id || generateId();
15
- const newDrive = await reactor.addDrive({
16
- global: input.global,
17
- local: input.local,
18
- id,
19
- }, preferredEditor);
20
- return newDrive;
12
+ const useLegacy = isLegacyWriteEnabledSync();
13
+ if (useLegacy) {
14
+ const reactor = window.ph?.legacyReactor;
15
+ if (!reactor) {
16
+ throw new Error("Legacy reactor not initialized");
17
+ }
18
+ const id = input.id || generateId();
19
+ const newDrive = await reactor.addDrive({
20
+ global: input.global,
21
+ local: input.local,
22
+ id,
23
+ }, preferredEditor);
24
+ return newDrive;
25
+ }
26
+ else {
27
+ const reactorClient = window.ph?.reactorClient;
28
+ if (!reactorClient) {
29
+ throw new Error("ReactorClient not initialized");
30
+ }
31
+ const id = input.id || generateId();
32
+ const newDrive = await reactorClient.createEmpty("powerhouse/document-drive");
33
+ return newDrive;
34
+ }
21
35
  }
22
36
  export async function addRemoteDrive(url, options) {
23
- const reactor = window.ph?.reactor;
24
- if (!reactor) {
25
- return;
37
+ const useLegacy = isLegacyWriteEnabledSync();
38
+ if (useLegacy) {
39
+ const reactor = window.ph?.legacyReactor;
40
+ if (!reactor) {
41
+ throw new Error("Legacy reactor not initialized");
42
+ }
43
+ const newDrive = await reactor.addRemoteDrive(url, options);
44
+ return newDrive;
45
+ }
46
+ else {
47
+ const reactorClient = window.ph?.reactorClient;
48
+ if (!reactorClient) {
49
+ throw new Error("ReactorClient not initialized");
50
+ }
51
+ const sync = window.ph?.sync;
52
+ if (!sync) {
53
+ throw new Error("Sync not initialized");
54
+ }
55
+ const driveId = driveIdFromUrl(url);
56
+ // Construct the reactor subgraph URL from the base URL
57
+ // e.g., "http://localhost:4001/d/abc123" -> "http://localhost:4001/graphql/r"
58
+ const parsedUrl = new URL(url);
59
+ const reactorGraphqlUrl = `${parsedUrl.protocol}//${parsedUrl.host}/graphql/r`;
60
+ // Use a unique name for the remote to allow multiple subscribers to the same drive
61
+ const remoteName = crypto.randomUUID();
62
+ await sync.add(remoteName, driveCollectionId("main", driveId), {
63
+ type: "gql",
64
+ parameters: {
65
+ url: reactorGraphqlUrl,
66
+ },
67
+ });
26
68
  }
27
- const newDrive = await reactor.addRemoteDrive(url, options);
28
- return newDrive;
69
+ }
70
+ function driveIdFromUrl(url) {
71
+ return url.split("/").pop() ?? "";
29
72
  }
30
73
  export async function deleteDrive(driveId) {
31
- const reactor = window.ph?.reactor;
32
- if (!reactor) {
33
- return;
34
- }
35
74
  const { isAllowedToCreateDocuments } = getUserPermissions();
36
75
  if (!isAllowedToCreateDocuments) {
37
76
  throw new Error("User is not allowed to delete drives");
38
77
  }
39
- await reactor.deleteDrive(driveId);
78
+ const useLegacy = isLegacyWriteEnabledSync();
79
+ if (useLegacy) {
80
+ const reactor = window.ph?.legacyReactor;
81
+ if (!reactor) {
82
+ throw new Error("Legacy reactor not initialized");
83
+ }
84
+ await reactor.deleteDrive(driveId);
85
+ }
86
+ else {
87
+ const reactorClient = window.ph?.reactorClient;
88
+ if (!reactorClient) {
89
+ throw new Error("ReactorClient not initialized");
90
+ }
91
+ await reactorClient.deleteDocument(driveId);
92
+ }
40
93
  }
41
94
  export async function renameDrive(driveId, name) {
42
- const reactor = window.ph?.reactor;
43
- if (!reactor) {
44
- return;
45
- }
46
95
  const { isAllowedToCreateDocuments } = getUserPermissions();
47
96
  if (!isAllowedToCreateDocuments) {
48
97
  throw new Error("User is not allowed to rename drives");
49
98
  }
50
- const drive = await reactor.getDrive(driveId);
51
- const renamedDrive = await queueActions(drive, setDriveName({ name }));
52
- return renamedDrive;
99
+ const useLegacy = isLegacyWriteEnabledSync();
100
+ if (useLegacy) {
101
+ const reactor = window.ph?.legacyReactor;
102
+ if (!reactor) {
103
+ throw new Error("Legacy reactor not initialized");
104
+ }
105
+ const drive = await reactor.getDrive(driveId);
106
+ const renamedDrive = await queueActions(drive, setDriveName({ name }));
107
+ return renamedDrive;
108
+ }
109
+ else {
110
+ const reactorClient = window.ph?.reactorClient;
111
+ if (!reactorClient) {
112
+ throw new Error("ReactorClient not initialized");
113
+ }
114
+ return await reactorClient.rename(driveId, name);
115
+ }
53
116
  }
54
117
  export async function setDriveAvailableOffline(driveId, availableOffline) {
55
- const reactor = window.ph?.reactor;
56
- if (!reactor) {
57
- return;
58
- }
59
118
  const { isAllowedToCreateDocuments } = getUserPermissions();
60
119
  if (!isAllowedToCreateDocuments) {
61
120
  throw new Error("User is not allowed to change drive availability");
62
121
  }
63
- const drive = await reactor.getDrive(driveId);
64
- const updatedDrive = await queueActions(drive, setAvailableOffline({ availableOffline }));
65
- return updatedDrive;
122
+ const useLegacy = isLegacyWriteEnabledSync();
123
+ if (useLegacy) {
124
+ const reactor = window.ph?.legacyReactor;
125
+ if (!reactor) {
126
+ throw new Error("Legacy reactor not initialized");
127
+ }
128
+ const drive = await reactor.getDrive(driveId);
129
+ const updatedDrive = await queueActions(drive, setAvailableOffline({ availableOffline }));
130
+ return updatedDrive;
131
+ }
132
+ else {
133
+ const reactorClient = window.ph?.reactorClient;
134
+ if (!reactorClient) {
135
+ throw new Error("ReactorClient not initialized");
136
+ }
137
+ const { document: drive } = await reactorClient.get(driveId);
138
+ return await reactorClient.execute(driveId, "main", [
139
+ setAvailableOffline({ availableOffline }),
140
+ ]);
141
+ }
66
142
  }
67
143
  export async function setDriveSharingType(driveId, sharingType) {
68
- const reactor = window.ph?.reactor;
69
- if (!reactor) {
70
- return;
71
- }
72
144
  const { isAllowedToCreateDocuments } = getUserPermissions();
73
145
  if (!isAllowedToCreateDocuments) {
74
- throw new Error("User is not allowed to change drive availability");
146
+ throw new Error("User is not allowed to change drive sharing type");
147
+ }
148
+ const useLegacy = isLegacyWriteEnabledSync();
149
+ if (useLegacy) {
150
+ const reactor = window.ph?.legacyReactor;
151
+ if (!reactor) {
152
+ throw new Error("Legacy reactor not initialized");
153
+ }
154
+ const drive = await reactor.getDrive(driveId);
155
+ const updatedDrive = await queueActions(drive, setSharingType({ type: sharingType }));
156
+ return updatedDrive;
157
+ }
158
+ else {
159
+ const reactorClient = window.ph?.reactorClient;
160
+ if (!reactorClient) {
161
+ throw new Error("ReactorClient not initialized");
162
+ }
163
+ return await reactorClient.execute(driveId, "main", [
164
+ setSharingType({ type: sharingType }),
165
+ ]);
75
166
  }
76
- const drive = await reactor.getDrive(driveId);
77
- const updatedDrive = await queueActions(drive, setSharingType({ type: sharingType }));
78
- return updatedDrive;
79
167
  }
80
168
  export async function removeTrigger(driveId, triggerId) {
81
- const reactor = window.ph?.reactor;
82
- if (!reactor) {
169
+ const useChannelSync = isChannelSyncEnabledSync();
170
+ if (useChannelSync) {
171
+ // Channel sync replaces triggers - no-op
83
172
  return;
84
173
  }
174
+ const reactor = window.ph?.legacyReactor;
175
+ if (!reactor) {
176
+ throw new Error("Legacy reactor not initialized");
177
+ }
85
178
  const drive = await reactor.getDrive(driveId);
86
179
  const unsafeCastAsDrive = (await queueActions(drive, baseRemoveTrigger({ triggerId })));
87
180
  const trigger = unsafeCastAsDrive.state.local.triggers.find((trigger) => trigger.id === triggerId);
@@ -90,10 +183,15 @@ export async function removeTrigger(driveId, triggerId) {
90
183
  }
91
184
  }
92
185
  export async function registerNewPullResponderTrigger(driveId, url, options) {
93
- const reactor = window.ph?.reactor;
94
- if (!reactor) {
186
+ const useChannelSync = isChannelSyncEnabledSync();
187
+ if (useChannelSync) {
188
+ // Channel sync replaces triggers - no-op
95
189
  return;
96
190
  }
191
+ const reactor = window.ph?.legacyReactor;
192
+ if (!reactor) {
193
+ throw new Error("Legacy reactor not initialized");
194
+ }
97
195
  const uuid = generateId();
98
196
  const listener = {
99
197
  driveId,
@@ -138,13 +236,18 @@ export async function registerNewPullResponderTrigger(driveId, url, options) {
138
236
  };
139
237
  }
140
238
  export async function addTrigger(driveId, trigger) {
141
- const reactor = window.ph?.reactor;
142
- if (!reactor) {
239
+ const useChannelSync = isChannelSyncEnabledSync();
240
+ if (useChannelSync) {
241
+ // Channel sync replaces triggers - no-op
143
242
  return;
144
243
  }
244
+ const reactor = window.ph?.legacyReactor;
245
+ if (!reactor) {
246
+ throw new Error("Legacy reactor not initialized");
247
+ }
145
248
  const drive = await reactor.getDrive(driveId);
146
249
  const unsafeCastAsDrive = (await queueActions(drive, baseAddTrigger({ trigger })));
147
- const newTrigger = unsafeCastAsDrive.state.local.triggers.find((trigger) => trigger.id === trigger.id);
250
+ const newTrigger = unsafeCastAsDrive.state.local.triggers.find((t) => t.id === trigger.id);
148
251
  if (!newTrigger) {
149
252
  throw new Error(`There was an error adding the trigger ${trigger.id}`);
150
253
  }
@@ -1 +1 @@
1
- {"version":3,"file":"drive.js","sourceRoot":"","sources":["../../../src/actions/drive.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"drive.js","sourceRoot":"","sources":["../../../src/actions/drive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAU3D,OAAO,EACL,wBAAwB,EACxB,UAAU,IAAI,cAAc,EAC5B,aAAa,IAAI,iBAAiB,EAClC,mBAAmB,EACnB,YAAY,EACZ,cAAc,GACf,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EACL,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,KAAiB,EAAE,eAAwB;IACxE,MAAM,EAAE,0BAA0B,EAAE,GAAG,kBAAkB,EAAE,CAAC;IAC5D,IAAI,CAAC,0BAA0B,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,SAAS,GAAG,wBAAwB,EAAE,CAAC;IAE7C,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,OAAO,GAAG,MAAM,CAAC,EAAE,EAAE,aAAa,CAAC;QACzC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACpD,CAAC;QAED,MAAM,EAAE,GAAG,KAAK,CAAC,EAAE,IAAI,UAAU,EAAE,CAAC;QACpC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,QAAQ,CACrC;YACE,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,EAAE;SACH,EACD,eAAe,CAChB,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;SAAM,CAAC;QACN,MAAM,aAAa,GAAG,MAAM,CAAC,EAAE,EAAE,aAAa,CAAC;QAC/C,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;QAED,MAAM,EAAE,GAAG,KAAK,CAAC,EAAE,IAAI,UAAU,EAAE,CAAC;QACpC,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,WAAW,CAC9C,2BAA2B,CAC5B,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,GAAW,EACX,OAAmD;IAEnD,MAAM,SAAS,GAAG,wBAAwB,EAAE,CAAC;IAE7C,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,OAAO,GAAG,MAAM,CAAC,EAAE,EAAE,aAAa,CAAC;QACzC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACpD,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,cAAc,CAC3C,GAAG,EACH,OAA6B,CAC9B,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;SAAM,CAAC;QACN,MAAM,aAAa,GAAG,MAAM,CAAC,EAAE,EAAE,aAAa,CAAC;QAC/C,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC;QAC7B,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC1C,CAAC;QAED,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;QAEpC,uDAAuD;QACvD,8EAA8E;QAC9E,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QAC/B,MAAM,iBAAiB,GAAG,GAAG,SAAS,CAAC,QAAQ,KAAK,SAAS,CAAC,IAAI,YAAY,CAAC;QAE/E,mFAAmF;QACnF,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;QAEvC,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;YAC7D,IAAI,EAAE,KAAK;YACX,UAAU,EAAE;gBACV,GAAG,EAAE,iBAAiB;aACvB;SACF,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAC,GAAW;IACjC,OAAO,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;AACpC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,OAAe;IAC/C,MAAM,EAAE,0BAA0B,EAAE,GAAG,kBAAkB,EAAE,CAAC;IAC5D,IAAI,CAAC,0BAA0B,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,SAAS,GAAG,wBAAwB,EAAE,CAAC;IAE7C,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,OAAO,GAAG,MAAM,CAAC,EAAE,EAAE,aAAa,CAAC;QACzC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACpD,CAAC;QACD,MAAM,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;SAAM,CAAC;QACN,MAAM,aAAa,GAAG,MAAM,CAAC,EAAE,EAAE,aAAa,CAAC;QAC/C,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;QACD,MAAM,aAAa,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,OAAe,EACf,IAAY;IAEZ,MAAM,EAAE,0BAA0B,EAAE,GAAG,kBAAkB,EAAE,CAAC;IAC5D,IAAI,CAAC,0BAA0B,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,SAAS,GAAG,wBAAwB,EAAE,CAAC;IAE7C,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,OAAO,GAAG,MAAM,CAAC,EAAE,EAAE,aAAa,CAAC;QACzC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACpD,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC9C,MAAM,YAAY,GAAG,MAAM,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACvE,OAAO,YAAY,CAAC;IACtB,CAAC;SAAM,CAAC;QACN,MAAM,aAAa,GAAG,MAAM,CAAC,EAAE,EAAE,aAAa,CAAC;QAC/C,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;QACD,OAAO,MAAM,aAAa,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACnD,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,OAAe,EACf,gBAAyB;IAEzB,MAAM,EAAE,0BAA0B,EAAE,GAAG,kBAAkB,EAAE,CAAC;IAC5D,IAAI,CAAC,0BAA0B,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACtE,CAAC;IAED,MAAM,SAAS,GAAG,wBAAwB,EAAE,CAAC;IAE7C,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,OAAO,GAAG,MAAM,CAAC,EAAE,EAAE,aAAa,CAAC;QACzC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACpD,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC9C,MAAM,YAAY,GAAG,MAAM,YAAY,CACrC,KAAK,EACL,mBAAmB,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAC1C,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;SAAM,CAAC;QACN,MAAM,aAAa,GAAG,MAAM,CAAC,EAAE,EAAE,aAAa,CAAC;QAC/C,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;QACD,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GACvB,MAAM,aAAa,CAAC,GAAG,CAAwB,OAAO,CAAC,CAAC;QAC1D,OAAO,MAAM,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE;YAClD,mBAAmB,CAAC,EAAE,gBAAgB,EAAE,CAAC;SAC1C,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,OAAe,EACf,WAAwB;IAExB,MAAM,EAAE,0BAA0B,EAAE,GAAG,kBAAkB,EAAE,CAAC;IAC5D,IAAI,CAAC,0BAA0B,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACtE,CAAC;IAED,MAAM,SAAS,GAAG,wBAAwB,EAAE,CAAC;IAE7C,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,OAAO,GAAG,MAAM,CAAC,EAAE,EAAE,aAAa,CAAC;QACzC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACpD,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC9C,MAAM,YAAY,GAAG,MAAM,YAAY,CACrC,KAAK,EACL,cAAc,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CACtC,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;SAAM,CAAC;QACN,MAAM,aAAa,GAAG,MAAM,CAAC,EAAE,EAAE,aAAa,CAAC;QAC/C,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;QACD,OAAO,MAAM,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE;YAClD,cAAc,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;SACtC,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,OAAe,EAAE,SAAiB;IACpE,MAAM,cAAc,GAAG,wBAAwB,EAAE,CAAC;IAClD,IAAI,cAAc,EAAE,CAAC;QACnB,yCAAyC;QACzC,OAAO;IACT,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,EAAE,EAAE,aAAa,CAAC;IACzC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpD,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC9C,MAAM,iBAAiB,GAAG,CAAC,MAAM,YAAY,CAC3C,KAAK,EACL,iBAAiB,CAAC,EAAE,SAAS,EAAE,CAAC,CACjC,CAA0B,CAAC;IAE5B,MAAM,OAAO,GAAG,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CACzD,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,SAAS,CACtC,CAAC;IAEF,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,uCAAuC,SAAS,EAAE,CAAC,CAAC;IACtE,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,+BAA+B,CACnD,OAAe,EACf,GAAW,EACX,OAAgE;IAEhE,MAAM,cAAc,GAAG,wBAAwB,EAAE,CAAC;IAClD,IAAI,cAAc,EAAE,CAAC;QACnB,yCAAyC;QACzC,OAAO;IACT,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,EAAE,EAAE,aAAa,CAAC;IACzC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,IAAI,GAAG,UAAU,EAAE,CAAC;IAC1B,MAAM,QAAQ,GAAmB;QAC/B,OAAO;QACP,UAAU,EAAE,IAAI;QAChB,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE;YACN,MAAM,EAAE,OAAO,CAAC,UAAU,EAAE,MAAM,IAAI,EAAE;YACxC,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,UAAU,IAAI,EAAE;YAChD,YAAY,EAAE,OAAO,CAAC,UAAU,EAAE,YAAY,IAAI,EAAE;YACpD,KAAK,EAAE,OAAO,CAAC,UAAU,EAAE,KAAK,IAAI,EAAE;SACvC;QACD,MAAM,EAAE,KAAK;QACb,KAAK,EAAE,kBAAkB,IAAI,EAAE;QAC/B,QAAQ,EAAE;YACR,IAAI,EAAE,EAAE;YACR,IAAI,EAAE,eAAe;YACrB,eAAe,EAAE,eAAe;SACjC;KACF,CAAC;IAEF,2BAA2B;IAC3B,qDAAqD;IACrD,MAAM,eAAe,GAAG,OAAO,CAAC,SAAS,CAAC;IAC1C,QAAQ,CAAC,WAAW,GAAG,IAAI,wBAAwB,CACjD,QAAQ,EACR,eAAe,CAChB,CAAC;IAEF,kEAAkE;IAClE,IAAI,CAAC;QACH,MAAM,eAAe,CAAC,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACvD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,oCAAoC,KAAK,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,qEAAqE;IACrE,OAAO;QACL,OAAO;QACP,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,IAAI,EAAE;YACJ,QAAQ,EAAE,GAAG,OAAO,CAAC,YAAY,EAAE,IAAI,MAAM;YAC7C,UAAU,EAAE,IAAI;YAChB,GAAG;SACJ;QACD,EAAE,EAAE,IAAI;QACR,IAAI,EAAE,eAAe;KACtB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,OAAe,EAAE,OAAgB;IAChE,MAAM,cAAc,GAAG,wBAAwB,EAAE,CAAC;IAClD,IAAI,cAAc,EAAE,CAAC;QACnB,yCAAyC;QACzC,OAAO;IACT,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,EAAE,EAAE,aAAa,CAAC;IACzC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpD,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC9C,MAAM,iBAAiB,GAAG,CAAC,MAAM,YAAY,CAC3C,KAAK,EACL,cAAc,CAAC,EAAE,OAAO,EAAE,CAAC,CAC5B,CAA0B,CAAC;IAE5B,MAAM,UAAU,GAAG,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAC5D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,CAC3B,CAAC;IAEF,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,yCAAyC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;IACzE,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../../src/actions/queue.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAEjF,OAAO,KAAK,EACV,MAAM,EACN,kBAAkB,EAClB,SAAS,EACT,UAAU,EACX,MAAM,gBAAgB,CAAC;AAExB,wBAAsB,YAAY,CAChC,QAAQ,EAAE,UAAU,GAAG,SAAS,EAChC,eAAe,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS,mCA4B/C;AAED,wBAAsB,eAAe,CACnC,UAAU,EAAE,MAAM,EAClB,qBAAqB,EAAE,SAAS,EAAE,GAAG,SAAS,GAAG,SAAS,mCAoB3D;AAED,wBAAgB,qBAAqB,CACnC,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,EAC/C,uBAAuB,EAAE,SAAS,EAAE,eA8ErC;AAED,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,kBAAkB,EACjC,cAAc,EAAE,CACd,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,SAAS,EAAE,KACpB,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,EACpC,OAAO,CAAC,EAAE;IACR,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,0BAA0B,CAAC;CACzC,iBAyDF"}
1
+ {"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../../src/actions/queue.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAEjF,OAAO,KAAK,EACV,MAAM,EACN,kBAAkB,EAClB,SAAS,EACT,UAAU,EACX,MAAM,gBAAgB,CAAC;AAGxB,wBAAsB,YAAY,CAChC,QAAQ,EAAE,UAAU,GAAG,SAAS,EAChC,eAAe,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS,mCAqC/C;AAED,wBAAsB,eAAe,CACnC,UAAU,EAAE,MAAM,EAClB,qBAAqB,EAAE,SAAS,EAAE,GAAG,SAAS,GAAG,SAAS,mCAsC3D;AAED,wBAAgB,qBAAqB,CACnC,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,EAC/C,uBAAuB,EAAE,SAAS,EAAE,eA8ErC;AAED,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,kBAAkB,EACjC,cAAc,EAAE,CACd,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,SAAS,EAAE,KACpB,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,EACpC,OAAO,CAAC,EAAE;IACR,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,0BAA0B,CAAC;CACzC,iBAyDF"}
@@ -1,47 +1,71 @@
1
1
  import { logger } from "document-drive";
2
+ import { isLegacyWriteEnabledSync } from "../hooks/use-feature-flags.js";
2
3
  export async function queueActions(document, actionOrActions) {
4
+ if (!document) {
5
+ throw new Error("No document provided");
6
+ }
3
7
  if (!actionOrActions) {
4
- logger.error("No actions found");
5
- return;
8
+ throw new Error("No actions provided");
6
9
  }
7
10
  const actions = Array.isArray(actionOrActions)
8
11
  ? actionOrActions
9
12
  : [actionOrActions];
10
13
  if (actions.length === 0) {
11
- logger.error("No actions found");
12
- return;
13
- }
14
- const reactor = window.ph?.reactor;
15
- if (!reactor) {
16
- return;
14
+ throw new Error("No actions provided");
17
15
  }
18
- if (!document) {
19
- logger.error("No document found");
20
- return;
16
+ const useLegacy = isLegacyWriteEnabledSync();
17
+ if (useLegacy) {
18
+ const reactor = window.ph?.legacyReactor;
19
+ if (!reactor) {
20
+ throw new Error("Legacy reactor not initialized");
21
+ }
22
+ const result = await reactor.queueActions(document.header.id, actions);
23
+ if (result.status !== "SUCCESS") {
24
+ logger.error(result.error);
25
+ }
26
+ return result.document;
21
27
  }
22
- const result = await reactor.queueActions(document.header.id, actions);
23
- if (result.status !== "SUCCESS") {
24
- logger.error(result.error);
28
+ else {
29
+ const reactorClient = window.ph?.reactorClient;
30
+ if (!reactorClient) {
31
+ throw new Error("ReactorClient not initialized");
32
+ }
33
+ return await reactorClient.execute(document.header.id, "main", actions);
25
34
  }
26
- return result.document;
27
35
  }
28
36
  export async function queueOperations(documentId, operationOrOperations) {
37
+ if (!documentId) {
38
+ throw new Error("No documentId provided");
39
+ }
29
40
  if (!operationOrOperations) {
30
- logger.error("No operations found");
31
- return;
41
+ throw new Error("No operations provided");
32
42
  }
33
43
  const operations = Array.isArray(operationOrOperations)
34
44
  ? operationOrOperations
35
45
  : [operationOrOperations];
36
- const reactor = window.ph?.reactor;
37
- if (!reactor) {
38
- return;
46
+ if (operations.length === 0) {
47
+ throw new Error("No operations provided");
48
+ }
49
+ const useLegacy = isLegacyWriteEnabledSync();
50
+ if (useLegacy) {
51
+ const reactor = window.ph?.legacyReactor;
52
+ if (!reactor) {
53
+ throw new Error("Legacy reactor not initialized");
54
+ }
55
+ const result = await reactor.queueOperations(documentId, operations);
56
+ if (result.status !== "SUCCESS") {
57
+ logger.error(result.error);
58
+ }
59
+ return result.document;
39
60
  }
40
- const result = await reactor.queueOperations(documentId, operations);
41
- if (result.status !== "SUCCESS") {
42
- logger.error(result.error);
61
+ else {
62
+ const reactorClient = window.ph?.reactorClient;
63
+ if (!reactorClient) {
64
+ throw new Error("ReactorClient not initialized");
65
+ }
66
+ const actions = operations.map((op) => op.action);
67
+ return await reactorClient.execute(documentId, "main", actions);
43
68
  }
44
- return result.document;
45
69
  }
46
70
  export function deduplicateOperations(existingOperations, operationsToDeduplicate) {
47
71
  // make a set of all the operation indices for each scope to avoid duplicates
@@ -1 +1 @@
1
- {"version":3,"file":"queue.js","sourceRoot":"","sources":["../../../src/actions/queue.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAQxC,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,QAAgC,EAChC,eAA8C;IAE9C,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACjC,OAAO;IACT,CAAC;IACD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC;QAC5C,CAAC,CAAC,eAAe;QACjB,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;IAEtB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACjC,OAAO;IACT,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC;IACnC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;IACT,CAAC;IACD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAClC,OAAO;IACT,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IACvE,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAChC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IACD,OAAO,MAAM,CAAC,QAAQ,CAAC;AACzB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,UAAkB,EAClB,qBAA0D;IAE1D,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC3B,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACpC,OAAO;IACT,CAAC;IACD,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,qBAAqB,CAAC;QACrD,CAAC,CAAC,qBAAqB;QACvB,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC;IAE5B,MAAM,OAAO,GAAG,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC;IACnC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;IACT,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,eAAe,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IACrE,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAChC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IACD,OAAO,MAAM,CAAC,QAAQ,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,kBAA+C,EAC/C,uBAAoC;IAEpC,6EAA6E;IAC7E,MAAM,uBAAuB,GAAG,EAAiC,CAAC;IAClE,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC;QACpD,uBAAuB,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,CACtC,kBAAkB,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAChD,CAAC;IACJ,CAAC;IAED,MAAM,aAAa,GAAgB,EAAE,CAAC;IAEtC,KAAK,MAAM,SAAS,IAAI,uBAAuB,EAAE,CAAC;QAChD,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC;QACrC,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC;QAC9B,IAAI,uBAAuB,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9C,MAAM,2BAA2B,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC,IAAI,CAChE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,KAAK,KAAK,CAC3B,CAAC;YACF,MAAM,sBAAsB,GAAG,aAAa,CAAC,IAAI,CAC/C,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,KAAK,KAAK,CAC3B,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;YAC7C,IAAI,2BAA2B,EAAE,CAAC;gBAChC,OAAO,CAAC,IAAI,CACV,8BAA8B,EAC9B,2BAA2B,CAC5B,CAAC;YACJ,CAAC;YACD,IAAI,sBAAsB,EAAE,CAAC;gBAC3B,OAAO,CAAC,IAAI,CAAC,yBAAyB,EAAE,sBAAsB,CAAC,CAAC;YAClE,CAAC;YACD,SAAS;QACX,CAAC;QACD,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC9B,uBAAuB,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAU,CAAC;IAC7C,MAAM,qBAAqB,GAAgB,EAAE,CAAC;IAE9C,KAAK,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAC;QACrE,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,MAAM,EAAE,GAAG,SAAS,CAAC,EAAE,CAAC;YACxB,IAAI,CAAC,EAAE,EAAE,CAAC;gBACR,OAAO,CAAC,IAAI,CAAC,+BAA+B,EAAE,SAAS,CAAC,CAAC;gBACzD,SAAS;YACX,CAAC;YACD,IAAI,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC/B,OAAO,CAAC,IAAI,CACV,wDAAwD,EACxD,KAAK,EACL,SAAS,CACV,CAAC;gBACF,SAAS;YACX,CAAC;YACD,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,KAAK,MAAM,SAAS,IAAI,aAAa,EAAE,CAAC;QACtC,MAAM,EAAE,GAAG,SAAS,CAAC,EAAE,CAAC;QACxB,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,OAAO,CAAC,IAAI,CAAC,+BAA+B,EAAE,SAAS,CAAC,CAAC;YACzD,SAAS;QACX,CAAC;QACD,IAAI,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,IAAI,CACV,mDAAmD,EACnD,SAAS,CAAC,MAAM,CAAC,KAAK,EACtB,SAAS,CACV,CAAC;YACF,SAAS;QACX,CAAC;QACD,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC3B,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACxC,CAAC;IACD,OAAO,qBAAqB,CAAC;AAC/B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,UAAkB,EAClB,aAAiC,EACjC,cAGoC,EACpC,OAGC;IAED,MAAM,eAAe,GAAG,OAAO,EAAE,eAAe,IAAI,EAAE,CAAC;IACvD,MAAM,UAAU,GAAG,OAAO,EAAE,UAAU,CAAC;IAEvC,MAAM,CAAC,OAAO,CACZ,uCAAuC,UAAU,UAAU,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,eAAe,GAAG,CAC7H,CAAC;IAEF,mDAAmD;IACnD,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,MAAM,CAC5D,CAAC,GAAG,EAAsB,EAAE,CAAC,GAAG,KAAK,SAAS,CAC/C,CAAC;IACF,MAAM,eAAe,GAAG,kBAAkB,CAAC,MAAM,CAC/C,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,CAAC,KAAK,GAAG,UAAU,CAAC,MAAM,EAChD,CAAC,CACF,CAAC;IACF,IAAI,kBAAkB,GAAG,CAAC,CAAC;IAE3B,KAAK,MAAM,UAAU,IAAI,kBAAkB,EAAE,CAAC;QAC5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,IAAI,eAAe,EAAE,CAAC;YAC5D,MAAM,CAAC,OAAO,CACZ,kCAAkC,CAAC,SAAS,UAAU,CAAC,MAAM,WAAW,eAAe,UAAU,CAClG,CAAC;YACF,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC,CAAC;YACvD,MAAM,SAAS,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAC/B,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM;YACR,CAAC;YACD,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC;YAErC,MAAM,cAAc,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAExC,kBAAkB,IAAI,KAAK,CAAC,MAAM,CAAC;YAEnC,kBAAkB;YAClB,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CACzB,CAAC,kBAAkB,GAAG,eAAe,CAAC,GAAG,GAAG,CAC7C,CAAC;gBACF,UAAU,CAAC;oBACT,KAAK,EAAE,WAAW;oBAClB,QAAQ;oBACR,eAAe;oBACf,kBAAkB;iBACnB,CAAC,CAAC;YACL,CAAC;YAED,MAAM,CAAC,OAAO,CACZ,8CAA8C,UAAU,IAAI,KAAK,QAAQ,SAAS,CAAC,KAAK,SAAS,CAClG,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,CAAC,OAAO,CACZ,8CAA8C,UAAU,QAAQ,CACjE,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"queue.js","sourceRoot":"","sources":["../../../src/actions/queue.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { logger } from "document-drive";
2
2
  import { buildSignedAction } from "document-model/core";
3
3
  export async function signAction(action, document) {
4
- const reactor = window.ph?.reactor;
4
+ const reactor = window.ph?.legacyReactor;
5
5
  if (!reactor)
6
6
  return action;
7
7
  const documentModelModules = reactor.getDocumentModelModules();
@@ -1 +1 @@
1
- {"version":3,"file":"sign.js","sourceRoot":"","sources":["../../../src/actions/sign.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sign.js","sourceRoot":"","sources":["../../../src/actions/sign.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAExC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,MAAc,EAAE,QAAoB;IACnE,MAAM,OAAO,GAAG,MAAM,CAAC,EAAE,EAAE,aAAa,CAAC;IACzC,IAAI,CAAC,OAAO;QAAE,OAAO,MAAM,CAAC;IAE5B,MAAM,oBAAoB,GAAG,OAAO,CAAC,uBAAuB,EAAE,CAAC;IAC/D,MAAM,mBAAmB,GAAG,oBAAoB,CAAC,IAAI,CACnD,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,KAAK,QAAQ,CAAC,MAAM,CAAC,YAAY,CAC5E,CAAC;IACF,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACzB,MAAM,CAAC,KAAK,CAAC,mBAAmB,QAAQ,CAAC,MAAM,CAAC,YAAY,aAAa,CAAC,CAAC;QAC3E,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,MAAM,OAAO,GAAG,mBAAmB,CAAC,OAAO,CAAC;IAC5C,MAAM,IAAI,GAAG,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC;IAC7B,MAAM,aAAa,GAAG,MAAM,CAAC,EAAE,EAAE,aAAa,CAAC;IAC/C,IAAI,CAAC,IAAI,IAAI,CAAC,aAAa;QAAE,OAAO,MAAM,CAAC;IAC3C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM;QAAE,OAAO,MAAM,CAAC;IAE3C,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;IAC3C,MAAM,kBAAkB,GAAG,MAAM,iBAAiB,CAChD,MAAM,EACN,OAAO,EACP,QAAQ,EACR,YAAY,EACZ,aAAa,CAAC,IAAI,CACnB,CAAC;IAEF,kIAAkI;IAClI,OAAO,kBAAuC,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,MAAc;IAC7C,MAAM,IAAI,GAAG,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC;IAC7B,MAAM,UAAU,GAAG,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC;IAClC,IAAI,CAAC,IAAI;QAAE,OAAO,MAAM,CAAC;IAEzB,MAAM,MAAM,GAAiB;QAC3B,GAAG,EAAE;YACH,IAAI,EAAE,SAAS;YACf,GAAG,EAAE,UAAU,IAAI,EAAE;SACtB;QACD,IAAI,EAAE;YACJ,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB;QACD,UAAU,EAAE,EAAE;KACf,CAAC;IAEF,OAAO;QACL,OAAO,EAAE,EAAE,MAAM,EAAE;QACnB,GAAG,MAAM;KACV,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,2BAA2B,CACxC,MAA0B,EAC1B,QAAgC;IAEhC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QAChC,OAAO;IACT,CAAC;IACD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAClC,OAAO;IACT,CAAC;IACD,MAAM,YAAY,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACxD,MAAM,uBAAuB,GAAG,gBAAgB,CAAC,YAAY,CAAC,CAAC;IAC/D,OAAO,uBAAuB,CAAC;AACjC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,eAA8C,EAC9C,QAAgC;IAEhC,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACjC,OAAO;IACT,CAAC;IACD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC;QAC5C,CAAC,CAAC,eAAe;QACjB,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;IAEtB,MAAM,wBAAwB,GAAG,MAAM,OAAO,CAAC,GAAG,CAChD,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,2BAA2B,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CACvE,CAAC;IACF,OAAO,wBAAwB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;AACjE,CAAC"}
@@ -0,0 +1,17 @@
1
+ import type { IDocumentDriveServer } from "document-drive";
2
+ import type { PHDocument } from "document-model";
3
+ import type { IDocumentCache, PromiseState, PromiseWithState } from "./types/documents.js";
4
+ export declare function addPromiseState<T>(promise: Promise<T>): PromiseWithState<T>;
5
+ export declare function readPromiseState<T>(promise: Promise<T> | PromiseWithState<T>): PromiseState<T>;
6
+ export declare class DocumentCache implements IDocumentCache {
7
+ #private;
8
+ private reactor;
9
+ private documents;
10
+ private batchPromises;
11
+ private listeners;
12
+ constructor(reactor: IDocumentDriveServer);
13
+ get(id: string, refetch?: boolean): Promise<PHDocument>;
14
+ getBatch(ids: string[]): Promise<PHDocument[]>;
15
+ subscribe(id: string | string[], callback: () => void): () => void;
16
+ }
17
+ //# sourceMappingURL=document-cache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-cache.d.ts","sourceRoot":"","sources":["../../src/document-cache.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAEV,cAAc,EACd,YAAY,EACZ,gBAAgB,EAEjB,MAAM,sBAAsB,CAAC;AAE9B,wBAAgB,eAAe,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAsB3E;AAED,wBAAgB,gBAAgB,CAAC,CAAC,EAChC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,GACxC,YAAY,CAAC,CAAC,CAAC,CAEjB;AAED,qBAAa,aAAc,YAAW,cAAc;;IAQtC,OAAO,CAAC,OAAO;IAP3B,OAAO,CAAC,SAAS,CAAmD;IACpE,OAAO,CAAC,aAAa,CAGjB;IACJ,OAAO,CAAC,SAAS,CAAqC;gBAElC,OAAO,EAAE,oBAAoB;IAsCjD,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC;IAkBvD,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAsE9C,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;CAgBnE"}
@@ -0,0 +1,143 @@
1
+ export function addPromiseState(promise) {
2
+ if ("status" in promise) {
3
+ return promise;
4
+ }
5
+ const promiseWithState = promise;
6
+ promiseWithState.status = "pending";
7
+ promiseWithState.then((value) => {
8
+ promiseWithState.status = "fulfilled";
9
+ promiseWithState.value = value;
10
+ }, (reason) => {
11
+ promiseWithState.status = "rejected";
12
+ promiseWithState.reason = reason;
13
+ // Re-throw to preserve unhandled rejection behavior
14
+ // This allows React's error boundaries to catch the error
15
+ throw reason;
16
+ });
17
+ return promiseWithState;
18
+ }
19
+ export function readPromiseState(promise) {
20
+ return "status" in promise ? promise : { status: "pending" };
21
+ }
22
+ export class DocumentCache {
23
+ reactor;
24
+ documents = new Map();
25
+ batchPromises = new Map();
26
+ listeners = new Map();
27
+ constructor(reactor) {
28
+ this.reactor = reactor;
29
+ reactor.on("documentDeleted", (documentId) => {
30
+ const listeners = this.listeners.get(documentId);
31
+ this.documents.delete(documentId);
32
+ // Invalidate any batch that includes this document
33
+ this.#invalidateBatchesContaining(documentId);
34
+ if (listeners) {
35
+ listeners.forEach((listener) => listener());
36
+ }
37
+ this.listeners.delete(documentId);
38
+ });
39
+ reactor.on("operationsAdded", (documentId) => {
40
+ if (this.documents.has(documentId)) {
41
+ this.#updateDocument(documentId).catch(console.warn);
42
+ }
43
+ });
44
+ }
45
+ #invalidateBatchesContaining(documentId) {
46
+ for (const key of this.batchPromises.keys()) {
47
+ if (key.split(",").includes(documentId)) {
48
+ this.batchPromises.delete(key);
49
+ }
50
+ }
51
+ }
52
+ async #updateDocument(documentId) {
53
+ // Only updates listeners when document refetch is completed.
54
+ // Listeners use stale data while refetch is in progress.
55
+ const result = this.get(documentId, true);
56
+ await result;
57
+ const listeners = this.listeners.get(documentId);
58
+ if (listeners) {
59
+ listeners.forEach((listener) => listener());
60
+ }
61
+ }
62
+ get(id, refetch) {
63
+ const currentData = this.documents.get(id);
64
+ if (currentData) {
65
+ // If pending then deduplicate requests
66
+ if (currentData.status === "pending") {
67
+ return currentData;
68
+ }
69
+ if (!refetch) {
70
+ return currentData;
71
+ }
72
+ }
73
+ const documentPromise = this.reactor.getDocument(id);
74
+ this.documents.set(id, addPromiseState(documentPromise));
75
+ return documentPromise;
76
+ }
77
+ getBatch(ids) {
78
+ const key = ids.join(",");
79
+ const cached = this.batchPromises.get(key);
80
+ // Check if any documents have been removed from cache (deleted)
81
+ // This must be done BEFORE calling get() which would re-add them
82
+ const hasDeletedDocuments = ids.some((id) => !this.documents.has(id));
83
+ // Get current individual promises
84
+ const currentPromises = ids.map((id) => this.get(id));
85
+ // If documents were deleted, don't return stale data - let it fail
86
+ if (hasDeletedDocuments) {
87
+ const batchPromise = Promise.all(currentPromises);
88
+ this.batchPromises.set(key, {
89
+ promises: currentPromises,
90
+ promise: batchPromise,
91
+ });
92
+ return batchPromise;
93
+ }
94
+ // Check if we have a valid cached batch (same underlying promises)
95
+ if (cached) {
96
+ const samePromises = currentPromises.every((p, i) => p === cached.promises[i]);
97
+ if (samePromises) {
98
+ return cached.promise;
99
+ }
100
+ }
101
+ // Check the state of all individual promises
102
+ const states = currentPromises.map((p) => readPromiseState(p));
103
+ const allFulfilled = states.every((s) => s.status === "fulfilled");
104
+ if (allFulfilled) {
105
+ // All promises are fulfilled - create a pre-resolved batch promise
106
+ // with status already set to avoid suspending in use()
107
+ const values = states.map((s) => s.value);
108
+ const batchPromise = Promise.resolve(values);
109
+ batchPromise.status = "fulfilled";
110
+ batchPromise.value = values;
111
+ this.batchPromises.set(key, {
112
+ promises: currentPromises,
113
+ promise: batchPromise,
114
+ });
115
+ return batchPromise;
116
+ }
117
+ // Some promises are pending (refetch in progress) - return stale data if available
118
+ if (cached) {
119
+ return cached.promise;
120
+ }
121
+ // Initial load - create new batch promise
122
+ const batchPromise = Promise.all(currentPromises);
123
+ this.batchPromises.set(key, {
124
+ promises: currentPromises,
125
+ promise: batchPromise,
126
+ });
127
+ return batchPromise;
128
+ }
129
+ subscribe(id, callback) {
130
+ const ids = Array.isArray(id) ? id : [id];
131
+ for (const id of ids) {
132
+ const listeners = this.listeners.get(id) ?? [];
133
+ this.listeners.set(id, [...listeners, callback]);
134
+ }
135
+ return () => {
136
+ for (const id of ids) {
137
+ const listeners = this.listeners.get(id) ?? [];
138
+ this.listeners.set(id, listeners.filter((listener) => listener !== callback));
139
+ }
140
+ };
141
+ }
142
+ }
143
+ //# sourceMappingURL=document-cache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-cache.js","sourceRoot":"","sources":["../../src/document-cache.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"add-ph-event-handlers.d.ts","sourceRoot":"","sources":["../../../src/hooks/add-ph-event-handlers.ts"],"names":[],"mappings":"AA+JA,wBAAgB,kBAAkB,SAIjC"}
1
+ {"version":3,"file":"add-ph-event-handlers.d.ts","sourceRoot":"","sources":["../../../src/hooks/add-ph-event-handlers.ts"],"names":[],"mappings":"AA+KA,wBAAgB,kBAAkB,SAIjC"}