document-model 4.1.0-dev.8 → 4.1.0-staging.1

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 (117) hide show
  1. package/dist/index.d.ts +8 -7
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +5 -4
  4. package/dist/index.js.map +1 -1
  5. package/dist/src/document/actions/creators.d.ts +3 -3
  6. package/dist/src/document/actions/creators.d.ts.map +1 -1
  7. package/dist/src/document/actions/creators.js +1 -1
  8. package/dist/src/document/actions/creators.js.map +1 -1
  9. package/dist/src/document/actions/operations.d.ts +5 -5
  10. package/dist/src/document/actions/operations.d.ts.map +1 -1
  11. package/dist/src/document/actions/operations.js +11 -9
  12. package/dist/src/document/actions/operations.js.map +1 -1
  13. package/dist/src/document/object.d.ts +3 -3
  14. package/dist/src/document/object.d.ts.map +1 -1
  15. package/dist/src/document/object.js +1 -1
  16. package/dist/src/document/object.js.map +1 -1
  17. package/dist/src/document/ph-factories.d.ts +37 -0
  18. package/dist/src/document/ph-factories.d.ts.map +1 -0
  19. package/dist/src/document/ph-factories.js +93 -0
  20. package/dist/src/document/ph-factories.js.map +1 -0
  21. package/dist/src/document/ph-types.d.ts +10 -2
  22. package/dist/src/document/ph-types.d.ts.map +1 -1
  23. package/dist/src/document/reducer.d.ts +6 -6
  24. package/dist/src/document/reducer.d.ts.map +1 -1
  25. package/dist/src/document/reducer.js +67 -65
  26. package/dist/src/document/reducer.js.map +1 -1
  27. package/dist/src/document/schema/types.d.ts +13 -1
  28. package/dist/src/document/schema/types.d.ts.map +1 -1
  29. package/dist/src/document/schema/zod.d.ts +31 -2
  30. package/dist/src/document/schema/zod.d.ts.map +1 -1
  31. package/dist/src/document/schema/zod.js +23 -11
  32. package/dist/src/document/schema/zod.js.map +1 -1
  33. package/dist/src/document/types.d.ts +63 -53
  34. package/dist/src/document/types.d.ts.map +1 -1
  35. package/dist/src/document/utils/base.d.ts +5 -6
  36. package/dist/src/document/utils/base.d.ts.map +1 -1
  37. package/dist/src/document/utils/base.js +32 -31
  38. package/dist/src/document/utils/base.js.map +1 -1
  39. package/dist/src/document/utils/crypto.d.ts +5 -5
  40. package/dist/src/document/utils/crypto.d.ts.map +1 -1
  41. package/dist/src/document/utils/crypto.js +24 -23
  42. package/dist/src/document/utils/crypto.js.map +1 -1
  43. package/dist/src/document/utils/document-helpers.d.ts +8 -12
  44. package/dist/src/document/utils/document-helpers.d.ts.map +1 -1
  45. package/dist/src/document/utils/document-helpers.js +47 -17
  46. package/dist/src/document/utils/document-helpers.js.map +1 -1
  47. package/dist/src/document/utils/file.d.ts.map +1 -1
  48. package/dist/src/document/utils/file.js.map +1 -1
  49. package/dist/src/document/utils/header.js.map +1 -1
  50. package/dist/src/document/utils/validation.js +1 -1
  51. package/dist/src/document/utils/validation.js.map +1 -1
  52. package/dist/src/document-model/gen/object.d.ts +2 -2
  53. package/dist/src/document-model/gen/object.d.ts.map +1 -1
  54. package/dist/src/document-model/gen/object.js.map +1 -1
  55. package/dist/src/document-model/gen/schema/zod.d.ts +6 -6
  56. package/dist/src/document-model/gen/schema/zod.d.ts.map +1 -1
  57. package/dist/src/document-model/gen/types.d.ts +2 -2
  58. package/dist/src/document-model/gen/types.d.ts.map +1 -1
  59. package/dist/src/document-model/gen/utils.d.ts +1 -2
  60. package/dist/src/document-model/gen/utils.d.ts.map +1 -1
  61. package/dist/src/document-model/gen/utils.js +6 -8
  62. package/dist/src/document-model/gen/utils.js.map +1 -1
  63. package/dist/test/document/crypto.test.js +37 -55
  64. package/dist/test/document/crypto.test.js.map +1 -1
  65. package/dist/test/document/event-vs-command.test.js +80 -50
  66. package/dist/test/document/event-vs-command.test.js.map +1 -1
  67. package/dist/test/document/local.test.js +26 -43
  68. package/dist/test/document/local.test.js.map +1 -1
  69. package/dist/test/document/operation-id.test.js +4 -6
  70. package/dist/test/document/operation-id.test.js.map +1 -1
  71. package/dist/test/document/prune.test.js +21 -34
  72. package/dist/test/document/prune.test.js.map +1 -1
  73. package/dist/test/document/reducer.test.js +99 -76
  74. package/dist/test/document/reducer.test.js.map +1 -1
  75. package/dist/test/document/skip-operations.test.js +65 -85
  76. package/dist/test/document/skip-operations.test.js.map +1 -1
  77. package/dist/test/document/undo-redo.test.js +60 -34
  78. package/dist/test/document/undo-redo.test.js.map +1 -1
  79. package/dist/test/document/utils.test.js +49 -36
  80. package/dist/test/document/utils.test.js.map +1 -1
  81. package/dist/test/document-helpers/addUndo.test.js +1 -1
  82. package/dist/test/document-helpers/addUndo.test.js.map +1 -1
  83. package/dist/test/document-helpers/attachBranch.test.js +20 -20
  84. package/dist/test/document-helpers/attachBranch.test.js.map +1 -1
  85. package/dist/test/document-helpers/conflictResolution.test.js +10 -10
  86. package/dist/test/document-helpers/conflictResolution.test.js.map +1 -1
  87. package/dist/test/document-helpers/groupOperationsByScope.test.js +70 -70
  88. package/dist/test/document-helpers/groupOperationsByScope.test.js.map +1 -1
  89. package/dist/test/document-helpers/merge.test.js +125 -125
  90. package/dist/test/document-helpers/merge.test.js.map +1 -1
  91. package/dist/test/document-helpers/removeExistingOperations.test.js +37 -24
  92. package/dist/test/document-helpers/removeExistingOperations.test.js.map +1 -1
  93. package/dist/test/document-helpers/reshuffleByTimestamp.test.js +15 -15
  94. package/dist/test/document-helpers/reshuffleByTimestamp.test.js.map +1 -1
  95. package/dist/test/document-helpers/reshuffleByTimestampAndIndex.test.js +21 -21
  96. package/dist/test/document-helpers/reshuffleByTimestampAndIndex.test.js.map +1 -1
  97. package/dist/test/document-helpers/skipHeaderOperations.test.js +33 -40
  98. package/dist/test/document-helpers/skipHeaderOperations.test.js.map +1 -1
  99. package/dist/test/document-helpers/split.test.js +2 -2
  100. package/dist/test/document-helpers/split.test.js.map +1 -1
  101. package/dist/test/document-helpers/utils.d.ts +1 -0
  102. package/dist/test/document-helpers/utils.d.ts.map +1 -1
  103. package/dist/test/document-helpers/utils.js +13 -8
  104. package/dist/test/document-helpers/utils.js.map +1 -1
  105. package/dist/test/document-model/replay.test.js +3 -20
  106. package/dist/test/document-model/replay.test.js.map +1 -1
  107. package/dist/test/document-model/skip-operations.test.js +4 -5
  108. package/dist/test/document-model/skip-operations.test.js.map +1 -1
  109. package/dist/test/document-model/validation.test.js.map +1 -1
  110. package/dist/test/document-model/zip.test.js +1 -1
  111. package/dist/test/document-model/zip.test.js.map +1 -1
  112. package/dist/test/helpers.d.ts +25 -2
  113. package/dist/test/helpers.d.ts.map +1 -1
  114. package/dist/test/helpers.js +55 -6
  115. package/dist/test/helpers.js.map +1 -1
  116. package/dist/tsconfig.tsbuildinfo +1 -1
  117. package/package.json +4 -2
@@ -1,4 +1,3 @@
1
- import { type DocumentModelHeaderAction } from "#document-model/gen/actions.js";
2
1
  import { type DocumentModelState } from "#document-model/gen/types.js";
3
2
  import type { Draft, Immutable } from "mutative";
4
3
  import type { FC } from "react";
@@ -9,27 +8,40 @@ import { type FileInput } from "./utils/file.js";
9
8
  export type { NOOPAction } from "./schema/types.js";
10
9
  export type { CreateChildDocumentInput, DocumentAction, FileInput, Immutable, Signal, SignalDispatch, SignalResult, };
11
10
  export type Signature = [string, string, string, string, string];
11
+ export type UserActionSigner = {
12
+ address: string;
13
+ networkId: string;
14
+ chainId: number;
15
+ };
16
+ export type AppActionSigner = {
17
+ name: string;
18
+ key: string;
19
+ };
12
20
  export type ActionSigner = {
13
- user: {
14
- address: string;
15
- networkId: string;
16
- chainId: number;
17
- };
18
- app: {
19
- name: string;
20
- key: string;
21
- };
21
+ user: UserActionSigner;
22
+ app: AppActionSigner;
22
23
  signatures: Signature[];
23
24
  };
24
25
  export type ActionContext = {
26
+ /** The index of the previous operation, showing intended ordering. */
27
+ prevOpIndex?: number;
28
+ /** The hash of the previous operation, showing intended state. */
29
+ prevOpHash?: string;
30
+ /** A nonce, to cover specific signing attacks and to prevent replay attacks from no-ops. */
31
+ nonce?: string;
32
+ /** The signer of the action. */
25
33
  signer?: ActionSigner;
26
34
  };
27
35
  /**
28
36
  * Defines the basic structure of an action.
29
37
  */
30
38
  export type Action = {
39
+ /** The id of the action. This is distinct from the operation id. */
40
+ id: string;
31
41
  /** The name of the action. */
32
42
  type: string;
43
+ /** The timestamp of the action. */
44
+ timestampUtcMs: string;
33
45
  /** The payload of the action. */
34
46
  input: unknown;
35
47
  /** The scope of the action */
@@ -42,28 +54,35 @@ export type Action = {
42
54
  export type ActionWithAttachment = Action & {
43
55
  attachments: AttachmentInput[];
44
56
  };
45
- export type DefaultAction = DocumentAction | DocumentModelHeaderAction;
46
57
  export type ReducerOptions = {
47
- /** The number of operations to skip before this new action is applied */
58
+ /** The number of operations to skip before this new action is applied. This overrides the skip count in the operation. */
48
59
  skip?: number;
49
60
  /** When true the skip count is ignored and the action is applied regardless of the skip count */
50
61
  ignoreSkipOperations?: boolean;
51
- /** if true reuses the provided action hash */
52
- reuseHash?: boolean;
53
62
  /** if true reuses the provided action resulting state instead of replaying it */
54
63
  reuseOperationResultingState?: boolean;
55
64
  /** if true checks the hashes of the operations */
56
65
  checkHashes?: boolean;
66
+ /** Options for performing a replay. */
67
+ replayOptions?: {
68
+ /** The previously created operation to verify against. */
69
+ operation: Operation;
70
+ };
57
71
  /** Optional parser for the operation resulting state, uses JSON.parse by default */
58
72
  operationResultingStateParser?: <TState>(state: string | null | undefined) => TState;
73
+ /**
74
+ * When true (default), the reducer will prune operations (garbage collect) when processing a skip.
75
+ * When false, it will recompute state for the skip but preserve the existing operations history.
76
+ */
77
+ pruneOnSkip?: boolean;
59
78
  };
60
79
  /**
61
80
  * A pure function that takes an action and the previous state
62
81
  * of the document and returns the new state.
63
82
  */
64
- export type Reducer<TDocument extends PHDocument> = (document: TDocument, action: Action | Operation | DefaultAction, dispatch?: SignalDispatch, options?: ReducerOptions) => TDocument;
83
+ export type Reducer<TDocument extends PHDocument> = (document: TDocument, action: Action, dispatch?: SignalDispatch, options?: ReducerOptions) => TDocument;
65
84
  export type PHReducer<TDocument extends PHDocument = PHDocument> = Reducer<TDocument>;
66
- export type StateReducer<TDocument extends PHDocument> = (state: Draft<BaseStateFromDocument<TDocument>>, action: Action | DefaultAction | Operation, dispatch?: SignalDispatch) => BaseStateFromDocument<TDocument> | undefined;
85
+ export type StateReducer<TDocument extends PHDocument> = (state: Draft<BaseStateFromDocument<TDocument>>, action: Action, dispatch?: SignalDispatch) => BaseStateFromDocument<TDocument> | undefined;
67
86
  export type PHStateReducer<TDocument extends PHDocument = PHDocument> = StateReducer<TDocument>;
68
87
  /**
69
88
  * An operation that was applied to a {@link BaseDocument}.
@@ -75,11 +94,11 @@ export type PHStateReducer<TDocument extends PHDocument = PHDocument> = StateRed
75
94
  *
76
95
  * @typeParam A - The type of the action.
77
96
  */
78
- export type Operation = Action & {
97
+ export type Operation = {
79
98
  /** Position of the operation in the history */
80
99
  index: number;
81
100
  /** Timestamp of when the operation was added */
82
- timestamp: string;
101
+ timestampUtcMs: string;
83
102
  /** Hash of the resulting document data after the operation */
84
103
  hash: string;
85
104
  /** The number of operations skipped with this Operation */
@@ -88,8 +107,12 @@ export type Operation = Action & {
88
107
  error?: string;
89
108
  /** The resulting state after the operation */
90
109
  resultingState?: string;
91
- /** Unique operation id */
110
+ /** Unique operation id. This is distinct from the action id and can be undefined and assigned later. */
92
111
  id?: string;
112
+ /**
113
+ * The action that was applied to the document to produce this operation.
114
+ */
115
+ action: Action;
93
116
  };
94
117
  export type Meta = {
95
118
  preferredEditor?: string;
@@ -117,11 +140,11 @@ export type AttachmentInput = Attachment & {
117
140
  *
118
141
  */
119
142
  export type FileRegistry = Record<AttachmentRef, Attachment>;
120
- export type BaseState<TDocumentState, TLocalState> = PHBaseState<TDocumentState> & {
143
+ export type BaseState<TGlobalState, TLocalState> = PHBaseState & {
121
144
  /**
122
145
  * Use {@link PHBaseState} `document` instead.
123
146
  */
124
- global: TDocumentState;
147
+ global: TGlobalState;
125
148
  /**
126
149
  * Not a requirement for BaseState, but could be in extended states.
127
150
  */
@@ -129,34 +152,25 @@ export type BaseState<TDocumentState, TLocalState> = PHBaseState<TDocumentState>
129
152
  };
130
153
  export type PartialState<TState> = TState | Partial<TState>;
131
154
  export type CreateState<TDocument extends PHDocument> = (state?: PartialState<BaseState<PartialState<GlobalStateFromDocument<TDocument>>, PartialState<LocalStateFromDocument<TDocument>>>>) => BaseStateFromDocument<TDocument>;
132
- export type CreateExtendedState<TDocument extends BaseDocument<any, any>> = (extendedState?: Partial<ExtendedState<PartialState<GlobalStateFromDocument<TDocument>>, PartialState<LocalStateFromDocument<TDocument>>>>, createState?: CreateState<TDocument>) => ExtendedStateFromDocument<TDocument>;
133
155
  export type SaveToFileHandle = (document: PHDocument, input: FileSystemFileHandle) => void | Promise<void>;
134
156
  export type SaveToFile = (document: PHDocument, path: string, name?: string) => string | Promise<string>;
135
157
  export type LoadFromInput<TDocument extends BaseDocument<any, any>> = (input: FileInput) => TDocument | Promise<TDocument>;
136
158
  export type LoadFromFile<TDocument extends BaseDocument<any, any>> = (path: string) => TDocument | Promise<TDocument>;
137
- export type CreateDocument<TDocument extends BaseDocument<any, any>> = (initialState?: Partial<ExtendedState<PartialState<GlobalStateFromDocument<TDocument>>, PartialState<LocalStateFromDocument<TDocument>>>>, createState?: CreateState<TDocument>) => TDocument;
138
- export type ExtendedState<TDocumentState, TLocalState> = {
139
- /** The document model specific state. */
140
- state: BaseState<TDocumentState, TLocalState>;
141
- /** The index of document attachments. */
142
- attachments?: FileRegistry;
143
- };
159
+ export type CreateDocument<TDocument extends BaseDocument<any, any>> = (initialState?: Partial<PHBaseState>, createState?: CreateState<TDocument>) => TDocument;
144
160
  export type DocumentOperations = Record<string, Operation[]>;
145
161
  export type MappedOperation = {
146
162
  ignore: boolean;
147
163
  operation: Operation;
148
164
  };
149
165
  export type DocumentOperationsIgnoreMap = Record<string, MappedOperation[]>;
150
- export type OperationSignatureContext = {
166
+ export type ActionSignatureContext = {
151
167
  documentId: string;
152
- signer: Omit<ActionSigner, "signatures"> & {
153
- signatures?: Signature[];
154
- };
155
- operation: Operation;
168
+ signer: ActionSigner;
169
+ action: Action;
156
170
  previousStateHash: string;
157
171
  };
158
- export type OperationSigningHandler = (message: Uint8Array) => Promise<Uint8Array>;
159
- export type OperationVerificationHandler = (publicKey: string, signature: Uint8Array, data: Uint8Array) => Promise<boolean>;
172
+ export type ActionSigningHandler = (message: Uint8Array) => Promise<Uint8Array>;
173
+ export type ActionVerificationHandler = (publicKey: string, signature: Uint8Array, data: Uint8Array) => Promise<boolean>;
160
174
  /**
161
175
  * The base type of a document model.
162
176
  *
@@ -171,13 +185,16 @@ export type BaseDocument<TDocumentState, TLocalState> = {
171
185
  header: PHDocumentHeader;
172
186
  /** The history of the document. */
173
187
  history: PHDocumentHistory;
174
- } & ExtendedState<TDocumentState, TLocalState> & {
188
+ /** The document model specific state. */
189
+ state: BaseState<TDocumentState, TLocalState>;
190
+ /** The initial state of the document, enabling replaying operations. */
191
+ initialState: BaseState<TDocumentState, TLocalState>;
175
192
  /** The operations history of the document. */
176
193
  operations: DocumentOperations;
177
- /** The initial state of the document, enabling replaying operations. */
178
- initialState: ExtendedState<TDocumentState, TLocalState>;
179
194
  /** A list of undone operations */
180
195
  clipboard: Operation[];
196
+ /** The index of document attachments. */
197
+ attachments?: FileRegistry;
181
198
  };
182
199
  export type PHDocument<TGlobalState = unknown, TLocalState = unknown> = BaseDocument<TGlobalState, TLocalState>;
183
200
  /**
@@ -190,7 +207,6 @@ export type AttachmentRef = string;
190
207
  export type DocumentModelUtils<TDocument extends PHDocument> = {
191
208
  fileExtension: string;
192
209
  createState: CreateState<TDocument>;
193
- createExtendedState: CreateExtendedState<TDocument>;
194
210
  createDocument: CreateDocument<TDocument>;
195
211
  loadFromFile: LoadFromFile<TDocument>;
196
212
  loadFromInput: LoadFromInput<TDocument>;
@@ -216,21 +232,16 @@ export type GetDocumentOptions = ReducerOptions & {
216
232
  checkHashes?: boolean;
217
233
  };
218
234
  export type EditorContext = {
219
- theme: "light" | "dark";
220
235
  debug?: boolean;
221
- user?: User;
222
236
  readMode?: boolean;
223
237
  selectedTimelineRevision?: string | number | null;
224
238
  getDocumentRevision?: (options?: GetDocumentOptions) => Promise<PHDocument> | undefined;
225
239
  };
226
240
  export type ActionErrorCallback = (error: unknown) => void;
227
241
  export type EditorDispatch = (action: Action, onErrorCallback?: ActionErrorCallback) => void;
228
- export type EditorProps<TDocument extends PHDocument> = {
229
- document: TDocument;
230
- dispatch: EditorDispatch;
242
+ export type EditorProps = {
243
+ document: PHDocument;
231
244
  context: EditorContext;
232
- error?: unknown;
233
- documentNodeName?: string;
234
245
  };
235
246
  export type SubgraphModule = {
236
247
  id: string;
@@ -244,10 +255,10 @@ export type ImportScriptModule = {
244
255
  gql: string;
245
256
  endpoint: string;
246
257
  };
247
- export type EditorModule<TDocument extends PHDocument = PHDocument, TCustomProps = unknown, TEditorConfig extends Record<string, unknown> = Record<string, unknown>> = {
248
- Component: FC<EditorProps<TDocument> & TCustomProps & Record<string, unknown>>;
258
+ export type EditorModule = {
259
+ Component: FC<EditorProps>;
249
260
  documentTypes: string[];
250
- config: TEditorConfig & {
261
+ config: {
251
262
  id: string;
252
263
  disableExternalControls?: boolean;
253
264
  documentToolbarEnabled?: boolean;
@@ -295,7 +306,7 @@ export type Manifest = {
295
306
  export type DocumentModelLib<TDocument extends PHDocument = PHDocument> = {
296
307
  manifest: Manifest;
297
308
  documentModels: DocumentModelModule<TDocument>[];
298
- editors: EditorModule<TDocument>[];
309
+ editors: EditorModule[];
299
310
  subgraphs: SubgraphModule[];
300
311
  importScripts: ImportScriptModule[];
301
312
  };
@@ -311,7 +322,7 @@ type ExtractPHDocumentGenerics<T> = T extends BaseDocument<infer DocumentState,
311
322
  } : never;
312
323
  export type DocumentModelModule<TDocument extends PHDocument = PHDocument> = {
313
324
  reducer: Reducer<TDocument>;
314
- actions: Record<string, (input: any) => Action | DefaultAction>;
325
+ actions: Record<string, (input: any) => Action>;
315
326
  utils: DocumentModelUtils<TDocument>;
316
327
  documentModel: DocumentModelState;
317
328
  };
@@ -319,7 +330,6 @@ export type DocumentStateFromDocument<TDocument extends PHDocument> = ExtractPHD
319
330
  export type GlobalStateFromDocument<TDocument extends PHDocument> = ExtractPHDocumentGenerics<TDocument>["globalState"];
320
331
  export type LocalStateFromDocument<TDocument extends PHDocument> = ExtractPHDocumentGenerics<TDocument>["localState"];
321
332
  export type BaseStateFromDocument<TDocument extends PHDocument> = BaseState<DocumentStateFromDocument<TDocument>, LocalStateFromDocument<TDocument>>;
322
- export type ExtendedStateFromDocument<TDocument extends PHDocument> = ExtendedState<PartialState<DocumentStateFromDocument<TDocument>>, PartialState<LocalStateFromDocument<TDocument>>>;
323
333
  export type Maybe<T> = T | null;
324
334
  export type InputMaybe<T> = T | null | undefined;
325
335
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/document/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/document/types.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
- import { type PHDocumentHeader } from "#document/ph-types.js";
1
+ import { type PHBaseState, type PHDocumentHeader } from "#document/ph-types.js";
2
2
  import { baseReducer } from "../reducer.js";
3
3
  import { type UndoAction, type UndoRedoAction } from "../schema/types.js";
4
4
  import { type SignalDispatch } from "../signal.js";
5
- import { type Action, type CreateState, type DocumentAction, type DocumentOperations, type DocumentOperationsIgnoreMap, type ExtendedState, type ExtendedStateFromDocument, type GlobalStateFromDocument, type LocalStateFromDocument, type MappedOperation, type Operation, type PartialState, type PHDocument, type Reducer, type ReducerOptions, type StateReducer } from "../types.js";
5
+ import { type Action, type BaseStateFromDocument, type CreateState, type DocumentAction, type DocumentOperations, type DocumentOperationsIgnoreMap, type MappedOperation, type Operation, type PHDocument, type Reducer, type StateReducer } from "../types.js";
6
6
  export declare function isNoopOperation<TOp extends {
7
7
  type: string;
8
8
  skip: number;
@@ -53,12 +53,11 @@ export declare function createAction<TAction extends Action>(type: TAction["type
53
53
  * @returns The new reducer.
54
54
  */
55
55
  export declare function createReducer<TDocument extends PHDocument>(stateReducer: StateReducer<TDocument>, documentReducer?: typeof baseReducer): Reducer<TDocument>;
56
- export declare function baseCreateExtendedState<TDocument extends PHDocument>(initialState?: Partial<ExtendedState<PartialState<GlobalStateFromDocument<TDocument>>, PartialState<LocalStateFromDocument<TDocument>>>>, createState?: CreateState<TDocument>): ExtendedStateFromDocument<TDocument>;
57
56
  /**
58
57
  * Important note: it is the responsibility of the caller to set the document type
59
58
  * on the header.
60
59
  */
61
- export declare function baseCreateDocument<TDocument extends PHDocument>(initialState?: Partial<ExtendedStateFromDocument<TDocument>>, createState?: CreateState<TDocument>): TDocument;
60
+ export declare function baseCreateDocument<TDocument extends PHDocument>(createState: CreateState<TDocument>, initialState?: Partial<PHBaseState>): TDocument;
62
61
  export declare function hashDocumentStateForScope(document: {
63
62
  state: {
64
63
  [key: string]: unknown;
@@ -76,13 +75,13 @@ export declare function readOnly<T>(value: T): Readonly<T>;
76
75
  export declare function mapSkippedOperations(operations: Operation[], skippedHeadOperations?: number): MappedOperation[];
77
76
  export declare function sortMappedOperations(operations: DocumentOperationsIgnoreMap): MappedOperation[];
78
77
  export declare function getDocumentLastModified(document: PHDocument): string;
79
- export declare function replayOperations<TDocument extends PHDocument>(initialState: ExtendedStateFromDocument<TDocument>, clearedOperations: DocumentOperations, stateReducer: StateReducer<TDocument>, dispatch?: SignalDispatch, header?: PHDocumentHeader, documentReducer?: typeof baseReducer, skipHeaderOperations?: SkipHeaderOperations, options?: ReducerOptions): TDocument;
78
+ export declare function replayOperations<TDocument extends PHDocument>(initialState: BaseStateFromDocument<TDocument>, clearedOperations: DocumentOperations, stateReducer: StateReducer<TDocument>, dispatch?: SignalDispatch, header?: PHDocumentHeader, documentReducer?: typeof baseReducer, skipHeaderOperations?: SkipHeaderOperations, options?: ReplayDocumentOptions): TDocument;
80
79
  export type SkipHeaderOperations = Partial<Record<string, number>>;
81
80
  export type ReplayDocumentOptions = {
82
81
  checkHashes?: boolean;
83
82
  reuseOperationResultingState?: boolean;
84
83
  operationResultingStateParser?: <TState>(state: string) => TState;
85
84
  };
86
- export declare function replayDocument<TDocument extends PHDocument>(initialState: ExtendedStateFromDocument<TDocument>, operations: DocumentOperations, reducer: Reducer<TDocument>, dispatch?: SignalDispatch, header?: PHDocumentHeader, skipHeaderOperations?: SkipHeaderOperations, options?: ReplayDocumentOptions): TDocument;
85
+ export declare function replayDocument<TDocument extends PHDocument>(initialState: BaseStateFromDocument<TDocument>, operations: DocumentOperations, reducer: Reducer<TDocument>, dispatch?: SignalDispatch, header?: PHDocumentHeader, skipHeaderOperations?: SkipHeaderOperations, options?: ReplayDocumentOptions): TDocument;
87
86
  export declare function parseResultingState<TState>(state: string | null | undefined): TState;
88
87
  //# sourceMappingURL=base.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../src/document/utils/base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../src/document/utils/base.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,8 @@ import { hash } from "#utils/env";
2
2
  import stringifyJson from "safe-stable-stringify";
3
3
  import { ZodError } from "zod";
4
4
  import { LOAD_STATE, NOOP, PRUNE, REDO, SET_NAME, UNDO, } from "../actions/types.js";
5
- import { baseReducer, updateHeader } from "../reducer.js";
5
+ import { baseReducer, updateHeaderRevision } from "../reducer.js";
6
+ import { generateId } from "./crypto.js";
6
7
  import { sortOperations } from "./document-helpers.js";
7
8
  import { InvalidActionInputError, InvalidActionInputZodError, } from "./errors.js";
8
9
  import { createUnsignedHeader } from "./header.js";
@@ -49,6 +50,8 @@ export function createAction(type, input, attachments, validator, scope = "globa
49
50
  throw new Error(`Invalid action type: ${JSON.stringify(type)}`);
50
51
  }
51
52
  const action = {
53
+ id: generateId(),
54
+ timestampUtcMs: new Date().toISOString(),
52
55
  type,
53
56
  input,
54
57
  scope,
@@ -93,30 +96,23 @@ export function createReducer(stateReducer, documentReducer = baseReducer) {
93
96
  };
94
97
  return reducer;
95
98
  }
96
- export function baseCreateExtendedState(initialState, createState) {
97
- return {
98
- state: createState?.(initialState?.state) ??
99
- (initialState?.state ?? {
100
- global: {},
101
- local: {},
102
- }),
103
- };
104
- }
105
99
  /**
106
100
  * Important note: it is the responsibility of the caller to set the document type
107
101
  * on the header.
108
102
  */
109
- export function baseCreateDocument(initialState, createState) {
110
- const state = baseCreateExtendedState(initialState, createState);
103
+ export function baseCreateDocument(createState, initialState) {
104
+ const state = createState(initialState);
111
105
  const header = createUnsignedHeader();
112
- return {
113
- ...state,
106
+ const phDocument = {
114
107
  header,
108
+ state,
115
109
  initialState: state,
116
110
  operations: { global: [], local: [] },
117
111
  clipboard: [],
118
112
  attachments: {},
113
+ history: [],
119
114
  };
115
+ return phDocument;
120
116
  }
121
117
  export function hashDocumentStateForScope(document, scope = "global") {
122
118
  const stateString = stringifyJson(document.state[scope] || "");
@@ -168,15 +164,20 @@ export function mapSkippedOperations(operations, skippedHeadOperations) {
168
164
  export function sortMappedOperations(operations) {
169
165
  return Object.values(operations)
170
166
  .flatMap((array) => array)
171
- .sort((a, b) => new Date(a.operation.timestamp).getTime() -
172
- new Date(b.operation.timestamp).getTime());
167
+ .sort((a, b) => new Date(a.operation.timestampUtcMs).getTime() -
168
+ new Date(b.operation.timestampUtcMs).getTime());
173
169
  }
174
170
  // gets the last modified timestamp of a document from§
175
171
  // it's operations, falling back to the initial state
176
172
  export function getDocumentLastModified(document) {
177
173
  const sortedOperations = sortOperations(Object.values(document.operations).flat());
178
- return (sortedOperations.at(-1).timestamp || document.header.lastModifiedAtUtcIso);
174
+ return (sortedOperations.at(-1).timestampUtcMs ||
175
+ document.header.lastModifiedAtUtcIso);
179
176
  }
177
+ // Default createState function that just returns the state as-is
178
+ const defaultCreateState = (state) => {
179
+ return state;
180
+ };
180
181
  // Runs the operations on the initial data using the
181
182
  // provided reducer, wrapped with the document reducer.
182
183
  // This rebuilds the document according to the provided actions.
@@ -215,11 +216,8 @@ export function replayDocument(initialState, operations, reducer, dispatch, head
215
216
  const scopeState = operationResultingStateParser(opWithState.resultingState);
216
217
  documentState = {
217
218
  ...documentState,
218
- state: {
219
- ...documentState.state,
220
- // TODO how to deal with attachments?
221
- [scope]: scopeState,
222
- },
219
+ // TODO how to deal with attachments?
220
+ [scope]: scopeState,
223
221
  };
224
222
  initialOperations[scope].push(...scopeOperations.slice(0, index + 1));
225
223
  operationsToReplay.push(...scopeOperations.slice(index + 1));
@@ -234,7 +232,7 @@ export function replayDocument(initialState, operations, reducer, dispatch, head
234
232
  operationsToReplay.push(...Object.values(operations).flat());
235
233
  }
236
234
  // builds a new document from the initial data
237
- const document = baseCreateDocument(documentState);
235
+ const document = baseCreateDocument((defaultCreateState), documentState);
238
236
  if (header?.slug) {
239
237
  document.header.slug = header.slug;
240
238
  }
@@ -245,10 +243,12 @@ export function replayDocument(initialState, operations, reducer, dispatch, head
245
243
  // then replays them
246
244
  if (operationsToReplay.length) {
247
245
  result = operationsToReplay.reduce((document, operation) => {
248
- const doc = reducer(document, operation, dispatch, {
249
- skip: operation.skip,
246
+ const doc = reducer(document, operation.action, dispatch, {
250
247
  ignoreSkipOperations: true,
251
- reuseHash: !checkHashes,
248
+ checkHashes,
249
+ replayOptions: {
250
+ operation,
251
+ },
252
252
  });
253
253
  return doc;
254
254
  }, document);
@@ -259,7 +259,7 @@ export function replayDocument(initialState, operations, reducer, dispatch, head
259
259
  for (const scopeOperations of Object.values(initialOperations)) {
260
260
  const lastOperation = scopeOperations.at(-1);
261
261
  if (lastOperation) {
262
- result = updateHeader(result, lastOperation);
262
+ result = updateHeaderRevision(result, lastOperation.action.scope);
263
263
  }
264
264
  }
265
265
  }
@@ -269,7 +269,7 @@ export function replayDocument(initialState, operations, reducer, dispatch, head
269
269
  for (const scope of Object.keys(result.state)) {
270
270
  for (let i = operationsToReplay.length - 1; i >= 0; i--) {
271
271
  const operation = operationsToReplay[i];
272
- if (operation.scope !== scope) {
272
+ if (operation.action.scope !== scope) {
273
273
  continue;
274
274
  }
275
275
  if (operation.hash !== hashDocumentStateForScope(result, scope)) {
@@ -290,7 +290,8 @@ export function replayDocument(initialState, operations, reducer, dispatch, head
290
290
  ...result.operations[scope].map((operation, index) => {
291
291
  return {
292
292
  ...operation,
293
- timestamp: operations[scope][index]?.timestamp ?? operation.timestamp,
293
+ timestamp: operations[scope][index]?.timestampUtcMs ??
294
+ operation.timestampUtcMs,
294
295
  };
295
296
  }),
296
297
  ],
@@ -302,8 +303,8 @@ export function replayDocument(initialState, operations, reducer, dispatch, head
302
303
  : Object.values(resultOperations).reduce((acc, curr) => {
303
304
  const operation = curr.at(-1);
304
305
  if (operation) {
305
- if (operation.timestamp > acc) {
306
- return operation.timestamp;
306
+ if (operation.timestampUtcMs > acc) {
307
+ return operation.timestampUtcMs;
307
308
  }
308
309
  }
309
310
  return acc;
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../src/document/utils/base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../src/document/utils/base.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
- import { type Action, type ActionSigner, type Operation, type OperationSignatureContext, type OperationSigningHandler, type OperationVerificationHandler, type PHDocument, type Reducer, type Signature } from "../types.js";
1
+ import { type Action, type ActionSignatureContext, type ActionSigner, type ActionSigningHandler, type ActionVerificationHandler, type PHDocument, type Reducer, type Signature } from "../types.js";
2
2
  export declare function generateId(method?: "UUIDv4"): string;
3
3
  export declare function getUnixTimestamp(date: Date | string): string;
4
- export declare function buildOperationSignatureParams({ documentId, signer, operation, previousStateHash, }: OperationSignatureContext): [string, string, string, string];
4
+ export declare function buildOperationSignatureParams({ documentId, signer, action, previousStateHash, }: ActionSignatureContext): [string, string, string, string];
5
5
  export declare function buildOperationSignatureMessage(params: [string, string, string, string]): Uint8Array;
6
6
  export declare function ab2hex(ab: ArrayBuffer | ArrayBufferView): string;
7
7
  export declare function hex2ab(hex: string): Uint8Array<ArrayBuffer>;
8
- export declare function buildOperationSignature(context: OperationSignatureContext, signMethod: OperationSigningHandler): Promise<Signature>;
9
- export declare function buildSignedOperation<TDocument extends PHDocument>(action: Action | Operation, reducer: Reducer<TDocument>, document: TDocument, context: Omit<OperationSignatureContext, "operation" | "previousStateHash">, signHandler: OperationSigningHandler): Promise<Operation>;
10
- export declare function verifyOperationSignature(signature: Signature, signer: Omit<ActionSigner, "signatures">, verifyHandler: OperationVerificationHandler): Promise<boolean>;
8
+ export declare function buildOperationSignature(context: ActionSignatureContext, signMethod: ActionSigningHandler): Promise<Signature>;
9
+ export declare function buildSignedAction<TDocument extends PHDocument>(action: Action, reducer: Reducer<TDocument>, document: TDocument, signer: ActionSigner, signHandler: ActionSigningHandler): Promise<import("../types.js").Operation>;
10
+ export declare function verifyOperationSignature(signature: Signature, signer: Omit<ActionSigner, "signatures">, verifyHandler: ActionVerificationHandler): Promise<boolean>;
11
11
  //# sourceMappingURL=crypto.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"crypto.d.ts","sourceRoot":"","sources":["../../../../src/document/utils/crypto.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,MAAM,EACX,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,EAC5B,KAAK,4BAA4B,EACjC,KAAK,UAAU,EACf,KAAK,OAAO,EACZ,KAAK,SAAS,EACf,MAAM,aAAa,CAAC;AAErB,wBAAgB,UAAU,CAAC,MAAM,CAAC,EAAE,QAAQ,GAAG,MAAM,CAQpD;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAE5D;AAED,wBAAgB,6BAA6B,CAAC,EAC5C,UAAU,EACV,MAAM,EACN,SAAS,EACT,iBAAiB,GAClB,EAAE,yBAAyB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAW9D;AAID,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GACvC,UAAU,CAIZ;AAED,wBAAgB,MAAM,CAAC,EAAE,EAAE,WAAW,GAAG,eAAe,GAAG,MAAM,CAKhE;AAED,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,2BAMjC;AAED,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,yBAAyB,EAClC,UAAU,EAAE,uBAAuB,GAClC,OAAO,CAAC,SAAS,CAAC,CAKpB;AAED,wBAAsB,oBAAoB,CAAC,SAAS,SAAS,UAAU,EACrE,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,EAC3B,QAAQ,EAAE,SAAS,EACnB,OAAO,EAAE,IAAI,CAAC,yBAAyB,EAAE,WAAW,GAAG,mBAAmB,CAAC,EAC3E,WAAW,EAAE,uBAAuB,sBAgCrC;AAED,wBAAsB,wBAAwB,CAC5C,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC,EACxC,aAAa,EAAE,4BAA4B,oBAO5C"}
1
+ {"version":3,"file":"crypto.d.ts","sourceRoot":"","sources":["../../../../src/document/utils/crypto.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,MAAM,EAEX,KAAK,sBAAsB,EAC3B,KAAK,YAAY,EACjB,KAAK,oBAAoB,EACzB,KAAK,yBAAyB,EAC9B,KAAK,UAAU,EACf,KAAK,OAAO,EACZ,KAAK,SAAS,EACf,MAAM,aAAa,CAAC;AAErB,wBAAgB,UAAU,CAAC,MAAM,CAAC,EAAE,QAAQ,GAAG,MAAM,CAYpD;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAE5D;AAED,wBAAgB,6BAA6B,CAAC,EAC5C,UAAU,EACV,MAAM,EACN,MAAM,EACN,iBAAiB,GAClB,EAAE,sBAAsB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAU3D;AAID,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GACvC,UAAU,CAIZ;AAED,wBAAgB,MAAM,CAAC,EAAE,EAAE,WAAW,GAAG,eAAe,GAAG,MAAM,CAKhE;AAED,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,2BAMjC;AAED,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,sBAAsB,EAC/B,UAAU,EAAE,oBAAoB,GAC/B,OAAO,CAAC,SAAS,CAAC,CAKpB;AAED,wBAAsB,iBAAiB,CAAC,SAAS,SAAS,UAAU,EAClE,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,EAC3B,QAAQ,EAAE,SAAS,EACnB,MAAM,EAAE,YAAY,EACpB,WAAW,EAAE,oBAAoB,4CA8BlC;AAED,wBAAsB,wBAAwB,CAC5C,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC,EACxC,aAAa,EAAE,yBAAyB,oBAOzC"}