@duongthiu/onex-core 0.1.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.
- package/README.md +428 -0
- package/THEME_API.md +681 -0
- package/dist/api-vuL1Eg5L.d.mts +2961 -0
- package/dist/api-vuL1Eg5L.d.ts +2961 -0
- package/dist/chunk-3SZX6LHT.js +244 -0
- package/dist/chunk-3SZX6LHT.js.map +1 -0
- package/dist/chunk-7EON6Q4L.mjs +8149 -0
- package/dist/chunk-7EON6Q4L.mjs.map +1 -0
- package/dist/chunk-WDY773GJ.js +8308 -0
- package/dist/chunk-WDY773GJ.js.map +1 -0
- package/dist/chunk-XE4EOKS4.mjs +239 -0
- package/dist/chunk-XE4EOKS4.mjs.map +1 -0
- package/dist/client.d.mts +1461 -0
- package/dist/client.d.ts +1461 -0
- package/dist/client.js +542 -0
- package/dist/client.js.map +1 -0
- package/dist/client.mjs +5 -0
- package/dist/client.mjs.map +1 -0
- package/dist/index.d.mts +125 -0
- package/dist/index.d.ts +125 -0
- package/dist/index.js +601 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +61 -0
- package/dist/index.mjs.map +1 -0
- package/dist/server.d.mts +70 -0
- package/dist/server.d.ts +70 -0
- package/dist/server.js +196 -0
- package/dist/server.js.map +1 -0
- package/dist/server.mjs +188 -0
- package/dist/server.mjs.map +1 -0
- package/package.json +113 -0
package/dist/index.js
ADDED
|
@@ -0,0 +1,601 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
var chunkWDY773GJ_js = require('./chunk-WDY773GJ.js');
|
|
5
|
+
var chunk3SZX6LHT_js = require('./chunk-3SZX6LHT.js');
|
|
6
|
+
var zod = require('zod');
|
|
7
|
+
|
|
8
|
+
var authorSchema = zod.z.object({
|
|
9
|
+
name: zod.z.string().min(1, "Author name is required"),
|
|
10
|
+
email: zod.z.string().email({ message: "Invalid email address" }).optional(),
|
|
11
|
+
url: zod.z.string().url({ message: "Invalid URL" }).optional()
|
|
12
|
+
});
|
|
13
|
+
var peerDependenciesSchema = zod.z.object({
|
|
14
|
+
react: zod.z.string().min(1, "React version is required"),
|
|
15
|
+
"react-dom": zod.z.string().min(1, "React DOM version is required"),
|
|
16
|
+
"@onex/core": zod.z.string().optional()
|
|
17
|
+
});
|
|
18
|
+
var previewSchema = zod.z.object({
|
|
19
|
+
thumbnail: zod.z.string().url({ message: "Thumbnail must be a valid URL" }).optional(),
|
|
20
|
+
screenshots: zod.z.array(zod.z.string().url({ message: "Screenshot URL is invalid" })).optional()
|
|
21
|
+
});
|
|
22
|
+
var exportsSchema = zod.z.object({
|
|
23
|
+
main: zod.z.string().min(1, "Main export path is required"),
|
|
24
|
+
types: zod.z.string().optional()
|
|
25
|
+
});
|
|
26
|
+
var themeManifestSchema = zod.z.object({
|
|
27
|
+
// Required fields
|
|
28
|
+
id: zod.z.string().min(3, "Theme ID must be at least 3 characters").max(50, "Theme ID must be at most 50 characters").regex(
|
|
29
|
+
/^[a-z0-9-]+$/,
|
|
30
|
+
"Theme ID must be lowercase letters, numbers, and hyphens only"
|
|
31
|
+
),
|
|
32
|
+
name: zod.z.string().min(1, "Theme name is required").max(100, "Theme name must be at most 100 characters"),
|
|
33
|
+
version: zod.z.string().regex(
|
|
34
|
+
/^\d+\.\d+\.\d+(-[a-z0-9.]+)?$/,
|
|
35
|
+
"Version must follow semver format (e.g., 1.0.0)"
|
|
36
|
+
),
|
|
37
|
+
author: authorSchema,
|
|
38
|
+
engine: zod.z.string().min(1, "Engine version is required").regex(
|
|
39
|
+
/^[\^~>=<]*\d+\.\d+\.\d+/,
|
|
40
|
+
"Engine must be a valid semver range (e.g., ^1.0.0)"
|
|
41
|
+
),
|
|
42
|
+
peerDependencies: peerDependenciesSchema,
|
|
43
|
+
sections: zod.z.array(zod.z.string().min(1)).min(1, "At least one section is required"),
|
|
44
|
+
config: zod.z.record(zod.z.string(), zod.z.any()),
|
|
45
|
+
// ThemeConfig validation done separately
|
|
46
|
+
exports: exportsSchema,
|
|
47
|
+
// Optional fields
|
|
48
|
+
description: zod.z.string().max(500).optional(),
|
|
49
|
+
preview: previewSchema.optional(),
|
|
50
|
+
license: zod.z.string().optional(),
|
|
51
|
+
repository: zod.z.string().url({ message: "Repository must be a valid URL" }).optional(),
|
|
52
|
+
tags: zod.z.array(zod.z.string()).optional()
|
|
53
|
+
});
|
|
54
|
+
function validateThemeManifest(manifest) {
|
|
55
|
+
return themeManifestSchema.safeParse(manifest);
|
|
56
|
+
}
|
|
57
|
+
function assertValidThemeManifest(manifest) {
|
|
58
|
+
themeManifestSchema.parse(manifest);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
Object.defineProperty(exports, "AccordionComponent", {
|
|
62
|
+
enumerable: true,
|
|
63
|
+
get: function () { return chunkWDY773GJ_js.AccordionComponent; }
|
|
64
|
+
});
|
|
65
|
+
Object.defineProperty(exports, "AlertComponent", {
|
|
66
|
+
enumerable: true,
|
|
67
|
+
get: function () { return chunkWDY773GJ_js.AlertComponent; }
|
|
68
|
+
});
|
|
69
|
+
Object.defineProperty(exports, "BadgeComponent", {
|
|
70
|
+
enumerable: true,
|
|
71
|
+
get: function () { return chunkWDY773GJ_js.BadgeComponent; }
|
|
72
|
+
});
|
|
73
|
+
Object.defineProperty(exports, "BlockListRenderer", {
|
|
74
|
+
enumerable: true,
|
|
75
|
+
get: function () { return chunkWDY773GJ_js.BlockListRenderer; }
|
|
76
|
+
});
|
|
77
|
+
Object.defineProperty(exports, "BlockRenderer", {
|
|
78
|
+
enumerable: true,
|
|
79
|
+
get: function () { return chunkWDY773GJ_js.BlockRenderer; }
|
|
80
|
+
});
|
|
81
|
+
Object.defineProperty(exports, "ButtonComponent", {
|
|
82
|
+
enumerable: true,
|
|
83
|
+
get: function () { return chunkWDY773GJ_js.ButtonComponent; }
|
|
84
|
+
});
|
|
85
|
+
Object.defineProperty(exports, "COMPONENT_CATEGORIES", {
|
|
86
|
+
enumerable: true,
|
|
87
|
+
get: function () { return chunkWDY773GJ_js.COMPONENT_CATEGORIES; }
|
|
88
|
+
});
|
|
89
|
+
Object.defineProperty(exports, "COMPONENT_TYPES", {
|
|
90
|
+
enumerable: true,
|
|
91
|
+
get: function () { return chunkWDY773GJ_js.COMPONENT_TYPES; }
|
|
92
|
+
});
|
|
93
|
+
Object.defineProperty(exports, "CardComponent", {
|
|
94
|
+
enumerable: true,
|
|
95
|
+
get: function () { return chunkWDY773GJ_js.CardComponent; }
|
|
96
|
+
});
|
|
97
|
+
Object.defineProperty(exports, "CartProvider", {
|
|
98
|
+
enumerable: true,
|
|
99
|
+
get: function () { return chunkWDY773GJ_js.CartProvider; }
|
|
100
|
+
});
|
|
101
|
+
Object.defineProperty(exports, "CheckboxComponent", {
|
|
102
|
+
enumerable: true,
|
|
103
|
+
get: function () { return chunkWDY773GJ_js.CheckboxComponent; }
|
|
104
|
+
});
|
|
105
|
+
Object.defineProperty(exports, "CodeComponent", {
|
|
106
|
+
enumerable: true,
|
|
107
|
+
get: function () { return chunkWDY773GJ_js.CodeComponent; }
|
|
108
|
+
});
|
|
109
|
+
Object.defineProperty(exports, "ColumnsComponent", {
|
|
110
|
+
enumerable: true,
|
|
111
|
+
get: function () { return chunkWDY773GJ_js.ColumnsComponent; }
|
|
112
|
+
});
|
|
113
|
+
Object.defineProperty(exports, "ComponentListRenderer", {
|
|
114
|
+
enumerable: true,
|
|
115
|
+
get: function () { return chunkWDY773GJ_js.ComponentListRenderer; }
|
|
116
|
+
});
|
|
117
|
+
Object.defineProperty(exports, "ComponentRegistry", {
|
|
118
|
+
enumerable: true,
|
|
119
|
+
get: function () { return chunkWDY773GJ_js.ComponentRegistry; }
|
|
120
|
+
});
|
|
121
|
+
Object.defineProperty(exports, "ComponentRenderer", {
|
|
122
|
+
enumerable: true,
|
|
123
|
+
get: function () { return chunkWDY773GJ_js.ComponentRenderer; }
|
|
124
|
+
});
|
|
125
|
+
Object.defineProperty(exports, "ContainerComponent", {
|
|
126
|
+
enumerable: true,
|
|
127
|
+
get: function () { return chunkWDY773GJ_js.ContainerComponent; }
|
|
128
|
+
});
|
|
129
|
+
Object.defineProperty(exports, "DEFAULT_INSPECTOR_CONFIG", {
|
|
130
|
+
enumerable: true,
|
|
131
|
+
get: function () { return chunkWDY773GJ_js.DEFAULT_INSPECTOR_CONFIG; }
|
|
132
|
+
});
|
|
133
|
+
Object.defineProperty(exports, "DividerComponent", {
|
|
134
|
+
enumerable: true,
|
|
135
|
+
get: function () { return chunkWDY773GJ_js.DividerComponent; }
|
|
136
|
+
});
|
|
137
|
+
Object.defineProperty(exports, "FIELD_TYPES", {
|
|
138
|
+
enumerable: true,
|
|
139
|
+
get: function () { return chunkWDY773GJ_js.FIELD_TYPES; }
|
|
140
|
+
});
|
|
141
|
+
Object.defineProperty(exports, "FullWidthSection", {
|
|
142
|
+
enumerable: true,
|
|
143
|
+
get: function () { return chunkWDY773GJ_js.FullWidthSection; }
|
|
144
|
+
});
|
|
145
|
+
Object.defineProperty(exports, "GalleryComponent", {
|
|
146
|
+
enumerable: true,
|
|
147
|
+
get: function () { return chunkWDY773GJ_js.GalleryComponent; }
|
|
148
|
+
});
|
|
149
|
+
Object.defineProperty(exports, "GridComponent", {
|
|
150
|
+
enumerable: true,
|
|
151
|
+
get: function () { return chunkWDY773GJ_js.GridComponent; }
|
|
152
|
+
});
|
|
153
|
+
Object.defineProperty(exports, "GridContainer", {
|
|
154
|
+
enumerable: true,
|
|
155
|
+
get: function () { return chunkWDY773GJ_js.GridContainer; }
|
|
156
|
+
});
|
|
157
|
+
Object.defineProperty(exports, "HeadingComponent", {
|
|
158
|
+
enumerable: true,
|
|
159
|
+
get: function () { return chunkWDY773GJ_js.HeadingComponent; }
|
|
160
|
+
});
|
|
161
|
+
Object.defineProperty(exports, "IconComponent", {
|
|
162
|
+
enumerable: true,
|
|
163
|
+
get: function () { return chunkWDY773GJ_js.IconComponent; }
|
|
164
|
+
});
|
|
165
|
+
Object.defineProperty(exports, "ImageComponent", {
|
|
166
|
+
enumerable: true,
|
|
167
|
+
get: function () { return chunkWDY773GJ_js.ImageComponent; }
|
|
168
|
+
});
|
|
169
|
+
Object.defineProperty(exports, "InputComponent", {
|
|
170
|
+
enumerable: true,
|
|
171
|
+
get: function () { return chunkWDY773GJ_js.InputComponent; }
|
|
172
|
+
});
|
|
173
|
+
Object.defineProperty(exports, "LinkComponent", {
|
|
174
|
+
enumerable: true,
|
|
175
|
+
get: function () { return chunkWDY773GJ_js.LinkComponent; }
|
|
176
|
+
});
|
|
177
|
+
Object.defineProperty(exports, "ListComponent", {
|
|
178
|
+
enumerable: true,
|
|
179
|
+
get: function () { return chunkWDY773GJ_js.ListComponent; }
|
|
180
|
+
});
|
|
181
|
+
Object.defineProperty(exports, "MapComponent", {
|
|
182
|
+
enumerable: true,
|
|
183
|
+
get: function () { return chunkWDY773GJ_js.MapComponent; }
|
|
184
|
+
});
|
|
185
|
+
Object.defineProperty(exports, "PageDataProvider", {
|
|
186
|
+
enumerable: true,
|
|
187
|
+
get: function () { return chunkWDY773GJ_js.PageDataProvider; }
|
|
188
|
+
});
|
|
189
|
+
Object.defineProperty(exports, "ParagraphComponent", {
|
|
190
|
+
enumerable: true,
|
|
191
|
+
get: function () { return chunkWDY773GJ_js.ParagraphComponent; }
|
|
192
|
+
});
|
|
193
|
+
Object.defineProperty(exports, "ProgressComponent", {
|
|
194
|
+
enumerable: true,
|
|
195
|
+
get: function () { return chunkWDY773GJ_js.ProgressComponent; }
|
|
196
|
+
});
|
|
197
|
+
Object.defineProperty(exports, "QuoteComponent", {
|
|
198
|
+
enumerable: true,
|
|
199
|
+
get: function () { return chunkWDY773GJ_js.QuoteComponent; }
|
|
200
|
+
});
|
|
201
|
+
Object.defineProperty(exports, "RatingComponent", {
|
|
202
|
+
enumerable: true,
|
|
203
|
+
get: function () { return chunkWDY773GJ_js.RatingComponent; }
|
|
204
|
+
});
|
|
205
|
+
Object.defineProperty(exports, "SECTION_CATEGORIES", {
|
|
206
|
+
enumerable: true,
|
|
207
|
+
get: function () { return chunkWDY773GJ_js.SECTION_CATEGORIES; }
|
|
208
|
+
});
|
|
209
|
+
Object.defineProperty(exports, "SectionListRenderer", {
|
|
210
|
+
enumerable: true,
|
|
211
|
+
get: function () { return chunkWDY773GJ_js.SectionListRenderer; }
|
|
212
|
+
});
|
|
213
|
+
Object.defineProperty(exports, "SectionRenderer", {
|
|
214
|
+
enumerable: true,
|
|
215
|
+
get: function () { return chunkWDY773GJ_js.SectionRenderer; }
|
|
216
|
+
});
|
|
217
|
+
Object.defineProperty(exports, "SelectComponent", {
|
|
218
|
+
enumerable: true,
|
|
219
|
+
get: function () { return chunkWDY773GJ_js.SelectComponent; }
|
|
220
|
+
});
|
|
221
|
+
Object.defineProperty(exports, "SpacerComponent", {
|
|
222
|
+
enumerable: true,
|
|
223
|
+
get: function () { return chunkWDY773GJ_js.SpacerComponent; }
|
|
224
|
+
});
|
|
225
|
+
Object.defineProperty(exports, "TableComponent", {
|
|
226
|
+
enumerable: true,
|
|
227
|
+
get: function () { return chunkWDY773GJ_js.TableComponent; }
|
|
228
|
+
});
|
|
229
|
+
Object.defineProperty(exports, "TabsComponent", {
|
|
230
|
+
enumerable: true,
|
|
231
|
+
get: function () { return chunkWDY773GJ_js.TabsComponent; }
|
|
232
|
+
});
|
|
233
|
+
Object.defineProperty(exports, "TextareaComponent", {
|
|
234
|
+
enumerable: true,
|
|
235
|
+
get: function () { return chunkWDY773GJ_js.TextareaComponent; }
|
|
236
|
+
});
|
|
237
|
+
Object.defineProperty(exports, "ThemeContextProvider", {
|
|
238
|
+
enumerable: true,
|
|
239
|
+
get: function () { return chunkWDY773GJ_js.ThemeContextProvider; }
|
|
240
|
+
});
|
|
241
|
+
Object.defineProperty(exports, "TimerComponent", {
|
|
242
|
+
enumerable: true,
|
|
243
|
+
get: function () { return chunkWDY773GJ_js.TimerComponent; }
|
|
244
|
+
});
|
|
245
|
+
Object.defineProperty(exports, "VideoComponent", {
|
|
246
|
+
enumerable: true,
|
|
247
|
+
get: function () { return chunkWDY773GJ_js.VideoComponent; }
|
|
248
|
+
});
|
|
249
|
+
Object.defineProperty(exports, "ViewportProvider", {
|
|
250
|
+
enumerable: true,
|
|
251
|
+
get: function () { return chunkWDY773GJ_js.ViewportProvider; }
|
|
252
|
+
});
|
|
253
|
+
Object.defineProperty(exports, "accordionComponentDefinition", {
|
|
254
|
+
enumerable: true,
|
|
255
|
+
get: function () { return chunkWDY773GJ_js.accordionComponentDefinition; }
|
|
256
|
+
});
|
|
257
|
+
Object.defineProperty(exports, "alertComponentDefinition", {
|
|
258
|
+
enumerable: true,
|
|
259
|
+
get: function () { return chunkWDY773GJ_js.alertComponentDefinition; }
|
|
260
|
+
});
|
|
261
|
+
Object.defineProperty(exports, "animationFieldDefinitions", {
|
|
262
|
+
enumerable: true,
|
|
263
|
+
get: function () { return chunkWDY773GJ_js.animationFieldDefinitions; }
|
|
264
|
+
});
|
|
265
|
+
Object.defineProperty(exports, "badgeComponentDefinition", {
|
|
266
|
+
enumerable: true,
|
|
267
|
+
get: function () { return chunkWDY773GJ_js.badgeComponentDefinition; }
|
|
268
|
+
});
|
|
269
|
+
Object.defineProperty(exports, "blockRegistry", {
|
|
270
|
+
enumerable: true,
|
|
271
|
+
get: function () { return chunkWDY773GJ_js.blockRegistry; }
|
|
272
|
+
});
|
|
273
|
+
Object.defineProperty(exports, "buttonComponentDefinition", {
|
|
274
|
+
enumerable: true,
|
|
275
|
+
get: function () { return chunkWDY773GJ_js.buttonComponentDefinition; }
|
|
276
|
+
});
|
|
277
|
+
Object.defineProperty(exports, "cardComponentDefinition", {
|
|
278
|
+
enumerable: true,
|
|
279
|
+
get: function () { return chunkWDY773GJ_js.cardComponentDefinition; }
|
|
280
|
+
});
|
|
281
|
+
Object.defineProperty(exports, "checkboxComponentDefinition", {
|
|
282
|
+
enumerable: true,
|
|
283
|
+
get: function () { return chunkWDY773GJ_js.checkboxComponentDefinition; }
|
|
284
|
+
});
|
|
285
|
+
Object.defineProperty(exports, "cn", {
|
|
286
|
+
enumerable: true,
|
|
287
|
+
get: function () { return chunkWDY773GJ_js.cn; }
|
|
288
|
+
});
|
|
289
|
+
Object.defineProperty(exports, "codeComponentDefinition", {
|
|
290
|
+
enumerable: true,
|
|
291
|
+
get: function () { return chunkWDY773GJ_js.codeComponentDefinition; }
|
|
292
|
+
});
|
|
293
|
+
Object.defineProperty(exports, "columnsComponentDefinition", {
|
|
294
|
+
enumerable: true,
|
|
295
|
+
get: function () { return chunkWDY773GJ_js.columnsComponentDefinition; }
|
|
296
|
+
});
|
|
297
|
+
Object.defineProperty(exports, "componentRegistry", {
|
|
298
|
+
enumerable: true,
|
|
299
|
+
get: function () { return chunkWDY773GJ_js.componentRegistry; }
|
|
300
|
+
});
|
|
301
|
+
Object.defineProperty(exports, "containerComponentDefinition", {
|
|
302
|
+
enumerable: true,
|
|
303
|
+
get: function () { return chunkWDY773GJ_js.containerComponentDefinition; }
|
|
304
|
+
});
|
|
305
|
+
Object.defineProperty(exports, "countEnabledItems", {
|
|
306
|
+
enumerable: true,
|
|
307
|
+
get: function () { return chunkWDY773GJ_js.countEnabledItems; }
|
|
308
|
+
});
|
|
309
|
+
Object.defineProperty(exports, "createBlockRegistry", {
|
|
310
|
+
enumerable: true,
|
|
311
|
+
get: function () { return chunkWDY773GJ_js.createBlockRegistry; }
|
|
312
|
+
});
|
|
313
|
+
Object.defineProperty(exports, "defaultAnimationSettings", {
|
|
314
|
+
enumerable: true,
|
|
315
|
+
get: function () { return chunkWDY773GJ_js.defaultAnimationSettings; }
|
|
316
|
+
});
|
|
317
|
+
Object.defineProperty(exports, "dividerComponentDefinition", {
|
|
318
|
+
enumerable: true,
|
|
319
|
+
get: function () { return chunkWDY773GJ_js.dividerComponentDefinition; }
|
|
320
|
+
});
|
|
321
|
+
Object.defineProperty(exports, "filterEnabledBlocks", {
|
|
322
|
+
enumerable: true,
|
|
323
|
+
get: function () { return chunkWDY773GJ_js.filterEnabledBlocks; }
|
|
324
|
+
});
|
|
325
|
+
Object.defineProperty(exports, "filterEnabledComponents", {
|
|
326
|
+
enumerable: true,
|
|
327
|
+
get: function () { return chunkWDY773GJ_js.filterEnabledComponents; }
|
|
328
|
+
});
|
|
329
|
+
Object.defineProperty(exports, "findBlockInSection", {
|
|
330
|
+
enumerable: true,
|
|
331
|
+
get: function () { return chunkWDY773GJ_js.findBlockInSection; }
|
|
332
|
+
});
|
|
333
|
+
Object.defineProperty(exports, "findComponentInSection", {
|
|
334
|
+
enumerable: true,
|
|
335
|
+
get: function () { return chunkWDY773GJ_js.findComponentInSection; }
|
|
336
|
+
});
|
|
337
|
+
Object.defineProperty(exports, "formatBlockName", {
|
|
338
|
+
enumerable: true,
|
|
339
|
+
get: function () { return chunkWDY773GJ_js.formatBlockName; }
|
|
340
|
+
});
|
|
341
|
+
Object.defineProperty(exports, "galleryComponentDefinition", {
|
|
342
|
+
enumerable: true,
|
|
343
|
+
get: function () { return chunkWDY773GJ_js.galleryComponentDefinition; }
|
|
344
|
+
});
|
|
345
|
+
Object.defineProperty(exports, "generateBlockId", {
|
|
346
|
+
enumerable: true,
|
|
347
|
+
get: function () { return chunkWDY773GJ_js.generateBlockId; }
|
|
348
|
+
});
|
|
349
|
+
Object.defineProperty(exports, "generateHandle", {
|
|
350
|
+
enumerable: true,
|
|
351
|
+
get: function () { return chunkWDY773GJ_js.generateHandle; }
|
|
352
|
+
});
|
|
353
|
+
Object.defineProperty(exports, "generateId", {
|
|
354
|
+
enumerable: true,
|
|
355
|
+
get: function () { return chunkWDY773GJ_js.generateId; }
|
|
356
|
+
});
|
|
357
|
+
Object.defineProperty(exports, "generatePageId", {
|
|
358
|
+
enumerable: true,
|
|
359
|
+
get: function () { return chunkWDY773GJ_js.generatePageId; }
|
|
360
|
+
});
|
|
361
|
+
Object.defineProperty(exports, "generateSectionId", {
|
|
362
|
+
enumerable: true,
|
|
363
|
+
get: function () { return chunkWDY773GJ_js.generateSectionId; }
|
|
364
|
+
});
|
|
365
|
+
Object.defineProperty(exports, "generateThemeId", {
|
|
366
|
+
enumerable: true,
|
|
367
|
+
get: function () { return chunkWDY773GJ_js.generateThemeId; }
|
|
368
|
+
});
|
|
369
|
+
Object.defineProperty(exports, "getActiveBlocks", {
|
|
370
|
+
enumerable: true,
|
|
371
|
+
get: function () { return chunkWDY773GJ_js.getActiveBlocks; }
|
|
372
|
+
});
|
|
373
|
+
Object.defineProperty(exports, "getActiveComponents", {
|
|
374
|
+
enumerable: true,
|
|
375
|
+
get: function () { return chunkWDY773GJ_js.getActiveComponents; }
|
|
376
|
+
});
|
|
377
|
+
Object.defineProperty(exports, "getBlockPath", {
|
|
378
|
+
enumerable: true,
|
|
379
|
+
get: function () { return chunkWDY773GJ_js.getBlockPath; }
|
|
380
|
+
});
|
|
381
|
+
Object.defineProperty(exports, "getComponentPath", {
|
|
382
|
+
enumerable: true,
|
|
383
|
+
get: function () { return chunkWDY773GJ_js.getComponentPath; }
|
|
384
|
+
});
|
|
385
|
+
Object.defineProperty(exports, "getComponentValues", {
|
|
386
|
+
enumerable: true,
|
|
387
|
+
get: function () { return chunkWDY773GJ_js.getComponentValues; }
|
|
388
|
+
});
|
|
389
|
+
Object.defineProperty(exports, "getComponentsByType", {
|
|
390
|
+
enumerable: true,
|
|
391
|
+
get: function () { return chunkWDY773GJ_js.getComponentsByType; }
|
|
392
|
+
});
|
|
393
|
+
Object.defineProperty(exports, "getElementLabel", {
|
|
394
|
+
enumerable: true,
|
|
395
|
+
get: function () { return chunkWDY773GJ_js.getElementLabel; }
|
|
396
|
+
});
|
|
397
|
+
Object.defineProperty(exports, "getFirstComponentByType", {
|
|
398
|
+
enumerable: true,
|
|
399
|
+
get: function () { return chunkWDY773GJ_js.getFirstComponentByType; }
|
|
400
|
+
});
|
|
401
|
+
Object.defineProperty(exports, "getSectionValues", {
|
|
402
|
+
enumerable: true,
|
|
403
|
+
get: function () { return chunkWDY773GJ_js.getSectionValues; }
|
|
404
|
+
});
|
|
405
|
+
Object.defineProperty(exports, "getSelectionColor", {
|
|
406
|
+
enumerable: true,
|
|
407
|
+
get: function () { return chunkWDY773GJ_js.getSelectionColor; }
|
|
408
|
+
});
|
|
409
|
+
Object.defineProperty(exports, "gridComponentDefinition", {
|
|
410
|
+
enumerable: true,
|
|
411
|
+
get: function () { return chunkWDY773GJ_js.gridComponentDefinition; }
|
|
412
|
+
});
|
|
413
|
+
Object.defineProperty(exports, "groupBySlot", {
|
|
414
|
+
enumerable: true,
|
|
415
|
+
get: function () { return chunkWDY773GJ_js.groupBySlot; }
|
|
416
|
+
});
|
|
417
|
+
Object.defineProperty(exports, "hasComponentType", {
|
|
418
|
+
enumerable: true,
|
|
419
|
+
get: function () { return chunkWDY773GJ_js.hasComponentType; }
|
|
420
|
+
});
|
|
421
|
+
Object.defineProperty(exports, "hasEnabledItems", {
|
|
422
|
+
enumerable: true,
|
|
423
|
+
get: function () { return chunkWDY773GJ_js.hasEnabledItems; }
|
|
424
|
+
});
|
|
425
|
+
Object.defineProperty(exports, "headingComponentDefinition", {
|
|
426
|
+
enumerable: true,
|
|
427
|
+
get: function () { return chunkWDY773GJ_js.headingComponentDefinition; }
|
|
428
|
+
});
|
|
429
|
+
Object.defineProperty(exports, "iconComponentDefinition", {
|
|
430
|
+
enumerable: true,
|
|
431
|
+
get: function () { return chunkWDY773GJ_js.iconComponentDefinition; }
|
|
432
|
+
});
|
|
433
|
+
Object.defineProperty(exports, "imageComponentDefinition", {
|
|
434
|
+
enumerable: true,
|
|
435
|
+
get: function () { return chunkWDY773GJ_js.imageComponentDefinition; }
|
|
436
|
+
});
|
|
437
|
+
Object.defineProperty(exports, "inputComponentDefinition", {
|
|
438
|
+
enumerable: true,
|
|
439
|
+
get: function () { return chunkWDY773GJ_js.inputComponentDefinition; }
|
|
440
|
+
});
|
|
441
|
+
Object.defineProperty(exports, "linkComponentDefinition", {
|
|
442
|
+
enumerable: true,
|
|
443
|
+
get: function () { return chunkWDY773GJ_js.linkComponentDefinition; }
|
|
444
|
+
});
|
|
445
|
+
Object.defineProperty(exports, "listComponentDefinition", {
|
|
446
|
+
enumerable: true,
|
|
447
|
+
get: function () { return chunkWDY773GJ_js.listComponentDefinition; }
|
|
448
|
+
});
|
|
449
|
+
Object.defineProperty(exports, "mapComponentDefinition", {
|
|
450
|
+
enumerable: true,
|
|
451
|
+
get: function () { return chunkWDY773GJ_js.mapComponentDefinition; }
|
|
452
|
+
});
|
|
453
|
+
Object.defineProperty(exports, "paragraphComponentDefinition", {
|
|
454
|
+
enumerable: true,
|
|
455
|
+
get: function () { return chunkWDY773GJ_js.paragraphComponentDefinition; }
|
|
456
|
+
});
|
|
457
|
+
Object.defineProperty(exports, "progressComponentDefinition", {
|
|
458
|
+
enumerable: true,
|
|
459
|
+
get: function () { return chunkWDY773GJ_js.progressComponentDefinition; }
|
|
460
|
+
});
|
|
461
|
+
Object.defineProperty(exports, "quoteComponentDefinition", {
|
|
462
|
+
enumerable: true,
|
|
463
|
+
get: function () { return chunkWDY773GJ_js.quoteComponentDefinition; }
|
|
464
|
+
});
|
|
465
|
+
Object.defineProperty(exports, "ratingComponentDefinition", {
|
|
466
|
+
enumerable: true,
|
|
467
|
+
get: function () { return chunkWDY773GJ_js.ratingComponentDefinition; }
|
|
468
|
+
});
|
|
469
|
+
Object.defineProperty(exports, "removeNestedBlock", {
|
|
470
|
+
enumerable: true,
|
|
471
|
+
get: function () { return chunkWDY773GJ_js.removeNestedBlock; }
|
|
472
|
+
});
|
|
473
|
+
Object.defineProperty(exports, "renderBlock", {
|
|
474
|
+
enumerable: true,
|
|
475
|
+
get: function () { return chunkWDY773GJ_js.renderBlock; }
|
|
476
|
+
});
|
|
477
|
+
Object.defineProperty(exports, "renderSection", {
|
|
478
|
+
enumerable: true,
|
|
479
|
+
get: function () { return chunkWDY773GJ_js.renderSection; }
|
|
480
|
+
});
|
|
481
|
+
Object.defineProperty(exports, "selectComponentDefinition", {
|
|
482
|
+
enumerable: true,
|
|
483
|
+
get: function () { return chunkWDY773GJ_js.selectComponentDefinition; }
|
|
484
|
+
});
|
|
485
|
+
Object.defineProperty(exports, "sortBlocks", {
|
|
486
|
+
enumerable: true,
|
|
487
|
+
get: function () { return chunkWDY773GJ_js.sortBlocks; }
|
|
488
|
+
});
|
|
489
|
+
Object.defineProperty(exports, "sortComponents", {
|
|
490
|
+
enumerable: true,
|
|
491
|
+
get: function () { return chunkWDY773GJ_js.sortComponents; }
|
|
492
|
+
});
|
|
493
|
+
Object.defineProperty(exports, "spacerComponentDefinition", {
|
|
494
|
+
enumerable: true,
|
|
495
|
+
get: function () { return chunkWDY773GJ_js.spacerComponentDefinition; }
|
|
496
|
+
});
|
|
497
|
+
Object.defineProperty(exports, "tableComponentDefinition", {
|
|
498
|
+
enumerable: true,
|
|
499
|
+
get: function () { return chunkWDY773GJ_js.tableComponentDefinition; }
|
|
500
|
+
});
|
|
501
|
+
Object.defineProperty(exports, "tabsComponentDefinition", {
|
|
502
|
+
enumerable: true,
|
|
503
|
+
get: function () { return chunkWDY773GJ_js.tabsComponentDefinition; }
|
|
504
|
+
});
|
|
505
|
+
Object.defineProperty(exports, "textareaComponentDefinition", {
|
|
506
|
+
enumerable: true,
|
|
507
|
+
get: function () { return chunkWDY773GJ_js.textareaComponentDefinition; }
|
|
508
|
+
});
|
|
509
|
+
Object.defineProperty(exports, "timerComponentDefinition", {
|
|
510
|
+
enumerable: true,
|
|
511
|
+
get: function () { return chunkWDY773GJ_js.timerComponentDefinition; }
|
|
512
|
+
});
|
|
513
|
+
Object.defineProperty(exports, "toComponentInstance", {
|
|
514
|
+
enumerable: true,
|
|
515
|
+
get: function () { return chunkWDY773GJ_js.toComponentInstance; }
|
|
516
|
+
});
|
|
517
|
+
Object.defineProperty(exports, "updateNestedBlock", {
|
|
518
|
+
enumerable: true,
|
|
519
|
+
get: function () { return chunkWDY773GJ_js.updateNestedBlock; }
|
|
520
|
+
});
|
|
521
|
+
Object.defineProperty(exports, "updateNestedComponent", {
|
|
522
|
+
enumerable: true,
|
|
523
|
+
get: function () { return chunkWDY773GJ_js.updateNestedComponent; }
|
|
524
|
+
});
|
|
525
|
+
Object.defineProperty(exports, "useCart", {
|
|
526
|
+
enumerable: true,
|
|
527
|
+
get: function () { return chunkWDY773GJ_js.useCart; }
|
|
528
|
+
});
|
|
529
|
+
Object.defineProperty(exports, "useComponentInstance", {
|
|
530
|
+
enumerable: true,
|
|
531
|
+
get: function () { return chunkWDY773GJ_js.useComponentInstance; }
|
|
532
|
+
});
|
|
533
|
+
Object.defineProperty(exports, "useComponentRegistration", {
|
|
534
|
+
enumerable: true,
|
|
535
|
+
get: function () { return chunkWDY773GJ_js.useComponentRegistration; }
|
|
536
|
+
});
|
|
537
|
+
Object.defineProperty(exports, "usePageData", {
|
|
538
|
+
enumerable: true,
|
|
539
|
+
get: function () { return chunkWDY773GJ_js.usePageData; }
|
|
540
|
+
});
|
|
541
|
+
Object.defineProperty(exports, "useResponsiveClass", {
|
|
542
|
+
enumerable: true,
|
|
543
|
+
get: function () { return chunkWDY773GJ_js.useResponsiveClass; }
|
|
544
|
+
});
|
|
545
|
+
Object.defineProperty(exports, "useThemeContext", {
|
|
546
|
+
enumerable: true,
|
|
547
|
+
get: function () { return chunkWDY773GJ_js.useThemeContext; }
|
|
548
|
+
});
|
|
549
|
+
Object.defineProperty(exports, "useViewport", {
|
|
550
|
+
enumerable: true,
|
|
551
|
+
get: function () { return chunkWDY773GJ_js.useViewport; }
|
|
552
|
+
});
|
|
553
|
+
Object.defineProperty(exports, "useWebsiteSettings", {
|
|
554
|
+
enumerable: true,
|
|
555
|
+
get: function () { return chunkWDY773GJ_js.useWebsiteSettings; }
|
|
556
|
+
});
|
|
557
|
+
Object.defineProperty(exports, "validateComponent", {
|
|
558
|
+
enumerable: true,
|
|
559
|
+
get: function () { return chunkWDY773GJ_js.validateComponent; }
|
|
560
|
+
});
|
|
561
|
+
Object.defineProperty(exports, "validateContent", {
|
|
562
|
+
enumerable: true,
|
|
563
|
+
get: function () { return chunkWDY773GJ_js.validateContent; }
|
|
564
|
+
});
|
|
565
|
+
Object.defineProperty(exports, "validateSection", {
|
|
566
|
+
enumerable: true,
|
|
567
|
+
get: function () { return chunkWDY773GJ_js.validateSection; }
|
|
568
|
+
});
|
|
569
|
+
Object.defineProperty(exports, "validateSettings", {
|
|
570
|
+
enumerable: true,
|
|
571
|
+
get: function () { return chunkWDY773GJ_js.validateSettings; }
|
|
572
|
+
});
|
|
573
|
+
Object.defineProperty(exports, "validateStyle", {
|
|
574
|
+
enumerable: true,
|
|
575
|
+
get: function () { return chunkWDY773GJ_js.validateStyle; }
|
|
576
|
+
});
|
|
577
|
+
Object.defineProperty(exports, "version", {
|
|
578
|
+
enumerable: true,
|
|
579
|
+
get: function () { return chunkWDY773GJ_js.version; }
|
|
580
|
+
});
|
|
581
|
+
Object.defineProperty(exports, "videoComponentDefinition", {
|
|
582
|
+
enumerable: true,
|
|
583
|
+
get: function () { return chunkWDY773GJ_js.videoComponentDefinition; }
|
|
584
|
+
});
|
|
585
|
+
Object.defineProperty(exports, "createSectionRegistry", {
|
|
586
|
+
enumerable: true,
|
|
587
|
+
get: function () { return chunk3SZX6LHT_js.createSectionRegistry; }
|
|
588
|
+
});
|
|
589
|
+
Object.defineProperty(exports, "sectionRegistry", {
|
|
590
|
+
enumerable: true,
|
|
591
|
+
get: function () { return chunk3SZX6LHT_js.sectionRegistry; }
|
|
592
|
+
});
|
|
593
|
+
exports.assertValidThemeManifest = assertValidThemeManifest;
|
|
594
|
+
exports.authorSchema = authorSchema;
|
|
595
|
+
exports.exportsSchema = exportsSchema;
|
|
596
|
+
exports.peerDependenciesSchema = peerDependenciesSchema;
|
|
597
|
+
exports.previewSchema = previewSchema;
|
|
598
|
+
exports.themeManifestSchema = themeManifestSchema;
|
|
599
|
+
exports.validateThemeManifest = validateThemeManifest;
|
|
600
|
+
//# sourceMappingURL=index.js.map
|
|
601
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/schemas/theme-manifest.schema.ts"],"names":["z"],"mappings":"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","file":"index.js","sourcesContent":["/**\n * Zod schemas for ThemeManifest validation\n * Used for runtime validation of uploaded theme bundles\n */\n\nimport { z } from \"zod\";\n\n/**\n * Author information schema\n */\nexport const authorSchema = z.object({\n name: z.string().min(1, \"Author name is required\"),\n email: z.string().email({ message: \"Invalid email address\" }).optional(),\n url: z.string().url({ message: \"Invalid URL\" }).optional(),\n});\n\n/**\n * Peer dependencies schema\n */\nexport const peerDependenciesSchema = z.object({\n react: z.string().min(1, \"React version is required\"),\n \"react-dom\": z.string().min(1, \"React DOM version is required\"),\n \"@onex/core\": z.string().optional(),\n});\n\n/**\n * Theme preview schema\n */\nexport const previewSchema = z.object({\n thumbnail: z.string().url({ message: \"Thumbnail must be a valid URL\" }).optional(),\n screenshots: z.array(z.string().url({ message: \"Screenshot URL is invalid\" })).optional(),\n});\n\n/**\n * Export paths schema\n */\nexport const exportsSchema = z.object({\n main: z.string().min(1, \"Main export path is required\"),\n types: z.string().optional(),\n});\n\n/**\n * Theme manifest schema\n * Validates the manifest.json file in theme bundles\n */\nexport const themeManifestSchema = z.object({\n // Required fields\n id: z\n .string()\n .min(3, \"Theme ID must be at least 3 characters\")\n .max(50, \"Theme ID must be at most 50 characters\")\n .regex(\n /^[a-z0-9-]+$/,\n \"Theme ID must be lowercase letters, numbers, and hyphens only\"\n ),\n\n name: z\n .string()\n .min(1, \"Theme name is required\")\n .max(100, \"Theme name must be at most 100 characters\"),\n\n version: z\n .string()\n .regex(\n /^\\d+\\.\\d+\\.\\d+(-[a-z0-9.]+)?$/,\n \"Version must follow semver format (e.g., 1.0.0)\"\n ),\n\n author: authorSchema,\n\n engine: z\n .string()\n .min(1, \"Engine version is required\")\n .regex(\n /^[\\^~>=<]*\\d+\\.\\d+\\.\\d+/,\n \"Engine must be a valid semver range (e.g., ^1.0.0)\"\n ),\n\n peerDependencies: peerDependenciesSchema,\n\n sections: z\n .array(z.string().min(1))\n .min(1, \"At least one section is required\"),\n\n config: z.record(z.string(), z.any()), // ThemeConfig validation done separately\n\n exports: exportsSchema,\n\n // Optional fields\n description: z.string().max(500).optional(),\n\n preview: previewSchema.optional(),\n\n license: z.string().optional(),\n\n repository: z.string().url({ message: \"Repository must be a valid URL\" }).optional(),\n\n tags: z.array(z.string()).optional(),\n});\n\n/**\n * Type inference from schema\n */\nexport type ThemeManifestValidation = z.infer<typeof themeManifestSchema>;\n\n/**\n * Validate theme manifest\n *\n * @param manifest - The manifest object to validate\n * @returns Validation result with typed data or errors\n */\nexport function validateThemeManifest(manifest: unknown) {\n return themeManifestSchema.safeParse(manifest);\n}\n\n/**\n * Validate theme manifest and throw on error\n *\n * @param manifest - The manifest object to validate\n * @throws ZodError if validation fails\n */\nexport function assertValidThemeManifest(manifest: unknown): asserts manifest is ThemeManifestValidation {\n themeManifestSchema.parse(manifest);\n}\n"]}
|
package/dist/index.mjs
ADDED
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
export { AccordionComponent, AlertComponent, BadgeComponent, BlockListRenderer, BlockRenderer, ButtonComponent, COMPONENT_CATEGORIES, COMPONENT_TYPES, CardComponent, CartProvider, CheckboxComponent, CodeComponent, ColumnsComponent, ComponentListRenderer, ComponentRegistry, ComponentRenderer, ContainerComponent, DEFAULT_INSPECTOR_CONFIG, DividerComponent, FIELD_TYPES, FullWidthSection, GalleryComponent, GridComponent, GridContainer, HeadingComponent, IconComponent, ImageComponent, InputComponent, LinkComponent, ListComponent, MapComponent, PageDataProvider, ParagraphComponent, ProgressComponent, QuoteComponent, RatingComponent, SECTION_CATEGORIES, SectionListRenderer, SectionRenderer, SelectComponent, SpacerComponent, TableComponent, TabsComponent, TextareaComponent, ThemeContextProvider, TimerComponent, VideoComponent, ViewportProvider, accordionComponentDefinition, alertComponentDefinition, animationFieldDefinitions, badgeComponentDefinition, blockRegistry, buttonComponentDefinition, cardComponentDefinition, checkboxComponentDefinition, cn, codeComponentDefinition, columnsComponentDefinition, componentRegistry, containerComponentDefinition, countEnabledItems, createBlockRegistry, defaultAnimationSettings, dividerComponentDefinition, filterEnabledBlocks, filterEnabledComponents, findBlockInSection, findComponentInSection, formatBlockName, galleryComponentDefinition, generateBlockId, generateHandle, generateId, generatePageId, generateSectionId, generateThemeId, getActiveBlocks, getActiveComponents, getBlockPath, getComponentPath, getComponentValues, getComponentsByType, getElementLabel, getFirstComponentByType, getSectionValues, getSelectionColor, gridComponentDefinition, groupBySlot, hasComponentType, hasEnabledItems, headingComponentDefinition, iconComponentDefinition, imageComponentDefinition, inputComponentDefinition, linkComponentDefinition, listComponentDefinition, mapComponentDefinition, paragraphComponentDefinition, progressComponentDefinition, quoteComponentDefinition, ratingComponentDefinition, removeNestedBlock, renderBlock, renderSection, selectComponentDefinition, sortBlocks, sortComponents, spacerComponentDefinition, tableComponentDefinition, tabsComponentDefinition, textareaComponentDefinition, timerComponentDefinition, toComponentInstance, updateNestedBlock, updateNestedComponent, useCart, useComponentInstance, useComponentRegistration, usePageData, useResponsiveClass, useThemeContext, useViewport, useWebsiteSettings, validateComponent, validateContent, validateSection, validateSettings, validateStyle, version, videoComponentDefinition } from './chunk-7EON6Q4L.mjs';
|
|
3
|
+
export { createSectionRegistry, sectionRegistry } from './chunk-XE4EOKS4.mjs';
|
|
4
|
+
import { z } from 'zod';
|
|
5
|
+
|
|
6
|
+
var authorSchema = z.object({
|
|
7
|
+
name: z.string().min(1, "Author name is required"),
|
|
8
|
+
email: z.string().email({ message: "Invalid email address" }).optional(),
|
|
9
|
+
url: z.string().url({ message: "Invalid URL" }).optional()
|
|
10
|
+
});
|
|
11
|
+
var peerDependenciesSchema = z.object({
|
|
12
|
+
react: z.string().min(1, "React version is required"),
|
|
13
|
+
"react-dom": z.string().min(1, "React DOM version is required"),
|
|
14
|
+
"@onex/core": z.string().optional()
|
|
15
|
+
});
|
|
16
|
+
var previewSchema = z.object({
|
|
17
|
+
thumbnail: z.string().url({ message: "Thumbnail must be a valid URL" }).optional(),
|
|
18
|
+
screenshots: z.array(z.string().url({ message: "Screenshot URL is invalid" })).optional()
|
|
19
|
+
});
|
|
20
|
+
var exportsSchema = z.object({
|
|
21
|
+
main: z.string().min(1, "Main export path is required"),
|
|
22
|
+
types: z.string().optional()
|
|
23
|
+
});
|
|
24
|
+
var themeManifestSchema = z.object({
|
|
25
|
+
// Required fields
|
|
26
|
+
id: z.string().min(3, "Theme ID must be at least 3 characters").max(50, "Theme ID must be at most 50 characters").regex(
|
|
27
|
+
/^[a-z0-9-]+$/,
|
|
28
|
+
"Theme ID must be lowercase letters, numbers, and hyphens only"
|
|
29
|
+
),
|
|
30
|
+
name: z.string().min(1, "Theme name is required").max(100, "Theme name must be at most 100 characters"),
|
|
31
|
+
version: z.string().regex(
|
|
32
|
+
/^\d+\.\d+\.\d+(-[a-z0-9.]+)?$/,
|
|
33
|
+
"Version must follow semver format (e.g., 1.0.0)"
|
|
34
|
+
),
|
|
35
|
+
author: authorSchema,
|
|
36
|
+
engine: z.string().min(1, "Engine version is required").regex(
|
|
37
|
+
/^[\^~>=<]*\d+\.\d+\.\d+/,
|
|
38
|
+
"Engine must be a valid semver range (e.g., ^1.0.0)"
|
|
39
|
+
),
|
|
40
|
+
peerDependencies: peerDependenciesSchema,
|
|
41
|
+
sections: z.array(z.string().min(1)).min(1, "At least one section is required"),
|
|
42
|
+
config: z.record(z.string(), z.any()),
|
|
43
|
+
// ThemeConfig validation done separately
|
|
44
|
+
exports: exportsSchema,
|
|
45
|
+
// Optional fields
|
|
46
|
+
description: z.string().max(500).optional(),
|
|
47
|
+
preview: previewSchema.optional(),
|
|
48
|
+
license: z.string().optional(),
|
|
49
|
+
repository: z.string().url({ message: "Repository must be a valid URL" }).optional(),
|
|
50
|
+
tags: z.array(z.string()).optional()
|
|
51
|
+
});
|
|
52
|
+
function validateThemeManifest(manifest) {
|
|
53
|
+
return themeManifestSchema.safeParse(manifest);
|
|
54
|
+
}
|
|
55
|
+
function assertValidThemeManifest(manifest) {
|
|
56
|
+
themeManifestSchema.parse(manifest);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
export { assertValidThemeManifest, authorSchema, exportsSchema, peerDependenciesSchema, previewSchema, themeManifestSchema, validateThemeManifest };
|
|
60
|
+
//# sourceMappingURL=index.mjs.map
|
|
61
|
+
//# sourceMappingURL=index.mjs.map
|