canto-data 1.0.3 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -3,11 +3,11 @@
3
3
  Data model library for [Canto](https://github.com/pboueke/canto), a private encrypted journaling app.
4
4
 
5
5
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)
6
- ![Version](https://img.shields.io/badge/version-1.0.3-green)
7
- ![Tests](https://img.shields.io/badge/tests-156%2F156%20passed-brightgreen)
6
+ ![Version](https://img.shields.io/badge/version-1.1.0-green)
7
+ ![Tests](https://img.shields.io/badge/tests-164%2F164%20passed-brightgreen)
8
8
  ![Coverage](https://img.shields.io/badge/coverage-100%25-brightgreen)
9
9
 
10
- `canto-data` provides TypeScript types, runtime validation, schema versioning, migration infrastructure, and export format utilities for Canto journals.
10
+ `canto-data` provides TypeScript types, runtime validation, schema versioning, migration infrastructure, and export format utilities for Canto journals. It defines attachment metadata only; it does not encrypt, store, stream, or upload attachment bytes.
11
11
 
12
12
  This package is **MIT-licensed** and has **zero dependencies**. It can be used independently of the Canto app to read, validate, and manipulate Canto journal data.
13
13
 
@@ -36,8 +36,8 @@ What `canto-data` owns:
36
36
  What it does **not** include:
37
37
 
38
38
  - Encryption and decryption
39
- - Storage backends
40
- - Sync integrations
39
+ - Attachment storage, chunk I/O, and byte reassembly
40
+ - Sync integrations and remote uploads
41
41
  - UI components
42
42
 
43
43
  Those pieces live in the [Canto app](https://github.com/pboueke/canto).
@@ -191,7 +191,12 @@ JournalContent
191
191
  │ ├── type: 'image'
192
192
  │ ├── encrypted: boolean
193
193
  │ ├── size?: number (bytes)
194
- └── deleted: boolean
194
+ ├── deleted: boolean
195
+ │ └── content?: AttachmentContent (absent for legacy monolithic bytes)
196
+ │ ├── format: 'canto-chunked-v1'
197
+ │ ├── byteLength: number (exact plaintext bytes)
198
+ │ ├── chunkSize: number (maximum plaintext bytes per chunk)
199
+ │ └── chunkCount: number (ceil(byteLength / chunkSize))
195
200
  └── files: Attachment[]
196
201
  └── same fields as images, with type: 'file'
197
202
  ```
@@ -206,13 +211,14 @@ Canto journal schemas follow [semver](https://semver.org/):
206
211
  | New optional field | MINOR | No |
207
212
  | Documentation or validation fix | PATCH | No |
208
213
 
209
- The schema version is stored in `JournalContent.schemaVersion` and `ExportManifest.schemaVersion`. Legacy data without `schemaVersion` is treated as `0.16.0`. Migrations are forward-only.
214
+ The schema version is stored in `JournalContent.schemaVersion` and `ExportManifest.schemaVersion`. Legacy data without `schemaVersion` is treated as `0.16.0`. Migrations are forward-only. Descriptor-absent attachments remain supported; a reader that only supports schema `0.17.0` cannot consume a future `0.18.0` archive.
210
215
 
211
216
  ### Migration History
212
217
 
213
218
  | From | To | Description |
214
219
  | ------ | ------ | --------------------------------------------------- |
215
220
  | 0.16.0 | 0.17.0 | Remove deprecated `showMarkdownPlaceholder` setting |
221
+ | 0.17.0 | 0.18.0 | No-op additive attachment-content descriptor schema |
216
222
 
217
223
  ## Export Format Details
218
224
 
@@ -221,8 +227,8 @@ The schema version is stored in `JournalContent.schemaVersion` and `ExportManife
221
227
  ```json
222
228
  {
223
229
  "version": 1,
224
- "schemaVersion": "0.17.0",
225
- "appVersion": "0.17.0",
230
+ "schemaVersion": "0.18.0",
231
+ "appVersion": "1.1.0",
226
232
  "exportDate": "2026-01-01T00:00:00.000Z",
227
233
  "encrypted": false,
228
234
  "journalTitle": "My Journal",
@@ -236,15 +242,19 @@ The schema version is stored in `JournalContent.schemaVersion` and `ExportManife
236
242
  - `encrypted`: If `true`, all JSON and attachment content is AES-256-GCM encrypted
237
243
  - `salt` and `kdfIterations`: Present for password-protected journals
238
244
 
245
+ Archive format version `1` remains flat: each attachment is one reconstructed raw member under `attachments/{type}-{id}.{ext}`. A chunked local attachment's `content` descriptor is omitted when its path is rewritten to that archive member. Old v1 archives and descriptor-absent attachments remain readable.
246
+
239
247
  ### Encrypted Exports
240
248
 
241
- When `encrypted: true`, decryption requires the journal password. The ciphertext format is `[12-byte nonce][ciphertext][16-byte GCM tag]` using AES-256-GCM. See [Canto SECURITY.md](https://github.com/pboueke/canto/blob/main/SECURITY.md) for the full encryption model.
249
+ For Canto app exports, when `encrypted: true`, decryption requires the journal password. The ciphertext format is `[12-byte nonce][ciphertext][16-byte GCM tag]` using AES-256-GCM. This library does not perform that encryption or decryption; see [Canto SECURITY.md](https://github.com/pboueke/canto/blob/main/SECURITY.md) for the full encryption model.
242
250
 
243
251
  ### Import Behavior
244
252
 
245
253
  Importing always creates a new journal with new UUIDs, so re-importing the same archive is safe. Shared attachments get individual copies per page.
246
254
 
247
- ## Filesystem Structure
255
+ ## Canto App Filesystem Structure
256
+
257
+ The following is Canto app storage documentation only; `canto-data` does not implement these storage backends.
248
258
 
249
259
  ### Native (Android and iOS)
250
260
 
@@ -275,7 +285,7 @@ Virtual paths mirror native layout:
275
285
 
276
286
  ### Google Drive
277
287
 
278
- All journal content on Google Drive is AES-256-GCM encrypted before upload. Only the registry and sync index are stored unencrypted.
288
+ The Canto app encrypts journal content with AES-256-GCM before Google Drive upload. Only the registry and sync index are stored unencrypted; `canto-data` has no Drive behavior.
279
289
 
280
290
  ```text
281
291
  My Drive/Canto/
package/dist/format.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { Page } from './types';
1
+ import type { Page, AttachmentContent } from "./types";
2
2
  export interface ExportManifest {
3
3
  /** Manifest format version (always 1). */
4
4
  version: 1;
@@ -28,16 +28,19 @@ export declare function parseManifest(json: string): ExportManifest;
28
28
  export interface AttachmentEntry {
29
29
  /** Index into the flat attachments/ folder inside the ZIP */
30
30
  zipFilename: string;
31
- /** Original on-disk filename (for reading) */
31
+ /** Local storage locator: a file path for legacy attachments or a storage root for chunked attachments. */
32
32
  diskPath: string;
33
33
  /** Whether the on-disk file is password-encrypted */
34
34
  isPasswordEncrypted: boolean;
35
+ /** Optional local content descriptor for selecting a chunk-aware reader. */
36
+ content?: AttachmentContent;
35
37
  }
36
38
  /** Collect unique attachments from pages for export, building portable ZIP filenames. */
37
39
  export declare function collectAttachmentEntries(pages: Page[]): AttachmentEntry[];
38
40
  /**
39
41
  * Rewrite attachment paths in pages to use portable ZIP filenames.
40
- * Returns cloned pages with updated paths.
42
+ * A rewritten flat-v1 ZIP path identifies a reconstructed payload, so its local
43
+ * content descriptor is omitted. Unmapped attachments retain every property.
41
44
  */
42
45
  export declare function rewriteAttachmentPaths(pages: Page[], pathMap: Map<string, string>): Page[];
43
46
  /** Serialize pages to a map of pageId → JSON string. */
@@ -1 +1 @@
1
- {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAc,MAAM,SAAS,CAAC;AAShD,MAAM,WAAW,cAAc;IAC7B,0CAA0C;IAC1C,OAAO,EAAE,CAAC,CAAC;IACX,6FAA6F;IAC7F,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,gEAAgE;AAChE,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,oBAAoB,GAAG,cAAc,CAW9E;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,CA+C1D;AAMD,MAAM,WAAW,eAAe;IAC9B,6DAA6D;IAC7D,WAAW,EAAE,MAAM,CAAC;IACpB,8CAA8C;IAC9C,QAAQ,EAAE,MAAM,CAAC;IACjB,qDAAqD;IACrD,mBAAmB,EAAE,OAAO,CAAC;CAC9B;AAED,yFAAyF;AACzF,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,eAAe,EAAE,CAsBzE;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,EAAE,CAY1F;AAMD,wDAAwD;AACxD,wBAAgB,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAMjE;AAED,8DAA8D;AAC9D,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,EAAE,CAOrE"}
1
+ {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAc,iBAAiB,EAAE,MAAM,SAAS,CAAC;AASnE,MAAM,WAAW,cAAc;IAC7B,0CAA0C;IAC1C,OAAO,EAAE,CAAC,CAAC;IACX,6FAA6F;IAC7F,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,gEAAgE;AAChE,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,oBAAoB,GACzB,cAAc,CAWhB;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,CAkE1D;AAMD,MAAM,WAAW,eAAe;IAC9B,6DAA6D;IAC7D,WAAW,EAAE,MAAM,CAAC;IACpB,2GAA2G;IAC3G,QAAQ,EAAE,MAAM,CAAC;IACjB,qDAAqD;IACrD,mBAAmB,EAAE,OAAO,CAAC;IAC7B,4EAA4E;IAC5E,OAAO,CAAC,EAAE,iBAAiB,CAAC;CAC7B;AAED,yFAAyF;AACzF,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,eAAe,EAAE,CAyBzE;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,IAAI,EAAE,EACb,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAC3B,IAAI,EAAE,CAcR;AAMD,wDAAwD;AACxD,wBAAgB,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAMjE;AAED,8DAA8D;AAC9D,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,EAAE,CAOrE"}
package/dist/format.js CHANGED
@@ -32,29 +32,29 @@ function parseManifest(json) {
32
32
  raw = JSON.parse(json);
33
33
  }
34
34
  catch {
35
- throw new validation_1.ValidationError('manifest', 'valid JSON', 'parse error');
35
+ throw new validation_1.ValidationError("manifest", "valid JSON", "parse error");
36
36
  }
37
- if (!raw || typeof raw !== 'object' || Array.isArray(raw)) {
38
- throw new validation_1.ValidationError('manifest', 'object', typeof raw);
37
+ if (!raw || typeof raw !== "object" || Array.isArray(raw)) {
38
+ throw new validation_1.ValidationError("manifest", "object", typeof raw);
39
39
  }
40
40
  const o = raw;
41
41
  if (o.version !== 1) {
42
- throw new validation_1.ValidationError('manifest.version', '1', String(o.version));
42
+ throw new validation_1.ValidationError("manifest.version", "1", String(o.version));
43
43
  }
44
- if (typeof o.appVersion !== 'string') {
45
- throw new validation_1.ValidationError('manifest.appVersion', 'string', typeof o.appVersion);
44
+ if (typeof o.appVersion !== "string") {
45
+ throw new validation_1.ValidationError("manifest.appVersion", "string", typeof o.appVersion);
46
46
  }
47
- if (typeof o.exportDate !== 'string') {
48
- throw new validation_1.ValidationError('manifest.exportDate', 'string', typeof o.exportDate);
47
+ if (typeof o.exportDate !== "string") {
48
+ throw new validation_1.ValidationError("manifest.exportDate", "string", typeof o.exportDate);
49
49
  }
50
- if (typeof o.encrypted !== 'boolean') {
51
- throw new validation_1.ValidationError('manifest.encrypted', 'boolean', typeof o.encrypted);
50
+ if (typeof o.encrypted !== "boolean") {
51
+ throw new validation_1.ValidationError("manifest.encrypted", "boolean", typeof o.encrypted);
52
52
  }
53
- if (typeof o.journalTitle !== 'string') {
54
- throw new validation_1.ValidationError('manifest.journalTitle', 'string', typeof o.journalTitle);
53
+ if (typeof o.journalTitle !== "string") {
54
+ throw new validation_1.ValidationError("manifest.journalTitle", "string", typeof o.journalTitle);
55
55
  }
56
56
  // Legacy manifests don't have schemaVersion — default to "0.16.0"
57
- const schemaVersion = typeof o.schemaVersion === 'string' ? o.schemaVersion : '0.16.0';
57
+ const schemaVersion = typeof o.schemaVersion === "string" ? o.schemaVersion : "0.16.0";
58
58
  return {
59
59
  version: 1,
60
60
  schemaVersion,
@@ -62,8 +62,10 @@ function parseManifest(json) {
62
62
  exportDate: o.exportDate,
63
63
  encrypted: o.encrypted,
64
64
  journalTitle: o.journalTitle,
65
- ...(typeof o.salt === 'string' ? { salt: o.salt } : {}),
66
- ...(typeof o.kdfIterations === 'number' ? { kdfIterations: o.kdfIterations } : {}),
65
+ ...(typeof o.salt === "string" ? { salt: o.salt } : {}),
66
+ ...(typeof o.kdfIterations === "number"
67
+ ? { kdfIterations: o.kdfIterations }
68
+ : {}),
67
69
  };
68
70
  }
69
71
  /** Collect unique attachments from pages for export, building portable ZIP filenames. */
@@ -76,13 +78,14 @@ function collectAttachmentEntries(pages) {
76
78
  if (!att.path || seen.has(att.path))
77
79
  continue;
78
80
  seen.add(att.path);
79
- const parts = att.name.split('.');
80
- const ext = parts.length > 1 ? parts.pop() : 'bin';
81
+ const parts = att.name.split(".");
82
+ const ext = parts.length > 1 ? parts.pop() : "bin";
81
83
  const zipFilename = `${att.type}-${att.id}.${ext}`;
82
84
  entries.push({
83
85
  zipFilename,
84
86
  diskPath: att.path,
85
87
  isPasswordEncrypted: att.encrypted,
88
+ ...(att.content !== undefined ? { content: att.content } : {}),
86
89
  });
87
90
  }
88
91
  }
@@ -90,19 +93,21 @@ function collectAttachmentEntries(pages) {
90
93
  }
91
94
  /**
92
95
  * Rewrite attachment paths in pages to use portable ZIP filenames.
93
- * Returns cloned pages with updated paths.
96
+ * A rewritten flat-v1 ZIP path identifies a reconstructed payload, so its local
97
+ * content descriptor is omitted. Unmapped attachments retain every property.
94
98
  */
95
99
  function rewriteAttachmentPaths(pages, pathMap) {
100
+ const rewriteAttachment = (attachment) => {
101
+ const zipPath = pathMap.get(attachment.path);
102
+ if (zipPath === undefined)
103
+ return { ...attachment };
104
+ const { content: _content, ...legacyAttachment } = attachment;
105
+ return { ...legacyAttachment, path: zipPath };
106
+ };
96
107
  return pages.map((page) => ({
97
108
  ...page,
98
- images: page.images.map((a) => ({
99
- ...a,
100
- path: pathMap.get(a.path) ?? a.path,
101
- })),
102
- files: page.files.map((a) => ({
103
- ...a,
104
- path: pathMap.get(a.path) ?? a.path,
105
- })),
109
+ images: page.images.map(rewriteAttachment),
110
+ files: page.files.map(rewriteAttachment),
106
111
  }));
107
112
  }
108
113
  // ---------------------------------------------------------------------------
@@ -1 +1 @@
1
- {"version":3,"file":"format.js","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"format.js","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,9 +1,9 @@
1
- export type { GeoLocation, Comment, Attachment, Page, PagePreview, JournalSettings, Journal, JournalContent, Filter, SyncProvider, } from './types';
2
- export { DEFAULT_JOURNAL_SETTINGS, pageToPreview } from './types';
3
- export { SCHEMA_VERSION, compareVersions, needsMigration, isFutureVersion, isMajorUpgrade, } from './version';
4
- export { ValidationError, isGeoLocation, isComment, isAttachment, isPage, isJournal, isJournalContent, validateGeoLocation, validateComment, validateAttachment, validatePage, validateJournalSettings, validateJournal, validateJournalContent, } from './validation';
5
- export type { Migration, MigrationResult } from './migration';
6
- export { migrateIfNeeded } from './migration';
7
- export type { ExportManifest, AttachmentEntry, BuildManifestOptions } from './format';
8
- export { buildExportManifest, parseManifest, collectAttachmentEntries, rewriteAttachmentPaths, serializePages, deserializePages, } from './format';
1
+ export type { GeoLocation, Comment, Attachment, ChunkedAttachmentContent, AttachmentContent, Page, PagePreview, JournalSettings, Journal, JournalContent, Filter, SyncProvider, } from "./types";
2
+ export { CHUNKED_ATTACHMENT_CONTENT_FORMAT, DEFAULT_JOURNAL_SETTINGS, pageToPreview, } from "./types";
3
+ export { SCHEMA_VERSION, compareVersions, needsMigration, isFutureVersion, isMajorUpgrade, } from "./version";
4
+ export { ValidationError, isGeoLocation, isComment, isAttachment, isChunkedAttachmentContent, isPage, isJournal, isJournalContent, validateGeoLocation, validateComment, validateAttachment, validateChunkedAttachmentContent, validatePage, validateJournalSettings, validateJournal, validateJournalContent, } from "./validation";
5
+ export type { Migration, MigrationResult } from "./migration";
6
+ export { migrateIfNeeded } from "./migration";
7
+ export type { ExportManifest, AttachmentEntry, BuildManifestOptions, } from "./format";
8
+ export { buildExportManifest, parseManifest, collectAttachmentEntries, rewriteAttachmentPaths, serializePages, deserializePages, } from "./format";
9
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,WAAW,EACX,OAAO,EACP,UAAU,EACV,IAAI,EACJ,WAAW,EACX,eAAe,EACf,OAAO,EACP,cAAc,EACd,MAAM,EACN,YAAY,GACb,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,wBAAwB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAGlE,OAAO,EACL,cAAc,EACd,eAAe,EACf,cAAc,EACd,eAAe,EACf,cAAc,GACf,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,eAAe,EACf,aAAa,EACb,SAAS,EACT,YAAY,EACZ,MAAM,EACN,SAAS,EACT,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,uBAAuB,EACvB,eAAe,EACf,sBAAsB,GACvB,MAAM,cAAc,CAAC;AAGtB,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAG9C,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AACtF,OAAO,EACL,mBAAmB,EACnB,aAAa,EACb,wBAAwB,EACxB,sBAAsB,EACtB,cAAc,EACd,gBAAgB,GACjB,MAAM,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,WAAW,EACX,OAAO,EACP,UAAU,EACV,wBAAwB,EACxB,iBAAiB,EACjB,IAAI,EACJ,WAAW,EACX,eAAe,EACf,OAAO,EACP,cAAc,EACd,MAAM,EACN,YAAY,GACb,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,iCAAiC,EACjC,wBAAwB,EACxB,aAAa,GACd,MAAM,SAAS,CAAC;AAGjB,OAAO,EACL,cAAc,EACd,eAAe,EACf,cAAc,EACd,eAAe,EACf,cAAc,GACf,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,eAAe,EACf,aAAa,EACb,SAAS,EACT,YAAY,EACZ,0BAA0B,EAC1B,MAAM,EACN,SAAS,EACT,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,gCAAgC,EAChC,YAAY,EACZ,uBAAuB,EACvB,eAAe,EACf,sBAAsB,GACvB,MAAM,cAAc,CAAC;AAGtB,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAG9C,YAAY,EACV,cAAc,EACd,eAAe,EACf,oBAAoB,GACrB,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,mBAAmB,EACnB,aAAa,EACb,wBAAwB,EACxB,sBAAsB,EACtB,cAAc,EACd,gBAAgB,GACjB,MAAM,UAAU,CAAC"}
package/dist/index.js CHANGED
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.deserializePages = exports.serializePages = exports.rewriteAttachmentPaths = exports.collectAttachmentEntries = exports.parseManifest = exports.buildExportManifest = exports.migrateIfNeeded = exports.validateJournalContent = exports.validateJournal = exports.validateJournalSettings = exports.validatePage = exports.validateAttachment = exports.validateComment = exports.validateGeoLocation = exports.isJournalContent = exports.isJournal = exports.isPage = exports.isAttachment = exports.isComment = exports.isGeoLocation = exports.ValidationError = exports.isMajorUpgrade = exports.isFutureVersion = exports.needsMigration = exports.compareVersions = exports.SCHEMA_VERSION = exports.pageToPreview = exports.DEFAULT_JOURNAL_SETTINGS = void 0;
3
+ exports.deserializePages = exports.serializePages = exports.rewriteAttachmentPaths = exports.collectAttachmentEntries = exports.parseManifest = exports.buildExportManifest = exports.migrateIfNeeded = exports.validateJournalContent = exports.validateJournal = exports.validateJournalSettings = exports.validatePage = exports.validateChunkedAttachmentContent = exports.validateAttachment = exports.validateComment = exports.validateGeoLocation = exports.isJournalContent = exports.isJournal = exports.isPage = exports.isChunkedAttachmentContent = exports.isAttachment = exports.isComment = exports.isGeoLocation = exports.ValidationError = exports.isMajorUpgrade = exports.isFutureVersion = exports.needsMigration = exports.compareVersions = exports.SCHEMA_VERSION = exports.pageToPreview = exports.DEFAULT_JOURNAL_SETTINGS = exports.CHUNKED_ATTACHMENT_CONTENT_FORMAT = void 0;
4
4
  var types_1 = require("./types");
5
+ Object.defineProperty(exports, "CHUNKED_ATTACHMENT_CONTENT_FORMAT", { enumerable: true, get: function () { return types_1.CHUNKED_ATTACHMENT_CONTENT_FORMAT; } });
5
6
  Object.defineProperty(exports, "DEFAULT_JOURNAL_SETTINGS", { enumerable: true, get: function () { return types_1.DEFAULT_JOURNAL_SETTINGS; } });
6
7
  Object.defineProperty(exports, "pageToPreview", { enumerable: true, get: function () { return types_1.pageToPreview; } });
7
8
  // Version
@@ -17,12 +18,14 @@ Object.defineProperty(exports, "ValidationError", { enumerable: true, get: funct
17
18
  Object.defineProperty(exports, "isGeoLocation", { enumerable: true, get: function () { return validation_1.isGeoLocation; } });
18
19
  Object.defineProperty(exports, "isComment", { enumerable: true, get: function () { return validation_1.isComment; } });
19
20
  Object.defineProperty(exports, "isAttachment", { enumerable: true, get: function () { return validation_1.isAttachment; } });
21
+ Object.defineProperty(exports, "isChunkedAttachmentContent", { enumerable: true, get: function () { return validation_1.isChunkedAttachmentContent; } });
20
22
  Object.defineProperty(exports, "isPage", { enumerable: true, get: function () { return validation_1.isPage; } });
21
23
  Object.defineProperty(exports, "isJournal", { enumerable: true, get: function () { return validation_1.isJournal; } });
22
24
  Object.defineProperty(exports, "isJournalContent", { enumerable: true, get: function () { return validation_1.isJournalContent; } });
23
25
  Object.defineProperty(exports, "validateGeoLocation", { enumerable: true, get: function () { return validation_1.validateGeoLocation; } });
24
26
  Object.defineProperty(exports, "validateComment", { enumerable: true, get: function () { return validation_1.validateComment; } });
25
27
  Object.defineProperty(exports, "validateAttachment", { enumerable: true, get: function () { return validation_1.validateAttachment; } });
28
+ Object.defineProperty(exports, "validateChunkedAttachmentContent", { enumerable: true, get: function () { return validation_1.validateChunkedAttachmentContent; } });
26
29
  Object.defineProperty(exports, "validatePage", { enumerable: true, get: function () { return validation_1.validatePage; } });
27
30
  Object.defineProperty(exports, "validateJournalSettings", { enumerable: true, get: function () { return validation_1.validateJournalSettings; } });
28
31
  Object.defineProperty(exports, "validateJournal", { enumerable: true, get: function () { return validation_1.validateJournal; } });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAcA,iCAAkE;AAAzD,iHAAA,wBAAwB,OAAA;AAAE,sGAAA,aAAa,OAAA;AAEhD,UAAU;AACV,qCAMmB;AALjB,yGAAA,cAAc,OAAA;AACd,0GAAA,eAAe,OAAA;AACf,yGAAA,cAAc,OAAA;AACd,0GAAA,eAAe,OAAA;AACf,yGAAA,cAAc,OAAA;AAGhB,aAAa;AACb,2CAesB;AAdpB,6GAAA,eAAe,OAAA;AACf,2GAAA,aAAa,OAAA;AACb,uGAAA,SAAS,OAAA;AACT,0GAAA,YAAY,OAAA;AACZ,oGAAA,MAAM,OAAA;AACN,uGAAA,SAAS,OAAA;AACT,8GAAA,gBAAgB,OAAA;AAChB,iHAAA,mBAAmB,OAAA;AACnB,6GAAA,eAAe,OAAA;AACf,gHAAA,kBAAkB,OAAA;AAClB,0GAAA,YAAY,OAAA;AACZ,qHAAA,uBAAuB,OAAA;AACvB,6GAAA,eAAe,OAAA;AACf,oHAAA,sBAAsB,OAAA;AAKxB,yCAA8C;AAArC,4GAAA,eAAe,OAAA;AAIxB,mCAOkB;AANhB,6GAAA,mBAAmB,OAAA;AACnB,uGAAA,aAAa,OAAA;AACb,kHAAA,wBAAwB,OAAA;AACxB,gHAAA,sBAAsB,OAAA;AACtB,wGAAA,cAAc,OAAA;AACd,0GAAA,gBAAgB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAgBA,iCAIiB;AAHf,0HAAA,iCAAiC,OAAA;AACjC,iHAAA,wBAAwB,OAAA;AACxB,sGAAA,aAAa,OAAA;AAGf,UAAU;AACV,qCAMmB;AALjB,yGAAA,cAAc,OAAA;AACd,0GAAA,eAAe,OAAA;AACf,yGAAA,cAAc,OAAA;AACd,0GAAA,eAAe,OAAA;AACf,yGAAA,cAAc,OAAA;AAGhB,aAAa;AACb,2CAiBsB;AAhBpB,6GAAA,eAAe,OAAA;AACf,2GAAA,aAAa,OAAA;AACb,uGAAA,SAAS,OAAA;AACT,0GAAA,YAAY,OAAA;AACZ,wHAAA,0BAA0B,OAAA;AAC1B,oGAAA,MAAM,OAAA;AACN,uGAAA,SAAS,OAAA;AACT,8GAAA,gBAAgB,OAAA;AAChB,iHAAA,mBAAmB,OAAA;AACnB,6GAAA,eAAe,OAAA;AACf,gHAAA,kBAAkB,OAAA;AAClB,8HAAA,gCAAgC,OAAA;AAChC,0GAAA,YAAY,OAAA;AACZ,qHAAA,uBAAuB,OAAA;AACvB,6GAAA,eAAe,OAAA;AACf,oHAAA,sBAAsB,OAAA;AAKxB,yCAA8C;AAArC,4GAAA,eAAe,OAAA;AAQxB,mCAOkB;AANhB,6GAAA,mBAAmB,OAAA;AACnB,uGAAA,aAAa,OAAA;AACb,kHAAA,wBAAwB,OAAA;AACxB,gHAAA,sBAAsB,OAAA;AACtB,wGAAA,cAAc,OAAA;AACd,0GAAA,gBAAgB,OAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"migration.d.ts","sourceRoot":"","sources":["../src/migration.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;CACjC;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,eAAe,CA4CpF"}
1
+ {"version":3,"file":"migration.d.ts","sourceRoot":"","sources":["../src/migration.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;CACjC;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,OAAO,EACb,WAAW,CAAC,EAAE,MAAM,GACnB,eAAe,CAsDjB"}
package/dist/migration.js CHANGED
@@ -11,13 +11,18 @@ const index_1 = require("./migrations/index");
11
11
  * - Throws if the data is from a future version (can't downgrade).
12
12
  */
13
13
  function migrateIfNeeded(data, fromVersion) {
14
- const version = fromVersion ?? '0.16.0';
14
+ const version = fromVersion ?? "0.16.0";
15
15
  if ((0, version_1.isFutureVersion)(version)) {
16
16
  throw new Error(`Cannot open data with schema version ${version} — ` +
17
17
  `this app supports up to ${version_1.SCHEMA_VERSION}. Please update the app.`);
18
18
  }
19
19
  if ((0, version_1.compareVersions)(version, version_1.SCHEMA_VERSION) === 0) {
20
- return { data, migrated: false, fromVersion: version, toVersion: version_1.SCHEMA_VERSION };
20
+ return {
21
+ data,
22
+ migrated: false,
23
+ fromVersion: version,
24
+ toVersion: version_1.SCHEMA_VERSION,
25
+ };
21
26
  }
22
27
  let current = version;
23
28
  let result = data;
@@ -42,6 +47,11 @@ function migrateIfNeeded(data, fromVersion) {
42
47
  throw new Error(`No migration path from ${version} to ${version_1.SCHEMA_VERSION}. ` +
43
48
  `Reached ${current} but no further migrations available.`);
44
49
  }
45
- return { data: result, migrated: true, fromVersion: version, toVersion: version_1.SCHEMA_VERSION };
50
+ return {
51
+ data: result,
52
+ migrated: true,
53
+ fromVersion: version,
54
+ toVersion: version_1.SCHEMA_VERSION,
55
+ };
46
56
  }
47
57
  //# sourceMappingURL=migration.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"migration.js","sourceRoot":"","sources":["../src/migration.ts"],"names":[],"mappings":";;AAwBA,0CA4CC;AApED,uCAA6E;AAC7E,8CAAgD;AAgBhD;;;;;;GAMG;AACH,SAAgB,eAAe,CAAC,IAAa,EAAE,WAAoB;IACjE,MAAM,OAAO,GAAG,WAAW,IAAI,QAAQ,CAAC;IAExC,IAAI,IAAA,yBAAe,EAAC,OAAO,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CACb,wCAAwC,OAAO,KAAK;YAClD,2BAA2B,wBAAc,0BAA0B,CACtE,CAAC;IACJ,CAAC;IAED,IAAI,IAAA,yBAAe,EAAC,OAAO,EAAE,wBAAc,CAAC,KAAK,CAAC,EAAE,CAAC;QACnD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,wBAAc,EAAE,CAAC;IACpF,CAAC;IAED,IAAI,OAAO,GAAG,OAAO,CAAC;IACtB,IAAI,MAAM,GAAG,IAAI,CAAC;IAElB,4BAA4B;IAC5B,KAAK,MAAM,SAAS,IAAI,kBAAU,EAAE,CAAC;QACnC,IAAI,IAAA,yBAAe,EAAC,OAAO,EAAE,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACnD,IAAI,CAAC;gBACH,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACrC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAC7D,MAAM,IAAI,KAAK,CACb,aAAa,SAAS,CAAC,IAAI,MAAM,SAAS,CAAC,EAAE,YAAY,GAAG,EAAE;oBAC5D,KAAK,SAAS,CAAC,WAAW,GAAG,CAChC,CAAC;YACJ,CAAC;YACD,OAAO,GAAG,SAAS,CAAC,EAAE,CAAC;QACzB,CAAC;QAED,mCAAmC;QACnC,IAAI,IAAA,yBAAe,EAAC,OAAO,EAAE,wBAAc,CAAC,KAAK,CAAC;YAAE,MAAM;IAC5D,CAAC;IAED,IAAI,IAAA,yBAAe,EAAC,OAAO,EAAE,wBAAc,CAAC,KAAK,CAAC,EAAE,CAAC;QACnD,MAAM,IAAI,KAAK,CACb,0BAA0B,OAAO,OAAO,wBAAc,IAAI;YACxD,WAAW,OAAO,uCAAuC,CAC5D,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,wBAAc,EAAE,CAAC;AAC3F,CAAC"}
1
+ {"version":3,"file":"migration.js","sourceRoot":"","sources":["../src/migration.ts"],"names":[],"mappings":";;AAwBA,0CAyDC;AAjFD,uCAA6E;AAC7E,8CAAgD;AAgBhD;;;;;;GAMG;AACH,SAAgB,eAAe,CAC7B,IAAa,EACb,WAAoB;IAEpB,MAAM,OAAO,GAAG,WAAW,IAAI,QAAQ,CAAC;IAExC,IAAI,IAAA,yBAAe,EAAC,OAAO,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CACb,wCAAwC,OAAO,KAAK;YAClD,2BAA2B,wBAAc,0BAA0B,CACtE,CAAC;IACJ,CAAC;IAED,IAAI,IAAA,yBAAe,EAAC,OAAO,EAAE,wBAAc,CAAC,KAAK,CAAC,EAAE,CAAC;QACnD,OAAO;YACL,IAAI;YACJ,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,OAAO;YACpB,SAAS,EAAE,wBAAc;SAC1B,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,GAAG,OAAO,CAAC;IACtB,IAAI,MAAM,GAAG,IAAI,CAAC;IAElB,4BAA4B;IAC5B,KAAK,MAAM,SAAS,IAAI,kBAAU,EAAE,CAAC;QACnC,IAAI,IAAA,yBAAe,EAAC,OAAO,EAAE,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACnD,IAAI,CAAC;gBACH,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACrC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAC7D,MAAM,IAAI,KAAK,CACb,aAAa,SAAS,CAAC,IAAI,MAAM,SAAS,CAAC,EAAE,YAAY,GAAG,EAAE;oBAC5D,KAAK,SAAS,CAAC,WAAW,GAAG,CAChC,CAAC;YACJ,CAAC;YACD,OAAO,GAAG,SAAS,CAAC,EAAE,CAAC;QACzB,CAAC;QAED,mCAAmC;QACnC,IAAI,IAAA,yBAAe,EAAC,OAAO,EAAE,wBAAc,CAAC,KAAK,CAAC;YAAE,MAAM;IAC5D,CAAC;IAED,IAAI,IAAA,yBAAe,EAAC,OAAO,EAAE,wBAAc,CAAC,KAAK,CAAC,EAAE,CAAC;QACnD,MAAM,IAAI,KAAK,CACb,0BAA0B,OAAO,OAAO,wBAAc,IAAI;YACxD,WAAW,OAAO,uCAAuC,CAC5D,CAAC;IACJ,CAAC;IAED,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,OAAO;QACpB,SAAS,EAAE,wBAAc;KAC1B,CAAC;AACJ,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { Migration } from '../migration';
1
+ import type { Migration } from "../migration";
2
2
  /**
3
3
  * Registry of all schema migrations, ordered from oldest to newest.
4
4
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/migrations/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAG9C;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,SAAS,EAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/migrations/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAI9C;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,SAAS,EAA6C,CAAC"}
@@ -2,8 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MIGRATIONS = void 0;
4
4
  const v0_16_0_to_v0_17_0_1 = require("./v0_16_0_to_v0_17_0");
5
+ const v0_17_0_to_v0_18_0_1 = require("./v0_17_0_to_v0_18_0");
5
6
  /**
6
7
  * Registry of all schema migrations, ordered from oldest to newest.
7
8
  */
8
- exports.MIGRATIONS = [v0_16_0_to_v0_17_0_1.v0_16_0_to_v0_17_0];
9
+ exports.MIGRATIONS = [v0_16_0_to_v0_17_0_1.v0_16_0_to_v0_17_0, v0_17_0_to_v0_18_0_1.v0_17_0_to_v0_18_0];
9
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/migrations/index.ts"],"names":[],"mappings":";;;AACA,6DAA0D;AAE1D;;GAEG;AACU,QAAA,UAAU,GAAgB,CAAC,uCAAkB,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/migrations/index.ts"],"names":[],"mappings":";;;AACA,6DAA0D;AAC1D,6DAA0D;AAE1D;;GAEG;AACU,QAAA,UAAU,GAAgB,CAAC,uCAAkB,EAAE,uCAAkB,CAAC,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { Migration } from '../migration';
1
+ import type { Migration } from "../migration";
2
2
  /**
3
3
  * Migration from schema v0.16.0 to v0.17.0.
4
4
  *
@@ -1 +1 @@
1
- {"version":3,"file":"v0_16_0_to_v0_17_0.d.ts","sourceRoot":"","sources":["../../src/migrations/v0_16_0_to_v0_17_0.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,EAAE,SAahC,CAAC"}
1
+ {"version":3,"file":"v0_16_0_to_v0_17_0.d.ts","sourceRoot":"","sources":["../../src/migrations/v0_16_0_to_v0_17_0.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,EAAE,SAiBhC,CAAC"}
@@ -8,13 +8,15 @@ exports.v0_16_0_to_v0_17_0 = void 0;
8
8
  * This field was a dead toggle that had no effect on the UI.
9
9
  */
10
10
  exports.v0_16_0_to_v0_17_0 = {
11
- from: '0.16.0',
12
- to: '0.17.0',
13
- description: 'Remove deprecated showMarkdownPlaceholder setting',
11
+ from: "0.16.0",
12
+ to: "0.17.0",
13
+ description: "Remove deprecated showMarkdownPlaceholder setting",
14
14
  migrate(data) {
15
- if (data && typeof data === 'object' && 'settings' in data) {
15
+ if (data && typeof data === "object" && "settings" in data) {
16
16
  const settings = data.settings;
17
- if (settings && typeof settings === 'object' && 'showMarkdownPlaceholder' in settings) {
17
+ if (settings &&
18
+ typeof settings === "object" &&
19
+ "showMarkdownPlaceholder" in settings) {
18
20
  delete settings.showMarkdownPlaceholder;
19
21
  }
20
22
  }
@@ -1 +1 @@
1
- {"version":3,"file":"v0_16_0_to_v0_17_0.js","sourceRoot":"","sources":["../../src/migrations/v0_16_0_to_v0_17_0.ts"],"names":[],"mappings":";;;AAEA;;;;;GAKG;AACU,QAAA,kBAAkB,GAAc;IAC3C,IAAI,EAAE,QAAQ;IACd,EAAE,EAAE,QAAQ;IACZ,WAAW,EAAE,mDAAmD;IAChE,OAAO,CAAC,IAAa;QACnB,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,UAAU,IAAI,IAAI,EAAE,CAAC;YAC3D,MAAM,QAAQ,GAAI,IAAgC,CAAC,QAAQ,CAAC;YAC5D,IAAI,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,yBAAyB,IAAI,QAAQ,EAAE,CAAC;gBACtF,OAAQ,QAAoC,CAAC,uBAAuB,CAAC;YACvE,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"v0_16_0_to_v0_17_0.js","sourceRoot":"","sources":["../../src/migrations/v0_16_0_to_v0_17_0.ts"],"names":[],"mappings":";;;AAEA;;;;;GAKG;AACU,QAAA,kBAAkB,GAAc;IAC3C,IAAI,EAAE,QAAQ;IACd,EAAE,EAAE,QAAQ;IACZ,WAAW,EAAE,mDAAmD;IAChE,OAAO,CAAC,IAAa;QACnB,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,UAAU,IAAI,IAAI,EAAE,CAAC;YAC3D,MAAM,QAAQ,GAAI,IAAgC,CAAC,QAAQ,CAAC;YAC5D,IACE,QAAQ;gBACR,OAAO,QAAQ,KAAK,QAAQ;gBAC5B,yBAAyB,IAAI,QAAQ,EACrC,CAAC;gBACD,OAAQ,QAAoC,CAAC,uBAAuB,CAAC;YACvE,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { Migration } from "../migration";
2
+ /**
3
+ * Migration from schema v0.17.0 to v0.18.0.
4
+ *
5
+ * Attachment content descriptors are additive. Legacy attachment data stays
6
+ * descriptor-absent; this package does not convert attachment bytes or storage.
7
+ */
8
+ export declare const v0_17_0_to_v0_18_0: Migration;
9
+ //# sourceMappingURL=v0_17_0_to_v0_18_0.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"v0_17_0_to_v0_18_0.d.ts","sourceRoot":"","sources":["../../src/migrations/v0_17_0_to_v0_18_0.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,EAAE,SAOhC,CAAC"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.v0_17_0_to_v0_18_0 = void 0;
4
+ /**
5
+ * Migration from schema v0.17.0 to v0.18.0.
6
+ *
7
+ * Attachment content descriptors are additive. Legacy attachment data stays
8
+ * descriptor-absent; this package does not convert attachment bytes or storage.
9
+ */
10
+ exports.v0_17_0_to_v0_18_0 = {
11
+ from: "0.17.0",
12
+ to: "0.18.0",
13
+ description: "Additive chunked attachment-content descriptor schema",
14
+ migrate(data) {
15
+ return data;
16
+ },
17
+ };
18
+ //# sourceMappingURL=v0_17_0_to_v0_18_0.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"v0_17_0_to_v0_18_0.js","sourceRoot":"","sources":["../../src/migrations/v0_17_0_to_v0_18_0.ts"],"names":[],"mappings":";;;AAEA;;;;;GAKG;AACU,QAAA,kBAAkB,GAAc;IAC3C,IAAI,EAAE,QAAQ;IACd,EAAE,EAAE,QAAQ;IACZ,WAAW,EAAE,uDAAuD;IACpE,OAAO,CAAC,IAAa;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAC"}
package/dist/types.d.ts CHANGED
@@ -9,14 +9,28 @@ export interface Comment {
9
9
  text: string;
10
10
  date: string;
11
11
  }
12
+ export declare const CHUNKED_ATTACHMENT_CONTENT_FORMAT: "canto-chunked-v1";
13
+ export interface ChunkedAttachmentContent {
14
+ format: typeof CHUNKED_ATTACHMENT_CONTENT_FORMAT;
15
+ /** Exact plaintext byte length. Authoritative when present. */
16
+ byteLength: number;
17
+ /** Maximum plaintext bytes in one chunk. */
18
+ chunkSize: number;
19
+ /** Number of ordered chunks. */
20
+ chunkCount: number;
21
+ }
22
+ /** Extensible attachment-content descriptor union. */
23
+ export type AttachmentContent = ChunkedAttachmentContent;
12
24
  export interface Attachment {
13
25
  id: string;
14
26
  path: string;
15
27
  name: string;
16
- type: 'image' | 'file';
28
+ type: "image" | "file";
17
29
  encrypted: boolean;
18
30
  size?: number;
19
31
  deleted: boolean;
32
+ /** Absent for legacy monolithic attachment content. */
33
+ content?: AttachmentContent;
20
34
  }
21
35
  export interface Page {
22
36
  id: string;
@@ -44,14 +58,14 @@ export interface PagePreview {
44
58
  firstImage?: string;
45
59
  thumbnail?: string;
46
60
  }
47
- export type SyncProvider = 'gdrive';
61
+ export type SyncProvider = "gdrive";
48
62
  export interface JournalSettings {
49
63
  use24h: boolean;
50
64
  previewTags: boolean;
51
65
  previewThumbnail: boolean;
52
66
  previewIcons: boolean;
53
67
  filterBar: boolean;
54
- sort: 'ascending' | 'descending' | 'none';
68
+ sort: "ascending" | "descending" | "none";
55
69
  autoLocation: boolean;
56
70
  remoteSync: boolean;
57
71
  syncProvider?: SyncProvider;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js CHANGED
@@ -1,23 +1,24 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DEFAULT_JOURNAL_SETTINGS = void 0;
3
+ exports.DEFAULT_JOURNAL_SETTINGS = exports.CHUNKED_ATTACHMENT_CONTENT_FORMAT = void 0;
4
4
  exports.pageToPreview = pageToPreview;
5
+ exports.CHUNKED_ATTACHMENT_CONTENT_FORMAT = "canto-chunked-v1";
5
6
  exports.DEFAULT_JOURNAL_SETTINGS = {
6
7
  use24h: false,
7
8
  previewTags: true,
8
9
  previewThumbnail: true,
9
10
  previewIcons: true,
10
11
  filterBar: true,
11
- sort: 'descending',
12
+ sort: "descending",
12
13
  autoLocation: false,
13
14
  remoteSync: false,
14
15
  autoSync: false,
15
16
  };
16
17
  function pageToPreview(page) {
17
- const firstLine = page.text.split('\n').find((l) => l.trim().length > 0) ?? '';
18
+ const firstLine = page.text.split("\n").find((l) => l.trim().length > 0) ?? "";
18
19
  const previewText = firstLine.substring(0, 120);
19
20
  const firstNonEncryptedImage = page.images.find((img) => !img.encrypted && !img.deleted);
20
- const searchText = page.text.toLowerCase() + ' ' + page.tags.join(' ').toLowerCase();
21
+ const searchText = page.text.toLowerCase() + " " + page.tags.join(" ").toLowerCase();
21
22
  return {
22
23
  id: page.id,
23
24
  date: page.date,
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAgHA,sCAqBC;AAjCY,QAAA,wBAAwB,GAAoB;IACvD,MAAM,EAAE,KAAK;IACb,WAAW,EAAE,IAAI;IACjB,gBAAgB,EAAE,IAAI;IACtB,YAAY,EAAE,IAAI;IAClB,SAAS,EAAE,IAAI;IACf,IAAI,EAAE,YAAY;IAClB,YAAY,EAAE,KAAK;IACnB,UAAU,EAAE,KAAK;IACjB,QAAQ,EAAE,KAAK;CAChB,CAAC;AAEF,SAAgB,aAAa,CAAC,IAAU;IACtC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/E,MAAM,WAAW,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAEhD,MAAM,sBAAsB,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,SAAS,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAEzF,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;IAErF,OAAO;QACL,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,WAAW;QACX,UAAU;QACV,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;QAChC,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;QACpC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ;QAC5B,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;QACrC,UAAU,EAAE,sBAAsB,EAAE,IAAI;QACxC,SAAS,EAAE,IAAI,CAAC,SAAS;KAC1B,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAiIA,sCAyBC;AA7IY,QAAA,iCAAiC,GAAG,kBAA2B,CAAC;AAwGhE,QAAA,wBAAwB,GAAoB;IACvD,MAAM,EAAE,KAAK;IACb,WAAW,EAAE,IAAI;IACjB,gBAAgB,EAAE,IAAI;IACtB,YAAY,EAAE,IAAI;IAClB,SAAS,EAAE,IAAI;IACf,IAAI,EAAE,YAAY;IAClB,YAAY,EAAE,KAAK;IACnB,UAAU,EAAE,KAAK;IACjB,QAAQ,EAAE,KAAK;CAChB,CAAC;AAEF,SAAgB,aAAa,CAAC,IAAU;IACtC,MAAM,SAAS,GACb,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/D,MAAM,WAAW,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAEhD,MAAM,sBAAsB,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAC7C,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,SAAS,IAAI,CAAC,GAAG,CAAC,OAAO,CACxC,CAAC;IAEF,MAAM,UAAU,GACd,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;IAEpE,OAAO;QACL,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,WAAW;QACX,UAAU;QACV,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;QAChC,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;QACpC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ;QAC5B,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;QACrC,UAAU,EAAE,sBAAsB,EAAE,IAAI;QACxC,SAAS,EAAE,IAAI,CAAC,SAAS;KAC1B,CAAC;AACJ,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { GeoLocation, Comment, Attachment, Page, Journal, JournalContent, JournalSettings } from './types';
1
+ import type { GeoLocation, Comment, Attachment, Page, Journal, JournalContent, JournalSettings, ChunkedAttachmentContent } from "./types";
2
2
  export declare class ValidationError extends Error {
3
3
  readonly field: string;
4
4
  readonly expected: string;
@@ -7,12 +7,14 @@ export declare class ValidationError extends Error {
7
7
  }
8
8
  export declare function isGeoLocation(v: unknown): v is GeoLocation;
9
9
  export declare function isComment(v: unknown): v is Comment;
10
+ export declare function isChunkedAttachmentContent(v: unknown): v is ChunkedAttachmentContent;
10
11
  export declare function isAttachment(v: unknown): v is Attachment;
11
12
  export declare function isPage(v: unknown): v is Page;
12
13
  export declare function isJournal(v: unknown): v is Journal;
13
14
  export declare function isJournalContent(v: unknown): v is JournalContent;
14
15
  export declare function validateGeoLocation(v: unknown, path?: string): GeoLocation;
15
16
  export declare function validateComment(v: unknown, path?: string): Comment;
17
+ export declare function validateChunkedAttachmentContent(v: unknown, path?: string): ChunkedAttachmentContent;
16
18
  export declare function validateAttachment(v: unknown, path?: string): Attachment;
17
19
  export declare function validatePage(v: unknown, path?: string): Page;
18
20
  export declare function validateJournalSettings(v: unknown, path?: string): JournalSettings;
@@ -1 +1 @@
1
- {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,OAAO,EACP,UAAU,EACV,IAAI,EACJ,OAAO,EACP,cAAc,EACd,eAAe,EAChB,MAAM,SAAS,CAAC;AAEjB,qBAAa,eAAgB,SAAQ,KAAK;aAEtB,KAAK,EAAE,MAAM;aACb,QAAQ,EAAE,MAAM;aAChB,QAAQ,EAAE,MAAM;gBAFhB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM;CAKnC;AA4DD,wBAAgB,aAAa,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,WAAW,CAI1D;AAED,wBAAgB,SAAS,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,OAAO,CAIlD;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,UAAU,CAWxD;AAED,wBAAgB,MAAM,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,IAAI,CAc5C;AAED,wBAAgB,SAAS,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,OAAO,CAUlD;AAED,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,cAAc,CAIhE;AAMD,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,SAAa,GAAG,WAAW,CAkB9E;AAED,wBAAgB,eAAe,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,SAAY,GAAG,OAAO,CAOrE;AAED,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,SAAe,GAAG,UAAU,CAW9E;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,SAAS,GAAG,IAAI,CAgC5D;AAED,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,SAAa,GAAG,eAAe,CAiBtF;AAED,wBAAgB,eAAe,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,SAAY,GAAG,OAAO,CAarE;AAED,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,SAAY,GAAG,cAAc,CAWnF"}
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,WAAW,EACX,OAAO,EACP,UAAU,EACV,IAAI,EACJ,OAAO,EACP,cAAc,EACd,eAAe,EACf,wBAAwB,EACzB,MAAM,SAAS,CAAC;AAEjB,qBAAa,eAAgB,SAAQ,KAAK;aAEtB,KAAK,EAAE,MAAM;aACb,QAAQ,EAAE,MAAM;aAChB,QAAQ,EAAE,MAAM;gBAFhB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM;CAKnC;AA+ED,wBAAgB,aAAa,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,WAAW,CAI1D;AAED,wBAAgB,SAAS,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,OAAO,CAQlD;AAED,wBAAgB,0BAA0B,CACxC,CAAC,EAAE,OAAO,GACT,CAAC,IAAI,wBAAwB,CAc/B;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,UAAU,CAYxD;AAED,wBAAgB,MAAM,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,IAAI,CAc5C;AAED,wBAAgB,SAAS,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,OAAO,CAUlD;AAED,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,cAAc,CAQhE;AAMD,wBAAgB,mBAAmB,CACjC,CAAC,EAAE,OAAO,EACV,IAAI,SAAa,GAChB,WAAW,CAsBb;AAED,wBAAgB,eAAe,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,SAAY,GAAG,OAAO,CAOrE;AAED,wBAAgB,gCAAgC,CAC9C,CAAC,EAAE,OAAO,EACV,IAAI,SAAY,GACf,wBAAwB,CA0B1B;AAED,wBAAgB,kBAAkB,CAChC,CAAC,EAAE,OAAO,EACV,IAAI,SAAe,GAClB,UAAU,CAcZ;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,SAAS,GAAG,IAAI,CAgC5D;AAED,wBAAgB,uBAAuB,CACrC,CAAC,EAAE,OAAO,EACV,IAAI,SAAa,GAChB,eAAe,CAiBjB;AAED,wBAAgB,eAAe,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,SAAY,GAAG,OAAO,CAarE;AAED,wBAAgB,sBAAsB,CACpC,CAAC,EAAE,OAAO,EACV,IAAI,SAAY,GACf,cAAc,CAWhB"}
@@ -3,24 +3,27 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ValidationError = void 0;
4
4
  exports.isGeoLocation = isGeoLocation;
5
5
  exports.isComment = isComment;
6
+ exports.isChunkedAttachmentContent = isChunkedAttachmentContent;
6
7
  exports.isAttachment = isAttachment;
7
8
  exports.isPage = isPage;
8
9
  exports.isJournal = isJournal;
9
10
  exports.isJournalContent = isJournalContent;
10
11
  exports.validateGeoLocation = validateGeoLocation;
11
12
  exports.validateComment = validateComment;
13
+ exports.validateChunkedAttachmentContent = validateChunkedAttachmentContent;
12
14
  exports.validateAttachment = validateAttachment;
13
15
  exports.validatePage = validatePage;
14
16
  exports.validateJournalSettings = validateJournalSettings;
15
17
  exports.validateJournal = validateJournal;
16
18
  exports.validateJournalContent = validateJournalContent;
19
+ const types_1 = require("./types");
17
20
  class ValidationError extends Error {
18
21
  constructor(field, expected, received) {
19
22
  super(`Invalid field "${field}": expected ${expected}, got ${received}`);
20
23
  this.field = field;
21
24
  this.expected = expected;
22
25
  this.received = received;
23
- this.name = 'ValidationError';
26
+ this.name = "ValidationError";
24
27
  }
25
28
  }
26
29
  exports.ValidationError = ValidationError;
@@ -29,9 +32,9 @@ exports.ValidationError = ValidationError;
29
32
  // ---------------------------------------------------------------------------
30
33
  function typeOf(v) {
31
34
  if (v === null)
32
- return 'null';
35
+ return "null";
33
36
  if (Array.isArray(v))
34
- return 'array';
37
+ return "array";
35
38
  return typeof v;
36
39
  }
37
40
  function checkType(path, value, expected) {
@@ -46,105 +49,130 @@ function checkOptionalType(path, value, expected) {
46
49
  }
47
50
  }
48
51
  function checkEnum(path, value, allowed) {
49
- if (typeof value !== 'string' || !allowed.includes(value)) {
52
+ if (typeof value !== "string" || !allowed.includes(value)) {
50
53
  throw new ValidationError(path, `one of ${JSON.stringify(allowed)}`, JSON.stringify(value));
51
54
  }
52
55
  }
53
56
  function checkString(path, value) {
54
- checkType(path, value, 'string');
57
+ checkType(path, value, "string");
55
58
  }
56
59
  function checkNumber(path, value) {
57
- checkType(path, value, 'number');
60
+ checkType(path, value, "number");
58
61
  if (!Number.isFinite(value)) {
59
- throw new ValidationError(path, 'finite number', String(value));
62
+ throw new ValidationError(path, "finite number", String(value));
60
63
  }
61
64
  }
62
65
  function checkBoolean(path, value) {
63
- checkType(path, value, 'boolean');
66
+ checkType(path, value, "boolean");
64
67
  }
65
68
  function checkArray(path, value) {
66
- checkType(path, value, 'array');
69
+ checkType(path, value, "array");
67
70
  }
68
71
  function checkObject(path, value) {
69
- if (value === null || typeof value !== 'object' || Array.isArray(value)) {
70
- throw new ValidationError(path, 'object', typeOf(value));
72
+ if (value === null || typeof value !== "object" || Array.isArray(value)) {
73
+ throw new ValidationError(path, "object", typeOf(value));
74
+ }
75
+ }
76
+ function checkNonNegativeSafeInteger(path, value) {
77
+ checkType(path, value, "number");
78
+ if (!Number.isSafeInteger(value) || value < 0) {
79
+ throw new ValidationError(path, "non-negative safe integer", String(value));
71
80
  }
72
81
  }
73
82
  // ---------------------------------------------------------------------------
74
83
  // Type guards (boolean, no throw)
75
84
  // ---------------------------------------------------------------------------
76
85
  function isGeoLocation(v) {
77
- if (!v || typeof v !== 'object')
86
+ if (!v || typeof v !== "object")
78
87
  return false;
79
88
  const o = v;
80
- return typeof o.latitude === 'number' && typeof o.longitude === 'number';
89
+ return typeof o.latitude === "number" && typeof o.longitude === "number";
81
90
  }
82
91
  function isComment(v) {
83
- if (!v || typeof v !== 'object')
92
+ if (!v || typeof v !== "object")
93
+ return false;
94
+ const o = v;
95
+ return (typeof o.id === "string" &&
96
+ typeof o.text === "string" &&
97
+ typeof o.date === "string");
98
+ }
99
+ function isChunkedAttachmentContent(v) {
100
+ if (!v || typeof v !== "object" || Array.isArray(v))
84
101
  return false;
85
102
  const o = v;
86
- return typeof o.id === 'string' && typeof o.text === 'string' && typeof o.date === 'string';
103
+ return (o.format === types_1.CHUNKED_ATTACHMENT_CONTENT_FORMAT &&
104
+ Number.isSafeInteger(o.byteLength) &&
105
+ o.byteLength >= 0 &&
106
+ Number.isSafeInteger(o.chunkSize) &&
107
+ o.chunkSize > 0 &&
108
+ Number.isSafeInteger(o.chunkCount) &&
109
+ o.chunkCount >= 0 &&
110
+ o.chunkCount ===
111
+ Math.ceil(o.byteLength / o.chunkSize));
87
112
  }
88
113
  function isAttachment(v) {
89
- if (!v || typeof v !== 'object')
114
+ if (!v || typeof v !== "object")
90
115
  return false;
91
116
  const o = v;
92
- return (typeof o.id === 'string' &&
93
- typeof o.path === 'string' &&
94
- typeof o.name === 'string' &&
95
- (o.type === 'image' || o.type === 'file') &&
96
- typeof o.encrypted === 'boolean' &&
97
- typeof o.deleted === 'boolean');
117
+ return (typeof o.id === "string" &&
118
+ typeof o.path === "string" &&
119
+ typeof o.name === "string" &&
120
+ (o.type === "image" || o.type === "file") &&
121
+ typeof o.encrypted === "boolean" &&
122
+ typeof o.deleted === "boolean" &&
123
+ (o.content === undefined || isChunkedAttachmentContent(o.content)));
98
124
  }
99
125
  function isPage(v) {
100
- if (!v || typeof v !== 'object')
126
+ if (!v || typeof v !== "object")
101
127
  return false;
102
128
  const o = v;
103
- return (typeof o.id === 'string' &&
104
- typeof o.text === 'string' &&
105
- typeof o.date === 'string' &&
129
+ return (typeof o.id === "string" &&
130
+ typeof o.text === "string" &&
131
+ typeof o.date === "string" &&
106
132
  Array.isArray(o.tags) &&
107
133
  Array.isArray(o.files) &&
108
134
  Array.isArray(o.images) &&
109
135
  Array.isArray(o.comments) &&
110
- typeof o.modified === 'number' &&
111
- typeof o.deleted === 'boolean');
136
+ typeof o.modified === "number" &&
137
+ typeof o.deleted === "boolean");
112
138
  }
113
139
  function isJournal(v) {
114
- if (!v || typeof v !== 'object')
140
+ if (!v || typeof v !== "object")
115
141
  return false;
116
142
  const o = v;
117
- return (typeof o.id === 'string' &&
118
- typeof o.title === 'string' &&
119
- typeof o.icon === 'string' &&
120
- typeof o.date === 'string' &&
121
- typeof o.secure === 'boolean');
143
+ return (typeof o.id === "string" &&
144
+ typeof o.title === "string" &&
145
+ typeof o.icon === "string" &&
146
+ typeof o.date === "string" &&
147
+ typeof o.secure === "boolean");
122
148
  }
123
149
  function isJournalContent(v) {
124
150
  if (!isJournal(v))
125
151
  return false;
126
152
  const o = v;
127
- return Array.isArray(o.pages) && typeof o.settings === 'object' && o.settings !== null;
153
+ return (Array.isArray(o.pages) &&
154
+ typeof o.settings === "object" &&
155
+ o.settings !== null);
128
156
  }
129
157
  // ---------------------------------------------------------------------------
130
158
  // Structural validators (throw ValidationError with field path)
131
159
  // ---------------------------------------------------------------------------
132
- function validateGeoLocation(v, path = 'location') {
160
+ function validateGeoLocation(v, path = "location") {
133
161
  checkObject(path, v);
134
162
  const o = v;
135
163
  checkNumber(`${path}.latitude`, o.latitude);
136
164
  checkNumber(`${path}.longitude`, o.longitude);
137
165
  if (o.latitude < -90 || o.latitude > 90) {
138
- throw new ValidationError(`${path}.latitude`, 'number in range [-90, 90]', String(o.latitude));
166
+ throw new ValidationError(`${path}.latitude`, "number in range [-90, 90]", String(o.latitude));
139
167
  }
140
168
  if (o.longitude < -180 || o.longitude > 180) {
141
- throw new ValidationError(`${path}.longitude`, 'number in range [-180, 180]', String(o.longitude));
169
+ throw new ValidationError(`${path}.longitude`, "number in range [-180, 180]", String(o.longitude));
142
170
  }
143
- checkOptionalType(`${path}.altitude`, o.altitude, 'number');
144
- checkOptionalType(`${path}.accuracy`, o.accuracy, 'number');
171
+ checkOptionalType(`${path}.altitude`, o.altitude, "number");
172
+ checkOptionalType(`${path}.accuracy`, o.accuracy, "number");
145
173
  return v;
146
174
  }
147
- function validateComment(v, path = 'comment') {
175
+ function validateComment(v, path = "comment") {
148
176
  checkObject(path, v);
149
177
  const o = v;
150
178
  checkString(`${path}.id`, o.id);
@@ -152,33 +180,52 @@ function validateComment(v, path = 'comment') {
152
180
  checkString(`${path}.date`, o.date);
153
181
  return v;
154
182
  }
155
- function validateAttachment(v, path = 'attachment') {
183
+ function validateChunkedAttachmentContent(v, path = "content") {
184
+ checkObject(path, v);
185
+ const o = v;
186
+ checkEnum(`${path}.format`, o.format, [types_1.CHUNKED_ATTACHMENT_CONTENT_FORMAT]);
187
+ checkNonNegativeSafeInteger(`${path}.byteLength`, o.byteLength);
188
+ checkNonNegativeSafeInteger(`${path}.chunkSize`, o.chunkSize);
189
+ if (o.chunkSize === 0) {
190
+ throw new ValidationError(`${path}.chunkSize`, "positive safe integer", "0");
191
+ }
192
+ checkNonNegativeSafeInteger(`${path}.chunkCount`, o.chunkCount);
193
+ const expectedChunkCount = Math.ceil(o.byteLength / o.chunkSize);
194
+ if (o.chunkCount !== expectedChunkCount) {
195
+ throw new ValidationError(`${path}.chunkCount`, `Math.ceil(byteLength / chunkSize) = ${expectedChunkCount}`, String(o.chunkCount));
196
+ }
197
+ return v;
198
+ }
199
+ function validateAttachment(v, path = "attachment") {
156
200
  checkObject(path, v);
157
201
  const o = v;
158
202
  checkString(`${path}.id`, o.id);
159
203
  checkString(`${path}.path`, o.path);
160
204
  checkString(`${path}.name`, o.name);
161
- checkEnum(`${path}.type`, o.type, ['image', 'file']);
205
+ checkEnum(`${path}.type`, o.type, ["image", "file"]);
162
206
  checkBoolean(`${path}.encrypted`, o.encrypted);
163
- checkOptionalType(`${path}.size`, o.size, 'number');
207
+ checkOptionalType(`${path}.size`, o.size, "number");
164
208
  checkBoolean(`${path}.deleted`, o.deleted);
209
+ if (o.content !== undefined) {
210
+ validateChunkedAttachmentContent(o.content, `${path}.content`);
211
+ }
165
212
  return v;
166
213
  }
167
- function validatePage(v, path = 'page') {
214
+ function validatePage(v, path = "page") {
168
215
  checkObject(path, v);
169
216
  const o = v;
170
217
  checkString(`${path}.id`, o.id);
171
218
  checkString(`${path}.text`, o.text);
172
219
  checkString(`${path}.date`, o.date);
173
- checkOptionalType(`${path}.thumbnail`, o.thumbnail, 'string');
220
+ checkOptionalType(`${path}.thumbnail`, o.thumbnail, "string");
174
221
  if (o.location !== undefined && o.location !== null) {
175
222
  validateGeoLocation(o.location, `${path}.location`);
176
223
  }
177
224
  checkArray(`${path}.tags`, o.tags);
178
225
  for (let i = 0; i < o.tags.length; i++) {
179
226
  checkString(`${path}.tags[${i}]`, o.tags[i]);
180
- if (o.tags[i].trim() === '') {
181
- throw new ValidationError(`${path}.tags[${i}]`, 'non-empty string', '""');
227
+ if (o.tags[i].trim() === "") {
228
+ throw new ValidationError(`${path}.tags[${i}]`, "non-empty string", '""');
182
229
  }
183
230
  }
184
231
  checkArray(`${path}.files`, o.files);
@@ -197,7 +244,7 @@ function validatePage(v, path = 'page') {
197
244
  checkBoolean(`${path}.deleted`, o.deleted);
198
245
  return v;
199
246
  }
200
- function validateJournalSettings(v, path = 'settings') {
247
+ function validateJournalSettings(v, path = "settings") {
201
248
  checkObject(path, v);
202
249
  const o = v;
203
250
  checkBoolean(`${path}.use24h`, o.use24h);
@@ -205,17 +252,17 @@ function validateJournalSettings(v, path = 'settings') {
205
252
  checkBoolean(`${path}.previewThumbnail`, o.previewThumbnail);
206
253
  checkBoolean(`${path}.previewIcons`, o.previewIcons);
207
254
  checkBoolean(`${path}.filterBar`, o.filterBar);
208
- checkEnum(`${path}.sort`, o.sort, ['ascending', 'descending', 'none']);
255
+ checkEnum(`${path}.sort`, o.sort, ["ascending", "descending", "none"]);
209
256
  checkBoolean(`${path}.autoLocation`, o.autoLocation);
210
257
  checkBoolean(`${path}.remoteSync`, o.remoteSync);
211
258
  if (o.syncProvider !== undefined) {
212
- checkEnum(`${path}.syncProvider`, o.syncProvider, ['gdrive']);
259
+ checkEnum(`${path}.syncProvider`, o.syncProvider, ["gdrive"]);
213
260
  }
214
261
  checkBoolean(`${path}.autoSync`, o.autoSync);
215
- checkOptionalType(`${path}.themeOverride`, o.themeOverride, 'string');
262
+ checkOptionalType(`${path}.themeOverride`, o.themeOverride, "string");
216
263
  return v;
217
264
  }
218
- function validateJournal(v, path = 'journal') {
265
+ function validateJournal(v, path = "journal") {
219
266
  checkObject(path, v);
220
267
  const o = v;
221
268
  checkString(`${path}.id`, o.id);
@@ -223,13 +270,13 @@ function validateJournal(v, path = 'journal') {
223
270
  checkString(`${path}.icon`, o.icon);
224
271
  checkString(`${path}.date`, o.date);
225
272
  checkBoolean(`${path}.secure`, o.secure);
226
- checkOptionalType(`${path}.salt`, o.salt, 'string');
227
- checkOptionalType(`${path}.biometric`, o.biometric, 'boolean');
228
- checkOptionalType(`${path}.kdfIterations`, o.kdfIterations, 'number');
229
- checkOptionalType(`${path}.themeOverride`, o.themeOverride, 'string');
273
+ checkOptionalType(`${path}.salt`, o.salt, "string");
274
+ checkOptionalType(`${path}.biometric`, o.biometric, "boolean");
275
+ checkOptionalType(`${path}.kdfIterations`, o.kdfIterations, "number");
276
+ checkOptionalType(`${path}.themeOverride`, o.themeOverride, "string");
230
277
  return v;
231
278
  }
232
- function validateJournalContent(v, path = 'journal') {
279
+ function validateJournalContent(v, path = "journal") {
233
280
  validateJournal(v, path);
234
281
  const o = v;
235
282
  checkArray(`${path}.pages`, o.pages);
@@ -238,7 +285,7 @@ function validateJournalContent(v, path = 'journal') {
238
285
  }
239
286
  validateJournalSettings(o.settings, `${path}.settings`);
240
287
  // schemaVersion is optional for backward compat (legacy journals lack it)
241
- checkOptionalType(`${path}.schemaVersion`, o.schemaVersion, 'string');
288
+ checkOptionalType(`${path}.schemaVersion`, o.schemaVersion, "string");
242
289
  return v;
243
290
  }
244
291
  //# sourceMappingURL=validation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"validation.js","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":"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"}
package/dist/version.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /** Current Canto journal schema version (semver). */
2
- export declare const SCHEMA_VERSION = "0.17.0";
2
+ export declare const SCHEMA_VERSION = "0.18.0";
3
3
  /** Compare two semver strings. Returns -1 (a < b), 0 (equal), or 1 (a > b). */
4
4
  export declare function compareVersions(a: string, b: string): -1 | 0 | 1;
5
5
  /** True if `version` needs migration to reach SCHEMA_VERSION (strictly older). */
@@ -1 +1 @@
1
- {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,qDAAqD;AACrD,eAAO,MAAM,cAAc,WAAW,CAAC;AAWvC,+EAA+E;AAC/E,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAQhE;AAED,kFAAkF;AAClF,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED,qEAAqE;AACrE,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAExD;AAED,iFAAiF;AACjF,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAIhE"}
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,qDAAqD;AACrD,eAAO,MAAM,cAAc,WAAW,CAAC;AAavC,+EAA+E;AAC/E,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAQhE;AAED,kFAAkF;AAClF,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED,qEAAqE;AACrE,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAExD;AAED,iFAAiF;AACjF,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAIhE"}
package/dist/version.js CHANGED
@@ -6,10 +6,10 @@ exports.needsMigration = needsMigration;
6
6
  exports.isFutureVersion = isFutureVersion;
7
7
  exports.isMajorUpgrade = isMajorUpgrade;
8
8
  /** Current Canto journal schema version (semver). */
9
- exports.SCHEMA_VERSION = '0.17.0';
9
+ exports.SCHEMA_VERSION = "0.18.0";
10
10
  /** Parse a semver string into [major, minor, patch]. Throws on invalid format. */
11
11
  function parseSemver(v) {
12
- const parts = v.split('.').map(Number);
12
+ const parts = v.split(".").map(Number);
13
13
  if (parts.length !== 3 || parts.some(isNaN)) {
14
14
  throw new Error(`Invalid schema version: "${v}" (expected semver like "1.0.0")`);
15
15
  }
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":";;;AAaA,0CAQC;AAGD,wCAEC;AAGD,0CAEC;AAGD,wCAIC;AAtCD,qDAAqD;AACxC,QAAA,cAAc,GAAG,QAAQ,CAAC;AAEvC,kFAAkF;AAClF,SAAS,WAAW,CAAC,CAAS;IAC5B,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACvC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5C,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,kCAAkC,CAAC,CAAC;IACnF,CAAC;IACD,OAAO,KAAiC,CAAC;AAC3C,CAAC;AAED,+EAA+E;AAC/E,SAAgB,eAAe,CAAC,CAAS,EAAE,CAAS;IAClD,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;IAC1C,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;IAE1C,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,OAAO,CAAC,CAAC;AACX,CAAC;AAED,kFAAkF;AAClF,SAAgB,cAAc,CAAC,OAAe;IAC5C,OAAO,eAAe,CAAC,OAAO,EAAE,sBAAc,CAAC,GAAG,CAAC,CAAC;AACtD,CAAC;AAED,qEAAqE;AACrE,SAAgB,eAAe,CAAC,OAAe;IAC7C,OAAO,eAAe,CAAC,OAAO,EAAE,sBAAc,CAAC,GAAG,CAAC,CAAC;AACtD,CAAC;AAED,iFAAiF;AACjF,SAAgB,cAAc,CAAC,IAAY,EAAE,EAAU;IACrD,MAAM,CAAC,OAAO,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IACpC,MAAM,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;IAChC,OAAO,KAAK,GAAG,OAAO,CAAC;AACzB,CAAC"}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":";;;AAeA,0CAQC;AAGD,wCAEC;AAGD,0CAEC;AAGD,wCAIC;AAxCD,qDAAqD;AACxC,QAAA,cAAc,GAAG,QAAQ,CAAC;AAEvC,kFAAkF;AAClF,SAAS,WAAW,CAAC,CAAS;IAC5B,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACvC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5C,MAAM,IAAI,KAAK,CACb,4BAA4B,CAAC,kCAAkC,CAChE,CAAC;IACJ,CAAC;IACD,OAAO,KAAiC,CAAC;AAC3C,CAAC;AAED,+EAA+E;AAC/E,SAAgB,eAAe,CAAC,CAAS,EAAE,CAAS;IAClD,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;IAC1C,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;IAE1C,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,OAAO,CAAC,CAAC;AACX,CAAC;AAED,kFAAkF;AAClF,SAAgB,cAAc,CAAC,OAAe;IAC5C,OAAO,eAAe,CAAC,OAAO,EAAE,sBAAc,CAAC,GAAG,CAAC,CAAC;AACtD,CAAC;AAED,qEAAqE;AACrE,SAAgB,eAAe,CAAC,OAAe;IAC7C,OAAO,eAAe,CAAC,OAAO,EAAE,sBAAc,CAAC,GAAG,CAAC,CAAC;AACtD,CAAC;AAED,iFAAiF;AACjF,SAAgB,cAAc,CAAC,IAAY,EAAE,EAAU;IACrD,MAAM,CAAC,OAAO,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IACpC,MAAM,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;IAChC,OAAO,KAAK,GAAG,OAAO,CAAC;AACzB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "canto-data",
3
- "version": "1.0.3",
3
+ "version": "1.1.0",
4
4
  "description": "Canto journal data model — types, validation, versioning, and format utilities",
5
5
  "license": "MIT",
6
6
  "main": "dist/index.js",