@segnavia/format 0.38.0 → 0.40.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.
Files changed (60) hide show
  1. package/dist/board-edit.d.ts +2 -1
  2. package/dist/board-geometry.d.ts +2 -1
  3. package/dist/board-section-grid.d.ts +2 -1
  4. package/dist/board-sections.d.ts +2 -1
  5. package/dist/board.d.ts +8 -8
  6. package/dist/board.js +15 -11
  7. package/dist/book-exports.d.ts +2 -2
  8. package/dist/book-section.d.ts +171 -0
  9. package/dist/book-section.js +13 -2
  10. package/dist/book.d.ts +189 -47
  11. package/dist/book.js +18 -2
  12. package/dist/cover.d.ts +500 -0
  13. package/dist/cover.js +100 -0
  14. package/dist/deck-from-slides.d.ts +23 -4
  15. package/dist/deck.d.ts +144 -42
  16. package/dist/deck.js +22 -24
  17. package/dist/direction.d.ts +1 -1
  18. package/dist/font-collection.d.ts +8 -0
  19. package/dist/font-collection.js +191 -0
  20. package/dist/font-face.d.ts +8 -0
  21. package/dist/font-face.js +24 -0
  22. package/dist/font-refusal.d.ts +5 -0
  23. package/dist/font-refusal.js +9 -0
  24. package/dist/font-signature.d.ts +5 -0
  25. package/dist/font-signature.js +13 -0
  26. package/dist/fonts.d.ts +6 -1
  27. package/dist/fonts.js +3 -1
  28. package/dist/geometry.d.ts +20 -0
  29. package/dist/geometry.js +18 -0
  30. package/dist/image-fit.d.ts +10 -0
  31. package/dist/image-fit.js +10 -0
  32. package/dist/imposition-marks.d.ts +1 -1
  33. package/dist/imposition-schema.d.ts +185 -0
  34. package/dist/imposition-schema.js +122 -0
  35. package/dist/imposition.d.ts +8 -6
  36. package/dist/imposition.js +53 -42
  37. package/dist/index.d.ts +23 -1756
  38. package/dist/index.js +29 -212
  39. package/dist/json-schemas.d.ts +2181 -0
  40. package/dist/json-schemas.js +43 -0
  41. package/dist/media.d.ts +152 -0
  42. package/dist/media.js +119 -0
  43. package/dist/note-series.d.ts +4 -4
  44. package/dist/note-series.js +0 -5
  45. package/dist/page.d.ts +359 -0
  46. package/dist/page.js +110 -0
  47. package/dist/paper.d.ts +5 -5
  48. package/dist/placement-cycle.d.ts +5 -0
  49. package/dist/placement-cycle.js +30 -0
  50. package/dist/placement-refusal.d.ts +5 -0
  51. package/dist/placement-refusal.js +6 -0
  52. package/dist/placement.d.ts +76 -0
  53. package/dist/placement.js +100 -0
  54. package/dist/print.d.ts +72 -0
  55. package/dist/print.js +38 -0
  56. package/dist/printed-page-imposition.d.ts +2 -1
  57. package/dist/shots-used.d.ts +0 -1
  58. package/dist/shots-used.js +2 -2
  59. package/dist/slots.d.ts +13 -13
  60. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -1,230 +1,47 @@
1
1
  import { Direction, TextDirection, firstStrongDirection, languageDirection, resolveDirection, textDirection } from "./direction.js";
2
+ import { Box, Point, Size } from "./geometry.js";
3
+ import { ImageFit } from "./image-fit.js";
4
+ import { MEDIA_FORMATS, Media, MediaFormat, MediaPage, MediaText, PageSelector, mediaTextDirection } from "./media.js";
5
+ import { PlacementRefusedError } from "./placement-refusal.js";
6
+ import { AssetKind, CropEdge, PLACEMENT_ACCEPTS, Placement, PlacementCrop } from "./placement.js";
2
7
  import { Scripts } from "./scripts.js";
3
8
  import { FillValues, SLOT_TYPES, SlotDeclaration, SlotDeclarationInput, SlotKey, SlotType, SlotValue, Slots, SlotsInput, mergeSlotDeclarations } from "./slots.js";
4
9
  import { MAX_SLIDE_TIMING_MS } from "./timing.js";
5
10
  import { DEFAULT_TRANSITION_DURATION_MS, MAX_TRANSITION_DURATION_MS, MIN_TRANSITION_DURATION_MS, Transition } from "./transition.js";
6
- import { Annotation, Box, Cue, DECK_SIZE, Deck, DeckShape, ImageFit, Manifest, Narration, PLAYBACK_MODES, Playback, Point, PublishedShot, SHOT_KEY, Shot, Size, Slide, SlideContent, Word, annotationCueIssues, exceedsLimits, parsePlayback } from "./deck.js";
11
+ import { Annotation, Cue, DECK_SIZE, Deck, Manifest, Narration, PLAYBACK_MODES, Playback, PublishedShot, SHOT_KEY, Shot, Slide, SlideContent, Word, annotationCueIssues, exceedsLimits, parsePlayback } from "./deck.js";
7
12
  import { Board, BoardItem, BoardLabel, BoardSection, GridCell } from "./board.js";
8
- import { APP_FONT_NAME, APP_FONT_NAME_MESSAGE, FONT_FORMATS, FONT_GENERICS, FontReference, FontReferenceInput, LocalFaceTransport, LocalFacesTransport, localFontReferences } from "./fonts.js";
9
- import { BOOK_FURNITURE, LIBRARY_MOTIF_PREFIX, MOTIF_ATTRIBUTE, Motif, MotifField, MotifFieldInput, MotifInput, MotifVersion, MotifVersionInput, PRINTED_PAGE_CONTEXT, PRINTED_PAGE_FOLIO_PATH, PRINTED_PAGE_NUMBER_PATH, PRINTED_PAGE_RUNNING_HEAD_PATH, PRINTED_PAGE_TOTAL_PATH, chooseMotifVersion, motifFieldAttribute } from "./motif.js";
10
- import { NoteMarker, NumberSystem, defaultPageNumbering, formatNumber, isHebrew, noteMarker } from "./numbering.js";
11
- import { BOOK_PARENT_NAMES, PRINTED_PAGE_LIMIT, PRINTED_PAGE_ROLES, ParentPage, ParentPageMargin, PrintedPageRules, PrintedPages, bookParentPages, flowingParentNames, pagePrintedPagesIssues, parentListIssues, printedPagesIssues, resolveParentPages, textArea } from "./printed-pages.js";
12
- import { BookChapterEntry, BookContents, BookFrontMatterEntry, BookItem, BookOpens, BookSection, BookSectionParents, BookTemplate, Chapter, DesignedPage, DesignedSection, MAX_PART_DEPTH, Part, REGION_NAME, TemplatedPage, TemplatedSection, bookSections, isBookContents, isChapter, isDesignedSection, isPart, isTemplatedSection } from "./book-section.js";
13
- import { NoteNumbering, NotePlacement, NoteSeries, noteMarkerIssues, resolveNoteSeries } from "./note-series.js";
14
- import { CUSTOM_PAPER_MAX_MM, CUSTOM_PAPER_MIN_MM, FOLD_DASH_OFF_MM, FOLD_DASH_ON_MM, MARK_GAP_MM, MARK_LENGTH_MM, MM_PER_PT, NAMED_PAPERS, ORIENTATIONS, Orientation, PAPER_GROUPS, PAPER_METADATA, PAPER_MM, PAPER_UNITS, PX_PER_MM, PX_PER_PT, Paper, PaperUnit, PrintSetting, PrintSettingInput, fromMillimeters, paperPixels, printBoxes, printPadding, printProperties, roundMillimeters, sheetMm, toMillimeters } from "./paper.js";
15
- import { Book, BookMode, BookPage, BookRunningHead, BookRunningHeadSource, BookShape, BookView, BookViewPagination, resolveBookPagination } from "./book.js";
16
- import { PAPER_FIT_TOLERANCE_MM, refuseOverflow, refuseSafe } from "./imposition-fit.js";
17
- import { FOLD_KINDS, FOLD_TUCK_IN_MM, foldCellPages, foldColumns, foldPageCountMessage, foldPanelMap, refineFold, resolveImposition } from "./fold.js";
18
- import { Lexicon, PronunciationEntry, lexiconVersion } from "./lexicon.js";
19
13
  import { MIN_BOARD_ITEM_WIDTH, addItem, moveItems, moveSection, removeItems, resizeItem } from "./board-edit.js";
20
14
  import { MAX_BOARD_ZOOM, MIN_BOARD_ZOOM, arrange, boardBounds, boardToScreen, itemAt, itemHeight, revealView, screenToBoard, visibleItems, zoomAt, zoomToFit } from "./board-geometry.js";
21
15
  import { boardListing, boardListingIsEmpty, foldForSearch, nameMatches } from "./board-listing.js";
22
16
  import { MAKE_ROOM_LIMIT, SECTION_GAP, SECTION_MIN_SIZE, SECTION_PADDING, SECTION_TITLE_ROOM } from "./board-section-constants.js";
23
17
  import { deriveSectionCells, gridDropMarkerBox, gridDropTarget, insertIntoGrid, layoutSection, removeFromGrid } from "./board-section-grid.js";
24
18
  import { assignMembership, fitSection, fitTouchedSections, makeRoom, settleBoard } from "./board-sections.js";
19
+ import { APP_FONT_NAME, APP_FONT_NAME_MESSAGE, FONT_FORMATS, FONT_GENERICS, FontReference, FontReferenceInput, LocalFaceTransport, LocalFacesTransport, localFontReferences } from "./fonts.js";
20
+ import { BOOK_FURNITURE, LIBRARY_MOTIF_PREFIX, MOTIF_ATTRIBUTE, Motif, MotifField, MotifFieldInput, MotifInput, MotifVersion, MotifVersionInput, PRINTED_PAGE_CONTEXT, PRINTED_PAGE_FOLIO_PATH, PRINTED_PAGE_NUMBER_PATH, PRINTED_PAGE_RUNNING_HEAD_PATH, PRINTED_PAGE_TOTAL_PATH, chooseMotifVersion, motifFieldAttribute } from "./motif.js";
21
+ import { NoteMarker, NumberSystem, defaultPageNumbering, formatNumber, isHebrew, noteMarker } from "./numbering.js";
22
+ import { BOOK_PARENT_NAMES, PRINTED_PAGE_LIMIT, PRINTED_PAGE_ROLES, ParentPage, ParentPageMargin, PrintedPageRules, PrintedPages, bookParentPages, flowingParentNames, pagePrintedPagesIssues, parentListIssues, printedPagesIssues, resolveParentPages, textArea } from "./printed-pages.js";
23
+ import { BookChapterEntry, BookContents, BookFrontMatterEntry, BookItem, BookOpens, BookSection, BookSectionParents, BookTemplate, Chapter, DesignedPage, DesignedSection, MAX_PART_DEPTH, Part, PlacedSection, REGION_NAME, TemplatedPage, TemplatedSection, bookSections, isBookContents, isChapter, isDesignedSection, isPart, isPlacedSection, isTemplatedSection } from "./book-section.js";
24
+ import { NoteNumbering, NotePlacement, NoteSeries, noteMarkerIssues, resolveNoteSeries } from "./note-series.js";
25
+ import { CUSTOM_PAPER_MAX_MM, CUSTOM_PAPER_MIN_MM, FOLD_DASH_OFF_MM, FOLD_DASH_ON_MM, MARK_GAP_MM, MARK_LENGTH_MM, MM_PER_PT, NAMED_PAPERS, ORIENTATIONS, Orientation, PAPER_GROUPS, PAPER_METADATA, PAPER_MM, PAPER_UNITS, PX_PER_MM, PX_PER_PT, Paper, PaperUnit, PrintSetting, PrintSettingInput, fromMillimeters, paperPixels, printBoxes, printPadding, printProperties, roundMillimeters, sheetMm, toMillimeters } from "./paper.js";
26
+ import { Book, BookMode, BookPage, BookRunningHead, BookRunningHeadSource, BookView, BookViewPagination, resolveBookPagination } from "./book.js";
27
+ import { Margin, MarkColor, Print } from "./print.js";
28
+ import { FULL_PAGE_SIZE, FlowingWidth, PAGE_WIDTHS, Page, PageBody, PageSize, PageWidths, resolvePageWidth } from "./page.js";
29
+ import { COVER_DRAWING_VERSION, COVER_SHEET, Cover, coverDigest, digestCoverMaterial } from "./cover.js";
25
30
  import { deckFromSlides } from "./deck-from-slides.js";
31
+ import { dependencyDecision, dependencyOriginSet, originSet } from "./dependency-policy.js";
32
+ import { PAPER_FIT_TOLERANCE_MM } from "./imposition-fit.js";
33
+ import { FOLD_KINDS, FOLD_TUCK_IN_MM, foldCellPages, foldColumns, foldPageCountMessage, foldPanelMap } from "./fold.js";
34
+ import { FontFaceRefusedError } from "./font-refusal.js";
35
+ import { COLLECTION_TAG, classifyFont } from "./font-signature.js";
36
+ import { collectionFaces, extractFace } from "./font-collection.js";
37
+ import { resolveFontFace } from "./font-face.js";
26
38
  import { fitPage, impose, mirrorPlacement, pagePlacementLayout } from "./imposition.js";
27
39
  import { MIN_MARK_LENGTH_MM, impositionMarks } from "./imposition-marks.js";
40
+ import { Imposition, MAX_IMPOSITION_CELLS } from "./imposition-schema.js";
41
+ import { Lexicon, PronunciationEntry, lexiconVersion } from "./lexicon.js";
42
+ import { jsonSchemas } from "./json-schemas.js";
28
43
  import { LOCAL_FONT_LIMITS, localFontLimitRefusal } from "./local-font-limits.js";
44
+ import { checkPlacementCycles, findPlacementCycle } from "./placement-cycle.js";
29
45
  import { isPrintedPageIdentityImposition } from "./printed-page-imposition.js";
30
46
  import { shotsUsed } from "./shots-used.js";
31
- import { dependencyDecision, dependencyOriginSet, originSet } from "./dependency-policy.js";
32
- import { z } from "zod";
33
- //#region src/index.ts
34
- const Margin = z.object({
35
- top: z.number().nonnegative().default(0),
36
- right: z.number().nonnegative().default(0),
37
- bottom: z.number().nonnegative().default(0),
38
- left: z.number().nonnegative().default(0)
39
- });
40
- const MarkColor = z.enum(["black", "registration"]);
41
- const Print = z.object({
42
- paper: Paper,
43
- orientation: Orientation.default("portrait"),
44
- margin: Margin.optional(),
45
- bleed: z.number().nonnegative().default(0),
46
- safe: z.number().nonnegative().default(0),
47
- marks: z.boolean().default(false),
48
- markColor: MarkColor.default("black")
49
- }).superRefine((print, ctx) => {
50
- if (print.markColor === "registration" && !print.marks) ctx.addIssue({
51
- code: "custom",
52
- path: ["markColor"],
53
- message: "markColor requires marks to be true"
54
- });
55
- const trim = sheetMm(print);
56
- if (print.safe * 2 >= trim.width) ctx.addIssue({
57
- code: "custom",
58
- path: ["safe"],
59
- message: `safe is ${print.safe}mm on the left and right, but the trim is ${trim.width}mm wide; safe must leave area inside the trim`
60
- });
61
- if (print.safe * 2 >= trim.height) ctx.addIssue({
62
- code: "custom",
63
- path: ["safe"],
64
- message: `safe is ${print.safe}mm on the top and bottom, but the trim is ${trim.height}mm high; safe must leave area inside the trim`
65
- });
66
- });
67
- const ImpositionGap = z.object({
68
- column: z.number().nonnegative().default(0),
69
- row: z.number().nonnegative().default(0)
70
- });
71
- const MAX_IMPOSITION_CELLS = 1e4;
72
- const Imposition = z.object({
73
- paper: Paper,
74
- orientation: Orientation.default("portrait"),
75
- unit: PaperUnit.default("mm"),
76
- margin: Margin.default({
77
- top: 0,
78
- right: 0,
79
- bottom: 0,
80
- left: 0
81
- }),
82
- columns: z.number().int().positive().optional(),
83
- rows: z.number().int().positive().optional(),
84
- cell: z.object({
85
- width: z.number().positive().optional(),
86
- height: z.number().positive()
87
- }),
88
- gap: ImpositionGap.default({
89
- column: 0,
90
- row: 0
91
- }),
92
- bleed: z.number().nonnegative().default(0),
93
- safe: z.number().nonnegative().default(0),
94
- fit: z.enum(["contain", "cover"]).default("contain"),
95
- fill: z.enum(["sequence", "repeat"]).default("sequence"),
96
- sides: z.enum(["one", "two"]).optional(),
97
- flip: z.enum(["long", "short"]).default("long"),
98
- skip: z.number().int().nonnegative().default(0),
99
- dir: z.enum(["ltr", "rtl"]).default("ltr"),
100
- marks: z.boolean().default(false),
101
- markColor: MarkColor.default("black"),
102
- cornerMarks: z.boolean().default(false),
103
- fold: z.enum(FOLD_KINDS).optional(),
104
- panels: z.array(z.number().positive()).optional()
105
- }).superRefine((imposition, ctx) => {
106
- if (imposition.markColor === "registration" && !imposition.marks) ctx.addIssue({
107
- code: "custom",
108
- path: ["markColor"],
109
- message: "markColor requires marks to be true"
110
- });
111
- if (imposition.cornerMarks && !imposition.marks) ctx.addIssue({
112
- code: "custom",
113
- path: ["cornerMarks"],
114
- message: "cornerMarks requires marks to be true"
115
- });
116
- if (imposition.panels !== void 0 && !imposition.fold) ctx.addIssue({
117
- code: "custom",
118
- path: ["panels"],
119
- message: "panels needs fold; set fold or remove panels"
120
- });
121
- if (imposition.fold) {
122
- const panelCount = imposition.panels?.length ?? 0;
123
- if (panelCount > 1e4) {
124
- ctx.addIssue({
125
- code: "custom",
126
- path: ["panels"],
127
- message: `the fold has ${panelCount} panels and the ceiling is ${MAX_IMPOSITION_CELLS}; fewer panels clears this refusal`
128
- });
129
- return;
130
- }
131
- refineFold(imposition, ctx);
132
- return;
133
- }
134
- if (imposition.columns === void 0) ctx.addIssue({
135
- code: "custom",
136
- path: ["columns"],
137
- message: "columns is required; give a column count to clear this refusal"
138
- });
139
- if (imposition.rows === void 0) ctx.addIssue({
140
- code: "custom",
141
- path: ["rows"],
142
- message: "rows is required; give a row count to clear this refusal"
143
- });
144
- if (imposition.cell.width === void 0) ctx.addIssue({
145
- code: "custom",
146
- path: ["cell", "width"],
147
- message: "cell.width is required; give a cell width to clear this refusal"
148
- });
149
- if (imposition.columns === void 0 || imposition.rows === void 0 || imposition.cell.width === void 0) return;
150
- const cellCount = BigInt(imposition.columns) * BigInt(imposition.rows);
151
- if (imposition.columns > 1e4 || imposition.rows > 1e4 || cellCount > BigInt(1e4)) {
152
- ctx.addIssue({
153
- code: "custom",
154
- path: ["columns"],
155
- message: `the grid has ${cellCount} cells and the ceiling is ${MAX_IMPOSITION_CELLS}; fewer columns or rows clears this refusal`
156
- });
157
- return;
158
- }
159
- const mm = (value) => toMillimeters(value, imposition.unit);
160
- const paper = sheetMm({
161
- paper: imposition.paper,
162
- orientation: imposition.orientation
163
- });
164
- const gridWidth = mm(imposition.margin.left + imposition.columns * imposition.cell.width + (imposition.columns - 1) * imposition.gap.column + imposition.margin.right);
165
- const gridHeight = mm(imposition.margin.top + imposition.rows * imposition.cell.height + (imposition.rows - 1) * imposition.gap.row + imposition.margin.bottom);
166
- refuseOverflow(ctx, paper, {
167
- width: gridWidth,
168
- height: gridHeight
169
- });
170
- refuseSafe(ctx, mm(imposition.safe), {
171
- width: mm(imposition.cell.width),
172
- height: mm(imposition.cell.height)
173
- });
174
- const cells = imposition.columns * imposition.rows;
175
- if (imposition.skip >= cells) ctx.addIssue({
176
- code: "custom",
177
- path: ["skip"],
178
- message: `skip is ${imposition.skip}, but the grid has ${cells} cells; skip must be less than ${cells}`
179
- });
180
- }).transform(resolveImposition);
181
- const PageSize = z.union([
182
- z.literal("fluid"),
183
- Size,
184
- z.object({
185
- width: z.number().int().positive(),
186
- height: z.literal("auto")
187
- })
188
- ]);
189
- const Page = z.object({
190
- id: z.string().optional(),
191
- html: z.string(),
192
- size: PageSize.default("fluid"),
193
- scripts: Scripts.default("refuse"),
194
- dir: Direction.optional(),
195
- lang: z.string().optional(),
196
- print: Print.optional(),
197
- printedPages: PrintedPages.optional(),
198
- slots: Slots.optional(),
199
- fonts: z.array(FontReference).optional()
200
- }).superRefine((page, ctx) => {
201
- for (const issue of pagePrintedPagesIssues(page)) ctx.addIssue({
202
- code: "custom",
203
- ...issue
204
- });
205
- });
206
- function jsonSchemas() {
207
- return {
208
- book: z.toJSONSchema(BookShape, { io: "input" }),
209
- bookView: z.toJSONSchema(BookView, { io: "input" }),
210
- page: z.toJSONSchema(Page, { io: "input" }),
211
- lexicon: z.toJSONSchema(Lexicon, { io: "input" }),
212
- imposition: z.toJSONSchema(Imposition, { io: "input" }),
213
- deck: z.toJSONSchema(DeckShape, { io: "input" }),
214
- manifest: z.toJSONSchema(Manifest, { io: "input" }),
215
- publishedShot: z.toJSONSchema(PublishedShot, { io: "input" }),
216
- board: z.toJSONSchema(Board, { io: "input" }),
217
- printSetting: z.toJSONSchema(PrintSetting, { io: "input" }),
218
- printSettingInput: z.toJSONSchema(PrintSettingInput, { io: "input" }),
219
- slotDeclaration: z.toJSONSchema(SlotDeclaration, { io: "input" }),
220
- slotDeclarationInput: z.toJSONSchema(SlotDeclarationInput, { io: "input" }),
221
- fontReference: z.toJSONSchema(FontReference, { io: "input" }),
222
- fontReferenceInput: z.toJSONSchema(FontReferenceInput, { io: "input" }),
223
- localFaceTransport: z.toJSONSchema(LocalFaceTransport, { io: "input" }),
224
- localFacesTransport: z.toJSONSchema(LocalFacesTransport, { io: "input" }),
225
- motif: z.toJSONSchema(Motif, { io: "input" }),
226
- motifInput: z.toJSONSchema(MotifInput, { io: "input" })
227
- };
228
- }
229
- //#endregion
230
- export { APP_FONT_NAME, APP_FONT_NAME_MESSAGE, Annotation, BOOK_FURNITURE, BOOK_PARENT_NAMES, Board, BoardItem, BoardLabel, BoardSection, Book, BookChapterEntry, BookContents, BookFrontMatterEntry, BookItem, BookMode, BookOpens, BookPage, BookRunningHead, BookRunningHeadSource, BookSection, BookSectionParents, BookTemplate, BookView, BookViewPagination, Box, CUSTOM_PAPER_MAX_MM, CUSTOM_PAPER_MIN_MM, Chapter, Cue, DECK_SIZE, DEFAULT_TRANSITION_DURATION_MS, Deck, DesignedPage, DesignedSection, Direction, FOLD_DASH_OFF_MM, FOLD_DASH_ON_MM, FOLD_KINDS, FOLD_TUCK_IN_MM, FONT_FORMATS, FONT_GENERICS, FillValues, FontReference, FontReferenceInput, GridCell, ImageFit, Imposition, LIBRARY_MOTIF_PREFIX, LOCAL_FONT_LIMITS, Lexicon, LocalFaceTransport, LocalFacesTransport, MAKE_ROOM_LIMIT, MARK_GAP_MM, MARK_LENGTH_MM, MAX_BOARD_ZOOM, MAX_IMPOSITION_CELLS, MAX_PART_DEPTH, MAX_SLIDE_TIMING_MS, MAX_TRANSITION_DURATION_MS, MIN_BOARD_ITEM_WIDTH, MIN_BOARD_ZOOM, MIN_MARK_LENGTH_MM, MIN_TRANSITION_DURATION_MS, MM_PER_PT, MOTIF_ATTRIBUTE, Manifest, Margin, MarkColor, Motif, MotifField, MotifFieldInput, MotifInput, MotifVersion, MotifVersionInput, NAMED_PAPERS, Narration, NoteMarker, NoteNumbering, NotePlacement, NoteSeries, NumberSystem, ORIENTATIONS, Orientation, PAPER_FIT_TOLERANCE_MM, PAPER_GROUPS, PAPER_METADATA, PAPER_MM, PAPER_UNITS, PLAYBACK_MODES, PRINTED_PAGE_CONTEXT, PRINTED_PAGE_FOLIO_PATH, PRINTED_PAGE_LIMIT, PRINTED_PAGE_NUMBER_PATH, PRINTED_PAGE_ROLES, PRINTED_PAGE_RUNNING_HEAD_PATH, PRINTED_PAGE_TOTAL_PATH, PX_PER_MM, PX_PER_PT, Page, PageSize, Paper, PaperUnit, ParentPage, ParentPageMargin, Part, Playback, Point, Print, PrintSetting, PrintSettingInput, PrintedPageRules, PrintedPages, PronunciationEntry, PublishedShot, REGION_NAME, SECTION_GAP, SECTION_MIN_SIZE, SECTION_PADDING, SECTION_TITLE_ROOM, SHOT_KEY, SLOT_TYPES, Scripts, Shot, Size, Slide, SlideContent, SlotDeclaration, SlotDeclarationInput, SlotKey, SlotType, SlotValue, Slots, SlotsInput, TemplatedPage, TemplatedSection, TextDirection, Transition, Word, addItem, annotationCueIssues, arrange, assignMembership, boardBounds, boardListing, boardListingIsEmpty, boardToScreen, bookParentPages, bookSections, chooseMotifVersion, deckFromSlides, defaultPageNumbering, dependencyDecision, dependencyOriginSet, deriveSectionCells, exceedsLimits, firstStrongDirection, fitPage, fitSection, fitTouchedSections, flowingParentNames, foldCellPages, foldColumns, foldForSearch, foldPageCountMessage, foldPanelMap, formatNumber, fromMillimeters, gridDropMarkerBox, gridDropTarget, impose, impositionMarks, insertIntoGrid, isBookContents, isChapter, isDesignedSection, isHebrew, isPart, isPrintedPageIdentityImposition, isTemplatedSection, itemAt, itemHeight, jsonSchemas, languageDirection, layoutSection, lexiconVersion, localFontLimitRefusal, localFontReferences, makeRoom, mergeSlotDeclarations, mirrorPlacement, motifFieldAttribute, moveItems, moveSection, nameMatches, noteMarker, noteMarkerIssues, originSet, pagePlacementLayout, pagePrintedPagesIssues, paperPixels, parentListIssues, parsePlayback, printBoxes, printPadding, printProperties, printedPagesIssues, removeFromGrid, removeItems, resizeItem, resolveBookPagination, resolveDirection, resolveNoteSeries, resolveParentPages, revealView, roundMillimeters, screenToBoard, settleBoard, sheetMm, shotsUsed, textArea, textDirection, toMillimeters, visibleItems, zoomAt, zoomToFit };
47
+ export { APP_FONT_NAME, APP_FONT_NAME_MESSAGE, Annotation, AssetKind, BOOK_FURNITURE, BOOK_PARENT_NAMES, Board, BoardItem, BoardLabel, BoardSection, Book, BookChapterEntry, BookContents, BookFrontMatterEntry, BookItem, BookMode, BookOpens, BookPage, BookRunningHead, BookRunningHeadSource, BookSection, BookSectionParents, BookTemplate, BookView, BookViewPagination, Box, COLLECTION_TAG, COVER_DRAWING_VERSION, COVER_SHEET, CUSTOM_PAPER_MAX_MM, CUSTOM_PAPER_MIN_MM, Chapter, Cover, CropEdge, Cue, DECK_SIZE, DEFAULT_TRANSITION_DURATION_MS, Deck, DesignedPage, DesignedSection, Direction, FOLD_DASH_OFF_MM, FOLD_DASH_ON_MM, FOLD_KINDS, FOLD_TUCK_IN_MM, FONT_FORMATS, FONT_GENERICS, FULL_PAGE_SIZE, FillValues, FlowingWidth, FontFaceRefusedError, FontReference, FontReferenceInput, GridCell, ImageFit, Imposition, LIBRARY_MOTIF_PREFIX, LOCAL_FONT_LIMITS, Lexicon, LocalFaceTransport, LocalFacesTransport, MAKE_ROOM_LIMIT, MARK_GAP_MM, MARK_LENGTH_MM, MAX_BOARD_ZOOM, MAX_IMPOSITION_CELLS, MAX_PART_DEPTH, MAX_SLIDE_TIMING_MS, MAX_TRANSITION_DURATION_MS, MEDIA_FORMATS, MIN_BOARD_ITEM_WIDTH, MIN_BOARD_ZOOM, MIN_MARK_LENGTH_MM, MIN_TRANSITION_DURATION_MS, MM_PER_PT, MOTIF_ATTRIBUTE, Manifest, Margin, MarkColor, Media, MediaFormat, MediaPage, MediaText, Motif, MotifField, MotifFieldInput, MotifInput, MotifVersion, MotifVersionInput, NAMED_PAPERS, Narration, NoteMarker, NoteNumbering, NotePlacement, NoteSeries, NumberSystem, ORIENTATIONS, Orientation, PAGE_WIDTHS, PAPER_FIT_TOLERANCE_MM, PAPER_GROUPS, PAPER_METADATA, PAPER_MM, PAPER_UNITS, PLACEMENT_ACCEPTS, PLAYBACK_MODES, PRINTED_PAGE_CONTEXT, PRINTED_PAGE_FOLIO_PATH, PRINTED_PAGE_LIMIT, PRINTED_PAGE_NUMBER_PATH, PRINTED_PAGE_ROLES, PRINTED_PAGE_RUNNING_HEAD_PATH, PRINTED_PAGE_TOTAL_PATH, PX_PER_MM, PX_PER_PT, Page, PageBody, PageSelector, PageSize, PageWidths, Paper, PaperUnit, ParentPage, ParentPageMargin, Part, PlacedSection, Placement, PlacementCrop, PlacementRefusedError, Playback, Point, Print, PrintSetting, PrintSettingInput, PrintedPageRules, PrintedPages, PronunciationEntry, PublishedShot, REGION_NAME, SECTION_GAP, SECTION_MIN_SIZE, SECTION_PADDING, SECTION_TITLE_ROOM, SHOT_KEY, SLOT_TYPES, Scripts, Shot, Size, Slide, SlideContent, SlotDeclaration, SlotDeclarationInput, SlotKey, SlotType, SlotValue, Slots, SlotsInput, TemplatedPage, TemplatedSection, TextDirection, Transition, Word, addItem, annotationCueIssues, arrange, assignMembership, boardBounds, boardListing, boardListingIsEmpty, boardToScreen, bookParentPages, bookSections, checkPlacementCycles, chooseMotifVersion, classifyFont, collectionFaces, coverDigest, deckFromSlides, defaultPageNumbering, dependencyDecision, dependencyOriginSet, deriveSectionCells, digestCoverMaterial, exceedsLimits, extractFace, findPlacementCycle, firstStrongDirection, fitPage, fitSection, fitTouchedSections, flowingParentNames, foldCellPages, foldColumns, foldForSearch, foldPageCountMessage, foldPanelMap, formatNumber, fromMillimeters, gridDropMarkerBox, gridDropTarget, impose, impositionMarks, insertIntoGrid, isBookContents, isChapter, isDesignedSection, isHebrew, isPart, isPlacedSection, isPrintedPageIdentityImposition, isTemplatedSection, itemAt, itemHeight, jsonSchemas, languageDirection, layoutSection, lexiconVersion, localFontLimitRefusal, localFontReferences, makeRoom, mediaTextDirection, mergeSlotDeclarations, mirrorPlacement, motifFieldAttribute, moveItems, moveSection, nameMatches, noteMarker, noteMarkerIssues, originSet, pagePlacementLayout, pagePrintedPagesIssues, paperPixels, parentListIssues, parsePlayback, printBoxes, printPadding, printProperties, printedPagesIssues, removeFromGrid, removeItems, resizeItem, resolveBookPagination, resolveDirection, resolveFontFace, resolveNoteSeries, resolvePageWidth, resolveParentPages, revealView, roundMillimeters, screenToBoard, settleBoard, sheetMm, shotsUsed, textArea, textDirection, toMillimeters, visibleItems, zoomAt, zoomToFit };