@elementor/editor-props 0.4.0 → 0.5.1
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/CHANGELOG.md +16 -0
- package/dist/index.d.mts +1096 -840
- package/dist/index.d.ts +1096 -840
- package/dist/index.js +55 -26
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +48 -21
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
- package/src/prop-types/background-prop-types/background-color-overlay.ts +7 -0
- package/src/prop-types/background-prop-types/background-gradient-overlay.ts +11 -0
- package/src/prop-types/background-prop-types/background-image-overlay.ts +8 -0
- package/src/prop-types/background-prop-types/background-overlay.ts +15 -0
- package/src/prop-types/background-prop-types/background.ts +14 -0
- package/src/prop-types/gaps.ts +14 -0
- package/src/prop-types/index.ts +4 -2
- package/src/types.ts +1 -1
- package/src/utils/create-prop-utils.ts +20 -20
- package/src/utils/is-transformable.ts +1 -0
- package/src/prop-types/background-image.ts +0 -11
- package/src/prop-types/color-gradient.ts +0 -13
package/dist/index.js
CHANGED
|
@@ -18,16 +18,18 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
19
|
|
|
20
20
|
// src/index.ts
|
|
21
|
-
var
|
|
22
|
-
__export(
|
|
23
|
-
|
|
21
|
+
var index_exports = {};
|
|
22
|
+
__export(index_exports, {
|
|
23
|
+
backgroundColorOverlayPropTypeUtil: () => backgroundColorOverlayPropTypeUtil,
|
|
24
|
+
backgroundOverlayPropTypeUtil: () => backgroundOverlayPropTypeUtil,
|
|
25
|
+
backgroundPropTypeUtil: () => backgroundPropTypeUtil,
|
|
24
26
|
borderRadiusPropTypeUtil: () => borderRadiusPropTypeUtil,
|
|
25
27
|
borderWidthPropTypeUtil: () => borderWidthPropTypeUtil,
|
|
26
28
|
boxShadowPropTypeUtil: () => boxShadowPropTypeUtil,
|
|
27
29
|
classesPropTypeUtil: () => classesPropTypeUtil,
|
|
28
|
-
colorGradientPropTypeUtil: () => colorGradientPropTypeUtil,
|
|
29
30
|
colorPropTypeUtil: () => colorPropTypeUtil,
|
|
30
31
|
createPropUtils: () => createPropUtils,
|
|
32
|
+
gapPropTypeUtil: () => gapPropTypeUtil,
|
|
31
33
|
imageAttachmentIdPropType: () => imageAttachmentIdPropType,
|
|
32
34
|
imagePropTypeUtil: () => imagePropTypeUtil,
|
|
33
35
|
imageSrcPropTypeUtil: () => imageSrcPropTypeUtil,
|
|
@@ -41,7 +43,7 @@ __export(src_exports, {
|
|
|
41
43
|
strokePropTypeUtil: () => strokePropTypeUtil,
|
|
42
44
|
urlPropTypeUtil: () => urlPropTypeUtil
|
|
43
45
|
});
|
|
44
|
-
module.exports = __toCommonJS(
|
|
46
|
+
module.exports = __toCommonJS(index_exports);
|
|
45
47
|
|
|
46
48
|
// src/prop-types/box-shadow.ts
|
|
47
49
|
var import_schema4 = require("@elementor/schema");
|
|
@@ -86,7 +88,6 @@ function createPropUtils(key, valueSchema) {
|
|
|
86
88
|
extract,
|
|
87
89
|
isValid,
|
|
88
90
|
create,
|
|
89
|
-
// this type fails in build due to zod issue that does not recognize the schema as a ZodType.
|
|
90
91
|
schema
|
|
91
92
|
};
|
|
92
93
|
}
|
|
@@ -220,52 +221,80 @@ var strokePropTypeUtil = createPropUtils(
|
|
|
220
221
|
var import_schema17 = require("@elementor/schema");
|
|
221
222
|
var urlPropTypeUtil = createPropUtils("url", import_schema17.z.string().url().nullable());
|
|
222
223
|
|
|
223
|
-
// src/prop-types/
|
|
224
|
+
// src/prop-types/link.ts
|
|
224
225
|
var import_schema18 = require("@elementor/schema");
|
|
225
|
-
var
|
|
226
|
-
"
|
|
226
|
+
var linkPropTypeUtil = createPropUtils(
|
|
227
|
+
"link",
|
|
227
228
|
import_schema18.z.strictObject({
|
|
228
|
-
|
|
229
|
+
enabled: import_schema18.z.boolean(),
|
|
230
|
+
href: urlPropTypeUtil.schema,
|
|
231
|
+
isTargetBlank: import_schema18.z.boolean()
|
|
229
232
|
})
|
|
230
233
|
);
|
|
231
234
|
|
|
232
|
-
// src/prop-types/
|
|
235
|
+
// src/prop-types/gaps.ts
|
|
233
236
|
var import_schema19 = require("@elementor/schema");
|
|
234
|
-
var
|
|
235
|
-
"
|
|
236
|
-
import_schema19.z.
|
|
237
|
+
var gapPropTypeUtil = createPropUtils(
|
|
238
|
+
"gap",
|
|
239
|
+
import_schema19.z.object({
|
|
240
|
+
isLinked: import_schema19.z.boolean(),
|
|
241
|
+
row: import_schema19.z.any(),
|
|
242
|
+
column: import_schema19.z.any()
|
|
243
|
+
})
|
|
237
244
|
);
|
|
238
245
|
|
|
239
|
-
// src/prop-types/
|
|
246
|
+
// src/prop-types/background-prop-types/background.ts
|
|
240
247
|
var import_schema20 = require("@elementor/schema");
|
|
241
|
-
var
|
|
242
|
-
"
|
|
248
|
+
var backgroundPropTypeUtil = createPropUtils(
|
|
249
|
+
"background",
|
|
243
250
|
import_schema20.z.strictObject({
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
isTargetBlank: import_schema20.z.boolean()
|
|
251
|
+
color: unknownChildrenSchema,
|
|
252
|
+
"background-overlay": unknownChildrenSchema
|
|
247
253
|
})
|
|
248
254
|
);
|
|
249
255
|
|
|
250
|
-
// src/
|
|
256
|
+
// src/prop-types/background-prop-types/background-overlay.ts
|
|
257
|
+
var import_schema22 = require("@elementor/schema");
|
|
258
|
+
|
|
259
|
+
// src/prop-types/background-prop-types/background-color-overlay.ts
|
|
251
260
|
var import_schema21 = require("@elementor/schema");
|
|
252
|
-
var
|
|
253
|
-
|
|
254
|
-
|
|
261
|
+
var backgroundColorOverlayPropTypeUtil = createPropUtils("background-color-overlay", import_schema21.z.string());
|
|
262
|
+
|
|
263
|
+
// src/prop-types/background-prop-types/background-gradient-overlay.ts
|
|
264
|
+
var backgroundGradientOverlayPropTypeUtil = createPropUtils(
|
|
265
|
+
"background-gradient-overlay",
|
|
266
|
+
unknownChildrenSchema
|
|
267
|
+
);
|
|
268
|
+
|
|
269
|
+
// src/prop-types/background-prop-types/background-image-overlay.ts
|
|
270
|
+
var backgroundImageOverlayPropTypeUtil = createPropUtils("background-image-overlay", unknownChildrenSchema);
|
|
271
|
+
|
|
272
|
+
// src/prop-types/background-prop-types/background-overlay.ts
|
|
273
|
+
var backgroundOverlayItem = backgroundColorOverlayPropTypeUtil.schema.or(backgroundGradientOverlayPropTypeUtil.schema).or(backgroundImageOverlayPropTypeUtil.schema);
|
|
274
|
+
var backgroundOverlayPropTypeUtil = createPropUtils("background-overlay", import_schema22.z.array(backgroundOverlayItem));
|
|
275
|
+
|
|
276
|
+
// src/utils/is-transformable.ts
|
|
277
|
+
var import_schema23 = require("@elementor/schema");
|
|
278
|
+
var transformableSchema = import_schema23.z.object({
|
|
279
|
+
$$type: import_schema23.z.string(),
|
|
280
|
+
value: import_schema23.z.any(),
|
|
281
|
+
disabled: import_schema23.z.boolean().optional()
|
|
255
282
|
});
|
|
256
283
|
var isTransformable = (value) => {
|
|
257
284
|
return transformableSchema.safeParse(value).success;
|
|
258
285
|
};
|
|
259
286
|
// Annotate the CommonJS export names for ESM import in node:
|
|
260
287
|
0 && (module.exports = {
|
|
261
|
-
|
|
288
|
+
backgroundColorOverlayPropTypeUtil,
|
|
289
|
+
backgroundOverlayPropTypeUtil,
|
|
290
|
+
backgroundPropTypeUtil,
|
|
262
291
|
borderRadiusPropTypeUtil,
|
|
263
292
|
borderWidthPropTypeUtil,
|
|
264
293
|
boxShadowPropTypeUtil,
|
|
265
294
|
classesPropTypeUtil,
|
|
266
|
-
colorGradientPropTypeUtil,
|
|
267
295
|
colorPropTypeUtil,
|
|
268
296
|
createPropUtils,
|
|
297
|
+
gapPropTypeUtil,
|
|
269
298
|
imageAttachmentIdPropType,
|
|
270
299
|
imagePropTypeUtil,
|
|
271
300
|
imageSrcPropTypeUtil,
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts","../src/prop-types/box-shadow.ts","../src/utils/create-prop-utils.ts","../src/prop-types/shadow.ts","../src/prop-types/utils.ts","../src/prop-types/border-radius.ts","../src/prop-types/border-width.ts","../src/prop-types/classes.ts","../src/prop-types/color.ts","../src/prop-types/image.ts","../src/prop-types/image-attachment-id.ts","../src/prop-types/image-src.ts","../src/prop-types/linked-dimensions.ts","../src/prop-types/number.ts","../src/prop-types/size.ts","../src/prop-types/string.ts","../src/prop-types/stroke.ts","../src/prop-types/url.ts","../src/prop-types/color-gradient.ts","../src/prop-types/background-image.ts","../src/prop-types/link.ts","../src/utils/is-transformable.ts"],"sourcesContent":["// types\nexport * from './types';\nexport { type PropTypeUtil, type CreateOptions } from './utils/create-prop-utils';\n\n// prop types\nexport * from './prop-types';\n\n// utils\nexport { createPropUtils } from './utils/create-prop-utils';\nexport { isTransformable } from './utils/is-transformable';\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { shadowPropTypeUtil } from './shadow';\n\nexport const boxShadowPropTypeUtil = createPropUtils( 'box-shadow', z.array( shadowPropTypeUtil.schema ) );\n\nexport type BoxShadowPropValue = z.infer< typeof boxShadowPropTypeUtil.schema >;\n","import { z, type ZodType, type ZodTypeAny } from '@elementor/schema';\n\nimport { type PropValue } from '../types';\n\ntype Updater< T > = ( prev?: T ) => T;\n\nexport type CreateOptions = {\n\tbase?: unknown;\n\tdisabled?: boolean;\n};\n\n/**\n * Usage example:\n *\n * ```ts\n * const elementsPropUtils = createPropUtils( 'elements', z.array( z.string() ) );\n *\n * elementsPropUtils.isValid( element.props?.children );\n * elementsPropUtils.create( [ 'a', 'b' ] );\n * elementsPropUtils.create( ( prev = [] ) => [ ...prev, 'c' ], { base: element.props?.children } );\n * elementsPropUtils.create( ( prev = [] ) => [ ...prev, 'c' ], { disabled: true } );\n * elementsPropUtils.extract( element.props?.children );\n *\n * ```\n */\n\nexport type PropTypeUtil< TKey extends string, TValue extends PropValue > = ReturnType<\n\ttypeof createPropUtils< TKey, ZodType< TValue > >\n>;\n\nexport function createPropUtils< TKey extends string, TValue extends ZodTypeAny >( key: TKey, valueSchema: TValue ) {\n\tconst schema = z.strictObject( {\n\t\t$$type: z.literal( key ),\n\t\tvalue: valueSchema,\n\t\tdisabled: z.boolean().optional(),\n\t} );\n\n\ttype Prop = z.infer< typeof schema >;\n\n\ttype TPropValue = z.infer< typeof valueSchema >;\n\n\tfunction isValid( prop: unknown ): prop is Prop {\n\t\treturn schema.safeParse( prop ).success;\n\t}\n\n\tfunction create( value: TPropValue ): Prop;\n\tfunction create( value: TPropValue, createOptions?: CreateOptions ): Prop;\n\tfunction create( value: Updater< TPropValue >, createOptions: CreateOptions ): Prop;\n\tfunction create( value: TPropValue | Updater< TPropValue >, createOptions?: CreateOptions ): Prop {\n\t\tconst fn = ( typeof value === 'function' ? value : () => value ) as Updater< TPropValue >;\n\n\t\tconst { base, disabled } = createOptions || {};\n\n\t\tif ( ! base ) {\n\t\t\treturn {\n\t\t\t\t$$type: key,\n\t\t\t\tvalue: fn(),\n\t\t\t\t...( disabled && { disabled } ),\n\t\t\t} as Prop;\n\t\t}\n\n\t\tif ( ! isValid( base ) ) {\n\t\t\tthrow new Error( `Cannot create prop based on invalid value: ${ JSON.stringify( base ) }` );\n\t\t}\n\n\t\treturn {\n\t\t\t$$type: key,\n\t\t\tvalue: fn( base.value ),\n\t\t\t...( disabled && { disabled } ),\n\t\t} as Prop;\n\t}\n\n\tfunction extract( prop: unknown ): TPropValue | null {\n\t\tif ( ! isValid( prop ) ) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn prop.value;\n\t}\n\n\treturn {\n\t\textract,\n\t\tisValid,\n\t\tcreate,\n\t\t// this type fails in build due to zod issue that does not recognize the schema as a ZodType.\n\t\tschema: schema as ZodType< Prop >,\n\t};\n}\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const shadowPropTypeUtil = createPropUtils(\n\t'shadow',\n\tz.strictObject( {\n\t\tposition: unknownChildrenSchema,\n\t\thOffset: unknownChildrenSchema,\n\t\tvOffset: unknownChildrenSchema,\n\t\tblur: unknownChildrenSchema,\n\t\tspread: unknownChildrenSchema,\n\t\tcolor: unknownChildrenSchema,\n\t} )\n);\n\nexport type ShadowPropValue = z.infer< typeof shadowPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nexport const unknownChildrenSchema = z.any().nullable();\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const borderRadiusPropTypeUtil = createPropUtils(\n\t'border-radius',\n\tz.strictObject( {\n\t\t'top-left': unknownChildrenSchema,\n\t\t'top-right': unknownChildrenSchema,\n\t\t'bottom-right': unknownChildrenSchema,\n\t\t'bottom-left': unknownChildrenSchema,\n\t} )\n);\n\nexport type BorderRadiusPropValue = z.infer< typeof borderRadiusPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const borderWidthPropTypeUtil = createPropUtils(\n\t'border-width',\n\tz.strictObject( {\n\t\ttop: unknownChildrenSchema,\n\t\tright: unknownChildrenSchema,\n\t\tbottom: unknownChildrenSchema,\n\t\tleft: unknownChildrenSchema,\n\t} )\n);\n\nexport type BorderWidthPropValue = z.infer< typeof borderWidthPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const classesPropTypeUtil = createPropUtils( 'classes', z.array( z.string().regex( /^[a-z][a-z-_0-9]*$/i ) ) );\n\nexport type ClassesPropValue = z.infer< typeof classesPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const colorPropTypeUtil = createPropUtils( 'color', z.string() );\n\nexport type ColorPropValue = z.infer< typeof colorPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const imagePropTypeUtil = createPropUtils(\n\t'image',\n\tz.strictObject( {\n\t\tsrc: unknownChildrenSchema,\n\t\tsize: unknownChildrenSchema,\n\t} )\n);\n\nexport type ImagePropValue = z.infer< typeof imagePropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const imageAttachmentIdPropType = createPropUtils( 'image-attachment-id', z.number() );\n\nexport type ImageAttachmentIdPropValue = z.infer< typeof imageAttachmentIdPropType.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const imageSrcPropTypeUtil = createPropUtils(\n\t'image-src',\n\tz\n\t\t.strictObject( {\n\t\t\tid: unknownChildrenSchema,\n\t\t\turl: z.null(),\n\t\t} )\n\t\t.or(\n\t\t\tz.strictObject( {\n\t\t\t\tid: z.null(),\n\t\t\t\turl: unknownChildrenSchema,\n\t\t\t} )\n\t\t)\n);\n\nexport type ImageSrcPropValue = z.infer< typeof imageSrcPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const linkedDimensionsPropTypeUtil = createPropUtils(\n\t'linked-dimensions',\n\tz.strictObject( {\n\t\tisLinked: unknownChildrenSchema,\n\t\ttop: unknownChildrenSchema,\n\t\tright: unknownChildrenSchema,\n\t\tbottom: unknownChildrenSchema,\n\t\tleft: unknownChildrenSchema,\n\t} )\n);\n\nexport type LinkedDimensionsPropValue = z.infer< typeof linkedDimensionsPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const numberPropTypeUtil = createPropUtils( 'number', z.number() );\n\nexport type NumberPropValue = z.infer< typeof numberPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const sizePropTypeUtil = createPropUtils(\n\t'size',\n\tz.strictObject( {\n\t\tunit: z.enum( [ 'px', 'em', 'rem', '%', 'vw', 'vh' ] ),\n\t\tsize: z.number(),\n\t} )\n);\n\nexport type SizePropValue = z.infer< typeof sizePropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const stringPropTypeUtil = createPropUtils( 'string', z.string().nullable() );\n\nexport type StringPropValue = z.infer< typeof stringPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const strokePropTypeUtil = createPropUtils(\n\t'stroke',\n\tz.strictObject( {\n\t\tcolor: unknownChildrenSchema,\n\t\twidth: unknownChildrenSchema,\n\t} )\n);\n\nexport type StrokePropValue = z.infer< typeof strokePropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const urlPropTypeUtil = createPropUtils( 'url', z.string().url().nullable() );\n\nexport type UrlPropValue = z.infer< typeof urlPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const colorGradientPropTypeUtil = createPropUtils(\n\t'background-overlay',\n\tz.strictObject( {\n\t\tcolor: unknownChildrenSchema,\n\t} )\n);\n\nexport type ColorGradientPropValue = z.infer< typeof colorGradientPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { colorGradientPropTypeUtil } from './color-gradient';\n\nexport const backgroundImagePropTypeUtil = createPropUtils(\n\t'background-image',\n\tz.array( colorGradientPropTypeUtil.schema )\n);\n\nexport type backgroundImageTypePropValue = z.infer< typeof backgroundImagePropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { urlPropTypeUtil } from './url';\n\nexport const linkPropTypeUtil = createPropUtils(\n\t'link',\n\tz.strictObject( {\n\t\tenabled: z.boolean(),\n\t\thref: urlPropTypeUtil.schema,\n\t\tisTargetBlank: z.boolean(),\n\t} )\n);\n\nexport type LinkPropValue = z.infer< typeof linkPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nconst transformableSchema = z.object( {\n\t$$type: z.string(),\n\tvalue: z.any(),\n} );\n\ntype TransformablePropValue = z.infer< typeof transformableSchema >;\n\nexport const isTransformable = ( value: unknown ): value is TransformablePropValue => {\n\treturn transformableSchema.safeParse( value ).success;\n};\n"],"mappings":"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","names":["import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema"]}
|
|
1
|
+
{"version":3,"sources":["../src/index.ts","../src/prop-types/box-shadow.ts","../src/utils/create-prop-utils.ts","../src/prop-types/shadow.ts","../src/prop-types/utils.ts","../src/prop-types/border-radius.ts","../src/prop-types/border-width.ts","../src/prop-types/classes.ts","../src/prop-types/color.ts","../src/prop-types/image.ts","../src/prop-types/image-attachment-id.ts","../src/prop-types/image-src.ts","../src/prop-types/linked-dimensions.ts","../src/prop-types/number.ts","../src/prop-types/size.ts","../src/prop-types/string.ts","../src/prop-types/stroke.ts","../src/prop-types/url.ts","../src/prop-types/link.ts","../src/prop-types/gaps.ts","../src/prop-types/background-prop-types/background.ts","../src/prop-types/background-prop-types/background-overlay.ts","../src/prop-types/background-prop-types/background-color-overlay.ts","../src/prop-types/background-prop-types/background-gradient-overlay.ts","../src/prop-types/background-prop-types/background-image-overlay.ts","../src/utils/is-transformable.ts"],"sourcesContent":["// types\nexport * from './types';\nexport { type PropTypeUtil, type CreateOptions } from './utils/create-prop-utils';\n\n// prop types\nexport * from './prop-types';\n\n// utils\nexport { createPropUtils } from './utils/create-prop-utils';\nexport { isTransformable } from './utils/is-transformable';\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { shadowPropTypeUtil } from './shadow';\n\nexport const boxShadowPropTypeUtil = createPropUtils( 'box-shadow', z.array( shadowPropTypeUtil.schema ) );\n\nexport type BoxShadowPropValue = z.infer< typeof boxShadowPropTypeUtil.schema >;\n","import { z, type ZodType } from '@elementor/schema';\n\nimport { type PropValue, type TransformablePropValue } from '../types';\n\ntype Updater< T > = ( prev?: T ) => T;\n\nexport type CreateOptions = {\n\tbase?: unknown;\n\tdisabled?: boolean;\n};\n\nexport type PropTypeUtil< TKey extends string, TValue extends PropValue > = ReturnType<\n\ttypeof createPropUtils< TKey, TValue >\n>;\n\n/**\n * Usage example:\n *\n * ```ts\n * const elementsPropUtils = createPropUtils( 'elements', z.array( z.string() ) );\n *\n * elementsPropUtils.isValid( element.props?.children );\n * elementsPropUtils.create( [ 'a', 'b' ] );\n * elementsPropUtils.create( ( prev = [] ) => [ ...prev, 'c' ], { base: element.props?.children } );\n * elementsPropUtils.create( ( prev = [] ) => [ ...prev, 'c' ], { disabled: true } );\n * elementsPropUtils.extract( element.props?.children );\n *\n * ```\n */\n\nexport function createPropUtils< TKey extends string, TValue extends PropValue >(\n\tkey: TKey,\n\tvalueSchema: ZodType< TValue >\n) {\n\tconst schema = z.strictObject( {\n\t\t$$type: z.literal( key ),\n\t\tvalue: valueSchema,\n\t\tdisabled: z.boolean().optional(),\n\t} );\n\n\ttype Prop = TransformablePropValue< TKey, TValue >;\n\n\tfunction isValid( prop: unknown ): prop is Prop {\n\t\treturn schema.safeParse( prop ).success;\n\t}\n\n\tfunction create( value: TValue ): Prop;\n\tfunction create( value: TValue, createOptions?: CreateOptions ): Prop;\n\tfunction create( value: Updater< TValue >, createOptions: CreateOptions ): Prop;\n\tfunction create( value: TValue | Updater< TValue >, createOptions?: CreateOptions ): Prop {\n\t\tconst fn = ( typeof value === 'function' ? value : () => value ) as Updater< TValue >;\n\n\t\tconst { base, disabled } = createOptions || {};\n\n\t\tif ( ! base ) {\n\t\t\treturn {\n\t\t\t\t$$type: key,\n\t\t\t\tvalue: fn(),\n\t\t\t\t...( disabled && { disabled } ),\n\t\t\t};\n\t\t}\n\n\t\tif ( ! isValid( base ) ) {\n\t\t\tthrow new Error( `Cannot create prop based on invalid value: ${ JSON.stringify( base ) }` );\n\t\t}\n\n\t\treturn {\n\t\t\t$$type: key,\n\t\t\tvalue: fn( base.value ),\n\t\t\t...( disabled && { disabled } ),\n\t\t};\n\t}\n\n\tfunction extract( prop: unknown ): TValue | null {\n\t\tif ( ! isValid( prop ) ) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn prop.value;\n\t}\n\n\treturn {\n\t\textract,\n\t\tisValid,\n\t\tcreate,\n\t\tschema,\n\t};\n}\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const shadowPropTypeUtil = createPropUtils(\n\t'shadow',\n\tz.strictObject( {\n\t\tposition: unknownChildrenSchema,\n\t\thOffset: unknownChildrenSchema,\n\t\tvOffset: unknownChildrenSchema,\n\t\tblur: unknownChildrenSchema,\n\t\tspread: unknownChildrenSchema,\n\t\tcolor: unknownChildrenSchema,\n\t} )\n);\n\nexport type ShadowPropValue = z.infer< typeof shadowPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nexport const unknownChildrenSchema = z.any().nullable();\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const borderRadiusPropTypeUtil = createPropUtils(\n\t'border-radius',\n\tz.strictObject( {\n\t\t'top-left': unknownChildrenSchema,\n\t\t'top-right': unknownChildrenSchema,\n\t\t'bottom-right': unknownChildrenSchema,\n\t\t'bottom-left': unknownChildrenSchema,\n\t} )\n);\n\nexport type BorderRadiusPropValue = z.infer< typeof borderRadiusPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const borderWidthPropTypeUtil = createPropUtils(\n\t'border-width',\n\tz.strictObject( {\n\t\ttop: unknownChildrenSchema,\n\t\tright: unknownChildrenSchema,\n\t\tbottom: unknownChildrenSchema,\n\t\tleft: unknownChildrenSchema,\n\t} )\n);\n\nexport type BorderWidthPropValue = z.infer< typeof borderWidthPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const classesPropTypeUtil = createPropUtils( 'classes', z.array( z.string().regex( /^[a-z][a-z-_0-9]*$/i ) ) );\n\nexport type ClassesPropValue = z.infer< typeof classesPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const colorPropTypeUtil = createPropUtils( 'color', z.string() );\n\nexport type ColorPropValue = z.infer< typeof colorPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const imagePropTypeUtil = createPropUtils(\n\t'image',\n\tz.strictObject( {\n\t\tsrc: unknownChildrenSchema,\n\t\tsize: unknownChildrenSchema,\n\t} )\n);\n\nexport type ImagePropValue = z.infer< typeof imagePropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const imageAttachmentIdPropType = createPropUtils( 'image-attachment-id', z.number() );\n\nexport type ImageAttachmentIdPropValue = z.infer< typeof imageAttachmentIdPropType.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const imageSrcPropTypeUtil = createPropUtils(\n\t'image-src',\n\tz\n\t\t.strictObject( {\n\t\t\tid: unknownChildrenSchema,\n\t\t\turl: z.null(),\n\t\t} )\n\t\t.or(\n\t\t\tz.strictObject( {\n\t\t\t\tid: z.null(),\n\t\t\t\turl: unknownChildrenSchema,\n\t\t\t} )\n\t\t)\n);\n\nexport type ImageSrcPropValue = z.infer< typeof imageSrcPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const linkedDimensionsPropTypeUtil = createPropUtils(\n\t'linked-dimensions',\n\tz.strictObject( {\n\t\tisLinked: unknownChildrenSchema,\n\t\ttop: unknownChildrenSchema,\n\t\tright: unknownChildrenSchema,\n\t\tbottom: unknownChildrenSchema,\n\t\tleft: unknownChildrenSchema,\n\t} )\n);\n\nexport type LinkedDimensionsPropValue = z.infer< typeof linkedDimensionsPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const numberPropTypeUtil = createPropUtils( 'number', z.number() );\n\nexport type NumberPropValue = z.infer< typeof numberPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const sizePropTypeUtil = createPropUtils(\n\t'size',\n\tz.strictObject( {\n\t\tunit: z.enum( [ 'px', 'em', 'rem', '%', 'vw', 'vh' ] ),\n\t\tsize: z.number(),\n\t} )\n);\n\nexport type SizePropValue = z.infer< typeof sizePropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const stringPropTypeUtil = createPropUtils( 'string', z.string().nullable() );\n\nexport type StringPropValue = z.infer< typeof stringPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const strokePropTypeUtil = createPropUtils(\n\t'stroke',\n\tz.strictObject( {\n\t\tcolor: unknownChildrenSchema,\n\t\twidth: unknownChildrenSchema,\n\t} )\n);\n\nexport type StrokePropValue = z.infer< typeof strokePropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const urlPropTypeUtil = createPropUtils( 'url', z.string().url().nullable() );\n\nexport type UrlPropValue = z.infer< typeof urlPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { urlPropTypeUtil } from './url';\n\nexport const linkPropTypeUtil = createPropUtils(\n\t'link',\n\tz.strictObject( {\n\t\tenabled: z.boolean(),\n\t\thref: urlPropTypeUtil.schema,\n\t\tisTargetBlank: z.boolean(),\n\t} )\n);\n\nexport type LinkPropValue = z.infer< typeof linkPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const gapPropTypeUtil = createPropUtils(\n\t'gap',\n\tz.object( {\n\t\tisLinked: z.boolean(),\n\t\trow: z.any(),\n\t\tcolumn: z.any(),\n\t} )\n);\n\nexport type GapPropValue = z.infer< typeof gapPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const backgroundPropTypeUtil = createPropUtils(\n\t'background',\n\tz.strictObject( {\n\t\tcolor: unknownChildrenSchema,\n\t\t'background-overlay': unknownChildrenSchema,\n\t} )\n);\n\nexport type BackgroundPropValue = z.infer< typeof backgroundPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { backgroundColorOverlayPropTypeUtil } from './background-color-overlay';\nimport { backgroundGradientOverlayPropTypeUtil } from './background-gradient-overlay';\nimport { backgroundImageOverlayPropTypeUtil } from './background-image-overlay';\n\nconst backgroundOverlayItem = backgroundColorOverlayPropTypeUtil.schema\n\t.or( backgroundGradientOverlayPropTypeUtil.schema )\n\t.or( backgroundImageOverlayPropTypeUtil.schema );\n\nexport const backgroundOverlayPropTypeUtil = createPropUtils( 'background-overlay', z.array( backgroundOverlayItem ) );\n\nexport type BackgroundOverlayPropValue = z.infer< typeof backgroundOverlayPropTypeUtil.schema >;\nexport type BackgroundOverlayItemPropValue = z.infer< typeof backgroundOverlayItem >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\n\nexport const backgroundColorOverlayPropTypeUtil = createPropUtils( 'background-color-overlay', z.string() );\n\nexport type BackgroundColorOverlayPropValue = z.infer< typeof backgroundColorOverlayPropTypeUtil.schema >;\n","import { type z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const backgroundGradientOverlayPropTypeUtil = createPropUtils(\n\t'background-gradient-overlay',\n\tunknownChildrenSchema\n);\n\nexport type BackgroundGradientOverlayPropValue = z.infer< typeof backgroundGradientOverlayPropTypeUtil.schema >;\n","import { type z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const backgroundImageOverlayPropTypeUtil = createPropUtils( 'background-image-overlay', unknownChildrenSchema );\n\nexport type BackgroundImageOverlayPropValue = z.infer< typeof backgroundImageOverlayPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nconst transformableSchema = z.object( {\n\t$$type: z.string(),\n\tvalue: z.any(),\n\tdisabled: z.boolean().optional(),\n} );\n\ntype TransformablePropValue = z.infer< typeof transformableSchema >;\n\nexport const isTransformable = ( value: unknown ): value is TransformablePropValue => {\n\treturn transformableSchema.safeParse( value ).success;\n};\n"],"mappings":"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","names":["import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema","import_schema"]}
|
package/dist/index.mjs
CHANGED
|
@@ -41,7 +41,6 @@ function createPropUtils(key, valueSchema) {
|
|
|
41
41
|
extract,
|
|
42
42
|
isValid,
|
|
43
43
|
create,
|
|
44
|
-
// this type fails in build due to zod issue that does not recognize the schema as a ZodType.
|
|
45
44
|
schema
|
|
46
45
|
};
|
|
47
46
|
}
|
|
@@ -175,51 +174,79 @@ var strokePropTypeUtil = createPropUtils(
|
|
|
175
174
|
import { z as z17 } from "@elementor/schema";
|
|
176
175
|
var urlPropTypeUtil = createPropUtils("url", z17.string().url().nullable());
|
|
177
176
|
|
|
178
|
-
// src/prop-types/
|
|
177
|
+
// src/prop-types/link.ts
|
|
179
178
|
import { z as z18 } from "@elementor/schema";
|
|
180
|
-
var
|
|
181
|
-
"
|
|
179
|
+
var linkPropTypeUtil = createPropUtils(
|
|
180
|
+
"link",
|
|
182
181
|
z18.strictObject({
|
|
183
|
-
|
|
182
|
+
enabled: z18.boolean(),
|
|
183
|
+
href: urlPropTypeUtil.schema,
|
|
184
|
+
isTargetBlank: z18.boolean()
|
|
184
185
|
})
|
|
185
186
|
);
|
|
186
187
|
|
|
187
|
-
// src/prop-types/
|
|
188
|
+
// src/prop-types/gaps.ts
|
|
188
189
|
import { z as z19 } from "@elementor/schema";
|
|
189
|
-
var
|
|
190
|
-
"
|
|
191
|
-
z19.
|
|
190
|
+
var gapPropTypeUtil = createPropUtils(
|
|
191
|
+
"gap",
|
|
192
|
+
z19.object({
|
|
193
|
+
isLinked: z19.boolean(),
|
|
194
|
+
row: z19.any(),
|
|
195
|
+
column: z19.any()
|
|
196
|
+
})
|
|
192
197
|
);
|
|
193
198
|
|
|
194
|
-
// src/prop-types/
|
|
199
|
+
// src/prop-types/background-prop-types/background.ts
|
|
195
200
|
import { z as z20 } from "@elementor/schema";
|
|
196
|
-
var
|
|
197
|
-
"
|
|
201
|
+
var backgroundPropTypeUtil = createPropUtils(
|
|
202
|
+
"background",
|
|
198
203
|
z20.strictObject({
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
isTargetBlank: z20.boolean()
|
|
204
|
+
color: unknownChildrenSchema,
|
|
205
|
+
"background-overlay": unknownChildrenSchema
|
|
202
206
|
})
|
|
203
207
|
);
|
|
204
208
|
|
|
205
|
-
// src/
|
|
209
|
+
// src/prop-types/background-prop-types/background-overlay.ts
|
|
210
|
+
import { z as z22 } from "@elementor/schema";
|
|
211
|
+
|
|
212
|
+
// src/prop-types/background-prop-types/background-color-overlay.ts
|
|
206
213
|
import { z as z21 } from "@elementor/schema";
|
|
207
|
-
var
|
|
208
|
-
|
|
209
|
-
|
|
214
|
+
var backgroundColorOverlayPropTypeUtil = createPropUtils("background-color-overlay", z21.string());
|
|
215
|
+
|
|
216
|
+
// src/prop-types/background-prop-types/background-gradient-overlay.ts
|
|
217
|
+
var backgroundGradientOverlayPropTypeUtil = createPropUtils(
|
|
218
|
+
"background-gradient-overlay",
|
|
219
|
+
unknownChildrenSchema
|
|
220
|
+
);
|
|
221
|
+
|
|
222
|
+
// src/prop-types/background-prop-types/background-image-overlay.ts
|
|
223
|
+
var backgroundImageOverlayPropTypeUtil = createPropUtils("background-image-overlay", unknownChildrenSchema);
|
|
224
|
+
|
|
225
|
+
// src/prop-types/background-prop-types/background-overlay.ts
|
|
226
|
+
var backgroundOverlayItem = backgroundColorOverlayPropTypeUtil.schema.or(backgroundGradientOverlayPropTypeUtil.schema).or(backgroundImageOverlayPropTypeUtil.schema);
|
|
227
|
+
var backgroundOverlayPropTypeUtil = createPropUtils("background-overlay", z22.array(backgroundOverlayItem));
|
|
228
|
+
|
|
229
|
+
// src/utils/is-transformable.ts
|
|
230
|
+
import { z as z23 } from "@elementor/schema";
|
|
231
|
+
var transformableSchema = z23.object({
|
|
232
|
+
$$type: z23.string(),
|
|
233
|
+
value: z23.any(),
|
|
234
|
+
disabled: z23.boolean().optional()
|
|
210
235
|
});
|
|
211
236
|
var isTransformable = (value) => {
|
|
212
237
|
return transformableSchema.safeParse(value).success;
|
|
213
238
|
};
|
|
214
239
|
export {
|
|
215
|
-
|
|
240
|
+
backgroundColorOverlayPropTypeUtil,
|
|
241
|
+
backgroundOverlayPropTypeUtil,
|
|
242
|
+
backgroundPropTypeUtil,
|
|
216
243
|
borderRadiusPropTypeUtil,
|
|
217
244
|
borderWidthPropTypeUtil,
|
|
218
245
|
boxShadowPropTypeUtil,
|
|
219
246
|
classesPropTypeUtil,
|
|
220
|
-
colorGradientPropTypeUtil,
|
|
221
247
|
colorPropTypeUtil,
|
|
222
248
|
createPropUtils,
|
|
249
|
+
gapPropTypeUtil,
|
|
223
250
|
imageAttachmentIdPropType,
|
|
224
251
|
imagePropTypeUtil,
|
|
225
252
|
imageSrcPropTypeUtil,
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/prop-types/box-shadow.ts","../src/utils/create-prop-utils.ts","../src/prop-types/shadow.ts","../src/prop-types/utils.ts","../src/prop-types/border-radius.ts","../src/prop-types/border-width.ts","../src/prop-types/classes.ts","../src/prop-types/color.ts","../src/prop-types/image.ts","../src/prop-types/image-attachment-id.ts","../src/prop-types/image-src.ts","../src/prop-types/linked-dimensions.ts","../src/prop-types/number.ts","../src/prop-types/size.ts","../src/prop-types/string.ts","../src/prop-types/stroke.ts","../src/prop-types/url.ts","../src/prop-types/color-gradient.ts","../src/prop-types/background-image.ts","../src/prop-types/link.ts","../src/utils/is-transformable.ts"],"sourcesContent":["import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { shadowPropTypeUtil } from './shadow';\n\nexport const boxShadowPropTypeUtil = createPropUtils( 'box-shadow', z.array( shadowPropTypeUtil.schema ) );\n\nexport type BoxShadowPropValue = z.infer< typeof boxShadowPropTypeUtil.schema >;\n","import { z, type ZodType, type ZodTypeAny } from '@elementor/schema';\n\nimport { type PropValue } from '../types';\n\ntype Updater< T > = ( prev?: T ) => T;\n\nexport type CreateOptions = {\n\tbase?: unknown;\n\tdisabled?: boolean;\n};\n\n/**\n * Usage example:\n *\n * ```ts\n * const elementsPropUtils = createPropUtils( 'elements', z.array( z.string() ) );\n *\n * elementsPropUtils.isValid( element.props?.children );\n * elementsPropUtils.create( [ 'a', 'b' ] );\n * elementsPropUtils.create( ( prev = [] ) => [ ...prev, 'c' ], { base: element.props?.children } );\n * elementsPropUtils.create( ( prev = [] ) => [ ...prev, 'c' ], { disabled: true } );\n * elementsPropUtils.extract( element.props?.children );\n *\n * ```\n */\n\nexport type PropTypeUtil< TKey extends string, TValue extends PropValue > = ReturnType<\n\ttypeof createPropUtils< TKey, ZodType< TValue > >\n>;\n\nexport function createPropUtils< TKey extends string, TValue extends ZodTypeAny >( key: TKey, valueSchema: TValue ) {\n\tconst schema = z.strictObject( {\n\t\t$$type: z.literal( key ),\n\t\tvalue: valueSchema,\n\t\tdisabled: z.boolean().optional(),\n\t} );\n\n\ttype Prop = z.infer< typeof schema >;\n\n\ttype TPropValue = z.infer< typeof valueSchema >;\n\n\tfunction isValid( prop: unknown ): prop is Prop {\n\t\treturn schema.safeParse( prop ).success;\n\t}\n\n\tfunction create( value: TPropValue ): Prop;\n\tfunction create( value: TPropValue, createOptions?: CreateOptions ): Prop;\n\tfunction create( value: Updater< TPropValue >, createOptions: CreateOptions ): Prop;\n\tfunction create( value: TPropValue | Updater< TPropValue >, createOptions?: CreateOptions ): Prop {\n\t\tconst fn = ( typeof value === 'function' ? value : () => value ) as Updater< TPropValue >;\n\n\t\tconst { base, disabled } = createOptions || {};\n\n\t\tif ( ! base ) {\n\t\t\treturn {\n\t\t\t\t$$type: key,\n\t\t\t\tvalue: fn(),\n\t\t\t\t...( disabled && { disabled } ),\n\t\t\t} as Prop;\n\t\t}\n\n\t\tif ( ! isValid( base ) ) {\n\t\t\tthrow new Error( `Cannot create prop based on invalid value: ${ JSON.stringify( base ) }` );\n\t\t}\n\n\t\treturn {\n\t\t\t$$type: key,\n\t\t\tvalue: fn( base.value ),\n\t\t\t...( disabled && { disabled } ),\n\t\t} as Prop;\n\t}\n\n\tfunction extract( prop: unknown ): TPropValue | null {\n\t\tif ( ! isValid( prop ) ) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn prop.value;\n\t}\n\n\treturn {\n\t\textract,\n\t\tisValid,\n\t\tcreate,\n\t\t// this type fails in build due to zod issue that does not recognize the schema as a ZodType.\n\t\tschema: schema as ZodType< Prop >,\n\t};\n}\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const shadowPropTypeUtil = createPropUtils(\n\t'shadow',\n\tz.strictObject( {\n\t\tposition: unknownChildrenSchema,\n\t\thOffset: unknownChildrenSchema,\n\t\tvOffset: unknownChildrenSchema,\n\t\tblur: unknownChildrenSchema,\n\t\tspread: unknownChildrenSchema,\n\t\tcolor: unknownChildrenSchema,\n\t} )\n);\n\nexport type ShadowPropValue = z.infer< typeof shadowPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nexport const unknownChildrenSchema = z.any().nullable();\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const borderRadiusPropTypeUtil = createPropUtils(\n\t'border-radius',\n\tz.strictObject( {\n\t\t'top-left': unknownChildrenSchema,\n\t\t'top-right': unknownChildrenSchema,\n\t\t'bottom-right': unknownChildrenSchema,\n\t\t'bottom-left': unknownChildrenSchema,\n\t} )\n);\n\nexport type BorderRadiusPropValue = z.infer< typeof borderRadiusPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const borderWidthPropTypeUtil = createPropUtils(\n\t'border-width',\n\tz.strictObject( {\n\t\ttop: unknownChildrenSchema,\n\t\tright: unknownChildrenSchema,\n\t\tbottom: unknownChildrenSchema,\n\t\tleft: unknownChildrenSchema,\n\t} )\n);\n\nexport type BorderWidthPropValue = z.infer< typeof borderWidthPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const classesPropTypeUtil = createPropUtils( 'classes', z.array( z.string().regex( /^[a-z][a-z-_0-9]*$/i ) ) );\n\nexport type ClassesPropValue = z.infer< typeof classesPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const colorPropTypeUtil = createPropUtils( 'color', z.string() );\n\nexport type ColorPropValue = z.infer< typeof colorPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const imagePropTypeUtil = createPropUtils(\n\t'image',\n\tz.strictObject( {\n\t\tsrc: unknownChildrenSchema,\n\t\tsize: unknownChildrenSchema,\n\t} )\n);\n\nexport type ImagePropValue = z.infer< typeof imagePropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const imageAttachmentIdPropType = createPropUtils( 'image-attachment-id', z.number() );\n\nexport type ImageAttachmentIdPropValue = z.infer< typeof imageAttachmentIdPropType.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const imageSrcPropTypeUtil = createPropUtils(\n\t'image-src',\n\tz\n\t\t.strictObject( {\n\t\t\tid: unknownChildrenSchema,\n\t\t\turl: z.null(),\n\t\t} )\n\t\t.or(\n\t\t\tz.strictObject( {\n\t\t\t\tid: z.null(),\n\t\t\t\turl: unknownChildrenSchema,\n\t\t\t} )\n\t\t)\n);\n\nexport type ImageSrcPropValue = z.infer< typeof imageSrcPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const linkedDimensionsPropTypeUtil = createPropUtils(\n\t'linked-dimensions',\n\tz.strictObject( {\n\t\tisLinked: unknownChildrenSchema,\n\t\ttop: unknownChildrenSchema,\n\t\tright: unknownChildrenSchema,\n\t\tbottom: unknownChildrenSchema,\n\t\tleft: unknownChildrenSchema,\n\t} )\n);\n\nexport type LinkedDimensionsPropValue = z.infer< typeof linkedDimensionsPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const numberPropTypeUtil = createPropUtils( 'number', z.number() );\n\nexport type NumberPropValue = z.infer< typeof numberPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const sizePropTypeUtil = createPropUtils(\n\t'size',\n\tz.strictObject( {\n\t\tunit: z.enum( [ 'px', 'em', 'rem', '%', 'vw', 'vh' ] ),\n\t\tsize: z.number(),\n\t} )\n);\n\nexport type SizePropValue = z.infer< typeof sizePropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const stringPropTypeUtil = createPropUtils( 'string', z.string().nullable() );\n\nexport type StringPropValue = z.infer< typeof stringPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const strokePropTypeUtil = createPropUtils(\n\t'stroke',\n\tz.strictObject( {\n\t\tcolor: unknownChildrenSchema,\n\t\twidth: unknownChildrenSchema,\n\t} )\n);\n\nexport type StrokePropValue = z.infer< typeof strokePropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const urlPropTypeUtil = createPropUtils( 'url', z.string().url().nullable() );\n\nexport type UrlPropValue = z.infer< typeof urlPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const colorGradientPropTypeUtil = createPropUtils(\n\t'background-overlay',\n\tz.strictObject( {\n\t\tcolor: unknownChildrenSchema,\n\t} )\n);\n\nexport type ColorGradientPropValue = z.infer< typeof colorGradientPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { colorGradientPropTypeUtil } from './color-gradient';\n\nexport const backgroundImagePropTypeUtil = createPropUtils(\n\t'background-image',\n\tz.array( colorGradientPropTypeUtil.schema )\n);\n\nexport type backgroundImageTypePropValue = z.infer< typeof backgroundImagePropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { urlPropTypeUtil } from './url';\n\nexport const linkPropTypeUtil = createPropUtils(\n\t'link',\n\tz.strictObject( {\n\t\tenabled: z.boolean(),\n\t\thref: urlPropTypeUtil.schema,\n\t\tisTargetBlank: z.boolean(),\n\t} )\n);\n\nexport type LinkPropValue = z.infer< typeof linkPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nconst transformableSchema = z.object( {\n\t$$type: z.string(),\n\tvalue: z.any(),\n} );\n\ntype TransformablePropValue = z.infer< typeof transformableSchema >;\n\nexport const isTransformable = ( value: unknown ): value is TransformablePropValue => {\n\treturn transformableSchema.safeParse( value ).success;\n};\n"],"mappings":"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","names":["z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z"]}
|
|
1
|
+
{"version":3,"sources":["../src/prop-types/box-shadow.ts","../src/utils/create-prop-utils.ts","../src/prop-types/shadow.ts","../src/prop-types/utils.ts","../src/prop-types/border-radius.ts","../src/prop-types/border-width.ts","../src/prop-types/classes.ts","../src/prop-types/color.ts","../src/prop-types/image.ts","../src/prop-types/image-attachment-id.ts","../src/prop-types/image-src.ts","../src/prop-types/linked-dimensions.ts","../src/prop-types/number.ts","../src/prop-types/size.ts","../src/prop-types/string.ts","../src/prop-types/stroke.ts","../src/prop-types/url.ts","../src/prop-types/link.ts","../src/prop-types/gaps.ts","../src/prop-types/background-prop-types/background.ts","../src/prop-types/background-prop-types/background-overlay.ts","../src/prop-types/background-prop-types/background-color-overlay.ts","../src/prop-types/background-prop-types/background-gradient-overlay.ts","../src/prop-types/background-prop-types/background-image-overlay.ts","../src/utils/is-transformable.ts"],"sourcesContent":["import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { shadowPropTypeUtil } from './shadow';\n\nexport const boxShadowPropTypeUtil = createPropUtils( 'box-shadow', z.array( shadowPropTypeUtil.schema ) );\n\nexport type BoxShadowPropValue = z.infer< typeof boxShadowPropTypeUtil.schema >;\n","import { z, type ZodType } from '@elementor/schema';\n\nimport { type PropValue, type TransformablePropValue } from '../types';\n\ntype Updater< T > = ( prev?: T ) => T;\n\nexport type CreateOptions = {\n\tbase?: unknown;\n\tdisabled?: boolean;\n};\n\nexport type PropTypeUtil< TKey extends string, TValue extends PropValue > = ReturnType<\n\ttypeof createPropUtils< TKey, TValue >\n>;\n\n/**\n * Usage example:\n *\n * ```ts\n * const elementsPropUtils = createPropUtils( 'elements', z.array( z.string() ) );\n *\n * elementsPropUtils.isValid( element.props?.children );\n * elementsPropUtils.create( [ 'a', 'b' ] );\n * elementsPropUtils.create( ( prev = [] ) => [ ...prev, 'c' ], { base: element.props?.children } );\n * elementsPropUtils.create( ( prev = [] ) => [ ...prev, 'c' ], { disabled: true } );\n * elementsPropUtils.extract( element.props?.children );\n *\n * ```\n */\n\nexport function createPropUtils< TKey extends string, TValue extends PropValue >(\n\tkey: TKey,\n\tvalueSchema: ZodType< TValue >\n) {\n\tconst schema = z.strictObject( {\n\t\t$$type: z.literal( key ),\n\t\tvalue: valueSchema,\n\t\tdisabled: z.boolean().optional(),\n\t} );\n\n\ttype Prop = TransformablePropValue< TKey, TValue >;\n\n\tfunction isValid( prop: unknown ): prop is Prop {\n\t\treturn schema.safeParse( prop ).success;\n\t}\n\n\tfunction create( value: TValue ): Prop;\n\tfunction create( value: TValue, createOptions?: CreateOptions ): Prop;\n\tfunction create( value: Updater< TValue >, createOptions: CreateOptions ): Prop;\n\tfunction create( value: TValue | Updater< TValue >, createOptions?: CreateOptions ): Prop {\n\t\tconst fn = ( typeof value === 'function' ? value : () => value ) as Updater< TValue >;\n\n\t\tconst { base, disabled } = createOptions || {};\n\n\t\tif ( ! base ) {\n\t\t\treturn {\n\t\t\t\t$$type: key,\n\t\t\t\tvalue: fn(),\n\t\t\t\t...( disabled && { disabled } ),\n\t\t\t};\n\t\t}\n\n\t\tif ( ! isValid( base ) ) {\n\t\t\tthrow new Error( `Cannot create prop based on invalid value: ${ JSON.stringify( base ) }` );\n\t\t}\n\n\t\treturn {\n\t\t\t$$type: key,\n\t\t\tvalue: fn( base.value ),\n\t\t\t...( disabled && { disabled } ),\n\t\t};\n\t}\n\n\tfunction extract( prop: unknown ): TValue | null {\n\t\tif ( ! isValid( prop ) ) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn prop.value;\n\t}\n\n\treturn {\n\t\textract,\n\t\tisValid,\n\t\tcreate,\n\t\tschema,\n\t};\n}\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const shadowPropTypeUtil = createPropUtils(\n\t'shadow',\n\tz.strictObject( {\n\t\tposition: unknownChildrenSchema,\n\t\thOffset: unknownChildrenSchema,\n\t\tvOffset: unknownChildrenSchema,\n\t\tblur: unknownChildrenSchema,\n\t\tspread: unknownChildrenSchema,\n\t\tcolor: unknownChildrenSchema,\n\t} )\n);\n\nexport type ShadowPropValue = z.infer< typeof shadowPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nexport const unknownChildrenSchema = z.any().nullable();\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const borderRadiusPropTypeUtil = createPropUtils(\n\t'border-radius',\n\tz.strictObject( {\n\t\t'top-left': unknownChildrenSchema,\n\t\t'top-right': unknownChildrenSchema,\n\t\t'bottom-right': unknownChildrenSchema,\n\t\t'bottom-left': unknownChildrenSchema,\n\t} )\n);\n\nexport type BorderRadiusPropValue = z.infer< typeof borderRadiusPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const borderWidthPropTypeUtil = createPropUtils(\n\t'border-width',\n\tz.strictObject( {\n\t\ttop: unknownChildrenSchema,\n\t\tright: unknownChildrenSchema,\n\t\tbottom: unknownChildrenSchema,\n\t\tleft: unknownChildrenSchema,\n\t} )\n);\n\nexport type BorderWidthPropValue = z.infer< typeof borderWidthPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const classesPropTypeUtil = createPropUtils( 'classes', z.array( z.string().regex( /^[a-z][a-z-_0-9]*$/i ) ) );\n\nexport type ClassesPropValue = z.infer< typeof classesPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const colorPropTypeUtil = createPropUtils( 'color', z.string() );\n\nexport type ColorPropValue = z.infer< typeof colorPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const imagePropTypeUtil = createPropUtils(\n\t'image',\n\tz.strictObject( {\n\t\tsrc: unknownChildrenSchema,\n\t\tsize: unknownChildrenSchema,\n\t} )\n);\n\nexport type ImagePropValue = z.infer< typeof imagePropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const imageAttachmentIdPropType = createPropUtils( 'image-attachment-id', z.number() );\n\nexport type ImageAttachmentIdPropValue = z.infer< typeof imageAttachmentIdPropType.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const imageSrcPropTypeUtil = createPropUtils(\n\t'image-src',\n\tz\n\t\t.strictObject( {\n\t\t\tid: unknownChildrenSchema,\n\t\t\turl: z.null(),\n\t\t} )\n\t\t.or(\n\t\t\tz.strictObject( {\n\t\t\t\tid: z.null(),\n\t\t\t\turl: unknownChildrenSchema,\n\t\t\t} )\n\t\t)\n);\n\nexport type ImageSrcPropValue = z.infer< typeof imageSrcPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const linkedDimensionsPropTypeUtil = createPropUtils(\n\t'linked-dimensions',\n\tz.strictObject( {\n\t\tisLinked: unknownChildrenSchema,\n\t\ttop: unknownChildrenSchema,\n\t\tright: unknownChildrenSchema,\n\t\tbottom: unknownChildrenSchema,\n\t\tleft: unknownChildrenSchema,\n\t} )\n);\n\nexport type LinkedDimensionsPropValue = z.infer< typeof linkedDimensionsPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const numberPropTypeUtil = createPropUtils( 'number', z.number() );\n\nexport type NumberPropValue = z.infer< typeof numberPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const sizePropTypeUtil = createPropUtils(\n\t'size',\n\tz.strictObject( {\n\t\tunit: z.enum( [ 'px', 'em', 'rem', '%', 'vw', 'vh' ] ),\n\t\tsize: z.number(),\n\t} )\n);\n\nexport type SizePropValue = z.infer< typeof sizePropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const stringPropTypeUtil = createPropUtils( 'string', z.string().nullable() );\n\nexport type StringPropValue = z.infer< typeof stringPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const strokePropTypeUtil = createPropUtils(\n\t'stroke',\n\tz.strictObject( {\n\t\tcolor: unknownChildrenSchema,\n\t\twidth: unknownChildrenSchema,\n\t} )\n);\n\nexport type StrokePropValue = z.infer< typeof strokePropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const urlPropTypeUtil = createPropUtils( 'url', z.string().url().nullable() );\n\nexport type UrlPropValue = z.infer< typeof urlPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { urlPropTypeUtil } from './url';\n\nexport const linkPropTypeUtil = createPropUtils(\n\t'link',\n\tz.strictObject( {\n\t\tenabled: z.boolean(),\n\t\thref: urlPropTypeUtil.schema,\n\t\tisTargetBlank: z.boolean(),\n\t} )\n);\n\nexport type LinkPropValue = z.infer< typeof linkPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const gapPropTypeUtil = createPropUtils(\n\t'gap',\n\tz.object( {\n\t\tisLinked: z.boolean(),\n\t\trow: z.any(),\n\t\tcolumn: z.any(),\n\t} )\n);\n\nexport type GapPropValue = z.infer< typeof gapPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const backgroundPropTypeUtil = createPropUtils(\n\t'background',\n\tz.strictObject( {\n\t\tcolor: unknownChildrenSchema,\n\t\t'background-overlay': unknownChildrenSchema,\n\t} )\n);\n\nexport type BackgroundPropValue = z.infer< typeof backgroundPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { backgroundColorOverlayPropTypeUtil } from './background-color-overlay';\nimport { backgroundGradientOverlayPropTypeUtil } from './background-gradient-overlay';\nimport { backgroundImageOverlayPropTypeUtil } from './background-image-overlay';\n\nconst backgroundOverlayItem = backgroundColorOverlayPropTypeUtil.schema\n\t.or( backgroundGradientOverlayPropTypeUtil.schema )\n\t.or( backgroundImageOverlayPropTypeUtil.schema );\n\nexport const backgroundOverlayPropTypeUtil = createPropUtils( 'background-overlay', z.array( backgroundOverlayItem ) );\n\nexport type BackgroundOverlayPropValue = z.infer< typeof backgroundOverlayPropTypeUtil.schema >;\nexport type BackgroundOverlayItemPropValue = z.infer< typeof backgroundOverlayItem >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\n\nexport const backgroundColorOverlayPropTypeUtil = createPropUtils( 'background-color-overlay', z.string() );\n\nexport type BackgroundColorOverlayPropValue = z.infer< typeof backgroundColorOverlayPropTypeUtil.schema >;\n","import { type z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const backgroundGradientOverlayPropTypeUtil = createPropUtils(\n\t'background-gradient-overlay',\n\tunknownChildrenSchema\n);\n\nexport type BackgroundGradientOverlayPropValue = z.infer< typeof backgroundGradientOverlayPropTypeUtil.schema >;\n","import { type z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const backgroundImageOverlayPropTypeUtil = createPropUtils( 'background-image-overlay', unknownChildrenSchema );\n\nexport type BackgroundImageOverlayPropValue = z.infer< typeof backgroundImageOverlayPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nconst transformableSchema = z.object( {\n\t$$type: z.string(),\n\tvalue: z.any(),\n\tdisabled: z.boolean().optional(),\n} );\n\ntype TransformablePropValue = z.infer< typeof transformableSchema >;\n\nexport const isTransformable = ( value: unknown ): value is TransformablePropValue => {\n\treturn transformableSchema.safeParse( value ).success;\n};\n"],"mappings":";AAAA,SAAS,KAAAA,UAAS;;;ACAlB,SAAS,SAAuB;AA8BzB,SAAS,gBACf,KACA,aACC;AACD,QAAM,SAAS,EAAE,aAAc;AAAA,IAC9B,QAAQ,EAAE,QAAS,GAAI;AAAA,IACvB,OAAO;AAAA,IACP,UAAU,EAAE,QAAQ,EAAE,SAAS;AAAA,EAChC,CAAE;AAIF,WAAS,QAAS,MAA8B;AAC/C,WAAO,OAAO,UAAW,IAAK,EAAE;AAAA,EACjC;AAKA,WAAS,OAAQ,OAAmC,eAAsC;AACzF,UAAM,KAAO,OAAO,UAAU,aAAa,QAAQ,MAAM;AAEzD,UAAM,EAAE,MAAM,SAAS,IAAI,iBAAiB,CAAC;AAE7C,QAAK,CAAE,MAAO;AACb,aAAO;AAAA,QACN,QAAQ;AAAA,QACR,OAAO,GAAG;AAAA,QACV,GAAK,YAAY,EAAE,SAAS;AAAA,MAC7B;AAAA,IACD;AAEA,QAAK,CAAE,QAAS,IAAK,GAAI;AACxB,YAAM,IAAI,MAAO,8CAA+C,KAAK,UAAW,IAAK,CAAE,EAAG;AAAA,IAC3F;AAEA,WAAO;AAAA,MACN,QAAQ;AAAA,MACR,OAAO,GAAI,KAAK,KAAM;AAAA,MACtB,GAAK,YAAY,EAAE,SAAS;AAAA,IAC7B;AAAA,EACD;AAEA,WAAS,QAAS,MAA+B;AAChD,QAAK,CAAE,QAAS,IAAK,GAAI;AACxB,aAAO;AAAA,IACR;AAEA,WAAO,KAAK;AAAA,EACb;AAEA,SAAO;AAAA,IACN;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AACD;;;ACvFA,SAAS,KAAAC,UAAS;;;ACAlB,SAAS,KAAAC,UAAS;AAEX,IAAM,wBAAwBA,GAAE,IAAI,EAAE,SAAS;;;ADG/C,IAAM,qBAAqB;AAAA,EACjC;AAAA,EACAC,GAAE,aAAc;AAAA,IACf,UAAU;AAAA,IACV,SAAS;AAAA,IACT,SAAS;AAAA,IACT,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,OAAO;AAAA,EACR,CAAE;AACH;;;AFVO,IAAM,wBAAwB,gBAAiB,cAAcC,GAAE,MAAO,mBAAmB,MAAO,CAAE;;;AILzG,SAAS,KAAAC,UAAS;AAKX,IAAM,2BAA2B;AAAA,EACvC;AAAA,EACAC,GAAE,aAAc;AAAA,IACf,YAAY;AAAA,IACZ,aAAa;AAAA,IACb,gBAAgB;AAAA,IAChB,eAAe;AAAA,EAChB,CAAE;AACH;;;ACbA,SAAS,KAAAC,UAAS;AAKX,IAAM,0BAA0B;AAAA,EACtC;AAAA,EACAC,GAAE,aAAc;AAAA,IACf,KAAK;AAAA,IACL,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,MAAM;AAAA,EACP,CAAE;AACH;;;ACbA,SAAS,KAAAC,UAAS;AAIX,IAAM,sBAAsB,gBAAiB,WAAWC,GAAE,MAAOA,GAAE,OAAO,EAAE,MAAO,qBAAsB,CAAE,CAAE;;;ACJpH,SAAS,KAAAC,UAAS;AAIX,IAAM,oBAAoB,gBAAiB,SAASC,GAAE,OAAO,CAAE;;;ACJtE,SAAS,KAAAC,UAAS;AAKX,IAAM,oBAAoB;AAAA,EAChC;AAAA,EACAC,GAAE,aAAc;AAAA,IACf,KAAK;AAAA,IACL,MAAM;AAAA,EACP,CAAE;AACH;;;ACXA,SAAS,KAAAC,WAAS;AAIX,IAAM,4BAA4B,gBAAiB,uBAAuBC,IAAE,OAAO,CAAE;;;ACJ5F,SAAS,KAAAC,WAAS;AAKX,IAAM,uBAAuB;AAAA,EACnC;AAAA,EACAC,IACE,aAAc;AAAA,IACd,IAAI;AAAA,IACJ,KAAKA,IAAE,KAAK;AAAA,EACb,CAAE,EACD;AAAA,IACAA,IAAE,aAAc;AAAA,MACf,IAAIA,IAAE,KAAK;AAAA,MACX,KAAK;AAAA,IACN,CAAE;AAAA,EACH;AACF;;;AClBA,SAAS,KAAAC,WAAS;AAKX,IAAM,+BAA+B;AAAA,EAC3C;AAAA,EACAC,IAAE,aAAc;AAAA,IACf,UAAU;AAAA,IACV,KAAK;AAAA,IACL,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,MAAM;AAAA,EACP,CAAE;AACH;;;ACdA,SAAS,KAAAC,WAAS;AAIX,IAAM,qBAAqB,gBAAiB,UAAUC,IAAE,OAAO,CAAE;;;ACJxE,SAAS,KAAAC,WAAS;AAIX,IAAM,mBAAmB;AAAA,EAC/B;AAAA,EACAC,IAAE,aAAc;AAAA,IACf,MAAMA,IAAE,KAAM,CAAE,MAAM,MAAM,OAAO,KAAK,MAAM,IAAK,CAAE;AAAA,IACrD,MAAMA,IAAE,OAAO;AAAA,EAChB,CAAE;AACH;;;ACVA,SAAS,KAAAC,WAAS;AAIX,IAAM,qBAAqB,gBAAiB,UAAUC,IAAE,OAAO,EAAE,SAAS,CAAE;;;ACJnF,SAAS,KAAAC,WAAS;AAKX,IAAM,qBAAqB;AAAA,EACjC;AAAA,EACAC,IAAE,aAAc;AAAA,IACf,OAAO;AAAA,IACP,OAAO;AAAA,EACR,CAAE;AACH;;;ACXA,SAAS,KAAAC,WAAS;AAIX,IAAM,kBAAkB,gBAAiB,OAAOC,IAAE,OAAO,EAAE,IAAI,EAAE,SAAS,CAAE;;;ACJnF,SAAS,KAAAC,WAAS;AAKX,IAAM,mBAAmB;AAAA,EAC/B;AAAA,EACAC,IAAE,aAAc;AAAA,IACf,SAASA,IAAE,QAAQ;AAAA,IACnB,MAAM,gBAAgB;AAAA,IACtB,eAAeA,IAAE,QAAQ;AAAA,EAC1B,CAAE;AACH;;;ACZA,SAAS,KAAAC,WAAS;AAIX,IAAM,kBAAkB;AAAA,EAC9B;AAAA,EACAC,IAAE,OAAQ;AAAA,IACT,UAAUA,IAAE,QAAQ;AAAA,IACpB,KAAKA,IAAE,IAAI;AAAA,IACX,QAAQA,IAAE,IAAI;AAAA,EACf,CAAE;AACH;;;ACXA,SAAS,KAAAC,WAAS;AAKX,IAAM,yBAAyB;AAAA,EACrC;AAAA,EACAC,IAAE,aAAc;AAAA,IACf,OAAO;AAAA,IACP,sBAAsB;AAAA,EACvB,CAAE;AACH;;;ACXA,SAAS,KAAAC,WAAS;;;ACAlB,SAAS,KAAAC,WAAS;AAIX,IAAM,qCAAqC,gBAAiB,4BAA4BC,IAAE,OAAO,CAAE;;;ACCnG,IAAM,wCAAwC;AAAA,EACpD;AAAA,EACA;AACD;;;ACHO,IAAM,qCAAqC,gBAAiB,4BAA4B,qBAAsB;;;AHErH,IAAM,wBAAwB,mCAAmC,OAC/D,GAAI,sCAAsC,MAAO,EACjD,GAAI,mCAAmC,MAAO;AAEzC,IAAM,gCAAgC,gBAAiB,sBAAsBC,IAAE,MAAO,qBAAsB,CAAE;;;AIXrH,SAAS,KAAAC,WAAS;AAElB,IAAM,sBAAsBA,IAAE,OAAQ;AAAA,EACrC,QAAQA,IAAE,OAAO;AAAA,EACjB,OAAOA,IAAE,IAAI;AAAA,EACb,UAAUA,IAAE,QAAQ,EAAE,SAAS;AAChC,CAAE;AAIK,IAAM,kBAAkB,CAAE,UAAqD;AACrF,SAAO,oBAAoB,UAAW,KAAM,EAAE;AAC/C;","names":["z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z","z"]}
|
package/package.json
CHANGED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { z } from '@elementor/schema';
|
|
2
|
+
|
|
3
|
+
import { createPropUtils } from '../../utils/create-prop-utils';
|
|
4
|
+
|
|
5
|
+
export const backgroundColorOverlayPropTypeUtil = createPropUtils( 'background-color-overlay', z.string() );
|
|
6
|
+
|
|
7
|
+
export type BackgroundColorOverlayPropValue = z.infer< typeof backgroundColorOverlayPropTypeUtil.schema >;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { type z } from '@elementor/schema';
|
|
2
|
+
|
|
3
|
+
import { createPropUtils } from '../../utils/create-prop-utils';
|
|
4
|
+
import { unknownChildrenSchema } from '../utils';
|
|
5
|
+
|
|
6
|
+
export const backgroundGradientOverlayPropTypeUtil = createPropUtils(
|
|
7
|
+
'background-gradient-overlay',
|
|
8
|
+
unknownChildrenSchema
|
|
9
|
+
);
|
|
10
|
+
|
|
11
|
+
export type BackgroundGradientOverlayPropValue = z.infer< typeof backgroundGradientOverlayPropTypeUtil.schema >;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { type z } from '@elementor/schema';
|
|
2
|
+
|
|
3
|
+
import { createPropUtils } from '../../utils/create-prop-utils';
|
|
4
|
+
import { unknownChildrenSchema } from '../utils';
|
|
5
|
+
|
|
6
|
+
export const backgroundImageOverlayPropTypeUtil = createPropUtils( 'background-image-overlay', unknownChildrenSchema );
|
|
7
|
+
|
|
8
|
+
export type BackgroundImageOverlayPropValue = z.infer< typeof backgroundImageOverlayPropTypeUtil.schema >;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { z } from '@elementor/schema';
|
|
2
|
+
|
|
3
|
+
import { createPropUtils } from '../../utils/create-prop-utils';
|
|
4
|
+
import { backgroundColorOverlayPropTypeUtil } from './background-color-overlay';
|
|
5
|
+
import { backgroundGradientOverlayPropTypeUtil } from './background-gradient-overlay';
|
|
6
|
+
import { backgroundImageOverlayPropTypeUtil } from './background-image-overlay';
|
|
7
|
+
|
|
8
|
+
const backgroundOverlayItem = backgroundColorOverlayPropTypeUtil.schema
|
|
9
|
+
.or( backgroundGradientOverlayPropTypeUtil.schema )
|
|
10
|
+
.or( backgroundImageOverlayPropTypeUtil.schema );
|
|
11
|
+
|
|
12
|
+
export const backgroundOverlayPropTypeUtil = createPropUtils( 'background-overlay', z.array( backgroundOverlayItem ) );
|
|
13
|
+
|
|
14
|
+
export type BackgroundOverlayPropValue = z.infer< typeof backgroundOverlayPropTypeUtil.schema >;
|
|
15
|
+
export type BackgroundOverlayItemPropValue = z.infer< typeof backgroundOverlayItem >;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { z } from '@elementor/schema';
|
|
2
|
+
|
|
3
|
+
import { createPropUtils } from '../../utils/create-prop-utils';
|
|
4
|
+
import { unknownChildrenSchema } from '../utils';
|
|
5
|
+
|
|
6
|
+
export const backgroundPropTypeUtil = createPropUtils(
|
|
7
|
+
'background',
|
|
8
|
+
z.strictObject( {
|
|
9
|
+
color: unknownChildrenSchema,
|
|
10
|
+
'background-overlay': unknownChildrenSchema,
|
|
11
|
+
} )
|
|
12
|
+
);
|
|
13
|
+
|
|
14
|
+
export type BackgroundPropValue = z.infer< typeof backgroundPropTypeUtil.schema >;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { z } from '@elementor/schema';
|
|
2
|
+
|
|
3
|
+
import { createPropUtils } from '../utils/create-prop-utils';
|
|
4
|
+
|
|
5
|
+
export const gapPropTypeUtil = createPropUtils(
|
|
6
|
+
'gap',
|
|
7
|
+
z.object( {
|
|
8
|
+
isLinked: z.boolean(),
|
|
9
|
+
row: z.any(),
|
|
10
|
+
column: z.any(),
|
|
11
|
+
} )
|
|
12
|
+
);
|
|
13
|
+
|
|
14
|
+
export type GapPropValue = z.infer< typeof gapPropTypeUtil.schema >;
|
package/src/prop-types/index.ts
CHANGED
|
@@ -13,6 +13,8 @@ export * from './size';
|
|
|
13
13
|
export * from './string';
|
|
14
14
|
export * from './stroke';
|
|
15
15
|
export * from './url';
|
|
16
|
-
export * from './color-gradient';
|
|
17
|
-
export * from './background-image';
|
|
18
16
|
export * from './link';
|
|
17
|
+
export * from './gaps';
|
|
18
|
+
export * from './background-prop-types/background';
|
|
19
|
+
export * from './background-prop-types/background-overlay';
|
|
20
|
+
export * from './background-prop-types/background-color-overlay';
|
package/src/types.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { z, type ZodType
|
|
1
|
+
import { z, type ZodType } from '@elementor/schema';
|
|
2
2
|
|
|
3
|
-
import { type PropValue } from '../types';
|
|
3
|
+
import { type PropValue, type TransformablePropValue } from '../types';
|
|
4
4
|
|
|
5
5
|
type Updater< T > = ( prev?: T ) => T;
|
|
6
6
|
|
|
@@ -9,6 +9,10 @@ export type CreateOptions = {
|
|
|
9
9
|
disabled?: boolean;
|
|
10
10
|
};
|
|
11
11
|
|
|
12
|
+
export type PropTypeUtil< TKey extends string, TValue extends PropValue > = ReturnType<
|
|
13
|
+
typeof createPropUtils< TKey, TValue >
|
|
14
|
+
>;
|
|
15
|
+
|
|
12
16
|
/**
|
|
13
17
|
* Usage example:
|
|
14
18
|
*
|
|
@@ -24,30 +28,27 @@ export type CreateOptions = {
|
|
|
24
28
|
* ```
|
|
25
29
|
*/
|
|
26
30
|
|
|
27
|
-
export
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
export function createPropUtils< TKey extends string, TValue extends ZodTypeAny >( key: TKey, valueSchema: TValue ) {
|
|
31
|
+
export function createPropUtils< TKey extends string, TValue extends PropValue >(
|
|
32
|
+
key: TKey,
|
|
33
|
+
valueSchema: ZodType< TValue >
|
|
34
|
+
) {
|
|
32
35
|
const schema = z.strictObject( {
|
|
33
36
|
$$type: z.literal( key ),
|
|
34
37
|
value: valueSchema,
|
|
35
38
|
disabled: z.boolean().optional(),
|
|
36
39
|
} );
|
|
37
40
|
|
|
38
|
-
type Prop =
|
|
39
|
-
|
|
40
|
-
type TPropValue = z.infer< typeof valueSchema >;
|
|
41
|
+
type Prop = TransformablePropValue< TKey, TValue >;
|
|
41
42
|
|
|
42
43
|
function isValid( prop: unknown ): prop is Prop {
|
|
43
44
|
return schema.safeParse( prop ).success;
|
|
44
45
|
}
|
|
45
46
|
|
|
46
|
-
function create( value:
|
|
47
|
-
function create( value:
|
|
48
|
-
function create( value: Updater<
|
|
49
|
-
function create( value:
|
|
50
|
-
const fn = ( typeof value === 'function' ? value : () => value ) as Updater<
|
|
47
|
+
function create( value: TValue ): Prop;
|
|
48
|
+
function create( value: TValue, createOptions?: CreateOptions ): Prop;
|
|
49
|
+
function create( value: Updater< TValue >, createOptions: CreateOptions ): Prop;
|
|
50
|
+
function create( value: TValue | Updater< TValue >, createOptions?: CreateOptions ): Prop {
|
|
51
|
+
const fn = ( typeof value === 'function' ? value : () => value ) as Updater< TValue >;
|
|
51
52
|
|
|
52
53
|
const { base, disabled } = createOptions || {};
|
|
53
54
|
|
|
@@ -56,7 +57,7 @@ export function createPropUtils< TKey extends string, TValue extends ZodTypeAny
|
|
|
56
57
|
$$type: key,
|
|
57
58
|
value: fn(),
|
|
58
59
|
...( disabled && { disabled } ),
|
|
59
|
-
}
|
|
60
|
+
};
|
|
60
61
|
}
|
|
61
62
|
|
|
62
63
|
if ( ! isValid( base ) ) {
|
|
@@ -67,10 +68,10 @@ export function createPropUtils< TKey extends string, TValue extends ZodTypeAny
|
|
|
67
68
|
$$type: key,
|
|
68
69
|
value: fn( base.value ),
|
|
69
70
|
...( disabled && { disabled } ),
|
|
70
|
-
}
|
|
71
|
+
};
|
|
71
72
|
}
|
|
72
73
|
|
|
73
|
-
function extract( prop: unknown ):
|
|
74
|
+
function extract( prop: unknown ): TValue | null {
|
|
74
75
|
if ( ! isValid( prop ) ) {
|
|
75
76
|
return null;
|
|
76
77
|
}
|
|
@@ -82,7 +83,6 @@ export function createPropUtils< TKey extends string, TValue extends ZodTypeAny
|
|
|
82
83
|
extract,
|
|
83
84
|
isValid,
|
|
84
85
|
create,
|
|
85
|
-
|
|
86
|
-
schema: schema as ZodType< Prop >,
|
|
86
|
+
schema,
|
|
87
87
|
};
|
|
88
88
|
}
|