@janga/norna 0.7.3 → 0.7.4

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 (87) hide show
  1. package/docs/README.md +3 -3
  2. package/docs/commands.md +2 -2
  3. package/docs/configuration.md +2 -1
  4. package/docs/design/command-organization.md +4 -3
  5. package/docs/design/site-examples-structure.md +4 -3
  6. package/docs/getting-started.md +8 -7
  7. package/docs/theme.md +27 -43
  8. package/docs/typography.md +47 -31
  9. package/examples/dog-gallery/site/content.md +1 -1
  10. package/examples/dog-gallery/site/theme.md +12 -14
  11. package/package.json +1 -1
  12. package/scripts/check-config.mjs +1 -0
  13. package/scripts/lib/project-config.mjs +87 -32
  14. package/scripts/lib/site-content.mjs +4 -4
  15. package/scripts/lib/typography.mjs +79 -39
  16. package/scripts/show-typography.mjs +75 -11
  17. package/scripts/test-engine-commands.mjs +18 -0
  18. package/scripts/test-package-check.mjs +19 -3
  19. package/src/components/SiteSection.astro +82 -20
  20. package/src/content.config.ts +11 -9
  21. package/src/layouts/BaseLayout.astro +0 -6
  22. package/src/styles/global.css +44 -17
  23. package/starters/basic/README.md +4 -3
  24. package/starters/basic/site/theme.md +19 -46
  25. package/starters/project/README.md +7 -7
  26. package/starters/project/package-lock.json +4 -4
  27. package/starters/project/package.json +1 -1
  28. package/starters/project/site/content.md +86 -46
  29. package/starters/project/site/routes/guide/route-content.md +52 -25
  30. package/starters/project/site/theme.md +29 -1
  31. package/examples/dog-gallery/.astro/collections/site.schema.json +0 -802
  32. package/examples/dog-gallery/.astro/collections/theme.schema.json +0 -714
  33. package/examples/dog-gallery/.astro/content-assets.mjs +0 -4
  34. package/examples/dog-gallery/.astro/content-modules.mjs +0 -1
  35. package/examples/dog-gallery/.astro/content.d.ts +0 -175
  36. package/examples/dog-gallery/.astro/data-store.json +0 -1
  37. package/examples/dog-gallery/.astro/dev-local.json +0 -8
  38. package/examples/dog-gallery/.astro/dev.json +0 -13
  39. package/examples/dog-gallery/.astro/dev.log +0 -49
  40. package/examples/dog-gallery/.astro/settings.json +0 -5
  41. package/examples/dog-gallery/.astro/types.d.ts +0 -2
  42. package/examples/dog-gallery/dist/_astro/GalleryGrid.astro_astro_type_script_index_0_lang.B0kxDyGz.js +0 -1
  43. package/examples/dog-gallery/dist/_astro/SitePage.BFHZm5UG.css +0 -1
  44. package/examples/dog-gallery/dist/dog-care/index.html +0 -15
  45. package/examples/dog-gallery/dist/favicon.svg +0 -7
  46. package/examples/dog-gallery/dist/images/generated/black-dogs/black-puppy-meadow-7255e3d9-1080.webp +0 -0
  47. package/examples/dog-gallery/dist/images/generated/black-dogs/black-puppy-meadow-7255e3d9-1440.webp +0 -0
  48. package/examples/dog-gallery/dist/images/generated/black-dogs/black-puppy-meadow-7255e3d9-1536.webp +0 -0
  49. package/examples/dog-gallery/dist/images/generated/black-dogs/black-puppy-meadow-7255e3d9-480.webp +0 -0
  50. package/examples/dog-gallery/dist/images/generated/black-dogs/black-puppy-meadow-7255e3d9-768.webp +0 -0
  51. package/examples/dog-gallery/dist/images/generated/black-dogs/photo-of-a-black-dog-5cf614d2-480.webp +0 -0
  52. package/examples/dog-gallery/dist/images/generated/black-dogs/photo-of-a-black-dog-5cf614d2-768.webp +0 -0
  53. package/examples/dog-gallery/dist/images/generated/black-dogs/photo-of-a-black-dog-5cf614d2-960.webp +0 -0
  54. package/examples/dog-gallery/dist/images/generated/brown-dogs/brown-dog-50ef114e-1080.webp +0 -0
  55. package/examples/dog-gallery/dist/images/generated/brown-dogs/brown-dog-50ef114e-1440.webp +0 -0
  56. package/examples/dog-gallery/dist/images/generated/brown-dogs/brown-dog-50ef114e-1920.webp +0 -0
  57. package/examples/dog-gallery/dist/images/generated/brown-dogs/brown-dog-50ef114e-3939.webp +0 -0
  58. package/examples/dog-gallery/dist/images/generated/brown-dogs/brown-dog-50ef114e-480.webp +0 -0
  59. package/examples/dog-gallery/dist/images/generated/brown-dogs/brown-dog-50ef114e-768.webp +0 -0
  60. package/examples/dog-gallery/dist/images/generated/brown-dogs/dog-accompanies-master-7ef804d5-1080.webp +0 -0
  61. package/examples/dog-gallery/dist/images/generated/brown-dogs/dog-accompanies-master-7ef804d5-1440.webp +0 -0
  62. package/examples/dog-gallery/dist/images/generated/brown-dogs/dog-accompanies-master-7ef804d5-1920.webp +0 -0
  63. package/examples/dog-gallery/dist/images/generated/brown-dogs/dog-accompanies-master-7ef804d5-2400.webp +0 -0
  64. package/examples/dog-gallery/dist/images/generated/brown-dogs/dog-accompanies-master-7ef804d5-480.webp +0 -0
  65. package/examples/dog-gallery/dist/images/generated/brown-dogs/dog-accompanies-master-7ef804d5-768.webp +0 -0
  66. package/examples/dog-gallery/dist/images/generated/golden-dogs/golden-retriever-f797fd88-1080.webp +0 -0
  67. package/examples/dog-gallery/dist/images/generated/golden-dogs/golden-retriever-f797fd88-1440.webp +0 -0
  68. package/examples/dog-gallery/dist/images/generated/golden-dogs/golden-retriever-f797fd88-1600.webp +0 -0
  69. package/examples/dog-gallery/dist/images/generated/golden-dogs/golden-retriever-f797fd88-480.webp +0 -0
  70. package/examples/dog-gallery/dist/images/generated/golden-dogs/golden-retriever-f797fd88-768.webp +0 -0
  71. package/examples/dog-gallery/dist/images/generated/golden-dogs/toller-puppy-a2a8fbc0-1080.webp +0 -0
  72. package/examples/dog-gallery/dist/images/generated/golden-dogs/toller-puppy-a2a8fbc0-1440.webp +0 -0
  73. package/examples/dog-gallery/dist/images/generated/golden-dogs/toller-puppy-a2a8fbc0-1920.webp +0 -0
  74. package/examples/dog-gallery/dist/images/generated/golden-dogs/toller-puppy-a2a8fbc0-2576.webp +0 -0
  75. package/examples/dog-gallery/dist/images/generated/golden-dogs/toller-puppy-a2a8fbc0-480.webp +0 -0
  76. package/examples/dog-gallery/dist/images/generated/golden-dogs/toller-puppy-a2a8fbc0-768.webp +0 -0
  77. package/examples/dog-gallery/dist/images/generated/white-dogs/white-cute-dog-077a0689-1080.webp +0 -0
  78. package/examples/dog-gallery/dist/images/generated/white-dogs/white-cute-dog-077a0689-1277.webp +0 -0
  79. package/examples/dog-gallery/dist/images/generated/white-dogs/white-cute-dog-077a0689-480.webp +0 -0
  80. package/examples/dog-gallery/dist/images/generated/white-dogs/white-cute-dog-077a0689-768.webp +0 -0
  81. package/examples/dog-gallery/dist/images/generated/white-dogs/white-puppy-garden-d3ab2ca0-1080.webp +0 -0
  82. package/examples/dog-gallery/dist/images/generated/white-dogs/white-puppy-garden-d3ab2ca0-1440.webp +0 -0
  83. package/examples/dog-gallery/dist/images/generated/white-dogs/white-puppy-garden-d3ab2ca0-1536.webp +0 -0
  84. package/examples/dog-gallery/dist/images/generated/white-dogs/white-puppy-garden-d3ab2ca0-480.webp +0 -0
  85. package/examples/dog-gallery/dist/images/generated/white-dogs/white-puppy-garden-d3ab2ca0-768.webp +0 -0
  86. package/examples/dog-gallery/dist/index.html +0 -43
  87. package/examples/dog-gallery/dist/robots.txt +0 -2
@@ -1,714 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "type": "object",
4
- "properties": {
5
- "navigation": {
6
- "type": "object",
7
- "properties": {
8
- "brand": {
9
- "type": "string",
10
- "minLength": 1
11
- }
12
- },
13
- "additionalProperties": false
14
- },
15
- "layout": {
16
- "type": "object",
17
- "properties": {
18
- "pageWidth": {
19
- "type": "string",
20
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)|clamp\\(\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*\\))$"
21
- },
22
- "gutter": {
23
- "anyOf": [
24
- {
25
- "type": "string",
26
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)|clamp\\(\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*\\))$"
27
- },
28
- {
29
- "type": "object",
30
- "properties": {
31
- "desktop": {
32
- "type": "string",
33
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)|clamp\\(\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*\\))$"
34
- },
35
- "mobile": {
36
- "type": "string",
37
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)|clamp\\(\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*\\))$"
38
- }
39
- },
40
- "required": [
41
- "desktop",
42
- "mobile"
43
- ],
44
- "additionalProperties": false
45
- }
46
- ]
47
- },
48
- "spacing": {
49
- "type": "object",
50
- "properties": {
51
- "bodyToImages": {
52
- "anyOf": [
53
- {
54
- "type": "string",
55
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)|clamp\\(\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*\\))$"
56
- },
57
- {
58
- "type": "object",
59
- "properties": {
60
- "desktop": {
61
- "type": "string",
62
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)|clamp\\(\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*\\))$"
63
- },
64
- "mobile": {
65
- "type": "string",
66
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)|clamp\\(\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*\\))$"
67
- }
68
- },
69
- "required": [
70
- "desktop",
71
- "mobile"
72
- ],
73
- "additionalProperties": false
74
- }
75
- ]
76
- },
77
- "finalSectionBottom": {
78
- "anyOf": [
79
- {
80
- "type": "string",
81
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)|clamp\\(\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*\\))$"
82
- },
83
- {
84
- "type": "object",
85
- "properties": {
86
- "desktop": {
87
- "type": "string",
88
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)|clamp\\(\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*\\))$"
89
- },
90
- "mobile": {
91
- "type": "string",
92
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)|clamp\\(\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*\\))$"
93
- }
94
- },
95
- "required": [
96
- "desktop",
97
- "mobile"
98
- ],
99
- "additionalProperties": false
100
- }
101
- ]
102
- },
103
- "firstSectionTop": {
104
- "anyOf": [
105
- {
106
- "type": "string",
107
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)|clamp\\(\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*\\))$"
108
- },
109
- {
110
- "type": "object",
111
- "properties": {
112
- "desktop": {
113
- "type": "string",
114
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)|clamp\\(\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*\\))$"
115
- },
116
- "mobile": {
117
- "type": "string",
118
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)|clamp\\(\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*\\))$"
119
- }
120
- },
121
- "required": [
122
- "desktop",
123
- "mobile"
124
- ],
125
- "additionalProperties": false
126
- }
127
- ]
128
- },
129
- "imageGap": {
130
- "anyOf": [
131
- {
132
- "type": "string",
133
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)|clamp\\(\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*\\))$"
134
- },
135
- {
136
- "type": "object",
137
- "properties": {
138
- "desktop": {
139
- "type": "string",
140
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)|clamp\\(\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*\\))$"
141
- },
142
- "mobile": {
143
- "type": "string",
144
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)|clamp\\(\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*\\))$"
145
- }
146
- },
147
- "required": [
148
- "desktop",
149
- "mobile"
150
- ],
151
- "additionalProperties": false
152
- }
153
- ]
154
- },
155
- "sectionGap": {
156
- "anyOf": [
157
- {
158
- "type": "string",
159
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)|clamp\\(\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*\\))$"
160
- },
161
- {
162
- "type": "object",
163
- "properties": {
164
- "desktop": {
165
- "type": "string",
166
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)|clamp\\(\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*\\))$"
167
- },
168
- "mobile": {
169
- "type": "string",
170
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)|clamp\\(\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*\\))$"
171
- }
172
- },
173
- "required": [
174
- "desktop",
175
- "mobile"
176
- ],
177
- "additionalProperties": false
178
- }
179
- ]
180
- },
181
- "sectionHeadingToBody": {
182
- "anyOf": [
183
- {
184
- "type": "string",
185
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)|clamp\\(\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*\\))$"
186
- },
187
- {
188
- "type": "object",
189
- "properties": {
190
- "desktop": {
191
- "type": "string",
192
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)|clamp\\(\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*\\))$"
193
- },
194
- "mobile": {
195
- "type": "string",
196
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)|clamp\\(\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*\\))$"
197
- }
198
- },
199
- "required": [
200
- "desktop",
201
- "mobile"
202
- ],
203
- "additionalProperties": false
204
- }
205
- ]
206
- },
207
- "subheadingRuleTop": {
208
- "anyOf": [
209
- {
210
- "type": "string",
211
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)|clamp\\(\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*\\))$"
212
- },
213
- {
214
- "type": "object",
215
- "properties": {
216
- "desktop": {
217
- "type": "string",
218
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)|clamp\\(\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*\\))$"
219
- },
220
- "mobile": {
221
- "type": "string",
222
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)|clamp\\(\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*\\))$"
223
- }
224
- },
225
- "required": [
226
- "desktop",
227
- "mobile"
228
- ],
229
- "additionalProperties": false
230
- }
231
- ]
232
- },
233
- "subheadingTop": {
234
- "anyOf": [
235
- {
236
- "type": "string",
237
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)|clamp\\(\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*\\))$"
238
- },
239
- {
240
- "type": "object",
241
- "properties": {
242
- "desktop": {
243
- "type": "string",
244
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)|clamp\\(\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*\\))$"
245
- },
246
- "mobile": {
247
- "type": "string",
248
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)|clamp\\(\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*\\))$"
249
- }
250
- },
251
- "required": [
252
- "desktop",
253
- "mobile"
254
- ],
255
- "additionalProperties": false
256
- }
257
- ]
258
- }
259
- },
260
- "additionalProperties": false
261
- }
262
- },
263
- "additionalProperties": false
264
- },
265
- "gallery": {
266
- "type": "object",
267
- "properties": {
268
- "width": {
269
- "type": "string",
270
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)|clamp\\(\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*,\\s*(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|vw|vh|vmin|vmax|ch|%)\\s*\\))$"
271
- },
272
- "maxAvailableWidthPercent": {
273
- "anyOf": [
274
- {
275
- "type": "number",
276
- "exclusiveMinimum": 0,
277
- "maximum": 100
278
- },
279
- {
280
- "type": "object",
281
- "properties": {
282
- "desktop": {
283
- "type": "number",
284
- "exclusiveMinimum": 0,
285
- "maximum": 100
286
- },
287
- "mobile": {
288
- "type": "number",
289
- "exclusiveMinimum": 0,
290
- "maximum": 100
291
- }
292
- },
293
- "required": [
294
- "desktop",
295
- "mobile"
296
- ],
297
- "additionalProperties": false
298
- }
299
- ]
300
- },
301
- "maxAvailableHeightPercent": {
302
- "anyOf": [
303
- {
304
- "type": "number",
305
- "exclusiveMinimum": 0,
306
- "maximum": 100
307
- },
308
- {
309
- "type": "object",
310
- "properties": {
311
- "desktop": {
312
- "type": "number",
313
- "exclusiveMinimum": 0,
314
- "maximum": 100
315
- },
316
- "mobile": {
317
- "type": "number",
318
- "exclusiveMinimum": 0,
319
- "maximum": 100
320
- }
321
- },
322
- "required": [
323
- "desktop",
324
- "mobile"
325
- ],
326
- "additionalProperties": false
327
- }
328
- ]
329
- }
330
- },
331
- "additionalProperties": false
332
- },
333
- "typography": {
334
- "type": "object",
335
- "properties": {
336
- "fontFamily": {
337
- "type": "string",
338
- "minLength": 1
339
- },
340
- "preset": {
341
- "type": "string",
342
- "enum": [
343
- "quiet-gallery",
344
- "compact-gallery",
345
- "text-forward",
346
- "statement"
347
- ]
348
- },
349
- "overrides": {
350
- "type": "object",
351
- "properties": {
352
- "headings": {
353
- "type": "object",
354
- "properties": {
355
- "h1": {
356
- "type": "object",
357
- "properties": {
358
- "align": {
359
- "type": "object",
360
- "properties": {
361
- "desktop": {
362
- "type": "string",
363
- "enum": [
364
- "left",
365
- "center",
366
- "right"
367
- ]
368
- },
369
- "mobile": {
370
- "type": "string",
371
- "enum": [
372
- "left",
373
- "center",
374
- "right"
375
- ]
376
- }
377
- },
378
- "additionalProperties": false
379
- },
380
- "size": {
381
- "type": "string",
382
- "enum": [
383
- "small",
384
- "medium",
385
- "large",
386
- "xlarge"
387
- ]
388
- },
389
- "lineHeight": {
390
- "type": "number",
391
- "minimum": 1,
392
- "maximum": 3
393
- },
394
- "spacing": {
395
- "type": "string",
396
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|ch|lh))$"
397
- }
398
- },
399
- "additionalProperties": false
400
- },
401
- "h2": {
402
- "type": "object",
403
- "properties": {
404
- "align": {
405
- "type": "object",
406
- "properties": {
407
- "desktop": {
408
- "type": "string",
409
- "enum": [
410
- "left",
411
- "center",
412
- "right"
413
- ]
414
- },
415
- "mobile": {
416
- "type": "string",
417
- "enum": [
418
- "left",
419
- "center",
420
- "right"
421
- ]
422
- }
423
- },
424
- "additionalProperties": false
425
- },
426
- "size": {
427
- "type": "string",
428
- "enum": [
429
- "small",
430
- "medium",
431
- "large",
432
- "xlarge"
433
- ]
434
- },
435
- "lineHeight": {
436
- "type": "number",
437
- "minimum": 1,
438
- "maximum": 3
439
- },
440
- "spacing": {
441
- "type": "string",
442
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|ch|lh))$"
443
- }
444
- },
445
- "additionalProperties": false
446
- },
447
- "h3": {
448
- "type": "object",
449
- "properties": {
450
- "align": {
451
- "type": "object",
452
- "properties": {
453
- "desktop": {
454
- "type": "string",
455
- "enum": [
456
- "left",
457
- "center",
458
- "right"
459
- ]
460
- },
461
- "mobile": {
462
- "type": "string",
463
- "enum": [
464
- "left",
465
- "center",
466
- "right"
467
- ]
468
- }
469
- },
470
- "additionalProperties": false
471
- },
472
- "size": {
473
- "type": "string",
474
- "enum": [
475
- "small",
476
- "medium",
477
- "large",
478
- "xlarge"
479
- ]
480
- },
481
- "lineHeight": {
482
- "type": "number",
483
- "minimum": 1,
484
- "maximum": 3
485
- },
486
- "spacing": {
487
- "type": "string",
488
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|ch|lh))$"
489
- }
490
- },
491
- "additionalProperties": false
492
- },
493
- "h4": {
494
- "type": "object",
495
- "properties": {
496
- "align": {
497
- "type": "object",
498
- "properties": {
499
- "desktop": {
500
- "type": "string",
501
- "enum": [
502
- "left",
503
- "center",
504
- "right"
505
- ]
506
- },
507
- "mobile": {
508
- "type": "string",
509
- "enum": [
510
- "left",
511
- "center",
512
- "right"
513
- ]
514
- }
515
- },
516
- "additionalProperties": false
517
- },
518
- "size": {
519
- "type": "string",
520
- "enum": [
521
- "small",
522
- "medium",
523
- "large",
524
- "xlarge"
525
- ]
526
- },
527
- "lineHeight": {
528
- "type": "number",
529
- "minimum": 1,
530
- "maximum": 3
531
- },
532
- "spacing": {
533
- "type": "string",
534
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|ch|lh))$"
535
- }
536
- },
537
- "additionalProperties": false
538
- }
539
- },
540
- "additionalProperties": false
541
- },
542
- "body": {
543
- "type": "object",
544
- "properties": {
545
- "align": {
546
- "type": "object",
547
- "properties": {
548
- "desktop": {
549
- "type": "string",
550
- "enum": [
551
- "left",
552
- "center",
553
- "right"
554
- ]
555
- },
556
- "mobile": {
557
- "type": "string",
558
- "enum": [
559
- "left",
560
- "center",
561
- "right"
562
- ]
563
- }
564
- },
565
- "additionalProperties": false
566
- },
567
- "size": {
568
- "type": "string",
569
- "enum": [
570
- "small",
571
- "medium",
572
- "large",
573
- "xlarge"
574
- ]
575
- },
576
- "lineHeight": {
577
- "type": "number",
578
- "minimum": 1,
579
- "maximum": 3
580
- },
581
- "paragraphSpacing": {
582
- "type": "string",
583
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|ch|lh))$"
584
- }
585
- },
586
- "additionalProperties": false
587
- },
588
- "caption": {
589
- "type": "object",
590
- "properties": {
591
- "align": {
592
- "type": "object",
593
- "properties": {
594
- "desktop": {
595
- "type": "string",
596
- "enum": [
597
- "left",
598
- "center",
599
- "right"
600
- ]
601
- },
602
- "mobile": {
603
- "type": "string",
604
- "enum": [
605
- "left",
606
- "center",
607
- "right"
608
- ]
609
- }
610
- },
611
- "additionalProperties": false
612
- },
613
- "size": {
614
- "type": "string",
615
- "enum": [
616
- "small",
617
- "medium",
618
- "large",
619
- "xlarge"
620
- ]
621
- },
622
- "lineHeight": {
623
- "type": "number",
624
- "minimum": 1,
625
- "maximum": 3
626
- },
627
- "spacing": {
628
- "type": "string",
629
- "pattern": "^(?:0|(?:\\d+(?:\\.\\d+)?|\\.\\d+)(?:px|rem|em|ch|lh))$"
630
- }
631
- },
632
- "additionalProperties": false
633
- }
634
- },
635
- "additionalProperties": false
636
- }
637
- },
638
- "additionalProperties": false
639
- },
640
- "presentation": {
641
- "type": "object",
642
- "properties": {
643
- "backgroundColor": {
644
- "type": "string",
645
- "pattern": "^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$"
646
- },
647
- "textColor": {
648
- "type": "string",
649
- "pattern": "^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$"
650
- },
651
- "inlineStyles": {
652
- "type": "object",
653
- "propertyNames": {
654
- "type": "string",
655
- "pattern": "^[a-z][a-z0-9-]*$"
656
- },
657
- "additionalProperties": {
658
- "type": "object",
659
- "properties": {
660
- "color": {
661
- "type": "string",
662
- "pattern": "^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$"
663
- }
664
- },
665
- "required": [
666
- "color"
667
- ],
668
- "additionalProperties": false
669
- }
670
- }
671
- },
672
- "additionalProperties": false
673
- },
674
- "frame": {
675
- "type": "object",
676
- "properties": {
677
- "colors": {
678
- "anyOf": [
679
- {
680
- "type": "string",
681
- "enum": [
682
- "theme",
683
- "presentation"
684
- ]
685
- },
686
- {
687
- "type": "object",
688
- "properties": {
689
- "backgroundColor": {
690
- "type": "string",
691
- "pattern": "^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$"
692
- },
693
- "textColor": {
694
- "type": "string",
695
- "pattern": "^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$"
696
- }
697
- },
698
- "required": [
699
- "backgroundColor",
700
- "textColor"
701
- ],
702
- "additionalProperties": false
703
- }
704
- ]
705
- }
706
- },
707
- "additionalProperties": false
708
- },
709
- "$schema": {
710
- "type": "string"
711
- }
712
- },
713
- "additionalProperties": false
714
- }