docier-web 0.1.0 → 0.2.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 (99) hide show
  1. package/dist/api/editor.d.ts +3 -0
  2. package/dist/api/editor.d.ts.map +1 -1
  3. package/dist/api/editor.js +115 -0
  4. package/dist/api/editor.js.map +1 -1
  5. package/dist/api/package-images.d.ts +8 -0
  6. package/dist/api/package-images.d.ts.map +1 -0
  7. package/dist/api/package-images.js +98 -0
  8. package/dist/api/package-images.js.map +1 -0
  9. package/dist/edit/areas/document.d.ts +16 -0
  10. package/dist/edit/areas/document.d.ts.map +1 -0
  11. package/dist/edit/areas/document.js +50 -0
  12. package/dist/edit/areas/document.js.map +1 -0
  13. package/dist/edit/areas/index.d.ts +2 -0
  14. package/dist/edit/areas/index.d.ts.map +1 -1
  15. package/dist/edit/areas/index.js +3 -0
  16. package/dist/edit/areas/index.js.map +1 -1
  17. package/dist/edit/areas/insert.d.ts +5 -0
  18. package/dist/edit/areas/insert.d.ts.map +1 -1
  19. package/dist/edit/areas/insert.js +9 -2
  20. package/dist/edit/areas/insert.js.map +1 -1
  21. package/dist/edit/areas/unsupported.d.ts.map +1 -1
  22. package/dist/edit/areas/unsupported.js +0 -8
  23. package/dist/edit/areas/unsupported.js.map +1 -1
  24. package/dist/edit/clipboard/html-export.d.ts +1 -0
  25. package/dist/edit/clipboard/html-export.d.ts.map +1 -1
  26. package/dist/edit/clipboard/html-export.js +3 -1
  27. package/dist/edit/clipboard/html-export.js.map +1 -1
  28. package/dist/edit/clipboard/index.d.ts +1 -1
  29. package/dist/edit/clipboard/index.d.ts.map +1 -1
  30. package/dist/edit/clipboard/index.js +1 -1
  31. package/dist/edit/clipboard/index.js.map +1 -1
  32. package/dist/edit/image-file.d.ts +26 -0
  33. package/dist/edit/image-file.d.ts.map +1 -0
  34. package/dist/edit/image-file.js +94 -0
  35. package/dist/edit/image-file.js.map +1 -0
  36. package/dist/edit/input.d.ts.map +1 -1
  37. package/dist/edit/input.js +30 -3
  38. package/dist/edit/input.js.map +1 -1
  39. package/dist/render/document.js +1 -1
  40. package/dist/render/document.js.map +1 -1
  41. package/dist/style.css +19 -9
  42. package/dist/ui/chrome.d.ts.map +1 -1
  43. package/dist/ui/chrome.js +5 -0
  44. package/dist/ui/chrome.js.map +1 -1
  45. package/dist/ui/colour-picker.js +5 -5
  46. package/dist/ui/controls.d.ts.map +1 -1
  47. package/dist/ui/controls.js +37 -9
  48. package/dist/ui/controls.js.map +1 -1
  49. package/dist/ui/dialog.d.ts +5 -5
  50. package/dist/ui/dialog.d.ts.map +1 -1
  51. package/dist/ui/dialog.js +19 -6
  52. package/dist/ui/dialog.js.map +1 -1
  53. package/dist/ui/font-dialog.d.ts +14 -3
  54. package/dist/ui/font-dialog.d.ts.map +1 -1
  55. package/dist/ui/font-dialog.js +193 -33
  56. package/dist/ui/font-dialog.js.map +1 -1
  57. package/dist/ui/font-family.d.ts +3 -0
  58. package/dist/ui/font-family.d.ts.map +1 -0
  59. package/dist/ui/font-family.js +6 -0
  60. package/dist/ui/font-family.js.map +1 -0
  61. package/dist/ui/i18n.d.ts.map +1 -1
  62. package/dist/ui/i18n.js +5 -0
  63. package/dist/ui/i18n.js.map +1 -1
  64. package/dist/ui/icons.d.ts.map +1 -1
  65. package/dist/ui/icons.js +4 -0
  66. package/dist/ui/icons.js.map +1 -1
  67. package/dist/ui/image-picker.d.ts +1 -14
  68. package/dist/ui/image-picker.d.ts.map +1 -1
  69. package/dist/ui/image-picker.js +2 -53
  70. package/dist/ui/image-picker.js.map +1 -1
  71. package/dist/ui/menu-bar.d.ts +6 -0
  72. package/dist/ui/menu-bar.d.ts.map +1 -1
  73. package/dist/ui/menu-bar.js +30 -1
  74. package/dist/ui/menu-bar.js.map +1 -1
  75. package/dist/ui/menu-model.d.ts +1 -0
  76. package/dist/ui/menu-model.d.ts.map +1 -1
  77. package/dist/ui/menu-model.js +17 -26
  78. package/dist/ui/menu-model.js.map +1 -1
  79. package/dist/ui/menu.d.ts.map +1 -1
  80. package/dist/ui/menu.js +4 -0
  81. package/dist/ui/menu.js.map +1 -1
  82. package/dist/ui/styles.d.ts.map +1 -1
  83. package/dist/ui/styles.js +16 -6
  84. package/dist/ui/styles.js.map +1 -1
  85. package/dist/ui/theme.d.ts.map +1 -1
  86. package/dist/ui/theme.js +11 -0
  87. package/dist/ui/theme.js.map +1 -1
  88. package/dist/ui/types.d.ts +1 -0
  89. package/dist/ui/types.d.ts.map +1 -1
  90. package/dist/ui/types.js.map +1 -1
  91. package/package.json +1 -1
  92. package/dist/edit/search.d.ts +0 -19
  93. package/dist/edit/search.d.ts.map +0 -1
  94. package/dist/edit/search.js +0 -65
  95. package/dist/edit/search.js.map +0 -1
  96. package/dist/pdf/fonts/sfnt.d.ts +0 -83
  97. package/dist/pdf/fonts/sfnt.d.ts.map +0 -1
  98. package/dist/pdf/fonts/sfnt.js +0 -363
  99. package/dist/pdf/fonts/sfnt.js.map +0 -1
@@ -9,6 +9,9 @@ export interface EditorMountOptions {
9
9
  readonly document?: DocumentSource;
10
10
  readonly zoom?: number;
11
11
  readonly render?: RenderOptions;
12
+ readonly io?: {
13
+ readonly exportPdf?: (() => void) | undefined;
14
+ } | undefined;
12
15
  }
13
16
  export interface EditorHandle {
14
17
  readonly id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"editor.d.ts","sourceRoot":"","sources":["../../src/api/editor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAiB,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAM9E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGvD,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAoB,MAAM,oBAAoB,CAAC;AAC1F,OAAO,KAAK,EAAE,WAAW,EAAgB,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGnF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,OAAO,KAAK,EAAE,aAAa,EAAmB,MAAM,sBAAsB,CAAC;AA4B3E,OAAO,KAAK,EACV,aAAa,EAGb,eAAe,EACf,iBAAiB,EACjB,UAAU,EAEV,cAAc,EACd,cAAc,EACd,YAAY,EACZ,iBAAiB,EACjB,QAAQ,EACR,aAAa,EASb,qBAAqB,EAEtB,MAAM,YAAY,CAAC;AAGpB,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC;IACnC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,aAAa,CAAC;CACjC;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC;IAC1C,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;IACnC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,WAAW,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,MAAM,EAAE,YAAY,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC;IAClC,QAAQ,CAAC,QAAQ,EAAE,aAAa,GAAG,SAAS,CAAC;IAC7C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnD,aAAa,IAAI,aAAa,GAAG,SAAS,CAAC;IAC3C,gBAAgB,IAAI,gBAAgB,GAAG,SAAS,CAAC;IACjD,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAAC;IAC/C,KAAK,IAAI,IAAI,CAAC;IACd,QAAQ,CAAC,YAAY,EAAE,qBAAqB,CAAC;IAC7C,IAAI,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,YAAY,CAAC,KAAK,EAAE,iBAAiB,GAAG,iBAAiB,CAAC;IAC1D,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,WAAW,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,cAAc,IAAI,SAAS,UAAU,EAAE,CAAC;IACxC,OAAO,IAAI,IAAI,CAAC;CACjB;AAoID,eAAO,MAAM,YAAY,GACvB,QAAQ,WAAW,GAAG,MAAM,EAC5B,SAAS,iBAAiB,EAC1B,UAAS,kBAAuB,KAC/B,YAq5BF,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,SAAS,WAAW,KAAG,YAAY,GAAG,SAChD,CAAC"}
1
+ {"version":3,"file":"editor.d.ts","sourceRoot":"","sources":["../../src/api/editor.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,9 @@ import { caretGeometryOf } from '../edit/caret.js';
10
10
  import { installEditCommands } from '../edit/commands.js';
11
11
  import { attachInput } from '../edit/input.js';
12
12
  import { installAreaCommands } from '../edit/areas/index.js';
13
+ import { escapeHtml, generatorMeta, htmlOfNode } from '../edit/clipboard/index.js';
14
+ import { DOCX_MIME } from '../edit/clipboard/types.js';
15
+ import { beginPrint } from '../render/index.js';
13
16
  import { installClipboardCommands } from '../edit/clipboard/commands.js';
14
17
  import { createClipboardBuffer } from '../edit/clipboard/transfer.js';
15
18
  import { DEFAULT_HTML_POLICY } from '../edit/clipboard/types.js';
@@ -18,6 +21,7 @@ import { createEventBus } from './events.js';
18
21
  import { createHistory } from './history.js';
19
22
  import { applyPatch, defaultConfig } from './config.js';
20
23
  import { DocierError, commandIdOf } from './errors.js';
24
+ import { createPackageImageProvider } from './package-images.js';
21
25
  import { DEFAULT_MAX_INSTANCES_PER_PAGE, DEFAULT_ZOOM } from './constants.js';
22
26
  import { noInvalidation } from './types.js';
23
27
  const COALESCING_COMMANDS = [
@@ -201,6 +205,7 @@ export const createEditor = (target, config, options = {}) => {
201
205
  let zoom = options.zoom ?? DEFAULT_ZOOM;
202
206
  let viewMode = options.render?.viewMode ?? 'print';
203
207
  let flowWidth;
208
+ let defaultImageProvider = undefined;
204
209
  let destroyed = false;
205
210
  let current = undefined;
206
211
  let pending = undefined;
@@ -256,8 +261,10 @@ export const createEditor = (target, config, options = {}) => {
256
261
  if (active === undefined)
257
262
  return;
258
263
  const previous = renderedDocument;
264
+ const provider = options.render?.imageProvider ?? defaultImageProvider;
259
265
  renderedDocument = renderDocument(active.layout, rendered, {
260
266
  ...options.render,
267
+ ...(provider === undefined ? {} : { imageProvider: provider }),
261
268
  zoom,
262
269
  viewMode,
263
270
  ariaLabel: options.render?.ariaLabel ?? settings.ui.ariaLabel ?? settings.document.docId,
@@ -265,7 +272,115 @@ export const createEditor = (target, config, options = {}) => {
265
272
  previous?.destroy();
266
273
  input?.reveal();
267
274
  };
275
+ defaultImageProvider = createPackageImageProvider({
276
+ current: () => model,
277
+ onHydrated: () => {
278
+ if (state !== 'ready')
279
+ return;
280
+ paint();
281
+ },
282
+ });
283
+ const download = (bytes, name, mimeType) => {
284
+ const view = owner.defaultView;
285
+ if (view === null)
286
+ return;
287
+ const buffer = bytes.buffer.slice(bytes.byteOffset, bytes.byteOffset + bytes.byteLength);
288
+ const url = view.URL.createObjectURL(new Blob([buffer], { type: mimeType }));
289
+ const anchor = owner.createElement('a');
290
+ anchor.href = url;
291
+ anchor.download = name;
292
+ anchor.style.display = 'none';
293
+ owner.body.appendChild(anchor);
294
+ anchor.click();
295
+ anchor.remove();
296
+ view.setTimeout(() => {
297
+ view.URL.revokeObjectURL(url);
298
+ }, 10_000);
299
+ };
300
+ const fileName = (extension) => {
301
+ const id = settings.document.docId === '' ? 'document' : settings.document.docId;
302
+ return `${id}.${extension}`;
303
+ };
304
+ const chooseFile = (accept) => new Promise((resolve) => {
305
+ const input = owner.createElement('input');
306
+ input.type = 'file';
307
+ input.accept = accept;
308
+ input.setAttribute('data-docier-part', 'open-input');
309
+ input.style.setProperty('position', 'fixed');
310
+ input.style.setProperty('left', '-10000px');
311
+ owner.body.appendChild(input);
312
+ const finish = (value) => {
313
+ input.remove();
314
+ resolve(value);
315
+ };
316
+ input.addEventListener('change', () => {
317
+ const file = input.files?.[0];
318
+ if (file === undefined) {
319
+ finish(undefined);
320
+ return;
321
+ }
322
+ void file
323
+ .arrayBuffer()
324
+ .then((buffer) => {
325
+ finish(new Uint8Array(buffer));
326
+ })
327
+ .catch(() => {
328
+ finish(undefined);
329
+ });
330
+ });
331
+ input.addEventListener('cancel', () => {
332
+ finish(undefined);
333
+ });
334
+ input.click();
335
+ });
336
+ const htmlExportOf = () => {
337
+ const active = model;
338
+ if (active === undefined)
339
+ return '';
340
+ const parts = [];
341
+ for (const block of active.body().blocks()) {
342
+ parts.push(htmlOfNode(block.element));
343
+ }
344
+ return `<!doctype html><html><head><meta charset="utf-8">${generatorMeta()}<title>${escapeHtml(fileName('html'))}</title></head><body>${parts.join('')}</body></html>`;
345
+ };
346
+ const documentIo = {
347
+ open: () => {
348
+ void chooseFile('.docx,.docm').then((bytes) => {
349
+ if (bytes === undefined || bytes.byteLength === 0)
350
+ return;
351
+ void load(bytes);
352
+ });
353
+ },
354
+ save: () => {
355
+ const active = model;
356
+ if (active === undefined)
357
+ return;
358
+ void active.save().then((bytes) => {
359
+ download(bytes, fileName('docx'), DOCX_MIME);
360
+ });
361
+ },
362
+ saveAs: () => {
363
+ documentIo.save();
364
+ },
365
+ print: () => {
366
+ const current = renderedDocument;
367
+ if (current === undefined)
368
+ return;
369
+ beginPrint(current, {}).print();
370
+ },
371
+ exportDocx: () => {
372
+ documentIo.save();
373
+ },
374
+ exportHtml: () => {
375
+ const html = htmlExportOf();
376
+ if (html === '')
377
+ return;
378
+ download(new TextEncoder().encode(html), fileName('html'), 'text/html');
379
+ },
380
+ ...(options.io?.exportPdf === undefined ? {} : { exportPdf: options.io.exportPdf }),
381
+ };
268
382
  const host = {
383
+ io: documentIo,
269
384
  buffer: clipboardBuffer,
270
385
  htmlPolicy: DEFAULT_HTML_POLICY,
271
386
  get documentId() {
@@ -1 +1 @@
1
- {"version":3,"file":"editor.js","sourceRoot":"","sources":["../../src/api/editor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"editor.js","sourceRoot":"","sources":["../../src/api/editor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { DocumentModel } from '../model/document.js';
2
+ import type { RenderImageProvider } from '../render/images.js';
3
+ export interface PackageImageProviderOptions {
4
+ readonly current: () => DocumentModel | undefined;
5
+ readonly onHydrated?: (() => void) | undefined;
6
+ }
7
+ export declare const createPackageImageProvider: (options: PackageImageProviderOptions) => RenderImageProvider;
8
+ //# sourceMappingURL=package-images.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package-images.d.ts","sourceRoot":"","sources":["../../src/api/package-images.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,KAAK,EAAE,mBAAmB,EAAqB,MAAM,qBAAqB,CAAC;AAqBlF,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,OAAO,EAAE,MAAM,aAAa,GAAG,SAAS,CAAC;IAClD,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;CAChD;AAED,eAAO,MAAM,0BAA0B,GACrC,SAAS,2BAA2B,KACnC,mBA6EF,CAAC"}
@@ -0,0 +1,98 @@
1
+ import { RELATIONSHIP_TYPE_IMAGE } from '../ooxml/namespaces.js';
2
+ const MIME_BY_EXTENSION = {
3
+ png: 'image/png',
4
+ jpg: 'image/jpeg',
5
+ jpeg: 'image/jpeg',
6
+ gif: 'image/gif',
7
+ bmp: 'image/bmp',
8
+ tif: 'image/tiff',
9
+ tiff: 'image/tiff',
10
+ svg: 'image/svg+xml',
11
+ webp: 'image/webp',
12
+ emf: 'image/emf',
13
+ wmf: 'image/wmf',
14
+ };
15
+ const mimeOf = (target) => {
16
+ const extension = target.slice(target.lastIndexOf('.') + 1).toLowerCase();
17
+ return MIME_BY_EXTENSION[extension] ?? 'application/octet-stream';
18
+ };
19
+ export const createPackageImageProvider = (options) => {
20
+ let cached;
21
+ let cachedFor;
22
+ let hydrating = false;
23
+ const cacheFor = (model) => {
24
+ if (cachedFor !== model || cached === undefined) {
25
+ cachedFor = model;
26
+ cached = new Map();
27
+ }
28
+ return cached;
29
+ };
30
+ const relationshipFor = (model, id) => {
31
+ const pkg = model.package;
32
+ // Relationship ids are only unique within their source part, so an id has to be matched
33
+ // against that part's image relationships rather than against every relationship in the package.
34
+ for (const sourcePartName of pkg.relationships.sourceParts()) {
35
+ const images = pkg.relationships.getRelationships(sourcePartName, RELATIONSHIP_TYPE_IMAGE);
36
+ const found = images.find((candidate) => candidate.id === id);
37
+ if (found !== undefined)
38
+ return { target: found.resolvedTarget };
39
+ }
40
+ return undefined;
41
+ };
42
+ const hydrate = (model) => {
43
+ if (hydrating)
44
+ return;
45
+ const cache = cacheFor(model);
46
+ const pkg = model.package;
47
+ hydrating = true;
48
+ void (async () => {
49
+ let gained = false;
50
+ for (const sourcePartName of pkg.relationships.sourceParts()) {
51
+ for (const relationship of pkg.relationships.getRelationships(sourcePartName, RELATIONSHIP_TYPE_IMAGE)) {
52
+ if (cache.has(relationship.resolvedTarget))
53
+ continue;
54
+ const part = pkg.getPart(relationship.resolvedTarget);
55
+ if (part === undefined)
56
+ continue;
57
+ try {
58
+ cache.set(relationship.resolvedTarget, await part.bytes());
59
+ gained = true;
60
+ }
61
+ catch {
62
+ continue;
63
+ }
64
+ }
65
+ }
66
+ hydrating = false;
67
+ if (gained)
68
+ options.onHydrated?.();
69
+ })();
70
+ };
71
+ return (id) => {
72
+ const model = options.current();
73
+ if (model === undefined)
74
+ return undefined;
75
+ const relationship = relationshipFor(model, id);
76
+ if (relationship === undefined)
77
+ return undefined;
78
+ const cache = cacheFor(model);
79
+ let bytes = cache.get(relationship.target);
80
+ if (bytes === undefined) {
81
+ const part = model.package.getPart(relationship.target);
82
+ if (part === undefined)
83
+ return undefined;
84
+ try {
85
+ bytes = part.toBytes();
86
+ cache.set(relationship.target, bytes);
87
+ }
88
+ catch {
89
+ hydrate(model);
90
+ return undefined;
91
+ }
92
+ }
93
+ if (bytes.byteLength === 0)
94
+ return undefined;
95
+ return { id, bytes, mimeType: mimeOf(relationship.target) };
96
+ };
97
+ };
98
+ //# sourceMappingURL=package-images.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package-images.js","sourceRoot":"","sources":["../../src/api/package-images.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAGjE,MAAM,iBAAiB,GAAqC;IAC1D,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,YAAY;IACjB,IAAI,EAAE,YAAY;IAClB,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,YAAY;IACjB,IAAI,EAAE,YAAY;IAClB,GAAG,EAAE,eAAe;IACpB,IAAI,EAAE,YAAY;IAClB,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,WAAW;CACjB,CAAC;AAEF,MAAM,MAAM,GAAG,CAAC,MAAc,EAAU,EAAE;IACxC,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IAC1E,OAAO,iBAAiB,CAAC,SAAS,CAAC,IAAI,0BAA0B,CAAC;AACpE,CAAC,CAAC;AAOF,MAAM,CAAC,MAAM,0BAA0B,GAAG,CACxC,OAAoC,EACf,EAAE;IACvB,IAAI,MAA2C,CAAC;IAChD,IAAI,SAAoC,CAAC;IACzC,IAAI,SAAS,GAAG,KAAK,CAAC;IAEtB,MAAM,QAAQ,GAAG,CAAC,KAAoB,EAA2B,EAAE;QACjE,IAAI,SAAS,KAAK,KAAK,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YAChD,SAAS,GAAG,KAAK,CAAC;YAClB,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;QACrB,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,CACtB,KAAoB,EACpB,EAAU,EAC+B,EAAE;QAC3C,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC;QAC1B,wFAAwF;QACxF,iGAAiG;QACjG,KAAK,MAAM,cAAc,IAAI,GAAG,CAAC,aAAa,CAAC,WAAW,EAAE,EAAE,CAAC;YAC7D,MAAM,MAAM,GAAG,GAAG,CAAC,aAAa,CAAC,gBAAgB,CAAC,cAAc,EAAE,uBAAuB,CAAC,CAAC;YAC3F,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;YAC9D,IAAI,KAAK,KAAK,SAAS;gBAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,cAAc,EAAE,CAAC;QACnE,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,CAAC,KAAoB,EAAQ,EAAE;QAC7C,IAAI,SAAS;YAAE,OAAO;QACtB,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC9B,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC;QAC1B,SAAS,GAAG,IAAI,CAAC;QACjB,KAAK,CAAC,KAAK,IAAmB,EAAE;YAC9B,IAAI,MAAM,GAAG,KAAK,CAAC;YACnB,KAAK,MAAM,cAAc,IAAI,GAAG,CAAC,aAAa,CAAC,WAAW,EAAE,EAAE,CAAC;gBAC7D,KAAK,MAAM,YAAY,IAAI,GAAG,CAAC,aAAa,CAAC,gBAAgB,CAC3D,cAAc,EACd,uBAAuB,CACxB,EAAE,CAAC;oBACF,IAAI,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,cAAc,CAAC;wBAAE,SAAS;oBACrD,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;oBACtD,IAAI,IAAI,KAAK,SAAS;wBAAE,SAAS;oBACjC,IAAI,CAAC;wBACH,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,cAAc,EAAE,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;wBAC3D,MAAM,GAAG,IAAI,CAAC;oBAChB,CAAC;oBAAC,MAAM,CAAC;wBACP,SAAS;oBACX,CAAC;gBACH,CAAC;YACH,CAAC;YACD,SAAS,GAAG,KAAK,CAAC;YAClB,IAAI,MAAM;gBAAE,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;QACrC,CAAC,CAAC,EAAE,CAAC;IACP,CAAC,CAAC;IAEF,OAAO,CAAC,EAAU,EAAiC,EAAE;QACnD,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;QAChC,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,SAAS,CAAC;QAC1C,MAAM,YAAY,GAAG,eAAe,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAChD,IAAI,YAAY,KAAK,SAAS;YAAE,OAAO,SAAS,CAAC;QACjD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAC3C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YACxD,IAAI,IAAI,KAAK,SAAS;gBAAE,OAAO,SAAS,CAAC;YACzC,IAAI,CAAC;gBACH,KAAK,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;gBACvB,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACxC,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,CAAC,KAAK,CAAC,CAAC;gBACf,OAAO,SAAS,CAAC;YACnB,CAAC;QACH,CAAC;QACD,IAAI,KAAK,CAAC,UAAU,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QAC7C,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;IAC9D,CAAC,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,16 @@
1
+ import type { CommandDefinition } from '../../api/types.js';
2
+ import type { AreaHost } from './support.js';
3
+ export interface DocumentIo {
4
+ open(): void;
5
+ save(): void;
6
+ saveAs(): void;
7
+ print(): void;
8
+ exportDocx(): void;
9
+ exportHtml(): void;
10
+ exportPdf?(): void;
11
+ }
12
+ export interface DocumentAreaHost extends AreaHost {
13
+ readonly io: DocumentIo | undefined;
14
+ }
15
+ export declare const documentCommands: (host: DocumentAreaHost) => readonly CommandDefinition<never, void>[];
16
+ //# sourceMappingURL=document.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document.d.ts","sourceRoot":"","sources":["../../../src/edit/areas/document.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAe,iBAAiB,EAAmB,MAAM,oBAAoB,CAAC;AAC1F,OAAO,KAAK,EAAE,QAAQ,EAAY,MAAM,cAAc,CAAC;AAGvD,MAAM,WAAW,UAAU;IACzB,IAAI,IAAI,IAAI,CAAC;IACb,IAAI,IAAI,IAAI,CAAC;IACb,MAAM,IAAI,IAAI,CAAC;IACf,KAAK,IAAI,IAAI,CAAC;IACd,UAAU,IAAI,IAAI,CAAC;IACnB,UAAU,IAAI,IAAI,CAAC;IACnB,SAAS,CAAC,IAAI,IAAI,CAAC;CACpB;AAED,MAAM,WAAW,gBAAiB,SAAQ,QAAQ;IAChD,QAAQ,CAAC,EAAE,EAAE,UAAU,GAAG,SAAS,CAAC;CACrC;AAqCD,eAAO,MAAM,gBAAgB,GAC3B,MAAM,gBAAgB,KACrB,SAAS,iBAAiB,CAAC,KAAK,EAAE,IAAI,CAAC,EAsBzC,CAAC"}
@@ -0,0 +1,50 @@
1
+ import { areaCommand } from './support.js';
2
+ const NO_HANDLER = 'This editor was mounted without document handlers';
3
+ const HOST_OWNS_PDF = 'Supply an exportPdf handler to enable PDF export';
4
+ const docSpec = (host, id, label, use, available, missing, category = 'doc') => {
5
+ const spec = {
6
+ id,
7
+ label,
8
+ category,
9
+ chrome: true,
10
+ enabledIn: () => {
11
+ const io = host.io;
12
+ return io !== undefined && available(io);
13
+ },
14
+ reason: () => missing,
15
+ run: () => {
16
+ const io = host.io;
17
+ if (io === undefined)
18
+ return false;
19
+ use(io);
20
+ return false;
21
+ },
22
+ };
23
+ return areaCommand(host, spec);
24
+ };
25
+ const anyIo = () => true;
26
+ const pdfIo = (io) => io.exportPdf !== undefined;
27
+ export const documentCommands = (host) => [
28
+ docSpec(host, 'docier.command.doc.open', 'Open', (io) => {
29
+ io.open();
30
+ }, anyIo, NO_HANDLER),
31
+ docSpec(host, 'docier.command.doc.save', 'Save', (io) => {
32
+ io.save();
33
+ }, anyIo, NO_HANDLER),
34
+ docSpec(host, 'docier.command.doc.saveAs', 'Save as', (io) => {
35
+ io.saveAs();
36
+ }, anyIo, NO_HANDLER),
37
+ docSpec(host, 'docier.command.export.docx', 'Export as DOCX', (io) => {
38
+ io.exportDocx();
39
+ }, anyIo, NO_HANDLER, 'export'),
40
+ docSpec(host, 'docier.command.export.html', 'Export as HTML', (io) => {
41
+ io.exportHtml();
42
+ }, anyIo, NO_HANDLER, 'export'),
43
+ docSpec(host, 'docier.command.doc.print', 'Print', (io) => {
44
+ io.print();
45
+ }, anyIo, NO_HANDLER),
46
+ docSpec(host, 'docier.command.export.pdf', 'Export as PDF', (io) => {
47
+ io.exportPdf?.();
48
+ }, pdfIo, HOST_OWNS_PDF, 'export'),
49
+ ];
50
+ //# sourceMappingURL=document.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document.js","sourceRoot":"","sources":["../../../src/edit/areas/document.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAgB3C,MAAM,UAAU,GAAoB,mDAAmD,CAAC;AACxF,MAAM,aAAa,GAAoB,kDAAkD,CAAC;AAE1F,MAAM,OAAO,GAAG,CACd,IAAsB,EACtB,EAAU,EACV,KAAa,EACb,GAA6B,EAC7B,SAAsC,EACtC,OAAwB,EACxB,WAAwB,KAAK,EACD,EAAE;IAC9B,MAAM,IAAI,GAAgB;QACxB,EAAE;QACF,KAAK;QACL,QAAQ;QACR,MAAM,EAAE,IAAI;QACZ,SAAS,EAAE,GAAY,EAAE;YACvB,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;YACnB,OAAO,EAAE,KAAK,SAAS,IAAI,SAAS,CAAC,EAAE,CAAC,CAAC;QAC3C,CAAC;QACD,MAAM,EAAE,GAAoB,EAAE,CAAC,OAAO;QACtC,GAAG,EAAE,GAAY,EAAE;YACjB,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;YACnB,IAAI,EAAE,KAAK,SAAS;gBAAE,OAAO,KAAK,CAAC;YACnC,GAAG,CAAC,EAAE,CAAC,CAAC;YACR,OAAO,KAAK,CAAC;QACf,CAAC;KACF,CAAC;IACF,OAAO,WAAW,CAAI,IAAI,EAAE,IAAI,CAAC,CAAC;AACpC,CAAC,CAAC;AAEF,MAAM,KAAK,GAAG,GAAY,EAAE,CAAC,IAAI,CAAC;AAClC,MAAM,KAAK,GAAG,CAAC,EAAc,EAAW,EAAE,CAAC,EAAE,CAAC,SAAS,KAAK,SAAS,CAAC;AAEtE,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,IAAsB,EACqB,EAAE,CAAC;IAC9C,OAAO,CAAC,IAAI,EAAE,yBAAyB,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE;QACtD,EAAE,CAAC,IAAI,EAAE,CAAC;IACZ,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC;IACrB,OAAO,CAAC,IAAI,EAAE,yBAAyB,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE;QACtD,EAAE,CAAC,IAAI,EAAE,CAAC;IACZ,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC;IACrB,OAAO,CAAC,IAAI,EAAE,2BAA2B,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE;QAC3D,EAAE,CAAC,MAAM,EAAE,CAAC;IACd,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC;IACrB,OAAO,CAAC,IAAI,EAAE,4BAA4B,EAAE,gBAAgB,EAAE,CAAC,EAAE,EAAE,EAAE;QACnE,EAAE,CAAC,UAAU,EAAE,CAAC;IAClB,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,CAAC;IAC/B,OAAO,CAAC,IAAI,EAAE,4BAA4B,EAAE,gBAAgB,EAAE,CAAC,EAAE,EAAE,EAAE;QACnE,EAAE,CAAC,UAAU,EAAE,CAAC;IAClB,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,CAAC;IAC/B,OAAO,CAAC,IAAI,EAAE,0BAA0B,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE;QACxD,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC;IACrB,OAAO,CAAC,IAAI,EAAE,2BAA2B,EAAE,eAAe,EAAE,CAAC,EAAE,EAAE,EAAE;QACjE,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC;IACnB,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,CAAC;CACnC,CAAC"}
@@ -1,6 +1,8 @@
1
1
  import type { CommandDefinition, CommandRegistry, Disposable } from '../../api/types.js';
2
2
  import type { AreaHost } from './support.js';
3
3
  export type { AreaHost } from './support.js';
4
+ export type { DocumentAreaHost, DocumentIo } from './document.js';
5
+ export { documentCommands } from './document.js';
4
6
  export { unsupportedIds } from './unsupported.js';
5
7
  export { pageCommands } from './page.js';
6
8
  export { paragraphCommands } from './paragraph.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/edit/areas/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAazF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAG7C,YAAY,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAEvD,eAAO,MAAM,YAAY,GAAI,MAAM,QAAQ,KAAG,SAAS,iBAAiB,CAAC,KAAK,EAAE,IAAI,CAAC,EAapF,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAC9B,UAAU,eAAe,EACzB,MAAM,QAAQ,KACb,SAAS,UAAU,EAA8C,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/edit/areas/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAezF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAG7C,YAAY,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC7C,YAAY,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAEvD,eAAO,MAAM,YAAY,GAAI,MAAM,QAAQ,KAAG,SAAS,iBAAiB,CAAC,KAAK,EAAE,IAAI,CAAC,EAcpF,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAC9B,UAAU,eAAe,EACzB,MAAM,QAAQ,KACb,SAAS,UAAU,EAA8C,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { documentCommands } from './document.js';
1
2
  import { insertCommands } from './insert.js';
2
3
  import { numberingCommands } from './numbering.js';
3
4
  import { commentCommands } from './comment.js';
@@ -11,6 +12,7 @@ import { styleCommands } from './style.js';
11
12
  import { installAll } from './support.js';
12
13
  import { tableCommands } from './table.js';
13
14
  import { unsupportedCommands } from './unsupported.js';
15
+ export { documentCommands } from './document.js';
14
16
  export { unsupportedIds } from './unsupported.js';
15
17
  export { pageCommands } from './page.js';
16
18
  export { paragraphCommands } from './paragraph.js';
@@ -25,6 +27,7 @@ export { objectCommands } from './object.js';
25
27
  export { tableCommands } from './table.js';
26
28
  export { unsupportedCommands } from './unsupported.js';
27
29
  export const areaCommands = (host) => [
30
+ ...documentCommands(host),
28
31
  ...pageCommands(host),
29
32
  ...paragraphCommands(host),
30
33
  ...styleCommands(host),
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/edit/areas/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAGvD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAEvD,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAc,EAA6C,EAAE,CAAC;IACzF,GAAG,YAAY,CAAC,IAAI,CAAC;IACrB,GAAG,iBAAiB,CAAC,IAAI,CAAC;IAC1B,GAAG,aAAa,CAAC,IAAI,CAAC;IACtB,GAAG,aAAa,CAAC,IAAI,CAAC;IACtB,GAAG,cAAc,CAAC,IAAI,CAAC;IACvB,GAAG,iBAAiB,CAAC,IAAI,CAAC;IAC1B,GAAG,aAAa,CAAC,IAAI,CAAC;IACtB,GAAG,cAAc,CAAC,IAAI,CAAC;IACvB,GAAG,eAAe,CAAC,IAAI,CAAC;IACxB,GAAG,YAAY,CAAC,IAAI,CAAC;IACrB,GAAG,cAAc,CAAC,IAAI,CAAC;IACvB,GAAG,mBAAmB,CAAC,IAAI,CAAC;CAC7B,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,QAAyB,EACzB,IAAc,EACS,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/edit/areas/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEjD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAIvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAEvD,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAc,EAA6C,EAAE,CAAC;IACzF,GAAG,gBAAgB,CAAC,IAAwB,CAAC;IAC7C,GAAG,YAAY,CAAC,IAAI,CAAC;IACrB,GAAG,iBAAiB,CAAC,IAAI,CAAC;IAC1B,GAAG,aAAa,CAAC,IAAI,CAAC;IACtB,GAAG,aAAa,CAAC,IAAI,CAAC;IACtB,GAAG,cAAc,CAAC,IAAI,CAAC;IACvB,GAAG,iBAAiB,CAAC,IAAI,CAAC;IAC1B,GAAG,aAAa,CAAC,IAAI,CAAC;IACtB,GAAG,cAAc,CAAC,IAAI,CAAC;IACvB,GAAG,eAAe,CAAC,IAAI,CAAC;IACxB,GAAG,YAAY,CAAC,IAAI,CAAC;IACrB,GAAG,cAAc,CAAC,IAAI,CAAC;IACvB,GAAG,mBAAmB,CAAC,IAAI,CAAC;CAC7B,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,QAAyB,EACzB,IAAc,EACS,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC"}
@@ -38,5 +38,10 @@ export interface TextBoxArgs {
38
38
  readonly heightTwips?: number | undefined;
39
39
  readonly name?: string | undefined;
40
40
  }
41
+ export declare const FIELD_INSERTS: readonly {
42
+ readonly id: string;
43
+ readonly label: string;
44
+ readonly instruction: string;
45
+ }[];
41
46
  export declare const insertCommands: (host: AreaHost) => readonly CommandDefinition<never, void>[];
42
47
  //# sourceMappingURL=insert.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"insert.d.ts","sourceRoot":"","sources":["../../../src/edit/areas/insert.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAmB,MAAM,oBAAoB,CAAC;AAG7E,OAAO,EAAE,SAAS,EAAmC,MAAM,sBAAsB,CAAC;AAClF,OAAO,KAAK,EAAa,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAMrE,OAAO,KAAK,EAAE,QAAQ,EAAY,MAAM,cAAc,CAAC;AAOvD,eAAO,MAAM,eAAe,cAAc,CAAC;AAE3C,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACpC;AAED,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACvC;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACtC;AAoBD,eAAO,MAAM,KAAK,GAAI,MAAM,UAAU,KAAG,MAAM,GAAG,SAMjD,CAAC;AA4FF,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACrC;AAED,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAMD,eAAO,MAAM,aAAa,GACxB,QAAQ,MAAM,GAAG,SAAS,KACzB;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAMjD,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,WAAW,SAAS,KAAG,MAAM,GAAG,SAO9D,CAAC;AAEF,eAAO,MAAM,YAAY,GACvB,OAAO,aAAa,EACpB,QAAQ,MAAM,GAAG,SAAS,KACzB,SAAS,QAAQ,EAsBnB,CAAC;AAkGF,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACpC;AAsCD,eAAO,MAAM,cAAc,GAAI,MAAM,QAAQ,KAAG,SAAS,iBAAiB,CAAC,KAAK,EAAE,IAAI,CAAC,EAOtF,CAAC"}
1
+ {"version":3,"file":"insert.d.ts","sourceRoot":"","sources":["../../../src/edit/areas/insert.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAmB,MAAM,oBAAoB,CAAC;AAG7E,OAAO,EAAE,SAAS,EAAmC,MAAM,sBAAsB,CAAC;AAClF,OAAO,KAAK,EAAa,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAMrE,OAAO,KAAK,EAAE,QAAQ,EAAY,MAAM,cAAc,CAAC;AAOvD,eAAO,MAAM,eAAe,cAAc,CAAC;AAE3C,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACpC;AAED,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACvC;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACtC;AAoBD,eAAO,MAAM,KAAK,GAAI,MAAM,UAAU,KAAG,MAAM,GAAG,SAMjD,CAAC;AA4FF,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACrC;AAED,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAMD,eAAO,MAAM,aAAa,GACxB,QAAQ,MAAM,GAAG,SAAS,KACzB;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAMjD,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,WAAW,SAAS,KAAG,MAAM,GAAG,SAO9D,CAAC;AAEF,eAAO,MAAM,YAAY,GACvB,OAAO,aAAa,EACpB,QAAQ,MAAM,GAAG,SAAS,KACzB,SAAS,QAAQ,EAsBnB,CAAC;AAkGF,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACpC;AAsCD,eAAO,MAAM,aAAa,EAAE,SAAS;IAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;CAAE,EAOjH,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,MAAM,QAAQ,KAAG,SAAS,iBAAiB,CAAC,KAAK,EAAE,IAAI,CAAC,EAQtF,CAAC"}