structured-render 0.0.0 → 0.0.2

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/LICENSE-CC0 +121 -0
  2. package/LICENSE-MIT +21 -0
  3. package/README.md +13 -0
  4. package/dist/augments/shadow-styles.d.ts +7 -0
  5. package/dist/augments/shadow-styles.js +17 -0
  6. package/dist/elements/vir-markdown.element.d.ts +16 -0
  7. package/dist/elements/vir-markdown.element.js +73 -0
  8. package/dist/elements/vir-source.element.d.ts +24 -0
  9. package/dist/elements/vir-source.element.js +158 -0
  10. package/dist/elements/vir-structured-render.element.d.ts +19 -0
  11. package/dist/elements/vir-structured-render.element.js +346 -0
  12. package/dist/index.d.ts +26 -0
  13. package/dist/index.js +26 -0
  14. package/dist/render/browser-rendering.d.ts +90 -0
  15. package/dist/render/browser-rendering.js +233 -0
  16. package/dist/render/html-to-pdf.d.ts +50 -0
  17. package/dist/render/html-to-pdf.js +7 -0
  18. package/dist/render/render-html.d.ts +38 -0
  19. package/dist/render/render-html.js +504 -0
  20. package/dist/render/render-image.d.ts +24 -0
  21. package/dist/render/render-image.js +35 -0
  22. package/dist/render/render-markdown-styles.d.ts +62 -0
  23. package/dist/render/render-markdown-styles.js +242 -0
  24. package/dist/render/render-markdown.d.ts +8 -0
  25. package/dist/render/render-markdown.js +169 -0
  26. package/dist/render/render-pdf.d.ts +35 -0
  27. package/dist/render/render-pdf.js +65 -0
  28. package/dist/render/render-types.d.ts +134 -0
  29. package/dist/render/render-types.js +41 -0
  30. package/dist/structured-render-data/create-section.d.ts +23 -0
  31. package/dist/structured-render-data/create-section.js +16 -0
  32. package/dist/structured-render-data/sections/code-block.section.d.ts +30 -0
  33. package/dist/structured-render-data/sections/code-block.section.js +11 -0
  34. package/dist/structured-render-data/sections/empty.section.d.ts +14 -0
  35. package/dist/structured-render-data/sections/empty.section.js +9 -0
  36. package/dist/structured-render-data/sections/icon.section.d.ts +25 -0
  37. package/dist/structured-render-data/sections/icon.section.js +40 -0
  38. package/dist/structured-render-data/sections/inline-code.section.d.ts +29 -0
  39. package/dist/structured-render-data/sections/inline-code.section.js +9 -0
  40. package/dist/structured-render-data/sections/list.section.d.ts +169 -0
  41. package/dist/structured-render-data/sections/list.section.js +29 -0
  42. package/dist/structured-render-data/sections/markdown.section.d.ts +29 -0
  43. package/dist/structured-render-data/sections/markdown.section.js +9 -0
  44. package/dist/structured-render-data/sections/processing.section.d.ts +14 -0
  45. package/dist/structured-render-data/sections/processing.section.js +9 -0
  46. package/dist/structured-render-data/sections/source.section.d.ts +59 -0
  47. package/dist/structured-render-data/sections/source.section.js +47 -0
  48. package/dist/structured-render-data/sections/table.section.d.ts +939 -0
  49. package/dist/structured-render-data/sections/table.section.js +99 -0
  50. package/dist/structured-render-data/sections/tag.section.d.ts +39 -0
  51. package/dist/structured-render-data/sections/tag.section.js +20 -0
  52. package/dist/structured-render-data/sections/text.section.d.ts +48 -0
  53. package/dist/structured-render-data/sections/text.section.js +25 -0
  54. package/dist/structured-render-data/structured-render-card.d.ts +918 -0
  55. package/dist/structured-render-data/structured-render-card.js +11 -0
  56. package/dist/structured-render-data/structured-render-data.d.ts +919 -0
  57. package/dist/structured-render-data/structured-render-data.js +8 -0
  58. package/dist/structured-render-data/structured-render-section.d.ts +1857 -0
  59. package/dist/structured-render-data/structured-render-section.js +115 -0
  60. package/package.json +75 -11
@@ -0,0 +1,47 @@
1
+ import { check, checkWrap } from '@augment-vir/assert';
2
+ import { ensureArray } from '@augment-vir/common';
3
+ import { defineShape, exactShape, nullableShape } from 'object-shape-tester';
4
+ /**
5
+ * Shape definition for {@link StructuredRenderFileBoundingBox}.
6
+ *
7
+ * @category Internal
8
+ */
9
+ export const structuredRenderFileBoundingBoxShape = defineShape({
10
+ x1: -1,
11
+ y1: -1,
12
+ x2: -1,
13
+ y2: -1,
14
+ });
15
+ /**
16
+ * A shape definition for structured render sources. Any structured render can have sources.
17
+ *
18
+ * @category Internal
19
+ */
20
+ export const structuredRenderSourceShape = defineShape({
21
+ type: exactShape('source'),
22
+ pageNumbers: nullableShape([nullableShape(-1)]),
23
+ fileName: nullableShape(''),
24
+ fileBoundingBoxes: nullableShape([
25
+ nullableShape(structuredRenderFileBoundingBoxShape),
26
+ ]),
27
+ quote: nullableShape(''),
28
+ });
29
+ /**
30
+ * Handle all the possible values for sources and combine them into an easy to use return type.
31
+ *
32
+ * @category Internal
33
+ */
34
+ export function createCleanSources(rawSources) {
35
+ return checkWrap.isLengthAtLeast(ensureArray(rawSources).filter(sourceHasContent), 1);
36
+ }
37
+ /**
38
+ * Check if a source section has any content.
39
+ *
40
+ * @category Internal
41
+ */
42
+ export function sourceHasContent(section) {
43
+ return !!(section &&
44
+ (section.quote?.trim() ||
45
+ section.fileName ||
46
+ section.pageNumbers?.filter(check.isDefined).length));
47
+ }