@drawnagency/primitives 0.1.80 → 0.1.81

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 (102) hide show
  1. package/dist/{chunk-KVQFMVXE.js → chunk-DKXISNJ2.js} +2 -2
  2. package/dist/{chunk-RSITF24B.js → chunk-EVNEMJZ6.js} +9 -3
  3. package/dist/{chunk-VI26O4E3.js → chunk-FDBZZ4AT.js} +1 -1
  4. package/dist/{chunk-QB5Q23G2.js → chunk-FN4NKUZU.js} +1 -1
  5. package/dist/{chunk-EMGLZQCM.js → chunk-MBJUWOM2.js} +1 -1
  6. package/dist/{chunk-4TVODHD2.js → chunk-P4ZNHZMP.js} +6 -6
  7. package/dist/{chunk-UNUJPLZV.js → chunk-PJOHAWNV.js} +1 -1
  8. package/dist/{chunk-2DDWWTRX.js → chunk-Q6LZOH5M.js} +1 -1
  9. package/dist/chunk-WP5UX4MI.js +63 -0
  10. package/dist/{chunk-3LNKOLZP.js → chunk-YKOLOZB2.js} +1 -1
  11. package/dist/{chunk-7XWER6YR.js → chunk-ZEXR7JYQ.js} +3 -3
  12. package/dist/components/editor/PagesModal.d.ts +2 -0
  13. package/dist/components/editor/PagesModal.d.ts.map +1 -1
  14. package/dist/components/editor/index.js +6 -5
  15. package/dist/components/primitives/index.js +7 -6
  16. package/dist/components/sections/brand-guide.js +7 -6
  17. package/dist/components/sections/register-schemas.js +10 -9
  18. package/dist/components/sections/register.js +10 -9
  19. package/dist/components/shell/DocInspector.d.ts +17 -0
  20. package/dist/components/shell/DocInspector.d.ts.map +1 -0
  21. package/dist/components/shell/DocumentEditorOverlay.d.ts +29 -0
  22. package/dist/components/shell/DocumentEditorOverlay.d.ts.map +1 -0
  23. package/dist/components/shell/DocumentPresentOverlay.d.ts +30 -0
  24. package/dist/components/shell/DocumentPresentOverlay.d.ts.map +1 -0
  25. package/dist/components/shell/EditorShell.d.ts +31 -0
  26. package/dist/components/shell/EditorShell.d.ts.map +1 -1
  27. package/dist/document/assets/fonts/albra-grotesk-bold.woff +0 -0
  28. package/dist/document/assets/fonts/albra-grotesk-regular.woff +0 -0
  29. package/dist/document/assets/fonts/kapra-neue-expanded-medium.woff +0 -0
  30. package/dist/document/assets/fonts/kapra-neue-expanded-regular.woff +0 -0
  31. package/dist/document/components/DocCoverPage.d.ts +11 -0
  32. package/dist/document/components/DocCoverPage.d.ts.map +1 -0
  33. package/dist/document/components/DocPage.d.ts +10 -0
  34. package/dist/document/components/DocPage.d.ts.map +1 -0
  35. package/dist/document/components/DocRail.d.ts +27 -0
  36. package/dist/document/components/DocRail.d.ts.map +1 -0
  37. package/dist/document/components/DocSectionPage.d.ts +12 -0
  38. package/dist/document/components/DocSectionPage.d.ts.map +1 -0
  39. package/dist/document/components/DocViewer.d.ts +18 -0
  40. package/dist/document/components/DocViewer.d.ts.map +1 -0
  41. package/dist/document/components/Wordmark.d.ts +4 -0
  42. package/dist/document/components/Wordmark.d.ts.map +1 -0
  43. package/dist/document/components/measure.d.ts +6 -0
  44. package/dist/document/components/measure.d.ts.map +1 -0
  45. package/dist/document/components/useDocPages.d.ts +12 -0
  46. package/dist/document/components/useDocPages.d.ts.map +1 -0
  47. package/dist/document/engine/blocks.d.ts +2 -0
  48. package/dist/document/engine/blocks.d.ts.map +1 -0
  49. package/dist/document/engine/harvest.d.ts +3 -0
  50. package/dist/document/engine/harvest.d.ts.map +1 -0
  51. package/dist/document/engine/masonry.d.ts +25 -0
  52. package/dist/document/engine/masonry.d.ts.map +1 -0
  53. package/dist/document/engine/paginate.d.ts +40 -0
  54. package/dist/document/engine/paginate.d.ts.map +1 -0
  55. package/dist/document/engine/settings.d.ts +70 -0
  56. package/dist/document/engine/settings.d.ts.map +1 -0
  57. package/dist/document/engine/types.d.ts +40 -0
  58. package/dist/document/engine/types.d.ts.map +1 -0
  59. package/dist/document/index.d.ts +13 -0
  60. package/dist/document/index.d.ts.map +1 -0
  61. package/dist/document/index.js +881 -0
  62. package/dist/document/styles/document.css +208 -0
  63. package/dist/index.js +29 -28
  64. package/dist/lib/document-input.d.ts +25 -0
  65. package/dist/lib/document-input.d.ts.map +1 -0
  66. package/dist/lib/index.js +10 -9
  67. package/dist/lib/pages.d.ts +2 -0
  68. package/dist/lib/pages.d.ts.map +1 -1
  69. package/dist/media/index.js +4 -3
  70. package/dist/schemas/index.js +3 -2
  71. package/dist/schemas/site-config.d.ts +223 -1
  72. package/dist/schemas/site-config.d.ts.map +1 -1
  73. package/package.json +5 -1
  74. package/src/components/editor/PagesModal.tsx +16 -2
  75. package/src/components/shell/DocInspector.tsx +278 -0
  76. package/src/components/shell/DocumentEditorOverlay.tsx +169 -0
  77. package/src/components/shell/DocumentPresentOverlay.tsx +87 -0
  78. package/src/components/shell/EditorShell.tsx +128 -5
  79. package/src/document/assets/fonts/albra-grotesk-bold.woff +0 -0
  80. package/src/document/assets/fonts/albra-grotesk-regular.woff +0 -0
  81. package/src/document/assets/fonts/kapra-neue-expanded-medium.woff +0 -0
  82. package/src/document/assets/fonts/kapra-neue-expanded-regular.woff +0 -0
  83. package/src/document/components/DocCoverPage.tsx +45 -0
  84. package/src/document/components/DocPage.tsx +40 -0
  85. package/src/document/components/DocRail.tsx +160 -0
  86. package/src/document/components/DocSectionPage.tsx +45 -0
  87. package/src/document/components/DocViewer.tsx +285 -0
  88. package/src/document/components/Wordmark.tsx +18 -0
  89. package/src/document/components/measure.tsx +105 -0
  90. package/src/document/components/useDocPages.ts +67 -0
  91. package/src/document/engine/blocks.ts +87 -0
  92. package/src/document/engine/harvest.ts +80 -0
  93. package/src/document/engine/masonry.ts +89 -0
  94. package/src/document/engine/paginate.ts +209 -0
  95. package/src/document/engine/settings.ts +77 -0
  96. package/src/document/engine/types.ts +54 -0
  97. package/src/document/index.ts +18 -0
  98. package/src/document/styles/document.css +208 -0
  99. package/src/lib/document-input.ts +57 -0
  100. package/src/lib/pages.ts +22 -0
  101. package/src/schemas/site-config.ts +22 -7
  102. /package/dist/{chunk-4YEOTFVU.js → chunk-YBVK254P.js} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DocRail.d.ts","sourceRoot":"","sources":["../../../src/document/components/DocRail.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAEzD,OAAO,EAAkB,KAAK,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAOhE,MAAM,MAAM,SAAS,GACjB;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GACjB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,WAAW,CAAA;CAAE,GACnC;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAA;CAAE,CAAC;AAEpF,wBAAgB,OAAO,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CAIhD;AA4CD,wBAAgB,OAAO,CAAC,EACtB,OAAO,EACP,UAAU,EACV,IAAI,EACJ,KAAK,EACL,UAAU,EACV,IAAI,EACJ,QAAQ,EACR,UAAU,GACX,EAAE;IACD,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,QAAQ,CAAC;IAChB,UAAU,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC7B,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,UAAU,EAAE,MAAM,IAAI,CAAC;CACxB,2CA4EA"}
@@ -0,0 +1,12 @@
1
+ import type { DocImage, DocMeta } from "../engine/types";
2
+ import type { DerivedPage } from "../engine/paginate";
3
+ export interface DocHost {
4
+ imageSrc: (image: DocImage, variant: "preview" | "print") => string;
5
+ variant: "preview" | "print";
6
+ }
7
+ export declare function DocSectionPage({ page, meta, host }: {
8
+ page: DerivedPage;
9
+ meta: DocMeta;
10
+ host: DocHost;
11
+ }): import("react/jsx-runtime").JSX.Element;
12
+ //# sourceMappingURL=DocSectionPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DocSectionPage.d.ts","sourceRoot":"","sources":["../../../src/document/components/DocSectionPage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGtD,MAAM,WAAW,OAAO;IACtB,QAAQ,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,GAAG,OAAO,KAAK,MAAM,CAAC;IACpE,OAAO,EAAE,SAAS,GAAG,OAAO,CAAC;CAC9B;AAID,wBAAgB,cAAc,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,IAAI,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE,2CAiCvG"}
@@ -0,0 +1,18 @@
1
+ import type { DocumentOptions } from "../engine/settings";
2
+ import type { Chunk, DocSourceContent } from "../engine/types";
3
+ import { type DocHost } from "./DocSectionPage";
4
+ export interface DocViewerProps {
5
+ source: DocSourceContent | null;
6
+ document: DocumentOptions;
7
+ host: DocHost;
8
+ mode: "present" | "edit";
9
+ selectedChunkId?: string | null;
10
+ onSelectChunk?: (chunkId: string | null) => void;
11
+ onClose?: () => void;
12
+ onDocState?: (state: {
13
+ chunks: Chunk[];
14
+ warningsByChunk: Record<string, string[]>;
15
+ }) => void;
16
+ }
17
+ export declare function DocViewer({ source, document: doc, host, mode, selectedChunkId, onSelectChunk, onClose, onDocState, }: DocViewerProps): import("react/jsx-runtime").JSX.Element;
18
+ //# sourceMappingURL=DocViewer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DocViewer.d.ts","sourceRoot":"","sources":["../../../src/document/components/DocViewer.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAE1D,OAAO,KAAK,EAAE,KAAK,EAAY,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAGzE,OAAO,EAAkB,KAAK,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAOhE,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAChC,QAAQ,EAAE,eAAe,CAAC;IAC1B,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAEzB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACjD,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IAKrB,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,MAAM,EAAE,KAAK,EAAE,CAAC;QAAC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;KAAE,KAAK,IAAI,CAAC;CAC9F;AAUD,wBAAgB,SAAS,CAAC,EACxB,MAAM,EACN,QAAQ,EAAE,GAAG,EACb,IAAI,EACJ,IAAI,EACJ,eAAe,EACf,aAAa,EACb,OAAO,EACP,UAAU,GACX,EAAE,cAAc,2CA8JhB"}
@@ -0,0 +1,4 @@
1
+ export declare function Wordmark({ className }: {
2
+ className?: string;
3
+ }): import("react/jsx-runtime").JSX.Element;
4
+ //# sourceMappingURL=Wordmark.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Wordmark.d.ts","sourceRoot":"","sources":["../../../src/document/components/Wordmark.tsx"],"names":[],"mappings":"AAEA,wBAAgB,QAAQ,CAAC,EAAE,SAAS,EAAE,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,2CAe7D"}
@@ -0,0 +1,6 @@
1
+ import type { SectionSettings } from "../engine/settings";
2
+ import type { Chunk } from "../engine/types";
3
+ export declare function useTextMeasurements(chunks: Chunk[], settingsMap: Record<string, SectionSettings>): {
4
+ heights: Record<string, number[]> | null;
5
+ };
6
+ //# sourceMappingURL=measure.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"measure.d.ts","sourceRoot":"","sources":["../../../src/document/components/measure.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,KAAK,EAAE,KAAK,EAAa,MAAM,iBAAiB,CAAC;AAmCxD,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,KAAK,EAAE,EACf,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAC3C;IAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,CAAA;CAAE,CA+D9C"}
@@ -0,0 +1,12 @@
1
+ import { type DerivedPage } from "../engine/paginate";
2
+ import type { Chunk, DocSourceContent } from "../engine/types";
3
+ export declare function useDocPages(input: {
4
+ source: DocSourceContent | null;
5
+ sections: Record<string, unknown>;
6
+ }): {
7
+ chunks: Chunk[];
8
+ pages: DerivedPage[];
9
+ measuring: boolean;
10
+ warningsByChunk: Record<string, string[]>;
11
+ };
12
+ //# sourceMappingURL=useDocPages.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDocPages.d.ts","sourceRoot":"","sources":["../../../src/document/components/useDocPages.ts"],"names":[],"mappings":"AAEA,OAAO,EAAiB,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAErE,OAAO,KAAK,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAG/D,wBAAgB,WAAW,CAAC,KAAK,EAAE;IACjC,MAAM,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC,GAAG;IAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAAC,KAAK,EAAE,WAAW,EAAE,CAAC;IAAC,SAAS,EAAE,OAAO,CAAC;IAAC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;CAAE,CAwD3G"}
@@ -0,0 +1,2 @@
1
+ export declare function splitProseBlocks(html: string): string[];
2
+ //# sourceMappingURL=blocks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blocks.d.ts","sourceRoot":"","sources":["../../../src/document/engine/blocks.ts"],"names":[],"mappings":"AAgEA,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAsBvD"}
@@ -0,0 +1,3 @@
1
+ import { type Chunk, type DocImage, type DocSectionInput } from "./types";
2
+ export declare function harvest(sections: DocSectionInput[], pageTitle: string, imagesById: Record<string, DocImage>): Chunk[];
3
+ //# sourceMappingURL=harvest.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"harvest.d.ts","sourceRoot":"","sources":["../../../src/document/engine/harvest.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,KAAK,KAAK,EAAE,KAAK,QAAQ,EAAE,KAAK,eAAe,EAAE,MAAM,SAAS,CAAC;AA0DvF,wBAAgB,OAAO,CACrB,QAAQ,EAAE,eAAe,EAAE,EAC3B,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GACnC,KAAK,EAAE,CAgBT"}
@@ -0,0 +1,25 @@
1
+ export type MasonryMode = "rows" | "columns";
2
+ export type Sized = {
3
+ width: number;
4
+ height: number;
5
+ };
6
+ export interface MasonryOpts {
7
+ mode: MasonryMode;
8
+ columns: 2 | 3 | 4 | 5 | 6;
9
+ bodyWIn: number;
10
+ bodyHIn: number;
11
+ gapIn: number;
12
+ targetRowHeightIn: number;
13
+ }
14
+ export interface MasonryBox<T extends Sized = Sized> {
15
+ asset: T;
16
+ xIn: number;
17
+ yIn: number;
18
+ wIn: number;
19
+ hIn: number;
20
+ }
21
+ export declare function layoutMasonryPage<T extends Sized>(images: T[], o: MasonryOpts, fits?: ("cover" | "contain")[]): {
22
+ boxes: MasonryBox<T>[];
23
+ used: number;
24
+ };
25
+ //# sourceMappingURL=masonry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"masonry.d.ts","sourceRoot":"","sources":["../../../src/document/engine/masonry.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,SAAS,CAAC;AAE7C,MAAM,MAAM,KAAK,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,WAAW,CAAC;IAClB,OAAO,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,UAAU,CAAC,CAAC,SAAS,KAAK,GAAG,KAAK;IACjD,KAAK,EAAE,CAAC,CAAC;IACT,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACb;AAwDD,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,KAAK,EAC/C,MAAM,EAAE,CAAC,EAAE,EACX,CAAC,EAAE,WAAW,EACd,IAAI,GAAE,CAAC,OAAO,GAAG,SAAS,CAAC,EAAO,GACjC;IAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAO1C"}
@@ -0,0 +1,40 @@
1
+ import type { SectionSettings } from "./settings";
2
+ import type { Chunk, DocImage, TextBlock } from "./types";
3
+ export interface DocGeom {
4
+ bodyWIn: number;
5
+ bodyHIn: number;
6
+ titleBandIn: number;
7
+ gapIn: number;
8
+ leftColWIn: number;
9
+ colGutterIn: number;
10
+ minImageRegionIn: number;
11
+ masonryTargetRowIn: number;
12
+ topTextMaxFraction: number;
13
+ }
14
+ export declare const DOC_GEOM: DocGeom;
15
+ export interface Region {
16
+ xIn: number;
17
+ yIn: number;
18
+ wIn: number;
19
+ hIn: number;
20
+ }
21
+ export interface ImageBox {
22
+ image: DocImage;
23
+ xIn: number;
24
+ yIn: number;
25
+ wIn: number;
26
+ hIn: number;
27
+ fit: "cover" | "contain";
28
+ }
29
+ export interface DerivedPage {
30
+ id: string;
31
+ chunkId: string;
32
+ title: string;
33
+ cont: boolean;
34
+ textBlocks: TextBlock[];
35
+ textRegion: Region | null;
36
+ imageBoxes: ImageBox[];
37
+ warnings: string[];
38
+ }
39
+ export declare function paginateChunk(chunk: Chunk, settings: SectionSettings, textHeightsIn: number[], geom?: DocGeom): DerivedPage[];
40
+ //# sourceMappingURL=paginate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paginate.d.ts","sourceRoot":"","sources":["../../../src/document/engine/paginate.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAE1D,MAAM,WAAW,OAAO;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAGD,eAAO,MAAM,QAAQ,EAAE,OAYtB,CAAC;AAIF,MAAM,WAAW,MAAM;IAAG,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;CAAE;AAC/E,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,QAAQ,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IACnD,GAAG,EAAE,OAAO,GAAG,SAAS,CAAC;CAC1B;AACD,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,OAAO,CAAC;IACd,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,QAAQ,EAAE,CAAC;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAgDD,wBAAgB,aAAa,CAC3B,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,eAAe,EACzB,aAAa,EAAE,MAAM,EAAE,EACvB,IAAI,GAAE,OAAkB,GACvB,WAAW,EAAE,CA2Gf"}
@@ -0,0 +1,70 @@
1
+ import { z } from "zod";
2
+ export declare const sectionSettingsSchema: z.ZodObject<{
3
+ excluded: z.ZodDefault<z.ZodBoolean>;
4
+ textPlacement: z.ZodDefault<z.ZodEnum<{
5
+ top: "top";
6
+ leftColumn: "leftColumn";
7
+ }>>;
8
+ imagePlacement: z.ZodDefault<z.ZodEnum<{
9
+ fullWidth: "fullWidth";
10
+ right: "right";
11
+ }>>;
12
+ dropTextOverflow: z.ZodDefault<z.ZodBoolean>;
13
+ imageLayout: z.ZodDefault<z.ZodDiscriminatedUnion<[z.ZodObject<{
14
+ mode: z.ZodLiteral<"grid">;
15
+ rows: z.ZodDefault<z.ZodUnion<readonly [z.ZodLiteral<1>, z.ZodLiteral<2>, z.ZodLiteral<3>]>>;
16
+ columns: z.ZodDefault<z.ZodUnion<readonly [z.ZodLiteral<2>, z.ZodLiteral<3>, z.ZodLiteral<4>]>>;
17
+ }, z.core.$strip>, z.ZodObject<{
18
+ mode: z.ZodLiteral<"masonry">;
19
+ flow: z.ZodDefault<z.ZodEnum<{
20
+ rows: "rows";
21
+ columns: "columns";
22
+ }>>;
23
+ columns: z.ZodDefault<z.ZodUnion<readonly [z.ZodLiteral<2>, z.ZodLiteral<3>, z.ZodLiteral<4>, z.ZodLiteral<5>, z.ZodLiteral<6>]>>;
24
+ }, z.core.$strip>], "mode">>;
25
+ }, z.core.$strip>;
26
+ export type SectionSettings = z.infer<typeof sectionSettingsSchema>;
27
+ export declare function settingsFor(all: Record<string, unknown> | undefined, chunkId: string): SectionSettings;
28
+ export declare const documentOptionsSchema: z.ZodObject<{
29
+ enabled: z.ZodDefault<z.ZodBoolean>;
30
+ meta: z.ZodDefault<z.ZodObject<{
31
+ client: z.ZodDefault<z.ZodString>;
32
+ project: z.ZodDefault<z.ZodString>;
33
+ dateLabel: z.ZodDefault<z.ZodString>;
34
+ }, z.core.$strip>>;
35
+ cover: z.ZodDefault<z.ZodObject<{
36
+ bgColor: z.ZodDefault<z.ZodString>;
37
+ accentColor: z.ZodDefault<z.ZodString>;
38
+ title: z.ZodDefault<z.ZodString>;
39
+ label: z.ZodDefault<z.ZodString>;
40
+ date: z.ZodDefault<z.ZodString>;
41
+ imageId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
42
+ }, z.core.$strip>>;
43
+ sections: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
44
+ excluded: z.ZodDefault<z.ZodBoolean>;
45
+ textPlacement: z.ZodDefault<z.ZodEnum<{
46
+ top: "top";
47
+ leftColumn: "leftColumn";
48
+ }>>;
49
+ imagePlacement: z.ZodDefault<z.ZodEnum<{
50
+ fullWidth: "fullWidth";
51
+ right: "right";
52
+ }>>;
53
+ dropTextOverflow: z.ZodDefault<z.ZodBoolean>;
54
+ imageLayout: z.ZodDefault<z.ZodDiscriminatedUnion<[z.ZodObject<{
55
+ mode: z.ZodLiteral<"grid">;
56
+ rows: z.ZodDefault<z.ZodUnion<readonly [z.ZodLiteral<1>, z.ZodLiteral<2>, z.ZodLiteral<3>]>>;
57
+ columns: z.ZodDefault<z.ZodUnion<readonly [z.ZodLiteral<2>, z.ZodLiteral<3>, z.ZodLiteral<4>]>>;
58
+ }, z.core.$strip>, z.ZodObject<{
59
+ mode: z.ZodLiteral<"masonry">;
60
+ flow: z.ZodDefault<z.ZodEnum<{
61
+ rows: "rows";
62
+ columns: "columns";
63
+ }>>;
64
+ columns: z.ZodDefault<z.ZodUnion<readonly [z.ZodLiteral<2>, z.ZodLiteral<3>, z.ZodLiteral<4>, z.ZodLiteral<5>, z.ZodLiteral<6>]>>;
65
+ }, z.core.$strip>], "mode">>;
66
+ }, z.core.$strip>>>;
67
+ }, z.core.$strip>;
68
+ export type DocumentOptions = z.infer<typeof documentOptionsSchema>;
69
+ export type DocCover = DocumentOptions["cover"];
70
+ //# sourceMappingURL=settings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../../src/document/engine/settings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;iBAyBhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAMpE,wBAAgB,WAAW,CACzB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EACxC,OAAO,EAAE,MAAM,GACd,eAAe,CAQjB;AAiBD,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAQhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACpE,MAAM,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC"}
@@ -0,0 +1,40 @@
1
+ export declare const PREAMBLE_ID = "__preamble";
2
+ export interface DocMeta {
3
+ client: string;
4
+ project: string;
5
+ dateLabel: string;
6
+ }
7
+ export interface DocSectionInput {
8
+ id: string;
9
+ type: string;
10
+ content: Record<string, unknown>;
11
+ options?: Record<string, unknown>;
12
+ }
13
+ export interface DocImage {
14
+ imageId: string;
15
+ width: number;
16
+ height: number;
17
+ alt: string;
18
+ previewFile: string;
19
+ printFile: string;
20
+ }
21
+ export type TextBlock = {
22
+ kind: "heading";
23
+ level: 2 | 3;
24
+ text: string;
25
+ } | {
26
+ kind: "prose";
27
+ html: string;
28
+ };
29
+ export interface Chunk {
30
+ id: string;
31
+ title: string;
32
+ textBlocks: TextBlock[];
33
+ images: DocImage[];
34
+ }
35
+ export interface DocSourceContent {
36
+ pageTitle: string;
37
+ sections: DocSectionInput[];
38
+ images: Record<string, DocImage>;
39
+ }
40
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/document/engine/types.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,WAAW,eAAe,CAAC;AAMxC,MAAM,WAAW,OAAO;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAID,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,SAAS,GACjB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC/C;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAGpC,MAAM,WAAW,KAAK;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,MAAM,EAAE,QAAQ,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;CAClC"}
@@ -0,0 +1,13 @@
1
+ export * from "./engine/types";
2
+ export * from "./engine/settings";
3
+ export { splitProseBlocks } from "./engine/blocks";
4
+ export { harvest } from "./engine/harvest";
5
+ export * from "./engine/paginate";
6
+ export { layoutMasonryPage, type MasonryOpts, type MasonryBox, type Sized } from "./engine/masonry";
7
+ export { DocPage, type DocMeta } from "./components/DocPage";
8
+ export { DocSectionPage, type DocHost } from "./components/DocSectionPage";
9
+ export { DocCoverPage } from "./components/DocCoverPage";
10
+ export { useDocPages } from "./components/useDocPages";
11
+ export { DocViewer, type DocViewerProps } from "./components/DocViewer";
12
+ export { DocRail, entryId, type RailEntry } from "./components/DocRail";
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/document/index.ts"],"names":[],"mappings":"AAGA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,cAAc,mBAAmB,CAAC;AAClC,OAAO,EAAE,iBAAiB,EAAE,KAAK,WAAW,EAAE,KAAK,UAAU,EAAE,KAAK,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEpG,OAAO,EAAE,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,KAAK,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAC3E,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAGvD,OAAO,EAAE,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,sBAAsB,CAAC"}