@elementor/editor-props 3.35.0-325 → 3.35.0-326
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/dist/index.d.mts +17 -2
- package/dist/index.d.ts +17 -2
- package/dist/index.js +18 -6
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +18 -6
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -2
- package/src/prop-types/link.ts +1 -0
- package/src/types.ts +2 -0
- package/src/utils/prop-dependency-utils.ts +25 -7
package/dist/index.d.mts
CHANGED
|
@@ -5,12 +5,14 @@ type DependencyOperator = 'lt' | 'lte' | 'eq' | 'ne' | 'gte' | 'gt' | 'exists' |
|
|
|
5
5
|
type DependencyTerm = {
|
|
6
6
|
operator: DependencyOperator;
|
|
7
7
|
path: string[];
|
|
8
|
+
nestedPath?: string[];
|
|
8
9
|
value: PropValue;
|
|
9
10
|
newValue?: TransformablePropValue$1<string>;
|
|
10
11
|
};
|
|
11
12
|
type Dependency = {
|
|
12
13
|
relation: 'or' | 'and';
|
|
13
14
|
terms: (DependencyTerm | Dependency)[];
|
|
15
|
+
newValue?: TransformablePropValue$1<string>;
|
|
14
16
|
};
|
|
15
17
|
type BasePropTypeMeta = {
|
|
16
18
|
description?: string;
|
|
@@ -1477,35 +1479,44 @@ declare const linkPropTypeUtil: {
|
|
|
1477
1479
|
extract: (prop: unknown) => {
|
|
1478
1480
|
destination?: any;
|
|
1479
1481
|
isTargetBlank?: any;
|
|
1482
|
+
tag?: any;
|
|
1480
1483
|
} | null;
|
|
1481
1484
|
isValid: (prop: unknown) => prop is TransformablePropValue$1<"link", {
|
|
1482
1485
|
destination?: any;
|
|
1483
1486
|
isTargetBlank?: any;
|
|
1487
|
+
tag?: any;
|
|
1484
1488
|
}>;
|
|
1485
1489
|
create: {
|
|
1486
1490
|
(value: {
|
|
1487
1491
|
destination?: any;
|
|
1488
1492
|
isTargetBlank?: any;
|
|
1493
|
+
tag?: any;
|
|
1489
1494
|
}): TransformablePropValue$1<"link", {
|
|
1490
1495
|
destination?: any;
|
|
1491
1496
|
isTargetBlank?: any;
|
|
1497
|
+
tag?: any;
|
|
1492
1498
|
}>;
|
|
1493
1499
|
(value: {
|
|
1494
1500
|
destination?: any;
|
|
1495
1501
|
isTargetBlank?: any;
|
|
1502
|
+
tag?: any;
|
|
1496
1503
|
}, createOptions?: CreateOptions): TransformablePropValue$1<"link", {
|
|
1497
1504
|
destination?: any;
|
|
1498
1505
|
isTargetBlank?: any;
|
|
1506
|
+
tag?: any;
|
|
1499
1507
|
}>;
|
|
1500
1508
|
(value: (prev?: {
|
|
1501
1509
|
destination?: any;
|
|
1502
1510
|
isTargetBlank?: any;
|
|
1511
|
+
tag?: any;
|
|
1503
1512
|
} | undefined) => {
|
|
1504
1513
|
destination?: any;
|
|
1505
1514
|
isTargetBlank?: any;
|
|
1515
|
+
tag?: any;
|
|
1506
1516
|
}, createOptions: CreateOptions): TransformablePropValue$1<"link", {
|
|
1507
1517
|
destination?: any;
|
|
1508
1518
|
isTargetBlank?: any;
|
|
1519
|
+
tag?: any;
|
|
1509
1520
|
}>;
|
|
1510
1521
|
};
|
|
1511
1522
|
schema: z.ZodObject<{
|
|
@@ -1513,9 +1524,11 @@ declare const linkPropTypeUtil: {
|
|
|
1513
1524
|
value: z.ZodType<{
|
|
1514
1525
|
destination?: any;
|
|
1515
1526
|
isTargetBlank?: any;
|
|
1527
|
+
tag?: any;
|
|
1516
1528
|
}, z.ZodTypeDef, {
|
|
1517
1529
|
destination?: any;
|
|
1518
1530
|
isTargetBlank?: any;
|
|
1531
|
+
tag?: any;
|
|
1519
1532
|
}>;
|
|
1520
1533
|
disabled: z.ZodOptional<z.ZodBoolean>;
|
|
1521
1534
|
}, "strict", z.ZodTypeAny, {
|
|
@@ -1523,6 +1536,7 @@ declare const linkPropTypeUtil: {
|
|
|
1523
1536
|
value: {
|
|
1524
1537
|
destination?: any;
|
|
1525
1538
|
isTargetBlank?: any;
|
|
1539
|
+
tag?: any;
|
|
1526
1540
|
};
|
|
1527
1541
|
disabled?: boolean | undefined;
|
|
1528
1542
|
}, {
|
|
@@ -1530,6 +1544,7 @@ declare const linkPropTypeUtil: {
|
|
|
1530
1544
|
value: {
|
|
1531
1545
|
destination?: any;
|
|
1532
1546
|
isTargetBlank?: any;
|
|
1547
|
+
tag?: any;
|
|
1533
1548
|
};
|
|
1534
1549
|
disabled?: boolean | undefined;
|
|
1535
1550
|
}>;
|
|
@@ -6130,10 +6145,10 @@ declare function isDependencyMet(dependency: Dependency | undefined, values: Pro
|
|
|
6130
6145
|
isMet: true;
|
|
6131
6146
|
} | {
|
|
6132
6147
|
isMet: false;
|
|
6133
|
-
failingDependencies: DependencyTerm[];
|
|
6148
|
+
failingDependencies: (DependencyTerm | Dependency)[];
|
|
6134
6149
|
};
|
|
6135
6150
|
declare function evaluateTerm(term: DependencyTerm, actualValue: unknown): boolean;
|
|
6136
|
-
declare function extractValue(path: string[], elementValues: PropValue): TransformablePropValue$1<PropKey> | null;
|
|
6151
|
+
declare function extractValue(path: string[], elementValues: PropValue, nestedPath?: string[]): TransformablePropValue$1<PropKey> | null;
|
|
6137
6152
|
declare function isDependency(term: DependencyTerm | Dependency): term is Dependency;
|
|
6138
6153
|
|
|
6139
6154
|
declare const Schema: {
|
package/dist/index.d.ts
CHANGED
|
@@ -5,12 +5,14 @@ type DependencyOperator = 'lt' | 'lte' | 'eq' | 'ne' | 'gte' | 'gt' | 'exists' |
|
|
|
5
5
|
type DependencyTerm = {
|
|
6
6
|
operator: DependencyOperator;
|
|
7
7
|
path: string[];
|
|
8
|
+
nestedPath?: string[];
|
|
8
9
|
value: PropValue;
|
|
9
10
|
newValue?: TransformablePropValue$1<string>;
|
|
10
11
|
};
|
|
11
12
|
type Dependency = {
|
|
12
13
|
relation: 'or' | 'and';
|
|
13
14
|
terms: (DependencyTerm | Dependency)[];
|
|
15
|
+
newValue?: TransformablePropValue$1<string>;
|
|
14
16
|
};
|
|
15
17
|
type BasePropTypeMeta = {
|
|
16
18
|
description?: string;
|
|
@@ -1477,35 +1479,44 @@ declare const linkPropTypeUtil: {
|
|
|
1477
1479
|
extract: (prop: unknown) => {
|
|
1478
1480
|
destination?: any;
|
|
1479
1481
|
isTargetBlank?: any;
|
|
1482
|
+
tag?: any;
|
|
1480
1483
|
} | null;
|
|
1481
1484
|
isValid: (prop: unknown) => prop is TransformablePropValue$1<"link", {
|
|
1482
1485
|
destination?: any;
|
|
1483
1486
|
isTargetBlank?: any;
|
|
1487
|
+
tag?: any;
|
|
1484
1488
|
}>;
|
|
1485
1489
|
create: {
|
|
1486
1490
|
(value: {
|
|
1487
1491
|
destination?: any;
|
|
1488
1492
|
isTargetBlank?: any;
|
|
1493
|
+
tag?: any;
|
|
1489
1494
|
}): TransformablePropValue$1<"link", {
|
|
1490
1495
|
destination?: any;
|
|
1491
1496
|
isTargetBlank?: any;
|
|
1497
|
+
tag?: any;
|
|
1492
1498
|
}>;
|
|
1493
1499
|
(value: {
|
|
1494
1500
|
destination?: any;
|
|
1495
1501
|
isTargetBlank?: any;
|
|
1502
|
+
tag?: any;
|
|
1496
1503
|
}, createOptions?: CreateOptions): TransformablePropValue$1<"link", {
|
|
1497
1504
|
destination?: any;
|
|
1498
1505
|
isTargetBlank?: any;
|
|
1506
|
+
tag?: any;
|
|
1499
1507
|
}>;
|
|
1500
1508
|
(value: (prev?: {
|
|
1501
1509
|
destination?: any;
|
|
1502
1510
|
isTargetBlank?: any;
|
|
1511
|
+
tag?: any;
|
|
1503
1512
|
} | undefined) => {
|
|
1504
1513
|
destination?: any;
|
|
1505
1514
|
isTargetBlank?: any;
|
|
1515
|
+
tag?: any;
|
|
1506
1516
|
}, createOptions: CreateOptions): TransformablePropValue$1<"link", {
|
|
1507
1517
|
destination?: any;
|
|
1508
1518
|
isTargetBlank?: any;
|
|
1519
|
+
tag?: any;
|
|
1509
1520
|
}>;
|
|
1510
1521
|
};
|
|
1511
1522
|
schema: z.ZodObject<{
|
|
@@ -1513,9 +1524,11 @@ declare const linkPropTypeUtil: {
|
|
|
1513
1524
|
value: z.ZodType<{
|
|
1514
1525
|
destination?: any;
|
|
1515
1526
|
isTargetBlank?: any;
|
|
1527
|
+
tag?: any;
|
|
1516
1528
|
}, z.ZodTypeDef, {
|
|
1517
1529
|
destination?: any;
|
|
1518
1530
|
isTargetBlank?: any;
|
|
1531
|
+
tag?: any;
|
|
1519
1532
|
}>;
|
|
1520
1533
|
disabled: z.ZodOptional<z.ZodBoolean>;
|
|
1521
1534
|
}, "strict", z.ZodTypeAny, {
|
|
@@ -1523,6 +1536,7 @@ declare const linkPropTypeUtil: {
|
|
|
1523
1536
|
value: {
|
|
1524
1537
|
destination?: any;
|
|
1525
1538
|
isTargetBlank?: any;
|
|
1539
|
+
tag?: any;
|
|
1526
1540
|
};
|
|
1527
1541
|
disabled?: boolean | undefined;
|
|
1528
1542
|
}, {
|
|
@@ -1530,6 +1544,7 @@ declare const linkPropTypeUtil: {
|
|
|
1530
1544
|
value: {
|
|
1531
1545
|
destination?: any;
|
|
1532
1546
|
isTargetBlank?: any;
|
|
1547
|
+
tag?: any;
|
|
1533
1548
|
};
|
|
1534
1549
|
disabled?: boolean | undefined;
|
|
1535
1550
|
}>;
|
|
@@ -6130,10 +6145,10 @@ declare function isDependencyMet(dependency: Dependency | undefined, values: Pro
|
|
|
6130
6145
|
isMet: true;
|
|
6131
6146
|
} | {
|
|
6132
6147
|
isMet: false;
|
|
6133
|
-
failingDependencies: DependencyTerm[];
|
|
6148
|
+
failingDependencies: (DependencyTerm | Dependency)[];
|
|
6134
6149
|
};
|
|
6135
6150
|
declare function evaluateTerm(term: DependencyTerm, actualValue: unknown): boolean;
|
|
6136
|
-
declare function extractValue(path: string[], elementValues: PropValue): TransformablePropValue$1<PropKey> | null;
|
|
6151
|
+
declare function extractValue(path: string[], elementValues: PropValue, nestedPath?: string[]): TransformablePropValue$1<PropKey> | null;
|
|
6137
6152
|
declare function isDependency(term: DependencyTerm | Dependency): term is Dependency;
|
|
6138
6153
|
|
|
6139
6154
|
declare const Schema: {
|
package/dist/index.js
CHANGED
|
@@ -323,7 +323,8 @@ var linkPropTypeUtil = createPropUtils(
|
|
|
323
323
|
"link",
|
|
324
324
|
import_schema20.z.strictObject({
|
|
325
325
|
destination: unknownChildrenSchema,
|
|
326
|
-
isTargetBlank: unknownChildrenSchema
|
|
326
|
+
isTargetBlank: unknownChildrenSchema,
|
|
327
|
+
tag: unknownChildrenSchema
|
|
327
328
|
})
|
|
328
329
|
);
|
|
329
330
|
|
|
@@ -956,8 +957,8 @@ function isDependencyMet(dependency, values) {
|
|
|
956
957
|
const failingDependencies = [];
|
|
957
958
|
const isMet = terms[method]((term) => {
|
|
958
959
|
const isNestedDependency = isDependency(term);
|
|
959
|
-
const result = isNestedDependency ? isDependencyMet(term, values).isMet : evaluateTerm(term, extractValue(term.path, values)?.value);
|
|
960
|
-
if (!result
|
|
960
|
+
const result = isNestedDependency ? isDependencyMet(term, values).isMet : evaluateTerm(term, extractValue(term.path, values, term.nestedPath)?.value);
|
|
961
|
+
if (!result) {
|
|
961
962
|
failingDependencies.push(term);
|
|
962
963
|
}
|
|
963
964
|
return result;
|
|
@@ -1015,14 +1016,25 @@ function getRelationMethod(relation) {
|
|
|
1015
1016
|
throw new Error(`Relation not supported ${relation}`);
|
|
1016
1017
|
}
|
|
1017
1018
|
}
|
|
1018
|
-
function extractValue(path, elementValues) {
|
|
1019
|
-
|
|
1019
|
+
function extractValue(path, elementValues, nestedPath = []) {
|
|
1020
|
+
const extractedValue = path.reduce((acc, key, index) => {
|
|
1020
1021
|
const value = acc?.[key];
|
|
1021
1022
|
return index !== path.length - 1 && isTransformable(value) ? value.value ?? null : value;
|
|
1022
1023
|
}, elementValues);
|
|
1024
|
+
if (!nestedPath?.length) {
|
|
1025
|
+
return extractedValue;
|
|
1026
|
+
}
|
|
1027
|
+
const nestedValue = nestedPath.reduce(
|
|
1028
|
+
(acc, key) => acc?.[key],
|
|
1029
|
+
extractedValue?.value
|
|
1030
|
+
);
|
|
1031
|
+
return {
|
|
1032
|
+
$$type: "unknown",
|
|
1033
|
+
value: nestedValue
|
|
1034
|
+
};
|
|
1023
1035
|
}
|
|
1024
1036
|
function isDependency(term) {
|
|
1025
|
-
return "
|
|
1037
|
+
return "terms" in term;
|
|
1026
1038
|
}
|
|
1027
1039
|
|
|
1028
1040
|
// src/index.ts
|
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/flex.ts","../src/prop-types/image.ts","../src/prop-types/image-attachment-id.ts","../src/prop-types/image-src.ts","../src/prop-types/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/layout-direction.ts","../src/prop-types/link.ts","../src/prop-types/selection-size.ts","../src/prop-types/key-value.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/prop-types/background-prop-types/background-image-position-offset.ts","../src/prop-types/background-prop-types/background-image-size-scale.ts","../src/prop-types/boolean.ts","../src/prop-types/color-stop.ts","../src/prop-types/gradient-color-stop.ts","../src/prop-types/date-time.ts","../src/prop-types/position.ts","../src/prop-types/query.ts","../src/prop-types/html.ts","../src/prop-types/filter-prop-types/filter.ts","../src/prop-types/filter-prop-types/drop-shadow-filter.ts","../src/prop-types/filter-prop-types/filter-functions/blur-filter.ts","../src/prop-types/filter-prop-types/filter-functions/color-tone-filter.ts","../src/prop-types/filter-prop-types/filter-functions/hue-rotate-filter.ts","../src/prop-types/filter-prop-types/filter-functions/intensity-filter.ts","../src/prop-types/transform-prop-types/transform.ts","../src/prop-types/transform-prop-types/transform-functions.ts","../src/prop-types/transform-prop-types/transform-functions/move-transform.ts","../src/prop-types/transform-prop-types/types.ts","../src/prop-types/transform-prop-types/transform-functions/rotate-transform.ts","../src/prop-types/transform-prop-types/transform-functions/scale-transform.ts","../src/prop-types/transform-prop-types/transform-functions/skew-transform.ts","../src/prop-types/transform-prop-types/transform-origin.ts","../src/prop-types/transform-prop-types/perspective-origin.ts","../src/prop-types/filter-prop-types/backdrop-filter.ts","../src/utils/adjust-llm-prop-value-schema.ts","../src/utils/llm-schema-to-props.ts","../src/utils/props-to-llm-schema.ts","../src/utils/is-transformable.ts","../src/utils/filter-empty-values.ts","../src/utils/merge-props.ts","../src/utils/prop-dependency-utils.ts"],"sourcesContent":["import { adjustLlmPropValueSchema } from './utils/adjust-llm-prop-value-schema';\nimport { jsonSchemaToPropType } from './utils/llm-schema-to-props';\nimport {\n\tconfigurableKeys,\n\tisPropKeyConfigurable,\n\tnonConfigurablePropKeys,\n\tpropTypeToJsonSchema,\n} from './utils/props-to-llm-schema';\n\nexport { type JsonSchema7 } from './utils/prop-json-schema';\n\n// types\nexport * from './types';\nexport { type CreateOptions, type PropTypeUtil } from './utils/create-prop-utils';\n\n// prop types\nexport * from './prop-types';\n\n// utils\nexport { createArrayPropUtils, createPropUtils, getPropSchemaFromCache } from './utils/create-prop-utils';\nexport { filterEmptyValues, isEmpty } from './utils/filter-empty-values';\nexport { isTransformable } from './utils/is-transformable';\nexport { mergeProps } from './utils/merge-props';\nexport { evaluateTerm, extractValue, isDependency, isDependencyMet } from './utils/prop-dependency-utils';\n\nexport const Schema = {\n\tjsonSchemaToPropType,\n\tpropTypeToJsonSchema,\n\tadjustLlmPropValueSchema,\n\tisPropKeyConfigurable,\n\tnonConfigurablePropKeys,\n\tconfigurableKeys,\n};\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\nconst SCHEMA_CACHE = new Map< string, unknown >();\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 getPropSchemaFromCache( key: string ) {\n\treturn SCHEMA_CACHE.get( key ) as PropTypeUtil< string, PropValue > | undefined;\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\tconst propUtil = {\n\t\textract,\n\t\tisValid,\n\t\tcreate,\n\t\tschema,\n\t\tkey: key as TKey,\n\t};\n\n\tSCHEMA_CACHE.set( key, propUtil );\n\treturn propUtil;\n}\n\nexport function createArrayPropUtils< TKey extends string, TValue extends PropValue >(\n\tkey: TKey,\n\tvalueSchema: ZodType< TValue >,\n\toverrideKey?: string\n) {\n\treturn createPropUtils( overrideKey || `${ key }-array`, z.array( valueSchema ) );\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'start-start': unknownChildrenSchema,\n\t\t'start-end': unknownChildrenSchema,\n\t\t'end-start': unknownChildrenSchema,\n\t\t'end-end': 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\t'block-start': unknownChildrenSchema,\n\t\t'block-end': unknownChildrenSchema,\n\t\t'inline-start': unknownChildrenSchema,\n\t\t'inline-end': 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 CLASSES_PROP_KEY = 'classes';\n\nexport const classesPropTypeUtil = createPropUtils(\n\tCLASSES_PROP_KEY,\n\tz.array( z.string().regex( /^[a-z][a-z-_0-9]*$/i ) )\n);\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 flexPropTypeUtil = createPropUtils(\n\t'flex',\n\tz.strictObject( {\n\t\tflexGrow: unknownChildrenSchema,\n\t\tflexShrink: unknownChildrenSchema,\n\t\tflexBasis: unknownChildrenSchema,\n\t} )\n);\n\nexport type FlexPropValue = z.infer< typeof flexPropTypeUtil.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 dimensionsPropTypeUtil = createPropUtils(\n\t'dimensions',\n\tz.strictObject( {\n\t\t'block-start': unknownChildrenSchema,\n\t\t'block-end': unknownChildrenSchema,\n\t\t'inline-start': unknownChildrenSchema,\n\t\t'inline-end': unknownChildrenSchema,\n\t} )\n);\n\nexport type DimensionsPropValue = z.infer< typeof dimensionsPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const numberPropTypeUtil = createPropUtils( 'number', z.number().nullable() );\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\n\t\t.strictObject( {\n\t\t\tunit: z.enum( [ 'px', 'em', 'rem', '%', 'vw', 'vh' ] ),\n\t\t\tsize: z.number(),\n\t\t} )\n\t\t.or(\n\t\t\tz.strictObject( {\n\t\t\t\tunit: z.enum( [ 'deg', 'rad', 'grad', 'turn' ] ),\n\t\t\t\tsize: z.number(),\n\t\t\t} )\n\t\t)\n\t\t.or(\n\t\t\tz.strictObject( {\n\t\t\t\tunit: z.enum( [ 's', 'ms' ] ),\n\t\t\t\tsize: z.number(),\n\t\t\t} )\n\t\t)\n\t\t.or(\n\t\t\tz.strictObject( {\n\t\t\t\tunit: z.literal( 'auto' ),\n\t\t\t\tsize: z.literal( '' ),\n\t\t\t} )\n\t\t)\n\t\t.or(\n\t\t\tz.strictObject( {\n\t\t\t\tunit: z.literal( 'custom' ),\n\t\t\t\tsize: z.string(),\n\t\t\t} )\n\t\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().nullable() );\n\nexport type UrlPropValue = z.infer< typeof urlPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const layoutDirectionPropTypeUtil = createPropUtils(\n\t'layout-direction',\n\tz.object( {\n\t\trow: z.any(),\n\t\tcolumn: z.any(),\n\t} )\n);\n\nexport type LayoutDirectionPropValue = z.infer< typeof layoutDirectionPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const linkPropTypeUtil = createPropUtils(\n\t'link',\n\tz.strictObject( {\n\t\tdestination: unknownChildrenSchema,\n\t\tisTargetBlank: unknownChildrenSchema,\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';\nimport { keyValuePropTypeUtil } from './key-value';\nimport { stringPropTypeUtil } from './string';\nimport { unknownChildrenSchema } from './utils';\n\nexport const selectionSizePropTypeUtil = createPropUtils(\n\t'selection-size',\n\tz.strictObject( {\n\t\tselection: z.union( [ keyValuePropTypeUtil.schema, stringPropTypeUtil.schema ] ),\n\t\tsize: unknownChildrenSchema,\n\t} )\n);\n\nexport type SelectionSizePropValue = z.infer< typeof selectionSizePropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const keyValuePropTypeUtil = createPropUtils(\n\t'key-value',\n\tz.strictObject( {\n\t\tkey: unknownChildrenSchema,\n\t\tvalue: unknownChildrenSchema,\n\t} )\n);\n\nexport type KeyValuePropValue = z.infer< typeof keyValuePropTypeUtil.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\tclip: 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\nexport const 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 { type z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const backgroundColorOverlayPropTypeUtil = createPropUtils( 'background-color-overlay', unknownChildrenSchema );\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 { type z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const backgroundImagePositionOffsetPropTypeUtil = createPropUtils(\n\t'background-image-position-offset',\n\tunknownChildrenSchema\n);\n\nexport type BackgroundImagePositionOffsetPropValue = z.infer< typeof backgroundImagePositionOffsetPropTypeUtil.schema >;\n","import { type z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const backgroundImageSizeScalePropTypeUtil = createPropUtils(\n\t'background-image-size-scale',\n\tunknownChildrenSchema\n);\n\nexport type BackgroundImageSizeScalePropValue = z.infer< typeof backgroundImageSizeScalePropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const booleanPropTypeUtil = createPropUtils( 'boolean', z.boolean().nullable() );\n\nexport type BooleanPropValue = z.infer< typeof booleanPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const colorStopPropTypeUtil = createPropUtils(\n\t'color-stop',\n\tz.strictObject( {\n\t\tcolor: unknownChildrenSchema,\n\t\toffset: unknownChildrenSchema,\n\t} )\n);\n\nexport type ColorStopPropValue = z.infer< typeof colorStopPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { colorStopPropTypeUtil } from './color-stop';\n\nexport const gradientColorStopPropTypeUtil = createPropUtils(\n\t'gradient-color-stop',\n\tz.array( colorStopPropTypeUtil.schema )\n);\n\nexport type GradientColorStopPropValue = z.infer< typeof gradientColorStopPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const DateTimePropTypeUtil = createPropUtils(\n\t'date-time',\n\tz.strictObject( {\n\t\tdate: unknownChildrenSchema,\n\t\ttime: unknownChildrenSchema,\n\t} )\n);\n\nexport type DateTimePropValue = z.infer< typeof DateTimePropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const positionPropTypeUtil = createPropUtils(\n\t'object-position',\n\tz.strictObject( {\n\t\tx: unknownChildrenSchema,\n\t\ty: unknownChildrenSchema,\n\t} )\n);\n\nexport type PositionPropTypeValue = z.infer< typeof positionPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const queryPropTypeUtil = createPropUtils(\n\t'query',\n\tz.strictObject( {\n\t\tid: unknownChildrenSchema,\n\t\tlabel: unknownChildrenSchema,\n\t} )\n);\n\nexport type QueryPropValue = z.infer< typeof queryPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const htmlPropTypeUtil = createPropUtils( 'html', z.string().nullable() );\n\nexport type HtmlPropValue = z.infer< typeof htmlPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { stringPropTypeUtil } from '../string';\nimport { dropShadowFilterPropTypeUtil } from './drop-shadow-filter';\nimport { blurFilterPropTypeUtil } from './filter-functions/blur-filter';\nimport { colorToneFilterPropTypeUtil } from './filter-functions/color-tone-filter';\nimport { hueRotateFilterPropTypeUtil } from './filter-functions/hue-rotate-filter';\nimport { intensityFilterPropTypeUtil } from './filter-functions/intensity-filter';\n\nexport const cssFilterFunctionPropUtil = createPropUtils(\n\t'css-filter-func',\n\tz.object( {\n\t\tfunc: stringPropTypeUtil.schema,\n\t\targs: z.union( [\n\t\t\tblurFilterPropTypeUtil.schema,\n\t\t\tintensityFilterPropTypeUtil.schema,\n\t\t\tcolorToneFilterPropTypeUtil.schema,\n\t\t\thueRotateFilterPropTypeUtil.schema,\n\t\t\tdropShadowFilterPropTypeUtil.schema,\n\t\t] ),\n\t} )\n);\n\nexport const filterPropTypeUtil = createPropUtils( 'filter', z.array( cssFilterFunctionPropUtil.schema ) );\n\nexport type FilterItemPropValue = z.infer< typeof cssFilterFunctionPropUtil.schema >;\n\nexport type FilterPropValue = z.infer< typeof filterPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const dropShadowFilterPropTypeUtil = createPropUtils(\n\t'drop-shadow',\n\tz.object( {\n\t\txAxis: unknownChildrenSchema,\n\t\tyAxis: unknownChildrenSchema,\n\t\tblur: unknownChildrenSchema,\n\t\tcolor: unknownChildrenSchema,\n\t} )\n);\n\nexport type DropShadowFilterPropValue = z.infer< typeof dropShadowFilterPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../../utils';\n\nexport const blurFilterPropTypeUtil = createPropUtils(\n\t'blur',\n\tz.strictObject( {\n\t\tsize: unknownChildrenSchema,\n\t} )\n);\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../../utils';\n\nexport const colorToneFilterPropTypeUtil = createPropUtils(\n\t'color-tone',\n\tz.strictObject( {\n\t\tsize: unknownChildrenSchema,\n\t} )\n);\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../../utils';\n\nexport const hueRotateFilterPropTypeUtil = createPropUtils(\n\t'hue-rotate',\n\tz.strictObject( {\n\t\tsize: unknownChildrenSchema,\n\t} )\n);\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../../utils';\n\nexport const intensityFilterPropTypeUtil = createPropUtils(\n\t'intensity',\n\tz.strictObject( {\n\t\tsize: unknownChildrenSchema,\n\t} )\n);\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const transformPropTypeUtil = createPropUtils(\n\t'transform',\n\tz.strictObject( {\n\t\t'transform-functions': unknownChildrenSchema,\n\t\t'transform-origin': unknownChildrenSchema,\n\t\tperspective: unknownChildrenSchema,\n\t\t'perspective-origin': unknownChildrenSchema,\n\t} )\n);\n\nexport type TransformPropValue = z.infer< typeof transformPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { moveTransformPropTypeUtil } from './transform-functions/move-transform';\nimport { rotateTransformPropTypeUtil } from './transform-functions/rotate-transform';\nimport { scaleTransformPropTypeUtil } from './transform-functions/scale-transform';\nimport { skewTransformPropTypeUtil } from './transform-functions/skew-transform';\n\nconst filterTypes = moveTransformPropTypeUtil.schema\n\t.or( scaleTransformPropTypeUtil.schema )\n\t.or( rotateTransformPropTypeUtil.schema )\n\t.or( skewTransformPropTypeUtil.schema );\n\nexport const transformFunctionsPropTypeUtil = createPropUtils( 'transform-functions', z.array( filterTypes ) );\n\nexport type TransformFunctionsPropValue = z.infer< typeof transformFunctionsPropTypeUtil.schema >;\n\nexport type TransformFunctionsItemPropValue = z.infer< typeof filterTypes >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../../utils';\nimport { TransformFunctionKeys } from '../types';\n\nexport const moveTransformPropTypeUtil = createPropUtils(\n\tTransformFunctionKeys.move,\n\tz.strictObject( {\n\t\tx: unknownChildrenSchema,\n\t\ty: unknownChildrenSchema,\n\t\tz: unknownChildrenSchema,\n\t} )\n);\n\nexport type MoveTransformPropValue = z.infer< typeof moveTransformPropTypeUtil.schema >;\n","type TransformFunctions = 'transform-move' | 'transform-scale' | 'transform-rotate' | 'transform-skew';\n\nexport const TransformFunctionKeys: Record< string, TransformFunctions > = {\n\tmove: 'transform-move',\n\tscale: 'transform-scale',\n\trotate: 'transform-rotate',\n\tskew: 'transform-skew',\n};\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../../utils';\nimport { TransformFunctionKeys } from '../types';\n\nexport const rotateTransformPropTypeUtil = createPropUtils(\n\tTransformFunctionKeys.rotate,\n\tz.strictObject( {\n\t\tx: unknownChildrenSchema,\n\t\ty: unknownChildrenSchema,\n\t\tz: unknownChildrenSchema,\n\t} )\n);\n\nexport type RotateTransformPropValue = z.infer< typeof rotateTransformPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { numberPropTypeUtil } from '../../number';\nimport { TransformFunctionKeys } from '../types';\n\nexport const scaleTransformPropTypeUtil = createPropUtils(\n\tTransformFunctionKeys.scale,\n\tz.strictObject( {\n\t\tx: numberPropTypeUtil.schema.nullable(),\n\t\ty: numberPropTypeUtil.schema.nullable(),\n\t\tz: numberPropTypeUtil.schema.nullable(),\n\t} )\n);\n\nexport type ScaleTransformPropValue = z.infer< typeof scaleTransformPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../../utils';\nimport { TransformFunctionKeys } from '../types';\n\nexport const skewTransformPropTypeUtil = createPropUtils(\n\tTransformFunctionKeys.skew,\n\tz.strictObject( {\n\t\tx: unknownChildrenSchema,\n\t\ty: unknownChildrenSchema,\n\t} )\n);\n\nexport type SkewTransformPropValue = z.infer< typeof skewTransformPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const transformOriginPropTypeUtil = createPropUtils(\n\t'transform-origin',\n\tz.strictObject( {\n\t\tx: unknownChildrenSchema,\n\t\ty: unknownChildrenSchema,\n\t\tz: unknownChildrenSchema,\n\t} )\n);\n\nexport type TransformOriginPropValue = z.infer< typeof transformOriginPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const perspectiveOriginPropTypeUtil = createPropUtils(\n\t'perspective-origin',\n\tz.strictObject( {\n\t\tx: unknownChildrenSchema,\n\t\ty: unknownChildrenSchema,\n\t} )\n);\n\nexport type PerspectiveOriginPropValue = z.infer< typeof perspectiveOriginPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { cssFilterFunctionPropUtil } from './filter';\n\nexport const backdropFilterPropTypeUtil = createPropUtils(\n\t'backdrop-filter',\n\tz.array( cssFilterFunctionPropUtil.schema )\n);\n\nexport type BackdropFilterPropValue = z.infer< typeof backdropFilterPropTypeUtil.schema >;\n\nexport type BackdropFilterItemPropValue = z.infer< typeof cssFilterFunctionPropUtil.schema >;\n","import { numberPropTypeUtil, type NumberPropValue, stringPropTypeUtil, type StringPropValue } from '../prop-types';\nimport { type ObjectPropValue, type PropValue, type TransformablePropValue } from '../types';\n\nconst ensureNotNull = ( v: unknown, fallback: unknown ) => ( v === null ? fallback : v );\n\nexport const adjustLlmPropValueSchema = ( value: Readonly< PropValue >, forceKey?: string ): PropValue => {\n\tconst clone = structuredClone( value );\n\n\tif ( typeof clone === 'string' ) {\n\t\treturn stringPropTypeUtil.create( clone );\n\t}\n\tif ( typeof clone === 'number' ) {\n\t\treturn numberPropTypeUtil.create( clone );\n\t}\n\t// Check for transformable types\n\tif ( clone && typeof clone === 'object' ) {\n\t\tif ( Array.isArray( clone ) ) {\n\t\t\treturn clone.map( ( item ) => adjustLlmPropValueSchema( item, forceKey ) ) as PropValue;\n\t\t}\n\t\tconst transformablePropValue = clone as TransformablePropValue< string >;\n\t\tif ( forceKey ) {\n\t\t\ttransformablePropValue.$$type = forceKey;\n\t\t}\n\n\t\tif ( ! transformablePropValue.$$type ) {\n\t\t\tthrow new Error( 'Missing $$type in property: ' + JSON.stringify( transformablePropValue ) );\n\t\t}\n\n\t\tif ( ! ( 'value' in transformablePropValue ) ) {\n\t\t\tthrow new Error( 'Missing value property in PropValue: ' + JSON.stringify( transformablePropValue ) );\n\t\t}\n\n\t\t// fix by type\n\t\tswitch ( transformablePropValue.$$type ) {\n\t\t\tcase 'size': {\n\t\t\t\tconst { value: rawSizePropValue } = transformablePropValue as TransformablePropValue<\n\t\t\t\t\tstring,\n\t\t\t\t\t{ size: StringPropValue | NumberPropValue; unit: StringPropValue }\n\t\t\t\t>;\n\t\t\t\tconst unit =\n\t\t\t\t\ttypeof rawSizePropValue.unit === 'string'\n\t\t\t\t\t\t? rawSizePropValue.unit\n\t\t\t\t\t\t: ensureNotNull( stringPropTypeUtil.extract( rawSizePropValue.unit ), 'px' );\n\t\t\t\tconst size =\n\t\t\t\t\ttypeof rawSizePropValue.size === 'string' || typeof rawSizePropValue.size === 'number'\n\t\t\t\t\t\t? rawSizePropValue.size\n\t\t\t\t\t\t: ensureNotNull(\n\t\t\t\t\t\t\t\tstringPropTypeUtil.extract( rawSizePropValue.size ),\n\t\t\t\t\t\t\t\tnumberPropTypeUtil.extract( rawSizePropValue.size )\n\t\t\t\t\t\t );\n\t\t\t\treturn {\n\t\t\t\t\t$$type: 'size',\n\t\t\t\t\tvalue: {\n\t\t\t\t\t\tunit,\n\t\t\t\t\t\tsize,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\n\t\tif ( typeof transformablePropValue.value === 'object' ) {\n\t\t\tif ( Array.isArray( transformablePropValue.value ) ) {\n\t\t\t\ttransformablePropValue.value = adjustLlmPropValueSchema(\n\t\t\t\t\ttransformablePropValue.value,\n\t\t\t\t\tundefined\n\t\t\t\t) as PropValue[];\n\t\t\t} else {\n\t\t\t\tconst { value: objectValue } = transformablePropValue as ObjectPropValue;\n\t\t\t\tconst clonedObject = clone as ObjectPropValue;\n\t\t\t\tclonedObject.value = {} as Record< string, PropValue >;\n\t\t\t\tObject.keys( objectValue ).forEach( ( key ) => {\n\t\t\t\t\tconst childProp = ( objectValue as Record< string, unknown > )[ key ];\n\t\t\t\t\t( clonedObject.value as Record< string, unknown > )[ key ] = adjustLlmPropValueSchema(\n\t\t\t\t\t\tchildProp as PropValue,\n\t\t\t\t\t\tundefined\n\t\t\t\t\t);\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\t}\n\treturn clone;\n};\n","import { type PropsSchema, type PropType } from '../types';\nimport { type JsonSchema7 } from './prop-json-schema';\n\nexport function jsonSchemaToPropType( schema: JsonSchema7, key = < string >schema.key ): PropType {\n\tconst meta: Record< string, unknown > = {};\n\n\tif ( schema.description ) {\n\t\tmeta.description = schema.description;\n\t}\n\n\t// Handle union types (anyOf)\n\tif ( schema.anyOf && Array.isArray( schema.anyOf ) ) {\n\t\treturn convertJsonSchemaToUnionPropType( schema, meta );\n\t}\n\n\t// Handle object types\n\tif ( schema.type === 'object' && schema.properties ) {\n\t\treturn convertJsonSchemaToObjectPropType( schema, meta, key );\n\t}\n\n\t// Handle array types\n\tif ( schema.type === 'array' && schema.items ) {\n\t\treturn convertJsonSchemaToArrayPropType( schema, meta, key );\n\t}\n\n\t// Handle plain types (string, number, boolean)\n\treturn convertJsonSchemaToPlainPropType( schema, meta, key );\n}\n\nfunction convertJsonSchemaToPlainPropType(\n\tschema: JsonSchema7,\n\tmeta: Record< string, unknown >,\n\tkey = < string >schema.key\n): PropType {\n\tconst settings: Record< string, unknown > = {};\n\n\t// Determine the key based on type\n\tlet propKey = key || 'string';\n\n\tif ( schema.type === 'number' ) {\n\t\tpropKey = 'number';\n\t} else if ( schema.type === 'boolean' ) {\n\t\tpropKey = 'boolean';\n\t} else if ( schema.type === 'string' ) {\n\t\tpropKey = 'string';\n\t}\n\n\t// Handle enum values\n\tif ( Array.isArray( schema.enum ) ) {\n\t\tsettings.enum = schema.enum;\n\t}\n\n\treturn {\n\t\tkind: 'plain',\n\t\tkey: propKey,\n\t\tsettings,\n\t\tmeta,\n\t} as PropType;\n}\n\n/**\n * Converts a JSON Schema anyOf to a union PropType\n * @param schema\n * @param meta\n */\nfunction convertJsonSchemaToUnionPropType( schema: JsonSchema7, meta: Record< string, unknown > ): PropType {\n\tconst propTypes: Record< string, PropType > = {};\n\n\tif ( ! schema.anyOf || ! Array.isArray( schema.anyOf ) ) {\n\t\tthrow new Error( 'Invalid anyOf schema' );\n\t}\n\n\t// Process each variant in the anyOf array\n\tfor ( const variantSchema of schema.anyOf ) {\n\t\t// Each variant should be an object with $$type and value properties\n\t\tif (\n\t\t\tvariantSchema.type === 'object' &&\n\t\t\tvariantSchema.properties &&\n\t\t\tvariantSchema.properties.$$type &&\n\t\t\tvariantSchema.properties.value\n\t\t) {\n\t\t\tconst typeProperty = variantSchema.properties.$$type;\n\n\t\t\t// Extract the type key from the enum\n\t\t\tlet typeKey: string;\n\t\t\tif ( typeProperty.enum && Array.isArray( typeProperty.enum ) && typeProperty.enum.length > 0 ) {\n\t\t\t\ttypeKey = typeProperty.enum[ 0 ] as string;\n\t\t\t} else {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// Convert the value schema to a PropType\n\t\t\tconst valuePropType = convertJsonSchemaToPropType( variantSchema.properties.value );\n\t\t\tpropTypes[ typeKey ] = valuePropType;\n\t\t}\n\t}\n\n\treturn {\n\t\tkind: 'union',\n\t\tprop_types: propTypes,\n\t\tsettings: {},\n\t\tmeta,\n\t} as PropType;\n}\n\nfunction convertJsonSchemaToObjectPropType(\n\tschema: JsonSchema7,\n\tmeta: Record< string, unknown >,\n\tkey = < string >schema.key\n): PropType {\n\tconst shape: Record< string, PropType > = {};\n\n\tif ( ! schema.properties ) {\n\t\treturn {\n\t\t\tkind: 'object',\n\t\t\tkey,\n\t\t\tshape: {},\n\t\t\tsettings: {},\n\t\t\tmeta,\n\t\t} as PropType;\n\t}\n\n\tconst requiredFields = Array.isArray( schema.required ) ? schema.required : [];\n\n\t// Convert each property\n\tfor ( const [ propKey, propSchema ] of Object.entries( schema.properties ) ) {\n\t\tconst subPropType = convertJsonSchemaToPropType( propSchema, key );\n\n\t\t// Mark as required if it's in the required array\n\t\tif ( requiredFields.includes( propKey ) ) {\n\t\t\tsubPropType.settings = {\n\t\t\t\t...subPropType.settings,\n\t\t\t\trequired: true,\n\t\t\t};\n\t\t}\n\n\t\tshape[ propKey ] = subPropType;\n\t}\n\n\treturn {\n\t\tkind: 'object',\n\t\tkey: key || 'object',\n\t\tshape,\n\t\tsettings: {},\n\t\tmeta,\n\t} as PropType;\n}\n\nfunction convertJsonSchemaToArrayPropType(\n\tschema: JsonSchema7,\n\tmeta: Record< string, unknown >,\n\tkey = < string >schema.key\n): PropType {\n\tif ( ! schema.items ) {\n\t\tthrow new Error( 'Array schema must have items property' );\n\t}\n\n\tconst itemPropType = convertJsonSchemaToPropType( schema.items );\n\n\treturn {\n\t\tkind: 'array',\n\t\tkey: key || 'array',\n\t\titem_prop_type: itemPropType,\n\t\tsettings: {},\n\t\tmeta,\n\t} as PropType;\n}\n\nfunction convertJsonSchemaToPropType( schema: JsonSchema7, key?: string ): PropType {\n\treturn jsonSchemaToPropType( schema, key );\n}\n\n/**\n * Converts a complete JSON Schema object back to a PropsSchema\n *\n * @param jsonSchema The JSON Schema to convert\n */\nexport function jsonSchemaToPropsSchema( jsonSchema: JsonSchema7 ): PropsSchema {\n\tconst propsSchema: PropsSchema = {};\n\n\tif ( jsonSchema.type !== 'object' || ! jsonSchema.properties ) {\n\t\tthrow new Error( 'Root schema must be an object with properties' );\n\t}\n\n\tfor ( const [ key, propSchema ] of Object.entries( jsonSchema.properties ) ) {\n\t\tpropsSchema[ key ] = convertJsonSchemaToPropType( propSchema, key );\n\t}\n\n\treturn propsSchema;\n}\n","import { type PropsSchema, type PropType } from '../types';\nimport { type JsonSchema7 } from './prop-json-schema';\n\nexport function propTypeToJsonSchema( propType: PropType ): JsonSchema7 {\n\tconst description = propType.meta?.description;\n\n\tconst schema: JsonSchema7 = {};\n\n\tif ( description ) {\n\t\tschema.description = description;\n\t}\n\n\t// Handle different kinds of prop types\n\tswitch ( propType.kind ) {\n\t\tcase 'plain':\n\t\t\treturn convertPlainPropType( propType, schema );\n\t\tcase 'union':\n\t\t\treturn convertUnionPropType( propType, schema );\n\t\tcase 'object':\n\t\t\treturn convertObjectPropType( propType, schema );\n\t\tcase 'array':\n\t\t\treturn convertArrayPropType( propType, schema );\n\t\tdefault:\n\t\t\treturn convertPlainPropType( propType, schema );\n\t}\n\n\treturn schema;\n}\n\nfunction convertPlainPropType( propType: PropType & { kind: 'plain' }, baseSchema: JsonSchema7 ): JsonSchema7 {\n\tconst schema = { ...baseSchema };\n\n\t// Determine type based on key\n\tconst key = propType.key.toLowerCase();\n\n\tswitch ( key ) {\n\t\tcase 'number':\n\t\t\tschema.type = 'number';\n\t\t\tbreak;\n\t\tcase 'boolean':\n\t\t\tschema.type = 'boolean';\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tschema.type = 'string';\n\t}\n\n\t// Handle enum from settings\n\tif ( Array.isArray( propType.settings?.enum ) ) {\n\t\tschema.enum = propType.settings.enum;\n\t}\n\n\treturn schema;\n}\n\n/**\n * Converts a union prop type to JSON Schema ( электричество anyOf)\n *\n * @param propType The union prop type to convert\n * @param baseSchema Base schema to extend\n */\nfunction convertUnionPropType( propType: PropType & { kind: 'union' }, baseSchema: JsonSchema7 ): JsonSchema7 {\n\tconst schema = structuredClone( baseSchema );\n\n\tconst propTypes = propType.prop_types || {};\n\tconst schemas: JsonSchema7[] = [];\n\n\t// Convert each prop type in the union\n\tfor ( const [ typeKey, subPropType ] of Object.entries( propTypes ) ) {\n\t\tconst subSchema = convertPropTypeToJsonSchema( subPropType );\n\n\t\tschemas.push( {\n\t\t\ttype: 'object',\n\t\t\trequired: [ '$$type', 'value' ],\n\t\t\tproperties: {\n\t\t\t\t$$type: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tconst: typeKey,\n\t\t\t\t\tdescription: subPropType.meta?.description,\n\t\t\t\t\t$comment: `Discriminator for union type variant: ${ typeKey }`,\n\t\t\t\t},\n\t\t\t\tvalue: subSchema,\n\t\t\t},\n\t\t} );\n\t}\n\n\tif ( schemas.length > 0 ) {\n\t\tschema.anyOf = schemas;\n\t}\n\n\tconst propTypeDescription = propType.meta?.description;\n\tif ( propTypeDescription ) {\n\t\tschema.description = propTypeDescription;\n\t}\n\treturn schema;\n}\n\nfunction convertObjectPropType( propType: PropType & { kind: 'object' }, baseSchema: JsonSchema7 ): JsonSchema7 {\n\tconst schema = structuredClone( baseSchema );\n\n\tschema.type = 'object';\n\tschema.properties = {};\n\n\tconst required: string[] = [];\n\n\tconst shape = propType.shape || {};\n\n\t// Convert each property in the object shape\n\tfor ( const [ key, subPropType ] of Object.entries( shape ) ) {\n\t\tconst propSchema = convertPropTypeToJsonSchema( subPropType );\n\n\t\t// Check if this property is required\n\t\tif ( subPropType.settings?.required === true ) {\n\t\t\trequired.push( key );\n\t\t}\n\n\t\tschema.properties[ key ] = propSchema;\n\t}\n\n\t// Add required array if there are required fields\n\tif ( required.length > 0 ) {\n\t\tschema.required = required;\n\t}\n\n\treturn schema;\n}\n\nfunction convertArrayPropType( propType: PropType & { kind: 'array' }, baseSchema: JsonSchema7 ): JsonSchema7 {\n\tconst schema = structuredClone( baseSchema );\n\n\tschema.type = 'array';\n\n\tconst itemPropType = propType.item_prop_type;\n\n\tif ( itemPropType ) {\n\t\tschema.items = convertPropTypeToJsonSchema( itemPropType );\n\t}\n\n\treturn schema;\n}\n\nfunction convertPropTypeToJsonSchema( propType: PropType ): JsonSchema7 {\n\treturn propTypeToJsonSchema( propType );\n}\n\nexport function propsSchemaToJsonSchema( schema: PropsSchema ): JsonSchema7 {\n\tconst jsonSchema: JsonSchema7 = {\n\t\ttype: 'object',\n\t\tproperties: {},\n\t};\n\n\tfor ( const [ key, propType ] of Object.entries( schema ) ) {\n\t\t// Skip internal properties\n\t\tif ( ! isPropKeyConfigurable( key ) ) {\n\t\t\tcontinue;\n\t\t}\n\n\t\tconst propSchema = convertPropTypeToJsonSchema( propType );\n\t\tif ( jsonSchema.properties ) {\n\t\t\tjsonSchema.properties[ key ] = propSchema;\n\t\t}\n\n\t\t// Handle required fields at root level if needed\n\t\t// (typically props are optional unless specified)\n\t}\n\n\treturn jsonSchema;\n}\n\nexport const nonConfigurablePropKeys = [ '_cssid', 'classes', 'attributes' ] as readonly string[];\n\nexport function isPropKeyConfigurable( propKey: string ): boolean {\n\treturn ! nonConfigurablePropKeys.includes( propKey );\n}\n\nexport function configurableKeys( schema: PropsSchema ): string[] {\n\treturn Object.keys( schema ).filter( isPropKeyConfigurable );\n}\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","import { type PropValue } from '../types';\nimport { isTransformable } from '../utils/is-transformable';\n\nexport const filterEmptyValues = < TValue extends PropValue >( value: TValue ): TValue | null => {\n\tif ( isEmpty( value ) ) {\n\t\treturn null;\n\t}\n\n\tif ( Array.isArray( value ) ) {\n\t\treturn value.map( filterEmptyValues ).filter( ( item ) => ! isEmpty( item ) ) as TValue;\n\t}\n\n\tif ( typeof value === 'object' ) {\n\t\treturn Object.fromEntries(\n\t\t\tObject.entries( value )\n\t\t\t\t.map( ( [ key, val ] ) => [ key, filterEmptyValues( val ) ] )\n\t\t\t\t.filter( ( [ , val ] ) => ! isEmpty( val ) )\n\t\t);\n\t}\n\n\treturn value;\n};\n\ntype Nullish = null | undefined | '';\n\nexport const isEmpty = ( value: PropValue ): value is Nullish => {\n\tif ( value && isTransformable( value ) ) {\n\t\treturn isEmpty( value.value );\n\t}\n\n\treturn isNullish( value ) || isNullishArray( value ) || isNullishObject( value );\n};\n\nconst isNullish = ( value: PropValue ): value is Nullish => value === null || value === undefined || value === '';\n\nconst isNullishArray = ( value: NonNullable< PropValue > ): value is Nullish[] =>\n\tArray.isArray( value ) && value.every( isEmpty );\n\nconst isNullishObject = ( value: NonNullable< PropValue > ): value is Record< string, Nullish > => {\n\treturn typeof value === 'object' && isNullishArray( Object.values( value ) );\n};\n","import type { Props } from '../types';\n\nexport function mergeProps( current: Props, updates: Props ) {\n\t// edge case, the server returns an array instead of an object when empty props because of PHP array / object conversion\n\tlet props: Props = {};\n\n\tif ( ! Array.isArray( current ) ) {\n\t\tprops = structuredClone( current );\n\t}\n\n\tObject.entries( updates ).forEach( ( [ key, value ] ) => {\n\t\tif ( value === null || value === undefined ) {\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-dynamic-delete\n\t\t\tdelete props[ key ];\n\t\t} else {\n\t\t\tprops[ key ] = value;\n\t\t}\n\t} );\n\n\treturn props;\n}\n","import {\n\ttype Dependency,\n\ttype DependencyTerm,\n\ttype PropKey,\n\ttype PropValue,\n\ttype TransformablePropValue,\n} from '../types';\nimport { isTransformable } from './is-transformable';\n\ntype ParsedTerm = DependencyTerm;\n\ntype Relation = Dependency[ 'relation' ];\n\nexport function isDependencyMet(\n\tdependency: Dependency | undefined,\n\tvalues: PropValue\n): { isMet: true } | { isMet: false; failingDependencies: DependencyTerm[] } {\n\tif ( ! dependency?.terms.length ) {\n\t\treturn { isMet: true };\n\t}\n\n\tconst { relation, terms } = dependency;\n\tconst method = getRelationMethod( relation );\n\n\tconst failingDependencies: DependencyTerm[] = [];\n\tconst isMet = terms[ method ]( ( term: ParsedTerm | Dependency ) => {\n\t\tconst isNestedDependency = isDependency( term );\n\t\tconst result = isNestedDependency\n\t\t\t? isDependencyMet( term, values ).isMet\n\t\t\t: evaluateTerm( term, extractValue( term.path, values )?.value );\n\n\t\tif ( ! result && ! isNestedDependency ) {\n\t\t\tfailingDependencies.push( term );\n\t\t}\n\n\t\treturn result;\n\t} );\n\n\treturn { isMet, failingDependencies };\n}\n\nexport function evaluateTerm( term: DependencyTerm, actualValue: unknown ) {\n\tconst { value: valueToCompare, operator } = term;\n\n\tswitch ( operator ) {\n\t\tcase 'eq':\n\t\tcase 'ne':\n\t\t\treturn ( actualValue === valueToCompare ) === ( 'eq' === operator );\n\n\t\tcase 'gt':\n\t\tcase 'lte':\n\t\t\tif ( ! isNumber( actualValue ) || ! isNumber( valueToCompare ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\treturn Number( actualValue ) > Number( valueToCompare ) === ( 'gt' === operator );\n\n\t\tcase 'lt':\n\t\tcase 'gte':\n\t\t\tif ( ! isNumber( actualValue ) || ! isNumber( valueToCompare ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\treturn Number( actualValue ) < Number( valueToCompare ) === ( 'lt' === operator );\n\t\tcase 'in':\n\t\tcase 'nin':\n\t\t\tif ( ! Array.isArray( valueToCompare ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\treturn valueToCompare.includes( actualValue as never ) === ( 'in' === operator );\n\n\t\tcase 'contains':\n\t\tcase 'ncontains':\n\t\t\tif (\n\t\t\t\t( 'string' !== typeof actualValue || 'string' !== typeof valueToCompare ) &&\n\t\t\t\t! Array.isArray( actualValue )\n\t\t\t) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\treturn ( 'contains' === operator ) === actualValue.includes( valueToCompare as never );\n\n\t\tcase 'exists':\n\t\tcase 'not_exist':\n\t\t\tconst evaluation = !! actualValue || 0 === actualValue || false === actualValue;\n\n\t\t\treturn ( 'exists' === operator ) === evaluation;\n\n\t\tdefault:\n\t\t\treturn true;\n\t}\n}\n\nfunction isNumber( value: unknown ): value is number {\n\treturn typeof value === 'number' && ! isNaN( value );\n}\n\nfunction getRelationMethod( relation: Relation ) {\n\tswitch ( relation ) {\n\t\tcase 'or':\n\t\t\treturn 'some';\n\n\t\tcase 'and':\n\t\t\treturn 'every';\n\n\t\tdefault:\n\t\t\tthrow new Error( `Relation not supported ${ relation }` );\n\t}\n}\n\nexport function extractValue( path: string[], elementValues: PropValue ): TransformablePropValue< PropKey > | null {\n\treturn path.reduce( ( acc, key, index ) => {\n\t\tconst value = acc?.[ key as keyof typeof acc ] as PropValue | null;\n\n\t\treturn index !== path.length - 1 && isTransformable( value ) ? value.value ?? null : value;\n\t}, elementValues ) as TransformablePropValue< PropKey >;\n}\n\nexport function isDependency( term: DependencyTerm | Dependency ): term is Dependency {\n\treturn 'relation' in term;\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","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","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/flex.ts","../src/prop-types/image.ts","../src/prop-types/image-attachment-id.ts","../src/prop-types/image-src.ts","../src/prop-types/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/layout-direction.ts","../src/prop-types/link.ts","../src/prop-types/selection-size.ts","../src/prop-types/key-value.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/prop-types/background-prop-types/background-image-position-offset.ts","../src/prop-types/background-prop-types/background-image-size-scale.ts","../src/prop-types/boolean.ts","../src/prop-types/color-stop.ts","../src/prop-types/gradient-color-stop.ts","../src/prop-types/date-time.ts","../src/prop-types/position.ts","../src/prop-types/query.ts","../src/prop-types/html.ts","../src/prop-types/filter-prop-types/filter.ts","../src/prop-types/filter-prop-types/drop-shadow-filter.ts","../src/prop-types/filter-prop-types/filter-functions/blur-filter.ts","../src/prop-types/filter-prop-types/filter-functions/color-tone-filter.ts","../src/prop-types/filter-prop-types/filter-functions/hue-rotate-filter.ts","../src/prop-types/filter-prop-types/filter-functions/intensity-filter.ts","../src/prop-types/transform-prop-types/transform.ts","../src/prop-types/transform-prop-types/transform-functions.ts","../src/prop-types/transform-prop-types/transform-functions/move-transform.ts","../src/prop-types/transform-prop-types/types.ts","../src/prop-types/transform-prop-types/transform-functions/rotate-transform.ts","../src/prop-types/transform-prop-types/transform-functions/scale-transform.ts","../src/prop-types/transform-prop-types/transform-functions/skew-transform.ts","../src/prop-types/transform-prop-types/transform-origin.ts","../src/prop-types/transform-prop-types/perspective-origin.ts","../src/prop-types/filter-prop-types/backdrop-filter.ts","../src/utils/adjust-llm-prop-value-schema.ts","../src/utils/llm-schema-to-props.ts","../src/utils/props-to-llm-schema.ts","../src/utils/is-transformable.ts","../src/utils/filter-empty-values.ts","../src/utils/merge-props.ts","../src/utils/prop-dependency-utils.ts"],"sourcesContent":["import { adjustLlmPropValueSchema } from './utils/adjust-llm-prop-value-schema';\nimport { jsonSchemaToPropType } from './utils/llm-schema-to-props';\nimport {\n\tconfigurableKeys,\n\tisPropKeyConfigurable,\n\tnonConfigurablePropKeys,\n\tpropTypeToJsonSchema,\n} from './utils/props-to-llm-schema';\n\nexport { type JsonSchema7 } from './utils/prop-json-schema';\n\n// types\nexport * from './types';\nexport { type CreateOptions, type PropTypeUtil } from './utils/create-prop-utils';\n\n// prop types\nexport * from './prop-types';\n\n// utils\nexport { createArrayPropUtils, createPropUtils, getPropSchemaFromCache } from './utils/create-prop-utils';\nexport { filterEmptyValues, isEmpty } from './utils/filter-empty-values';\nexport { isTransformable } from './utils/is-transformable';\nexport { mergeProps } from './utils/merge-props';\nexport { evaluateTerm, extractValue, isDependency, isDependencyMet } from './utils/prop-dependency-utils';\n\nexport const Schema = {\n\tjsonSchemaToPropType,\n\tpropTypeToJsonSchema,\n\tadjustLlmPropValueSchema,\n\tisPropKeyConfigurable,\n\tnonConfigurablePropKeys,\n\tconfigurableKeys,\n};\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\nconst SCHEMA_CACHE = new Map< string, unknown >();\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 getPropSchemaFromCache( key: string ) {\n\treturn SCHEMA_CACHE.get( key ) as PropTypeUtil< string, PropValue > | undefined;\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\tconst propUtil = {\n\t\textract,\n\t\tisValid,\n\t\tcreate,\n\t\tschema,\n\t\tkey: key as TKey,\n\t};\n\n\tSCHEMA_CACHE.set( key, propUtil );\n\treturn propUtil;\n}\n\nexport function createArrayPropUtils< TKey extends string, TValue extends PropValue >(\n\tkey: TKey,\n\tvalueSchema: ZodType< TValue >,\n\toverrideKey?: string\n) {\n\treturn createPropUtils( overrideKey || `${ key }-array`, z.array( valueSchema ) );\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'start-start': unknownChildrenSchema,\n\t\t'start-end': unknownChildrenSchema,\n\t\t'end-start': unknownChildrenSchema,\n\t\t'end-end': 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\t'block-start': unknownChildrenSchema,\n\t\t'block-end': unknownChildrenSchema,\n\t\t'inline-start': unknownChildrenSchema,\n\t\t'inline-end': 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 CLASSES_PROP_KEY = 'classes';\n\nexport const classesPropTypeUtil = createPropUtils(\n\tCLASSES_PROP_KEY,\n\tz.array( z.string().regex( /^[a-z][a-z-_0-9]*$/i ) )\n);\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 flexPropTypeUtil = createPropUtils(\n\t'flex',\n\tz.strictObject( {\n\t\tflexGrow: unknownChildrenSchema,\n\t\tflexShrink: unknownChildrenSchema,\n\t\tflexBasis: unknownChildrenSchema,\n\t} )\n);\n\nexport type FlexPropValue = z.infer< typeof flexPropTypeUtil.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 dimensionsPropTypeUtil = createPropUtils(\n\t'dimensions',\n\tz.strictObject( {\n\t\t'block-start': unknownChildrenSchema,\n\t\t'block-end': unknownChildrenSchema,\n\t\t'inline-start': unknownChildrenSchema,\n\t\t'inline-end': unknownChildrenSchema,\n\t} )\n);\n\nexport type DimensionsPropValue = z.infer< typeof dimensionsPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const numberPropTypeUtil = createPropUtils( 'number', z.number().nullable() );\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\n\t\t.strictObject( {\n\t\t\tunit: z.enum( [ 'px', 'em', 'rem', '%', 'vw', 'vh' ] ),\n\t\t\tsize: z.number(),\n\t\t} )\n\t\t.or(\n\t\t\tz.strictObject( {\n\t\t\t\tunit: z.enum( [ 'deg', 'rad', 'grad', 'turn' ] ),\n\t\t\t\tsize: z.number(),\n\t\t\t} )\n\t\t)\n\t\t.or(\n\t\t\tz.strictObject( {\n\t\t\t\tunit: z.enum( [ 's', 'ms' ] ),\n\t\t\t\tsize: z.number(),\n\t\t\t} )\n\t\t)\n\t\t.or(\n\t\t\tz.strictObject( {\n\t\t\t\tunit: z.literal( 'auto' ),\n\t\t\t\tsize: z.literal( '' ),\n\t\t\t} )\n\t\t)\n\t\t.or(\n\t\t\tz.strictObject( {\n\t\t\t\tunit: z.literal( 'custom' ),\n\t\t\t\tsize: z.string(),\n\t\t\t} )\n\t\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().nullable() );\n\nexport type UrlPropValue = z.infer< typeof urlPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const layoutDirectionPropTypeUtil = createPropUtils(\n\t'layout-direction',\n\tz.object( {\n\t\trow: z.any(),\n\t\tcolumn: z.any(),\n\t} )\n);\n\nexport type LayoutDirectionPropValue = z.infer< typeof layoutDirectionPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const linkPropTypeUtil = createPropUtils(\n\t'link',\n\tz.strictObject( {\n\t\tdestination: unknownChildrenSchema,\n\t\tisTargetBlank: unknownChildrenSchema,\n\t\ttag: unknownChildrenSchema,\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';\nimport { keyValuePropTypeUtil } from './key-value';\nimport { stringPropTypeUtil } from './string';\nimport { unknownChildrenSchema } from './utils';\n\nexport const selectionSizePropTypeUtil = createPropUtils(\n\t'selection-size',\n\tz.strictObject( {\n\t\tselection: z.union( [ keyValuePropTypeUtil.schema, stringPropTypeUtil.schema ] ),\n\t\tsize: unknownChildrenSchema,\n\t} )\n);\n\nexport type SelectionSizePropValue = z.infer< typeof selectionSizePropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const keyValuePropTypeUtil = createPropUtils(\n\t'key-value',\n\tz.strictObject( {\n\t\tkey: unknownChildrenSchema,\n\t\tvalue: unknownChildrenSchema,\n\t} )\n);\n\nexport type KeyValuePropValue = z.infer< typeof keyValuePropTypeUtil.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\tclip: 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\nexport const 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 { type z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const backgroundColorOverlayPropTypeUtil = createPropUtils( 'background-color-overlay', unknownChildrenSchema );\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 { type z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const backgroundImagePositionOffsetPropTypeUtil = createPropUtils(\n\t'background-image-position-offset',\n\tunknownChildrenSchema\n);\n\nexport type BackgroundImagePositionOffsetPropValue = z.infer< typeof backgroundImagePositionOffsetPropTypeUtil.schema >;\n","import { type z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const backgroundImageSizeScalePropTypeUtil = createPropUtils(\n\t'background-image-size-scale',\n\tunknownChildrenSchema\n);\n\nexport type BackgroundImageSizeScalePropValue = z.infer< typeof backgroundImageSizeScalePropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const booleanPropTypeUtil = createPropUtils( 'boolean', z.boolean().nullable() );\n\nexport type BooleanPropValue = z.infer< typeof booleanPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const colorStopPropTypeUtil = createPropUtils(\n\t'color-stop',\n\tz.strictObject( {\n\t\tcolor: unknownChildrenSchema,\n\t\toffset: unknownChildrenSchema,\n\t} )\n);\n\nexport type ColorStopPropValue = z.infer< typeof colorStopPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { colorStopPropTypeUtil } from './color-stop';\n\nexport const gradientColorStopPropTypeUtil = createPropUtils(\n\t'gradient-color-stop',\n\tz.array( colorStopPropTypeUtil.schema )\n);\n\nexport type GradientColorStopPropValue = z.infer< typeof gradientColorStopPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const DateTimePropTypeUtil = createPropUtils(\n\t'date-time',\n\tz.strictObject( {\n\t\tdate: unknownChildrenSchema,\n\t\ttime: unknownChildrenSchema,\n\t} )\n);\n\nexport type DateTimePropValue = z.infer< typeof DateTimePropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const positionPropTypeUtil = createPropUtils(\n\t'object-position',\n\tz.strictObject( {\n\t\tx: unknownChildrenSchema,\n\t\ty: unknownChildrenSchema,\n\t} )\n);\n\nexport type PositionPropTypeValue = z.infer< typeof positionPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const queryPropTypeUtil = createPropUtils(\n\t'query',\n\tz.strictObject( {\n\t\tid: unknownChildrenSchema,\n\t\tlabel: unknownChildrenSchema,\n\t} )\n);\n\nexport type QueryPropValue = z.infer< typeof queryPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const htmlPropTypeUtil = createPropUtils( 'html', z.string().nullable() );\n\nexport type HtmlPropValue = z.infer< typeof htmlPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { stringPropTypeUtil } from '../string';\nimport { dropShadowFilterPropTypeUtil } from './drop-shadow-filter';\nimport { blurFilterPropTypeUtil } from './filter-functions/blur-filter';\nimport { colorToneFilterPropTypeUtil } from './filter-functions/color-tone-filter';\nimport { hueRotateFilterPropTypeUtil } from './filter-functions/hue-rotate-filter';\nimport { intensityFilterPropTypeUtil } from './filter-functions/intensity-filter';\n\nexport const cssFilterFunctionPropUtil = createPropUtils(\n\t'css-filter-func',\n\tz.object( {\n\t\tfunc: stringPropTypeUtil.schema,\n\t\targs: z.union( [\n\t\t\tblurFilterPropTypeUtil.schema,\n\t\t\tintensityFilterPropTypeUtil.schema,\n\t\t\tcolorToneFilterPropTypeUtil.schema,\n\t\t\thueRotateFilterPropTypeUtil.schema,\n\t\t\tdropShadowFilterPropTypeUtil.schema,\n\t\t] ),\n\t} )\n);\n\nexport const filterPropTypeUtil = createPropUtils( 'filter', z.array( cssFilterFunctionPropUtil.schema ) );\n\nexport type FilterItemPropValue = z.infer< typeof cssFilterFunctionPropUtil.schema >;\n\nexport type FilterPropValue = z.infer< typeof filterPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const dropShadowFilterPropTypeUtil = createPropUtils(\n\t'drop-shadow',\n\tz.object( {\n\t\txAxis: unknownChildrenSchema,\n\t\tyAxis: unknownChildrenSchema,\n\t\tblur: unknownChildrenSchema,\n\t\tcolor: unknownChildrenSchema,\n\t} )\n);\n\nexport type DropShadowFilterPropValue = z.infer< typeof dropShadowFilterPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../../utils';\n\nexport const blurFilterPropTypeUtil = createPropUtils(\n\t'blur',\n\tz.strictObject( {\n\t\tsize: unknownChildrenSchema,\n\t} )\n);\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../../utils';\n\nexport const colorToneFilterPropTypeUtil = createPropUtils(\n\t'color-tone',\n\tz.strictObject( {\n\t\tsize: unknownChildrenSchema,\n\t} )\n);\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../../utils';\n\nexport const hueRotateFilterPropTypeUtil = createPropUtils(\n\t'hue-rotate',\n\tz.strictObject( {\n\t\tsize: unknownChildrenSchema,\n\t} )\n);\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../../utils';\n\nexport const intensityFilterPropTypeUtil = createPropUtils(\n\t'intensity',\n\tz.strictObject( {\n\t\tsize: unknownChildrenSchema,\n\t} )\n);\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const transformPropTypeUtil = createPropUtils(\n\t'transform',\n\tz.strictObject( {\n\t\t'transform-functions': unknownChildrenSchema,\n\t\t'transform-origin': unknownChildrenSchema,\n\t\tperspective: unknownChildrenSchema,\n\t\t'perspective-origin': unknownChildrenSchema,\n\t} )\n);\n\nexport type TransformPropValue = z.infer< typeof transformPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { moveTransformPropTypeUtil } from './transform-functions/move-transform';\nimport { rotateTransformPropTypeUtil } from './transform-functions/rotate-transform';\nimport { scaleTransformPropTypeUtil } from './transform-functions/scale-transform';\nimport { skewTransformPropTypeUtil } from './transform-functions/skew-transform';\n\nconst filterTypes = moveTransformPropTypeUtil.schema\n\t.or( scaleTransformPropTypeUtil.schema )\n\t.or( rotateTransformPropTypeUtil.schema )\n\t.or( skewTransformPropTypeUtil.schema );\n\nexport const transformFunctionsPropTypeUtil = createPropUtils( 'transform-functions', z.array( filterTypes ) );\n\nexport type TransformFunctionsPropValue = z.infer< typeof transformFunctionsPropTypeUtil.schema >;\n\nexport type TransformFunctionsItemPropValue = z.infer< typeof filterTypes >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../../utils';\nimport { TransformFunctionKeys } from '../types';\n\nexport const moveTransformPropTypeUtil = createPropUtils(\n\tTransformFunctionKeys.move,\n\tz.strictObject( {\n\t\tx: unknownChildrenSchema,\n\t\ty: unknownChildrenSchema,\n\t\tz: unknownChildrenSchema,\n\t} )\n);\n\nexport type MoveTransformPropValue = z.infer< typeof moveTransformPropTypeUtil.schema >;\n","type TransformFunctions = 'transform-move' | 'transform-scale' | 'transform-rotate' | 'transform-skew';\n\nexport const TransformFunctionKeys: Record< string, TransformFunctions > = {\n\tmove: 'transform-move',\n\tscale: 'transform-scale',\n\trotate: 'transform-rotate',\n\tskew: 'transform-skew',\n};\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../../utils';\nimport { TransformFunctionKeys } from '../types';\n\nexport const rotateTransformPropTypeUtil = createPropUtils(\n\tTransformFunctionKeys.rotate,\n\tz.strictObject( {\n\t\tx: unknownChildrenSchema,\n\t\ty: unknownChildrenSchema,\n\t\tz: unknownChildrenSchema,\n\t} )\n);\n\nexport type RotateTransformPropValue = z.infer< typeof rotateTransformPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { numberPropTypeUtil } from '../../number';\nimport { TransformFunctionKeys } from '../types';\n\nexport const scaleTransformPropTypeUtil = createPropUtils(\n\tTransformFunctionKeys.scale,\n\tz.strictObject( {\n\t\tx: numberPropTypeUtil.schema.nullable(),\n\t\ty: numberPropTypeUtil.schema.nullable(),\n\t\tz: numberPropTypeUtil.schema.nullable(),\n\t} )\n);\n\nexport type ScaleTransformPropValue = z.infer< typeof scaleTransformPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../../utils';\nimport { TransformFunctionKeys } from '../types';\n\nexport const skewTransformPropTypeUtil = createPropUtils(\n\tTransformFunctionKeys.skew,\n\tz.strictObject( {\n\t\tx: unknownChildrenSchema,\n\t\ty: unknownChildrenSchema,\n\t} )\n);\n\nexport type SkewTransformPropValue = z.infer< typeof skewTransformPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const transformOriginPropTypeUtil = createPropUtils(\n\t'transform-origin',\n\tz.strictObject( {\n\t\tx: unknownChildrenSchema,\n\t\ty: unknownChildrenSchema,\n\t\tz: unknownChildrenSchema,\n\t} )\n);\n\nexport type TransformOriginPropValue = z.infer< typeof transformOriginPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const perspectiveOriginPropTypeUtil = createPropUtils(\n\t'perspective-origin',\n\tz.strictObject( {\n\t\tx: unknownChildrenSchema,\n\t\ty: unknownChildrenSchema,\n\t} )\n);\n\nexport type PerspectiveOriginPropValue = z.infer< typeof perspectiveOriginPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { cssFilterFunctionPropUtil } from './filter';\n\nexport const backdropFilterPropTypeUtil = createPropUtils(\n\t'backdrop-filter',\n\tz.array( cssFilterFunctionPropUtil.schema )\n);\n\nexport type BackdropFilterPropValue = z.infer< typeof backdropFilterPropTypeUtil.schema >;\n\nexport type BackdropFilterItemPropValue = z.infer< typeof cssFilterFunctionPropUtil.schema >;\n","import { numberPropTypeUtil, type NumberPropValue, stringPropTypeUtil, type StringPropValue } from '../prop-types';\nimport { type ObjectPropValue, type PropValue, type TransformablePropValue } from '../types';\n\nconst ensureNotNull = ( v: unknown, fallback: unknown ) => ( v === null ? fallback : v );\n\nexport const adjustLlmPropValueSchema = ( value: Readonly< PropValue >, forceKey?: string ): PropValue => {\n\tconst clone = structuredClone( value );\n\n\tif ( typeof clone === 'string' ) {\n\t\treturn stringPropTypeUtil.create( clone );\n\t}\n\tif ( typeof clone === 'number' ) {\n\t\treturn numberPropTypeUtil.create( clone );\n\t}\n\t// Check for transformable types\n\tif ( clone && typeof clone === 'object' ) {\n\t\tif ( Array.isArray( clone ) ) {\n\t\t\treturn clone.map( ( item ) => adjustLlmPropValueSchema( item, forceKey ) ) as PropValue;\n\t\t}\n\t\tconst transformablePropValue = clone as TransformablePropValue< string >;\n\t\tif ( forceKey ) {\n\t\t\ttransformablePropValue.$$type = forceKey;\n\t\t}\n\n\t\tif ( ! transformablePropValue.$$type ) {\n\t\t\tthrow new Error( 'Missing $$type in property: ' + JSON.stringify( transformablePropValue ) );\n\t\t}\n\n\t\tif ( ! ( 'value' in transformablePropValue ) ) {\n\t\t\tthrow new Error( 'Missing value property in PropValue: ' + JSON.stringify( transformablePropValue ) );\n\t\t}\n\n\t\t// fix by type\n\t\tswitch ( transformablePropValue.$$type ) {\n\t\t\tcase 'size': {\n\t\t\t\tconst { value: rawSizePropValue } = transformablePropValue as TransformablePropValue<\n\t\t\t\t\tstring,\n\t\t\t\t\t{ size: StringPropValue | NumberPropValue; unit: StringPropValue }\n\t\t\t\t>;\n\t\t\t\tconst unit =\n\t\t\t\t\ttypeof rawSizePropValue.unit === 'string'\n\t\t\t\t\t\t? rawSizePropValue.unit\n\t\t\t\t\t\t: ensureNotNull( stringPropTypeUtil.extract( rawSizePropValue.unit ), 'px' );\n\t\t\t\tconst size =\n\t\t\t\t\ttypeof rawSizePropValue.size === 'string' || typeof rawSizePropValue.size === 'number'\n\t\t\t\t\t\t? rawSizePropValue.size\n\t\t\t\t\t\t: ensureNotNull(\n\t\t\t\t\t\t\t\tstringPropTypeUtil.extract( rawSizePropValue.size ),\n\t\t\t\t\t\t\t\tnumberPropTypeUtil.extract( rawSizePropValue.size )\n\t\t\t\t\t\t );\n\t\t\t\treturn {\n\t\t\t\t\t$$type: 'size',\n\t\t\t\t\tvalue: {\n\t\t\t\t\t\tunit,\n\t\t\t\t\t\tsize,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\n\t\tif ( typeof transformablePropValue.value === 'object' ) {\n\t\t\tif ( Array.isArray( transformablePropValue.value ) ) {\n\t\t\t\ttransformablePropValue.value = adjustLlmPropValueSchema(\n\t\t\t\t\ttransformablePropValue.value,\n\t\t\t\t\tundefined\n\t\t\t\t) as PropValue[];\n\t\t\t} else {\n\t\t\t\tconst { value: objectValue } = transformablePropValue as ObjectPropValue;\n\t\t\t\tconst clonedObject = clone as ObjectPropValue;\n\t\t\t\tclonedObject.value = {} as Record< string, PropValue >;\n\t\t\t\tObject.keys( objectValue ).forEach( ( key ) => {\n\t\t\t\t\tconst childProp = ( objectValue as Record< string, unknown > )[ key ];\n\t\t\t\t\t( clonedObject.value as Record< string, unknown > )[ key ] = adjustLlmPropValueSchema(\n\t\t\t\t\t\tchildProp as PropValue,\n\t\t\t\t\t\tundefined\n\t\t\t\t\t);\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\t}\n\treturn clone;\n};\n","import { type PropsSchema, type PropType } from '../types';\nimport { type JsonSchema7 } from './prop-json-schema';\n\nexport function jsonSchemaToPropType( schema: JsonSchema7, key = < string >schema.key ): PropType {\n\tconst meta: Record< string, unknown > = {};\n\n\tif ( schema.description ) {\n\t\tmeta.description = schema.description;\n\t}\n\n\t// Handle union types (anyOf)\n\tif ( schema.anyOf && Array.isArray( schema.anyOf ) ) {\n\t\treturn convertJsonSchemaToUnionPropType( schema, meta );\n\t}\n\n\t// Handle object types\n\tif ( schema.type === 'object' && schema.properties ) {\n\t\treturn convertJsonSchemaToObjectPropType( schema, meta, key );\n\t}\n\n\t// Handle array types\n\tif ( schema.type === 'array' && schema.items ) {\n\t\treturn convertJsonSchemaToArrayPropType( schema, meta, key );\n\t}\n\n\t// Handle plain types (string, number, boolean)\n\treturn convertJsonSchemaToPlainPropType( schema, meta, key );\n}\n\nfunction convertJsonSchemaToPlainPropType(\n\tschema: JsonSchema7,\n\tmeta: Record< string, unknown >,\n\tkey = < string >schema.key\n): PropType {\n\tconst settings: Record< string, unknown > = {};\n\n\t// Determine the key based on type\n\tlet propKey = key || 'string';\n\n\tif ( schema.type === 'number' ) {\n\t\tpropKey = 'number';\n\t} else if ( schema.type === 'boolean' ) {\n\t\tpropKey = 'boolean';\n\t} else if ( schema.type === 'string' ) {\n\t\tpropKey = 'string';\n\t}\n\n\t// Handle enum values\n\tif ( Array.isArray( schema.enum ) ) {\n\t\tsettings.enum = schema.enum;\n\t}\n\n\treturn {\n\t\tkind: 'plain',\n\t\tkey: propKey,\n\t\tsettings,\n\t\tmeta,\n\t} as PropType;\n}\n\n/**\n * Converts a JSON Schema anyOf to a union PropType\n * @param schema\n * @param meta\n */\nfunction convertJsonSchemaToUnionPropType( schema: JsonSchema7, meta: Record< string, unknown > ): PropType {\n\tconst propTypes: Record< string, PropType > = {};\n\n\tif ( ! schema.anyOf || ! Array.isArray( schema.anyOf ) ) {\n\t\tthrow new Error( 'Invalid anyOf schema' );\n\t}\n\n\t// Process each variant in the anyOf array\n\tfor ( const variantSchema of schema.anyOf ) {\n\t\t// Each variant should be an object with $$type and value properties\n\t\tif (\n\t\t\tvariantSchema.type === 'object' &&\n\t\t\tvariantSchema.properties &&\n\t\t\tvariantSchema.properties.$$type &&\n\t\t\tvariantSchema.properties.value\n\t\t) {\n\t\t\tconst typeProperty = variantSchema.properties.$$type;\n\n\t\t\t// Extract the type key from the enum\n\t\t\tlet typeKey: string;\n\t\t\tif ( typeProperty.enum && Array.isArray( typeProperty.enum ) && typeProperty.enum.length > 0 ) {\n\t\t\t\ttypeKey = typeProperty.enum[ 0 ] as string;\n\t\t\t} else {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// Convert the value schema to a PropType\n\t\t\tconst valuePropType = convertJsonSchemaToPropType( variantSchema.properties.value );\n\t\t\tpropTypes[ typeKey ] = valuePropType;\n\t\t}\n\t}\n\n\treturn {\n\t\tkind: 'union',\n\t\tprop_types: propTypes,\n\t\tsettings: {},\n\t\tmeta,\n\t} as PropType;\n}\n\nfunction convertJsonSchemaToObjectPropType(\n\tschema: JsonSchema7,\n\tmeta: Record< string, unknown >,\n\tkey = < string >schema.key\n): PropType {\n\tconst shape: Record< string, PropType > = {};\n\n\tif ( ! schema.properties ) {\n\t\treturn {\n\t\t\tkind: 'object',\n\t\t\tkey,\n\t\t\tshape: {},\n\t\t\tsettings: {},\n\t\t\tmeta,\n\t\t} as PropType;\n\t}\n\n\tconst requiredFields = Array.isArray( schema.required ) ? schema.required : [];\n\n\t// Convert each property\n\tfor ( const [ propKey, propSchema ] of Object.entries( schema.properties ) ) {\n\t\tconst subPropType = convertJsonSchemaToPropType( propSchema, key );\n\n\t\t// Mark as required if it's in the required array\n\t\tif ( requiredFields.includes( propKey ) ) {\n\t\t\tsubPropType.settings = {\n\t\t\t\t...subPropType.settings,\n\t\t\t\trequired: true,\n\t\t\t};\n\t\t}\n\n\t\tshape[ propKey ] = subPropType;\n\t}\n\n\treturn {\n\t\tkind: 'object',\n\t\tkey: key || 'object',\n\t\tshape,\n\t\tsettings: {},\n\t\tmeta,\n\t} as PropType;\n}\n\nfunction convertJsonSchemaToArrayPropType(\n\tschema: JsonSchema7,\n\tmeta: Record< string, unknown >,\n\tkey = < string >schema.key\n): PropType {\n\tif ( ! schema.items ) {\n\t\tthrow new Error( 'Array schema must have items property' );\n\t}\n\n\tconst itemPropType = convertJsonSchemaToPropType( schema.items );\n\n\treturn {\n\t\tkind: 'array',\n\t\tkey: key || 'array',\n\t\titem_prop_type: itemPropType,\n\t\tsettings: {},\n\t\tmeta,\n\t} as PropType;\n}\n\nfunction convertJsonSchemaToPropType( schema: JsonSchema7, key?: string ): PropType {\n\treturn jsonSchemaToPropType( schema, key );\n}\n\n/**\n * Converts a complete JSON Schema object back to a PropsSchema\n *\n * @param jsonSchema The JSON Schema to convert\n */\nexport function jsonSchemaToPropsSchema( jsonSchema: JsonSchema7 ): PropsSchema {\n\tconst propsSchema: PropsSchema = {};\n\n\tif ( jsonSchema.type !== 'object' || ! jsonSchema.properties ) {\n\t\tthrow new Error( 'Root schema must be an object with properties' );\n\t}\n\n\tfor ( const [ key, propSchema ] of Object.entries( jsonSchema.properties ) ) {\n\t\tpropsSchema[ key ] = convertJsonSchemaToPropType( propSchema, key );\n\t}\n\n\treturn propsSchema;\n}\n","import { type PropsSchema, type PropType } from '../types';\nimport { type JsonSchema7 } from './prop-json-schema';\n\nexport function propTypeToJsonSchema( propType: PropType ): JsonSchema7 {\n\tconst description = propType.meta?.description;\n\n\tconst schema: JsonSchema7 = {};\n\n\tif ( description ) {\n\t\tschema.description = description;\n\t}\n\n\t// Handle different kinds of prop types\n\tswitch ( propType.kind ) {\n\t\tcase 'plain':\n\t\t\treturn convertPlainPropType( propType, schema );\n\t\tcase 'union':\n\t\t\treturn convertUnionPropType( propType, schema );\n\t\tcase 'object':\n\t\t\treturn convertObjectPropType( propType, schema );\n\t\tcase 'array':\n\t\t\treturn convertArrayPropType( propType, schema );\n\t\tdefault:\n\t\t\treturn convertPlainPropType( propType, schema );\n\t}\n\n\treturn schema;\n}\n\nfunction convertPlainPropType( propType: PropType & { kind: 'plain' }, baseSchema: JsonSchema7 ): JsonSchema7 {\n\tconst schema = { ...baseSchema };\n\n\t// Determine type based on key\n\tconst key = propType.key.toLowerCase();\n\n\tswitch ( key ) {\n\t\tcase 'number':\n\t\t\tschema.type = 'number';\n\t\t\tbreak;\n\t\tcase 'boolean':\n\t\t\tschema.type = 'boolean';\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tschema.type = 'string';\n\t}\n\n\t// Handle enum from settings\n\tif ( Array.isArray( propType.settings?.enum ) ) {\n\t\tschema.enum = propType.settings.enum;\n\t}\n\n\treturn schema;\n}\n\n/**\n * Converts a union prop type to JSON Schema ( электричество anyOf)\n *\n * @param propType The union prop type to convert\n * @param baseSchema Base schema to extend\n */\nfunction convertUnionPropType( propType: PropType & { kind: 'union' }, baseSchema: JsonSchema7 ): JsonSchema7 {\n\tconst schema = structuredClone( baseSchema );\n\n\tconst propTypes = propType.prop_types || {};\n\tconst schemas: JsonSchema7[] = [];\n\n\t// Convert each prop type in the union\n\tfor ( const [ typeKey, subPropType ] of Object.entries( propTypes ) ) {\n\t\tconst subSchema = convertPropTypeToJsonSchema( subPropType );\n\n\t\tschemas.push( {\n\t\t\ttype: 'object',\n\t\t\trequired: [ '$$type', 'value' ],\n\t\t\tproperties: {\n\t\t\t\t$$type: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tconst: typeKey,\n\t\t\t\t\tdescription: subPropType.meta?.description,\n\t\t\t\t\t$comment: `Discriminator for union type variant: ${ typeKey }`,\n\t\t\t\t},\n\t\t\t\tvalue: subSchema,\n\t\t\t},\n\t\t} );\n\t}\n\n\tif ( schemas.length > 0 ) {\n\t\tschema.anyOf = schemas;\n\t}\n\n\tconst propTypeDescription = propType.meta?.description;\n\tif ( propTypeDescription ) {\n\t\tschema.description = propTypeDescription;\n\t}\n\treturn schema;\n}\n\nfunction convertObjectPropType( propType: PropType & { kind: 'object' }, baseSchema: JsonSchema7 ): JsonSchema7 {\n\tconst schema = structuredClone( baseSchema );\n\n\tschema.type = 'object';\n\tschema.properties = {};\n\n\tconst required: string[] = [];\n\n\tconst shape = propType.shape || {};\n\n\t// Convert each property in the object shape\n\tfor ( const [ key, subPropType ] of Object.entries( shape ) ) {\n\t\tconst propSchema = convertPropTypeToJsonSchema( subPropType );\n\n\t\t// Check if this property is required\n\t\tif ( subPropType.settings?.required === true ) {\n\t\t\trequired.push( key );\n\t\t}\n\n\t\tschema.properties[ key ] = propSchema;\n\t}\n\n\t// Add required array if there are required fields\n\tif ( required.length > 0 ) {\n\t\tschema.required = required;\n\t}\n\n\treturn schema;\n}\n\nfunction convertArrayPropType( propType: PropType & { kind: 'array' }, baseSchema: JsonSchema7 ): JsonSchema7 {\n\tconst schema = structuredClone( baseSchema );\n\n\tschema.type = 'array';\n\n\tconst itemPropType = propType.item_prop_type;\n\n\tif ( itemPropType ) {\n\t\tschema.items = convertPropTypeToJsonSchema( itemPropType );\n\t}\n\n\treturn schema;\n}\n\nfunction convertPropTypeToJsonSchema( propType: PropType ): JsonSchema7 {\n\treturn propTypeToJsonSchema( propType );\n}\n\nexport function propsSchemaToJsonSchema( schema: PropsSchema ): JsonSchema7 {\n\tconst jsonSchema: JsonSchema7 = {\n\t\ttype: 'object',\n\t\tproperties: {},\n\t};\n\n\tfor ( const [ key, propType ] of Object.entries( schema ) ) {\n\t\t// Skip internal properties\n\t\tif ( ! isPropKeyConfigurable( key ) ) {\n\t\t\tcontinue;\n\t\t}\n\n\t\tconst propSchema = convertPropTypeToJsonSchema( propType );\n\t\tif ( jsonSchema.properties ) {\n\t\t\tjsonSchema.properties[ key ] = propSchema;\n\t\t}\n\n\t\t// Handle required fields at root level if needed\n\t\t// (typically props are optional unless specified)\n\t}\n\n\treturn jsonSchema;\n}\n\nexport const nonConfigurablePropKeys = [ '_cssid', 'classes', 'attributes' ] as readonly string[];\n\nexport function isPropKeyConfigurable( propKey: string ): boolean {\n\treturn ! nonConfigurablePropKeys.includes( propKey );\n}\n\nexport function configurableKeys( schema: PropsSchema ): string[] {\n\treturn Object.keys( schema ).filter( isPropKeyConfigurable );\n}\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","import { type PropValue } from '../types';\nimport { isTransformable } from '../utils/is-transformable';\n\nexport const filterEmptyValues = < TValue extends PropValue >( value: TValue ): TValue | null => {\n\tif ( isEmpty( value ) ) {\n\t\treturn null;\n\t}\n\n\tif ( Array.isArray( value ) ) {\n\t\treturn value.map( filterEmptyValues ).filter( ( item ) => ! isEmpty( item ) ) as TValue;\n\t}\n\n\tif ( typeof value === 'object' ) {\n\t\treturn Object.fromEntries(\n\t\t\tObject.entries( value )\n\t\t\t\t.map( ( [ key, val ] ) => [ key, filterEmptyValues( val ) ] )\n\t\t\t\t.filter( ( [ , val ] ) => ! isEmpty( val ) )\n\t\t);\n\t}\n\n\treturn value;\n};\n\ntype Nullish = null | undefined | '';\n\nexport const isEmpty = ( value: PropValue ): value is Nullish => {\n\tif ( value && isTransformable( value ) ) {\n\t\treturn isEmpty( value.value );\n\t}\n\n\treturn isNullish( value ) || isNullishArray( value ) || isNullishObject( value );\n};\n\nconst isNullish = ( value: PropValue ): value is Nullish => value === null || value === undefined || value === '';\n\nconst isNullishArray = ( value: NonNullable< PropValue > ): value is Nullish[] =>\n\tArray.isArray( value ) && value.every( isEmpty );\n\nconst isNullishObject = ( value: NonNullable< PropValue > ): value is Record< string, Nullish > => {\n\treturn typeof value === 'object' && isNullishArray( Object.values( value ) );\n};\n","import type { Props } from '../types';\n\nexport function mergeProps( current: Props, updates: Props ) {\n\t// edge case, the server returns an array instead of an object when empty props because of PHP array / object conversion\n\tlet props: Props = {};\n\n\tif ( ! Array.isArray( current ) ) {\n\t\tprops = structuredClone( current );\n\t}\n\n\tObject.entries( updates ).forEach( ( [ key, value ] ) => {\n\t\tif ( value === null || value === undefined ) {\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-dynamic-delete\n\t\t\tdelete props[ key ];\n\t\t} else {\n\t\t\tprops[ key ] = value;\n\t\t}\n\t} );\n\n\treturn props;\n}\n","import {\n\ttype Dependency,\n\ttype DependencyTerm,\n\ttype PropKey,\n\ttype PropValue,\n\ttype TransformablePropValue,\n} from '../types';\nimport { isTransformable } from './is-transformable';\n\ntype ParsedTerm = DependencyTerm;\n\ntype Relation = Dependency[ 'relation' ];\n\nexport function isDependencyMet(\n\tdependency: Dependency | undefined,\n\tvalues: PropValue\n): { isMet: true } | { isMet: false; failingDependencies: ( DependencyTerm | Dependency )[] } {\n\tif ( ! dependency?.terms.length ) {\n\t\treturn { isMet: true };\n\t}\n\n\tconst { relation, terms } = dependency;\n\tconst method = getRelationMethod( relation );\n\n\tconst failingDependencies: ( DependencyTerm | Dependency )[] = [];\n\tconst isMet = terms[ method ]( ( term: ParsedTerm | Dependency ) => {\n\t\tconst isNestedDependency = isDependency( term );\n\t\tconst result = isNestedDependency\n\t\t\t? isDependencyMet( term, values ).isMet\n\t\t\t: evaluateTerm( term, extractValue( term.path, values, term.nestedPath )?.value );\n\n\t\tif ( ! result ) {\n\t\t\tfailingDependencies.push( term );\n\t\t}\n\n\t\treturn result;\n\t} );\n\n\treturn { isMet, failingDependencies };\n}\n\nexport function evaluateTerm( term: DependencyTerm, actualValue: unknown ) {\n\tconst { value: valueToCompare, operator } = term;\n\n\tswitch ( operator ) {\n\t\tcase 'eq':\n\t\tcase 'ne':\n\t\t\treturn ( actualValue === valueToCompare ) === ( 'eq' === operator );\n\n\t\tcase 'gt':\n\t\tcase 'lte':\n\t\t\tif ( ! isNumber( actualValue ) || ! isNumber( valueToCompare ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\treturn Number( actualValue ) > Number( valueToCompare ) === ( 'gt' === operator );\n\n\t\tcase 'lt':\n\t\tcase 'gte':\n\t\t\tif ( ! isNumber( actualValue ) || ! isNumber( valueToCompare ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\treturn Number( actualValue ) < Number( valueToCompare ) === ( 'lt' === operator );\n\t\tcase 'in':\n\t\tcase 'nin':\n\t\t\tif ( ! Array.isArray( valueToCompare ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\treturn valueToCompare.includes( actualValue as never ) === ( 'in' === operator );\n\n\t\tcase 'contains':\n\t\tcase 'ncontains':\n\t\t\tif (\n\t\t\t\t( 'string' !== typeof actualValue || 'string' !== typeof valueToCompare ) &&\n\t\t\t\t! Array.isArray( actualValue )\n\t\t\t) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\treturn ( 'contains' === operator ) === actualValue.includes( valueToCompare as never );\n\n\t\tcase 'exists':\n\t\tcase 'not_exist':\n\t\t\tconst evaluation = !! actualValue || 0 === actualValue || false === actualValue;\n\n\t\t\treturn ( 'exists' === operator ) === evaluation;\n\n\t\tdefault:\n\t\t\treturn true;\n\t}\n}\n\nfunction isNumber( value: unknown ): value is number {\n\treturn typeof value === 'number' && ! isNaN( value );\n}\n\nfunction getRelationMethod( relation: Relation ) {\n\tswitch ( relation ) {\n\t\tcase 'or':\n\t\t\treturn 'some';\n\n\t\tcase 'and':\n\t\t\treturn 'every';\n\n\t\tdefault:\n\t\t\tthrow new Error( `Relation not supported ${ relation }` );\n\t}\n}\n\nexport function extractValue(\n\tpath: string[],\n\telementValues: PropValue,\n\tnestedPath: string[] = []\n): TransformablePropValue< PropKey > | null {\n\tconst extractedValue = path.reduce( ( acc, key, index ) => {\n\t\tconst value = acc?.[ key as keyof typeof acc ] as PropValue | null;\n\n\t\treturn index !== path.length - 1 && isTransformable( value ) ? value.value ?? null : value;\n\t}, elementValues ) as TransformablePropValue< PropKey >;\n\n\tif ( ! nestedPath?.length ) {\n\t\treturn extractedValue;\n\t}\n\n\tconst nestedValue = nestedPath.reduce(\n\t\t( acc: Record< string, unknown >, key ) => acc?.[ key ] as Record< string, unknown >,\n\t\textractedValue?.value as Record< string, unknown >\n\t);\n\n\treturn {\n\t\t$$type: 'unknown',\n\t\tvalue: nestedValue,\n\t};\n}\n\nexport function isDependency( term: DependencyTerm | Dependency ): term is Dependency {\n\treturn 'terms' in term;\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","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","import_schema","import_schema"]}
|
package/dist/index.mjs
CHANGED
|
@@ -234,7 +234,8 @@ var linkPropTypeUtil = createPropUtils(
|
|
|
234
234
|
"link",
|
|
235
235
|
z20.strictObject({
|
|
236
236
|
destination: unknownChildrenSchema,
|
|
237
|
-
isTargetBlank: unknownChildrenSchema
|
|
237
|
+
isTargetBlank: unknownChildrenSchema,
|
|
238
|
+
tag: unknownChildrenSchema
|
|
238
239
|
})
|
|
239
240
|
);
|
|
240
241
|
|
|
@@ -867,8 +868,8 @@ function isDependencyMet(dependency, values) {
|
|
|
867
868
|
const failingDependencies = [];
|
|
868
869
|
const isMet = terms[method]((term) => {
|
|
869
870
|
const isNestedDependency = isDependency(term);
|
|
870
|
-
const result = isNestedDependency ? isDependencyMet(term, values).isMet : evaluateTerm(term, extractValue(term.path, values)?.value);
|
|
871
|
-
if (!result
|
|
871
|
+
const result = isNestedDependency ? isDependencyMet(term, values).isMet : evaluateTerm(term, extractValue(term.path, values, term.nestedPath)?.value);
|
|
872
|
+
if (!result) {
|
|
872
873
|
failingDependencies.push(term);
|
|
873
874
|
}
|
|
874
875
|
return result;
|
|
@@ -926,14 +927,25 @@ function getRelationMethod(relation) {
|
|
|
926
927
|
throw new Error(`Relation not supported ${relation}`);
|
|
927
928
|
}
|
|
928
929
|
}
|
|
929
|
-
function extractValue(path, elementValues) {
|
|
930
|
-
|
|
930
|
+
function extractValue(path, elementValues, nestedPath = []) {
|
|
931
|
+
const extractedValue = path.reduce((acc, key, index) => {
|
|
931
932
|
const value = acc?.[key];
|
|
932
933
|
return index !== path.length - 1 && isTransformable(value) ? value.value ?? null : value;
|
|
933
934
|
}, elementValues);
|
|
935
|
+
if (!nestedPath?.length) {
|
|
936
|
+
return extractedValue;
|
|
937
|
+
}
|
|
938
|
+
const nestedValue = nestedPath.reduce(
|
|
939
|
+
(acc, key) => acc?.[key],
|
|
940
|
+
extractedValue?.value
|
|
941
|
+
);
|
|
942
|
+
return {
|
|
943
|
+
$$type: "unknown",
|
|
944
|
+
value: nestedValue
|
|
945
|
+
};
|
|
934
946
|
}
|
|
935
947
|
function isDependency(term) {
|
|
936
|
-
return "
|
|
948
|
+
return "terms" in term;
|
|
937
949
|
}
|
|
938
950
|
|
|
939
951
|
// src/index.ts
|
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/flex.ts","../src/prop-types/image.ts","../src/prop-types/image-attachment-id.ts","../src/prop-types/image-src.ts","../src/prop-types/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/layout-direction.ts","../src/prop-types/link.ts","../src/prop-types/selection-size.ts","../src/prop-types/key-value.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/prop-types/background-prop-types/background-image-position-offset.ts","../src/prop-types/background-prop-types/background-image-size-scale.ts","../src/prop-types/boolean.ts","../src/prop-types/color-stop.ts","../src/prop-types/gradient-color-stop.ts","../src/prop-types/date-time.ts","../src/prop-types/position.ts","../src/prop-types/query.ts","../src/prop-types/html.ts","../src/prop-types/filter-prop-types/filter.ts","../src/prop-types/filter-prop-types/drop-shadow-filter.ts","../src/prop-types/filter-prop-types/filter-functions/blur-filter.ts","../src/prop-types/filter-prop-types/filter-functions/color-tone-filter.ts","../src/prop-types/filter-prop-types/filter-functions/hue-rotate-filter.ts","../src/prop-types/filter-prop-types/filter-functions/intensity-filter.ts","../src/prop-types/transform-prop-types/transform.ts","../src/prop-types/transform-prop-types/transform-functions.ts","../src/prop-types/transform-prop-types/transform-functions/move-transform.ts","../src/prop-types/transform-prop-types/types.ts","../src/prop-types/transform-prop-types/transform-functions/rotate-transform.ts","../src/prop-types/transform-prop-types/transform-functions/scale-transform.ts","../src/prop-types/transform-prop-types/transform-functions/skew-transform.ts","../src/prop-types/transform-prop-types/transform-origin.ts","../src/prop-types/transform-prop-types/perspective-origin.ts","../src/prop-types/filter-prop-types/backdrop-filter.ts","../src/utils/adjust-llm-prop-value-schema.ts","../src/utils/llm-schema-to-props.ts","../src/utils/props-to-llm-schema.ts","../src/utils/is-transformable.ts","../src/utils/filter-empty-values.ts","../src/utils/merge-props.ts","../src/utils/prop-dependency-utils.ts","../src/index.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\nconst SCHEMA_CACHE = new Map< string, unknown >();\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 getPropSchemaFromCache( key: string ) {\n\treturn SCHEMA_CACHE.get( key ) as PropTypeUtil< string, PropValue > | undefined;\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\tconst propUtil = {\n\t\textract,\n\t\tisValid,\n\t\tcreate,\n\t\tschema,\n\t\tkey: key as TKey,\n\t};\n\n\tSCHEMA_CACHE.set( key, propUtil );\n\treturn propUtil;\n}\n\nexport function createArrayPropUtils< TKey extends string, TValue extends PropValue >(\n\tkey: TKey,\n\tvalueSchema: ZodType< TValue >,\n\toverrideKey?: string\n) {\n\treturn createPropUtils( overrideKey || `${ key }-array`, z.array( valueSchema ) );\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'start-start': unknownChildrenSchema,\n\t\t'start-end': unknownChildrenSchema,\n\t\t'end-start': unknownChildrenSchema,\n\t\t'end-end': 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\t'block-start': unknownChildrenSchema,\n\t\t'block-end': unknownChildrenSchema,\n\t\t'inline-start': unknownChildrenSchema,\n\t\t'inline-end': 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 CLASSES_PROP_KEY = 'classes';\n\nexport const classesPropTypeUtil = createPropUtils(\n\tCLASSES_PROP_KEY,\n\tz.array( z.string().regex( /^[a-z][a-z-_0-9]*$/i ) )\n);\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 flexPropTypeUtil = createPropUtils(\n\t'flex',\n\tz.strictObject( {\n\t\tflexGrow: unknownChildrenSchema,\n\t\tflexShrink: unknownChildrenSchema,\n\t\tflexBasis: unknownChildrenSchema,\n\t} )\n);\n\nexport type FlexPropValue = z.infer< typeof flexPropTypeUtil.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 dimensionsPropTypeUtil = createPropUtils(\n\t'dimensions',\n\tz.strictObject( {\n\t\t'block-start': unknownChildrenSchema,\n\t\t'block-end': unknownChildrenSchema,\n\t\t'inline-start': unknownChildrenSchema,\n\t\t'inline-end': unknownChildrenSchema,\n\t} )\n);\n\nexport type DimensionsPropValue = z.infer< typeof dimensionsPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const numberPropTypeUtil = createPropUtils( 'number', z.number().nullable() );\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\n\t\t.strictObject( {\n\t\t\tunit: z.enum( [ 'px', 'em', 'rem', '%', 'vw', 'vh' ] ),\n\t\t\tsize: z.number(),\n\t\t} )\n\t\t.or(\n\t\t\tz.strictObject( {\n\t\t\t\tunit: z.enum( [ 'deg', 'rad', 'grad', 'turn' ] ),\n\t\t\t\tsize: z.number(),\n\t\t\t} )\n\t\t)\n\t\t.or(\n\t\t\tz.strictObject( {\n\t\t\t\tunit: z.enum( [ 's', 'ms' ] ),\n\t\t\t\tsize: z.number(),\n\t\t\t} )\n\t\t)\n\t\t.or(\n\t\t\tz.strictObject( {\n\t\t\t\tunit: z.literal( 'auto' ),\n\t\t\t\tsize: z.literal( '' ),\n\t\t\t} )\n\t\t)\n\t\t.or(\n\t\t\tz.strictObject( {\n\t\t\t\tunit: z.literal( 'custom' ),\n\t\t\t\tsize: z.string(),\n\t\t\t} )\n\t\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().nullable() );\n\nexport type UrlPropValue = z.infer< typeof urlPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const layoutDirectionPropTypeUtil = createPropUtils(\n\t'layout-direction',\n\tz.object( {\n\t\trow: z.any(),\n\t\tcolumn: z.any(),\n\t} )\n);\n\nexport type LayoutDirectionPropValue = z.infer< typeof layoutDirectionPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const linkPropTypeUtil = createPropUtils(\n\t'link',\n\tz.strictObject( {\n\t\tdestination: unknownChildrenSchema,\n\t\tisTargetBlank: unknownChildrenSchema,\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';\nimport { keyValuePropTypeUtil } from './key-value';\nimport { stringPropTypeUtil } from './string';\nimport { unknownChildrenSchema } from './utils';\n\nexport const selectionSizePropTypeUtil = createPropUtils(\n\t'selection-size',\n\tz.strictObject( {\n\t\tselection: z.union( [ keyValuePropTypeUtil.schema, stringPropTypeUtil.schema ] ),\n\t\tsize: unknownChildrenSchema,\n\t} )\n);\n\nexport type SelectionSizePropValue = z.infer< typeof selectionSizePropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const keyValuePropTypeUtil = createPropUtils(\n\t'key-value',\n\tz.strictObject( {\n\t\tkey: unknownChildrenSchema,\n\t\tvalue: unknownChildrenSchema,\n\t} )\n);\n\nexport type KeyValuePropValue = z.infer< typeof keyValuePropTypeUtil.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\tclip: 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\nexport const 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 { type z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const backgroundColorOverlayPropTypeUtil = createPropUtils( 'background-color-overlay', unknownChildrenSchema );\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 { type z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const backgroundImagePositionOffsetPropTypeUtil = createPropUtils(\n\t'background-image-position-offset',\n\tunknownChildrenSchema\n);\n\nexport type BackgroundImagePositionOffsetPropValue = z.infer< typeof backgroundImagePositionOffsetPropTypeUtil.schema >;\n","import { type z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const backgroundImageSizeScalePropTypeUtil = createPropUtils(\n\t'background-image-size-scale',\n\tunknownChildrenSchema\n);\n\nexport type BackgroundImageSizeScalePropValue = z.infer< typeof backgroundImageSizeScalePropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const booleanPropTypeUtil = createPropUtils( 'boolean', z.boolean().nullable() );\n\nexport type BooleanPropValue = z.infer< typeof booleanPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const colorStopPropTypeUtil = createPropUtils(\n\t'color-stop',\n\tz.strictObject( {\n\t\tcolor: unknownChildrenSchema,\n\t\toffset: unknownChildrenSchema,\n\t} )\n);\n\nexport type ColorStopPropValue = z.infer< typeof colorStopPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { colorStopPropTypeUtil } from './color-stop';\n\nexport const gradientColorStopPropTypeUtil = createPropUtils(\n\t'gradient-color-stop',\n\tz.array( colorStopPropTypeUtil.schema )\n);\n\nexport type GradientColorStopPropValue = z.infer< typeof gradientColorStopPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const DateTimePropTypeUtil = createPropUtils(\n\t'date-time',\n\tz.strictObject( {\n\t\tdate: unknownChildrenSchema,\n\t\ttime: unknownChildrenSchema,\n\t} )\n);\n\nexport type DateTimePropValue = z.infer< typeof DateTimePropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const positionPropTypeUtil = createPropUtils(\n\t'object-position',\n\tz.strictObject( {\n\t\tx: unknownChildrenSchema,\n\t\ty: unknownChildrenSchema,\n\t} )\n);\n\nexport type PositionPropTypeValue = z.infer< typeof positionPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const queryPropTypeUtil = createPropUtils(\n\t'query',\n\tz.strictObject( {\n\t\tid: unknownChildrenSchema,\n\t\tlabel: unknownChildrenSchema,\n\t} )\n);\n\nexport type QueryPropValue = z.infer< typeof queryPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const htmlPropTypeUtil = createPropUtils( 'html', z.string().nullable() );\n\nexport type HtmlPropValue = z.infer< typeof htmlPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { stringPropTypeUtil } from '../string';\nimport { dropShadowFilterPropTypeUtil } from './drop-shadow-filter';\nimport { blurFilterPropTypeUtil } from './filter-functions/blur-filter';\nimport { colorToneFilterPropTypeUtil } from './filter-functions/color-tone-filter';\nimport { hueRotateFilterPropTypeUtil } from './filter-functions/hue-rotate-filter';\nimport { intensityFilterPropTypeUtil } from './filter-functions/intensity-filter';\n\nexport const cssFilterFunctionPropUtil = createPropUtils(\n\t'css-filter-func',\n\tz.object( {\n\t\tfunc: stringPropTypeUtil.schema,\n\t\targs: z.union( [\n\t\t\tblurFilterPropTypeUtil.schema,\n\t\t\tintensityFilterPropTypeUtil.schema,\n\t\t\tcolorToneFilterPropTypeUtil.schema,\n\t\t\thueRotateFilterPropTypeUtil.schema,\n\t\t\tdropShadowFilterPropTypeUtil.schema,\n\t\t] ),\n\t} )\n);\n\nexport const filterPropTypeUtil = createPropUtils( 'filter', z.array( cssFilterFunctionPropUtil.schema ) );\n\nexport type FilterItemPropValue = z.infer< typeof cssFilterFunctionPropUtil.schema >;\n\nexport type FilterPropValue = z.infer< typeof filterPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const dropShadowFilterPropTypeUtil = createPropUtils(\n\t'drop-shadow',\n\tz.object( {\n\t\txAxis: unknownChildrenSchema,\n\t\tyAxis: unknownChildrenSchema,\n\t\tblur: unknownChildrenSchema,\n\t\tcolor: unknownChildrenSchema,\n\t} )\n);\n\nexport type DropShadowFilterPropValue = z.infer< typeof dropShadowFilterPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../../utils';\n\nexport const blurFilterPropTypeUtil = createPropUtils(\n\t'blur',\n\tz.strictObject( {\n\t\tsize: unknownChildrenSchema,\n\t} )\n);\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../../utils';\n\nexport const colorToneFilterPropTypeUtil = createPropUtils(\n\t'color-tone',\n\tz.strictObject( {\n\t\tsize: unknownChildrenSchema,\n\t} )\n);\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../../utils';\n\nexport const hueRotateFilterPropTypeUtil = createPropUtils(\n\t'hue-rotate',\n\tz.strictObject( {\n\t\tsize: unknownChildrenSchema,\n\t} )\n);\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../../utils';\n\nexport const intensityFilterPropTypeUtil = createPropUtils(\n\t'intensity',\n\tz.strictObject( {\n\t\tsize: unknownChildrenSchema,\n\t} )\n);\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const transformPropTypeUtil = createPropUtils(\n\t'transform',\n\tz.strictObject( {\n\t\t'transform-functions': unknownChildrenSchema,\n\t\t'transform-origin': unknownChildrenSchema,\n\t\tperspective: unknownChildrenSchema,\n\t\t'perspective-origin': unknownChildrenSchema,\n\t} )\n);\n\nexport type TransformPropValue = z.infer< typeof transformPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { moveTransformPropTypeUtil } from './transform-functions/move-transform';\nimport { rotateTransformPropTypeUtil } from './transform-functions/rotate-transform';\nimport { scaleTransformPropTypeUtil } from './transform-functions/scale-transform';\nimport { skewTransformPropTypeUtil } from './transform-functions/skew-transform';\n\nconst filterTypes = moveTransformPropTypeUtil.schema\n\t.or( scaleTransformPropTypeUtil.schema )\n\t.or( rotateTransformPropTypeUtil.schema )\n\t.or( skewTransformPropTypeUtil.schema );\n\nexport const transformFunctionsPropTypeUtil = createPropUtils( 'transform-functions', z.array( filterTypes ) );\n\nexport type TransformFunctionsPropValue = z.infer< typeof transformFunctionsPropTypeUtil.schema >;\n\nexport type TransformFunctionsItemPropValue = z.infer< typeof filterTypes >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../../utils';\nimport { TransformFunctionKeys } from '../types';\n\nexport const moveTransformPropTypeUtil = createPropUtils(\n\tTransformFunctionKeys.move,\n\tz.strictObject( {\n\t\tx: unknownChildrenSchema,\n\t\ty: unknownChildrenSchema,\n\t\tz: unknownChildrenSchema,\n\t} )\n);\n\nexport type MoveTransformPropValue = z.infer< typeof moveTransformPropTypeUtil.schema >;\n","type TransformFunctions = 'transform-move' | 'transform-scale' | 'transform-rotate' | 'transform-skew';\n\nexport const TransformFunctionKeys: Record< string, TransformFunctions > = {\n\tmove: 'transform-move',\n\tscale: 'transform-scale',\n\trotate: 'transform-rotate',\n\tskew: 'transform-skew',\n};\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../../utils';\nimport { TransformFunctionKeys } from '../types';\n\nexport const rotateTransformPropTypeUtil = createPropUtils(\n\tTransformFunctionKeys.rotate,\n\tz.strictObject( {\n\t\tx: unknownChildrenSchema,\n\t\ty: unknownChildrenSchema,\n\t\tz: unknownChildrenSchema,\n\t} )\n);\n\nexport type RotateTransformPropValue = z.infer< typeof rotateTransformPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { numberPropTypeUtil } from '../../number';\nimport { TransformFunctionKeys } from '../types';\n\nexport const scaleTransformPropTypeUtil = createPropUtils(\n\tTransformFunctionKeys.scale,\n\tz.strictObject( {\n\t\tx: numberPropTypeUtil.schema.nullable(),\n\t\ty: numberPropTypeUtil.schema.nullable(),\n\t\tz: numberPropTypeUtil.schema.nullable(),\n\t} )\n);\n\nexport type ScaleTransformPropValue = z.infer< typeof scaleTransformPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../../utils';\nimport { TransformFunctionKeys } from '../types';\n\nexport const skewTransformPropTypeUtil = createPropUtils(\n\tTransformFunctionKeys.skew,\n\tz.strictObject( {\n\t\tx: unknownChildrenSchema,\n\t\ty: unknownChildrenSchema,\n\t} )\n);\n\nexport type SkewTransformPropValue = z.infer< typeof skewTransformPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const transformOriginPropTypeUtil = createPropUtils(\n\t'transform-origin',\n\tz.strictObject( {\n\t\tx: unknownChildrenSchema,\n\t\ty: unknownChildrenSchema,\n\t\tz: unknownChildrenSchema,\n\t} )\n);\n\nexport type TransformOriginPropValue = z.infer< typeof transformOriginPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const perspectiveOriginPropTypeUtil = createPropUtils(\n\t'perspective-origin',\n\tz.strictObject( {\n\t\tx: unknownChildrenSchema,\n\t\ty: unknownChildrenSchema,\n\t} )\n);\n\nexport type PerspectiveOriginPropValue = z.infer< typeof perspectiveOriginPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { cssFilterFunctionPropUtil } from './filter';\n\nexport const backdropFilterPropTypeUtil = createPropUtils(\n\t'backdrop-filter',\n\tz.array( cssFilterFunctionPropUtil.schema )\n);\n\nexport type BackdropFilterPropValue = z.infer< typeof backdropFilterPropTypeUtil.schema >;\n\nexport type BackdropFilterItemPropValue = z.infer< typeof cssFilterFunctionPropUtil.schema >;\n","import { numberPropTypeUtil, type NumberPropValue, stringPropTypeUtil, type StringPropValue } from '../prop-types';\nimport { type ObjectPropValue, type PropValue, type TransformablePropValue } from '../types';\n\nconst ensureNotNull = ( v: unknown, fallback: unknown ) => ( v === null ? fallback : v );\n\nexport const adjustLlmPropValueSchema = ( value: Readonly< PropValue >, forceKey?: string ): PropValue => {\n\tconst clone = structuredClone( value );\n\n\tif ( typeof clone === 'string' ) {\n\t\treturn stringPropTypeUtil.create( clone );\n\t}\n\tif ( typeof clone === 'number' ) {\n\t\treturn numberPropTypeUtil.create( clone );\n\t}\n\t// Check for transformable types\n\tif ( clone && typeof clone === 'object' ) {\n\t\tif ( Array.isArray( clone ) ) {\n\t\t\treturn clone.map( ( item ) => adjustLlmPropValueSchema( item, forceKey ) ) as PropValue;\n\t\t}\n\t\tconst transformablePropValue = clone as TransformablePropValue< string >;\n\t\tif ( forceKey ) {\n\t\t\ttransformablePropValue.$$type = forceKey;\n\t\t}\n\n\t\tif ( ! transformablePropValue.$$type ) {\n\t\t\tthrow new Error( 'Missing $$type in property: ' + JSON.stringify( transformablePropValue ) );\n\t\t}\n\n\t\tif ( ! ( 'value' in transformablePropValue ) ) {\n\t\t\tthrow new Error( 'Missing value property in PropValue: ' + JSON.stringify( transformablePropValue ) );\n\t\t}\n\n\t\t// fix by type\n\t\tswitch ( transformablePropValue.$$type ) {\n\t\t\tcase 'size': {\n\t\t\t\tconst { value: rawSizePropValue } = transformablePropValue as TransformablePropValue<\n\t\t\t\t\tstring,\n\t\t\t\t\t{ size: StringPropValue | NumberPropValue; unit: StringPropValue }\n\t\t\t\t>;\n\t\t\t\tconst unit =\n\t\t\t\t\ttypeof rawSizePropValue.unit === 'string'\n\t\t\t\t\t\t? rawSizePropValue.unit\n\t\t\t\t\t\t: ensureNotNull( stringPropTypeUtil.extract( rawSizePropValue.unit ), 'px' );\n\t\t\t\tconst size =\n\t\t\t\t\ttypeof rawSizePropValue.size === 'string' || typeof rawSizePropValue.size === 'number'\n\t\t\t\t\t\t? rawSizePropValue.size\n\t\t\t\t\t\t: ensureNotNull(\n\t\t\t\t\t\t\t\tstringPropTypeUtil.extract( rawSizePropValue.size ),\n\t\t\t\t\t\t\t\tnumberPropTypeUtil.extract( rawSizePropValue.size )\n\t\t\t\t\t\t );\n\t\t\t\treturn {\n\t\t\t\t\t$$type: 'size',\n\t\t\t\t\tvalue: {\n\t\t\t\t\t\tunit,\n\t\t\t\t\t\tsize,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\n\t\tif ( typeof transformablePropValue.value === 'object' ) {\n\t\t\tif ( Array.isArray( transformablePropValue.value ) ) {\n\t\t\t\ttransformablePropValue.value = adjustLlmPropValueSchema(\n\t\t\t\t\ttransformablePropValue.value,\n\t\t\t\t\tundefined\n\t\t\t\t) as PropValue[];\n\t\t\t} else {\n\t\t\t\tconst { value: objectValue } = transformablePropValue as ObjectPropValue;\n\t\t\t\tconst clonedObject = clone as ObjectPropValue;\n\t\t\t\tclonedObject.value = {} as Record< string, PropValue >;\n\t\t\t\tObject.keys( objectValue ).forEach( ( key ) => {\n\t\t\t\t\tconst childProp = ( objectValue as Record< string, unknown > )[ key ];\n\t\t\t\t\t( clonedObject.value as Record< string, unknown > )[ key ] = adjustLlmPropValueSchema(\n\t\t\t\t\t\tchildProp as PropValue,\n\t\t\t\t\t\tundefined\n\t\t\t\t\t);\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\t}\n\treturn clone;\n};\n","import { type PropsSchema, type PropType } from '../types';\nimport { type JsonSchema7 } from './prop-json-schema';\n\nexport function jsonSchemaToPropType( schema: JsonSchema7, key = < string >schema.key ): PropType {\n\tconst meta: Record< string, unknown > = {};\n\n\tif ( schema.description ) {\n\t\tmeta.description = schema.description;\n\t}\n\n\t// Handle union types (anyOf)\n\tif ( schema.anyOf && Array.isArray( schema.anyOf ) ) {\n\t\treturn convertJsonSchemaToUnionPropType( schema, meta );\n\t}\n\n\t// Handle object types\n\tif ( schema.type === 'object' && schema.properties ) {\n\t\treturn convertJsonSchemaToObjectPropType( schema, meta, key );\n\t}\n\n\t// Handle array types\n\tif ( schema.type === 'array' && schema.items ) {\n\t\treturn convertJsonSchemaToArrayPropType( schema, meta, key );\n\t}\n\n\t// Handle plain types (string, number, boolean)\n\treturn convertJsonSchemaToPlainPropType( schema, meta, key );\n}\n\nfunction convertJsonSchemaToPlainPropType(\n\tschema: JsonSchema7,\n\tmeta: Record< string, unknown >,\n\tkey = < string >schema.key\n): PropType {\n\tconst settings: Record< string, unknown > = {};\n\n\t// Determine the key based on type\n\tlet propKey = key || 'string';\n\n\tif ( schema.type === 'number' ) {\n\t\tpropKey = 'number';\n\t} else if ( schema.type === 'boolean' ) {\n\t\tpropKey = 'boolean';\n\t} else if ( schema.type === 'string' ) {\n\t\tpropKey = 'string';\n\t}\n\n\t// Handle enum values\n\tif ( Array.isArray( schema.enum ) ) {\n\t\tsettings.enum = schema.enum;\n\t}\n\n\treturn {\n\t\tkind: 'plain',\n\t\tkey: propKey,\n\t\tsettings,\n\t\tmeta,\n\t} as PropType;\n}\n\n/**\n * Converts a JSON Schema anyOf to a union PropType\n * @param schema\n * @param meta\n */\nfunction convertJsonSchemaToUnionPropType( schema: JsonSchema7, meta: Record< string, unknown > ): PropType {\n\tconst propTypes: Record< string, PropType > = {};\n\n\tif ( ! schema.anyOf || ! Array.isArray( schema.anyOf ) ) {\n\t\tthrow new Error( 'Invalid anyOf schema' );\n\t}\n\n\t// Process each variant in the anyOf array\n\tfor ( const variantSchema of schema.anyOf ) {\n\t\t// Each variant should be an object with $$type and value properties\n\t\tif (\n\t\t\tvariantSchema.type === 'object' &&\n\t\t\tvariantSchema.properties &&\n\t\t\tvariantSchema.properties.$$type &&\n\t\t\tvariantSchema.properties.value\n\t\t) {\n\t\t\tconst typeProperty = variantSchema.properties.$$type;\n\n\t\t\t// Extract the type key from the enum\n\t\t\tlet typeKey: string;\n\t\t\tif ( typeProperty.enum && Array.isArray( typeProperty.enum ) && typeProperty.enum.length > 0 ) {\n\t\t\t\ttypeKey = typeProperty.enum[ 0 ] as string;\n\t\t\t} else {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// Convert the value schema to a PropType\n\t\t\tconst valuePropType = convertJsonSchemaToPropType( variantSchema.properties.value );\n\t\t\tpropTypes[ typeKey ] = valuePropType;\n\t\t}\n\t}\n\n\treturn {\n\t\tkind: 'union',\n\t\tprop_types: propTypes,\n\t\tsettings: {},\n\t\tmeta,\n\t} as PropType;\n}\n\nfunction convertJsonSchemaToObjectPropType(\n\tschema: JsonSchema7,\n\tmeta: Record< string, unknown >,\n\tkey = < string >schema.key\n): PropType {\n\tconst shape: Record< string, PropType > = {};\n\n\tif ( ! schema.properties ) {\n\t\treturn {\n\t\t\tkind: 'object',\n\t\t\tkey,\n\t\t\tshape: {},\n\t\t\tsettings: {},\n\t\t\tmeta,\n\t\t} as PropType;\n\t}\n\n\tconst requiredFields = Array.isArray( schema.required ) ? schema.required : [];\n\n\t// Convert each property\n\tfor ( const [ propKey, propSchema ] of Object.entries( schema.properties ) ) {\n\t\tconst subPropType = convertJsonSchemaToPropType( propSchema, key );\n\n\t\t// Mark as required if it's in the required array\n\t\tif ( requiredFields.includes( propKey ) ) {\n\t\t\tsubPropType.settings = {\n\t\t\t\t...subPropType.settings,\n\t\t\t\trequired: true,\n\t\t\t};\n\t\t}\n\n\t\tshape[ propKey ] = subPropType;\n\t}\n\n\treturn {\n\t\tkind: 'object',\n\t\tkey: key || 'object',\n\t\tshape,\n\t\tsettings: {},\n\t\tmeta,\n\t} as PropType;\n}\n\nfunction convertJsonSchemaToArrayPropType(\n\tschema: JsonSchema7,\n\tmeta: Record< string, unknown >,\n\tkey = < string >schema.key\n): PropType {\n\tif ( ! schema.items ) {\n\t\tthrow new Error( 'Array schema must have items property' );\n\t}\n\n\tconst itemPropType = convertJsonSchemaToPropType( schema.items );\n\n\treturn {\n\t\tkind: 'array',\n\t\tkey: key || 'array',\n\t\titem_prop_type: itemPropType,\n\t\tsettings: {},\n\t\tmeta,\n\t} as PropType;\n}\n\nfunction convertJsonSchemaToPropType( schema: JsonSchema7, key?: string ): PropType {\n\treturn jsonSchemaToPropType( schema, key );\n}\n\n/**\n * Converts a complete JSON Schema object back to a PropsSchema\n *\n * @param jsonSchema The JSON Schema to convert\n */\nexport function jsonSchemaToPropsSchema( jsonSchema: JsonSchema7 ): PropsSchema {\n\tconst propsSchema: PropsSchema = {};\n\n\tif ( jsonSchema.type !== 'object' || ! jsonSchema.properties ) {\n\t\tthrow new Error( 'Root schema must be an object with properties' );\n\t}\n\n\tfor ( const [ key, propSchema ] of Object.entries( jsonSchema.properties ) ) {\n\t\tpropsSchema[ key ] = convertJsonSchemaToPropType( propSchema, key );\n\t}\n\n\treturn propsSchema;\n}\n","import { type PropsSchema, type PropType } from '../types';\nimport { type JsonSchema7 } from './prop-json-schema';\n\nexport function propTypeToJsonSchema( propType: PropType ): JsonSchema7 {\n\tconst description = propType.meta?.description;\n\n\tconst schema: JsonSchema7 = {};\n\n\tif ( description ) {\n\t\tschema.description = description;\n\t}\n\n\t// Handle different kinds of prop types\n\tswitch ( propType.kind ) {\n\t\tcase 'plain':\n\t\t\treturn convertPlainPropType( propType, schema );\n\t\tcase 'union':\n\t\t\treturn convertUnionPropType( propType, schema );\n\t\tcase 'object':\n\t\t\treturn convertObjectPropType( propType, schema );\n\t\tcase 'array':\n\t\t\treturn convertArrayPropType( propType, schema );\n\t\tdefault:\n\t\t\treturn convertPlainPropType( propType, schema );\n\t}\n\n\treturn schema;\n}\n\nfunction convertPlainPropType( propType: PropType & { kind: 'plain' }, baseSchema: JsonSchema7 ): JsonSchema7 {\n\tconst schema = { ...baseSchema };\n\n\t// Determine type based on key\n\tconst key = propType.key.toLowerCase();\n\n\tswitch ( key ) {\n\t\tcase 'number':\n\t\t\tschema.type = 'number';\n\t\t\tbreak;\n\t\tcase 'boolean':\n\t\t\tschema.type = 'boolean';\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tschema.type = 'string';\n\t}\n\n\t// Handle enum from settings\n\tif ( Array.isArray( propType.settings?.enum ) ) {\n\t\tschema.enum = propType.settings.enum;\n\t}\n\n\treturn schema;\n}\n\n/**\n * Converts a union prop type to JSON Schema ( электричество anyOf)\n *\n * @param propType The union prop type to convert\n * @param baseSchema Base schema to extend\n */\nfunction convertUnionPropType( propType: PropType & { kind: 'union' }, baseSchema: JsonSchema7 ): JsonSchema7 {\n\tconst schema = structuredClone( baseSchema );\n\n\tconst propTypes = propType.prop_types || {};\n\tconst schemas: JsonSchema7[] = [];\n\n\t// Convert each prop type in the union\n\tfor ( const [ typeKey, subPropType ] of Object.entries( propTypes ) ) {\n\t\tconst subSchema = convertPropTypeToJsonSchema( subPropType );\n\n\t\tschemas.push( {\n\t\t\ttype: 'object',\n\t\t\trequired: [ '$$type', 'value' ],\n\t\t\tproperties: {\n\t\t\t\t$$type: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tconst: typeKey,\n\t\t\t\t\tdescription: subPropType.meta?.description,\n\t\t\t\t\t$comment: `Discriminator for union type variant: ${ typeKey }`,\n\t\t\t\t},\n\t\t\t\tvalue: subSchema,\n\t\t\t},\n\t\t} );\n\t}\n\n\tif ( schemas.length > 0 ) {\n\t\tschema.anyOf = schemas;\n\t}\n\n\tconst propTypeDescription = propType.meta?.description;\n\tif ( propTypeDescription ) {\n\t\tschema.description = propTypeDescription;\n\t}\n\treturn schema;\n}\n\nfunction convertObjectPropType( propType: PropType & { kind: 'object' }, baseSchema: JsonSchema7 ): JsonSchema7 {\n\tconst schema = structuredClone( baseSchema );\n\n\tschema.type = 'object';\n\tschema.properties = {};\n\n\tconst required: string[] = [];\n\n\tconst shape = propType.shape || {};\n\n\t// Convert each property in the object shape\n\tfor ( const [ key, subPropType ] of Object.entries( shape ) ) {\n\t\tconst propSchema = convertPropTypeToJsonSchema( subPropType );\n\n\t\t// Check if this property is required\n\t\tif ( subPropType.settings?.required === true ) {\n\t\t\trequired.push( key );\n\t\t}\n\n\t\tschema.properties[ key ] = propSchema;\n\t}\n\n\t// Add required array if there are required fields\n\tif ( required.length > 0 ) {\n\t\tschema.required = required;\n\t}\n\n\treturn schema;\n}\n\nfunction convertArrayPropType( propType: PropType & { kind: 'array' }, baseSchema: JsonSchema7 ): JsonSchema7 {\n\tconst schema = structuredClone( baseSchema );\n\n\tschema.type = 'array';\n\n\tconst itemPropType = propType.item_prop_type;\n\n\tif ( itemPropType ) {\n\t\tschema.items = convertPropTypeToJsonSchema( itemPropType );\n\t}\n\n\treturn schema;\n}\n\nfunction convertPropTypeToJsonSchema( propType: PropType ): JsonSchema7 {\n\treturn propTypeToJsonSchema( propType );\n}\n\nexport function propsSchemaToJsonSchema( schema: PropsSchema ): JsonSchema7 {\n\tconst jsonSchema: JsonSchema7 = {\n\t\ttype: 'object',\n\t\tproperties: {},\n\t};\n\n\tfor ( const [ key, propType ] of Object.entries( schema ) ) {\n\t\t// Skip internal properties\n\t\tif ( ! isPropKeyConfigurable( key ) ) {\n\t\t\tcontinue;\n\t\t}\n\n\t\tconst propSchema = convertPropTypeToJsonSchema( propType );\n\t\tif ( jsonSchema.properties ) {\n\t\t\tjsonSchema.properties[ key ] = propSchema;\n\t\t}\n\n\t\t// Handle required fields at root level if needed\n\t\t// (typically props are optional unless specified)\n\t}\n\n\treturn jsonSchema;\n}\n\nexport const nonConfigurablePropKeys = [ '_cssid', 'classes', 'attributes' ] as readonly string[];\n\nexport function isPropKeyConfigurable( propKey: string ): boolean {\n\treturn ! nonConfigurablePropKeys.includes( propKey );\n}\n\nexport function configurableKeys( schema: PropsSchema ): string[] {\n\treturn Object.keys( schema ).filter( isPropKeyConfigurable );\n}\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","import { type PropValue } from '../types';\nimport { isTransformable } from '../utils/is-transformable';\n\nexport const filterEmptyValues = < TValue extends PropValue >( value: TValue ): TValue | null => {\n\tif ( isEmpty( value ) ) {\n\t\treturn null;\n\t}\n\n\tif ( Array.isArray( value ) ) {\n\t\treturn value.map( filterEmptyValues ).filter( ( item ) => ! isEmpty( item ) ) as TValue;\n\t}\n\n\tif ( typeof value === 'object' ) {\n\t\treturn Object.fromEntries(\n\t\t\tObject.entries( value )\n\t\t\t\t.map( ( [ key, val ] ) => [ key, filterEmptyValues( val ) ] )\n\t\t\t\t.filter( ( [ , val ] ) => ! isEmpty( val ) )\n\t\t);\n\t}\n\n\treturn value;\n};\n\ntype Nullish = null | undefined | '';\n\nexport const isEmpty = ( value: PropValue ): value is Nullish => {\n\tif ( value && isTransformable( value ) ) {\n\t\treturn isEmpty( value.value );\n\t}\n\n\treturn isNullish( value ) || isNullishArray( value ) || isNullishObject( value );\n};\n\nconst isNullish = ( value: PropValue ): value is Nullish => value === null || value === undefined || value === '';\n\nconst isNullishArray = ( value: NonNullable< PropValue > ): value is Nullish[] =>\n\tArray.isArray( value ) && value.every( isEmpty );\n\nconst isNullishObject = ( value: NonNullable< PropValue > ): value is Record< string, Nullish > => {\n\treturn typeof value === 'object' && isNullishArray( Object.values( value ) );\n};\n","import type { Props } from '../types';\n\nexport function mergeProps( current: Props, updates: Props ) {\n\t// edge case, the server returns an array instead of an object when empty props because of PHP array / object conversion\n\tlet props: Props = {};\n\n\tif ( ! Array.isArray( current ) ) {\n\t\tprops = structuredClone( current );\n\t}\n\n\tObject.entries( updates ).forEach( ( [ key, value ] ) => {\n\t\tif ( value === null || value === undefined ) {\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-dynamic-delete\n\t\t\tdelete props[ key ];\n\t\t} else {\n\t\t\tprops[ key ] = value;\n\t\t}\n\t} );\n\n\treturn props;\n}\n","import {\n\ttype Dependency,\n\ttype DependencyTerm,\n\ttype PropKey,\n\ttype PropValue,\n\ttype TransformablePropValue,\n} from '../types';\nimport { isTransformable } from './is-transformable';\n\ntype ParsedTerm = DependencyTerm;\n\ntype Relation = Dependency[ 'relation' ];\n\nexport function isDependencyMet(\n\tdependency: Dependency | undefined,\n\tvalues: PropValue\n): { isMet: true } | { isMet: false; failingDependencies: DependencyTerm[] } {\n\tif ( ! dependency?.terms.length ) {\n\t\treturn { isMet: true };\n\t}\n\n\tconst { relation, terms } = dependency;\n\tconst method = getRelationMethod( relation );\n\n\tconst failingDependencies: DependencyTerm[] = [];\n\tconst isMet = terms[ method ]( ( term: ParsedTerm | Dependency ) => {\n\t\tconst isNestedDependency = isDependency( term );\n\t\tconst result = isNestedDependency\n\t\t\t? isDependencyMet( term, values ).isMet\n\t\t\t: evaluateTerm( term, extractValue( term.path, values )?.value );\n\n\t\tif ( ! result && ! isNestedDependency ) {\n\t\t\tfailingDependencies.push( term );\n\t\t}\n\n\t\treturn result;\n\t} );\n\n\treturn { isMet, failingDependencies };\n}\n\nexport function evaluateTerm( term: DependencyTerm, actualValue: unknown ) {\n\tconst { value: valueToCompare, operator } = term;\n\n\tswitch ( operator ) {\n\t\tcase 'eq':\n\t\tcase 'ne':\n\t\t\treturn ( actualValue === valueToCompare ) === ( 'eq' === operator );\n\n\t\tcase 'gt':\n\t\tcase 'lte':\n\t\t\tif ( ! isNumber( actualValue ) || ! isNumber( valueToCompare ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\treturn Number( actualValue ) > Number( valueToCompare ) === ( 'gt' === operator );\n\n\t\tcase 'lt':\n\t\tcase 'gte':\n\t\t\tif ( ! isNumber( actualValue ) || ! isNumber( valueToCompare ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\treturn Number( actualValue ) < Number( valueToCompare ) === ( 'lt' === operator );\n\t\tcase 'in':\n\t\tcase 'nin':\n\t\t\tif ( ! Array.isArray( valueToCompare ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\treturn valueToCompare.includes( actualValue as never ) === ( 'in' === operator );\n\n\t\tcase 'contains':\n\t\tcase 'ncontains':\n\t\t\tif (\n\t\t\t\t( 'string' !== typeof actualValue || 'string' !== typeof valueToCompare ) &&\n\t\t\t\t! Array.isArray( actualValue )\n\t\t\t) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\treturn ( 'contains' === operator ) === actualValue.includes( valueToCompare as never );\n\n\t\tcase 'exists':\n\t\tcase 'not_exist':\n\t\t\tconst evaluation = !! actualValue || 0 === actualValue || false === actualValue;\n\n\t\t\treturn ( 'exists' === operator ) === evaluation;\n\n\t\tdefault:\n\t\t\treturn true;\n\t}\n}\n\nfunction isNumber( value: unknown ): value is number {\n\treturn typeof value === 'number' && ! isNaN( value );\n}\n\nfunction getRelationMethod( relation: Relation ) {\n\tswitch ( relation ) {\n\t\tcase 'or':\n\t\t\treturn 'some';\n\n\t\tcase 'and':\n\t\t\treturn 'every';\n\n\t\tdefault:\n\t\t\tthrow new Error( `Relation not supported ${ relation }` );\n\t}\n}\n\nexport function extractValue( path: string[], elementValues: PropValue ): TransformablePropValue< PropKey > | null {\n\treturn path.reduce( ( acc, key, index ) => {\n\t\tconst value = acc?.[ key as keyof typeof acc ] as PropValue | null;\n\n\t\treturn index !== path.length - 1 && isTransformable( value ) ? value.value ?? null : value;\n\t}, elementValues ) as TransformablePropValue< PropKey >;\n}\n\nexport function isDependency( term: DependencyTerm | Dependency ): term is Dependency {\n\treturn 'relation' in term;\n}\n","import { adjustLlmPropValueSchema } from './utils/adjust-llm-prop-value-schema';\nimport { jsonSchemaToPropType } from './utils/llm-schema-to-props';\nimport {\n\tconfigurableKeys,\n\tisPropKeyConfigurable,\n\tnonConfigurablePropKeys,\n\tpropTypeToJsonSchema,\n} from './utils/props-to-llm-schema';\n\nexport { type JsonSchema7 } from './utils/prop-json-schema';\n\n// types\nexport * from './types';\nexport { type CreateOptions, type PropTypeUtil } from './utils/create-prop-utils';\n\n// prop types\nexport * from './prop-types';\n\n// utils\nexport { createArrayPropUtils, createPropUtils, getPropSchemaFromCache } from './utils/create-prop-utils';\nexport { filterEmptyValues, isEmpty } from './utils/filter-empty-values';\nexport { isTransformable } from './utils/is-transformable';\nexport { mergeProps } from './utils/merge-props';\nexport { evaluateTerm, extractValue, isDependency, isDependencyMet } from './utils/prop-dependency-utils';\n\nexport const Schema = {\n\tjsonSchemaToPropType,\n\tpropTypeToJsonSchema,\n\tadjustLlmPropValueSchema,\n\tisPropKeyConfigurable,\n\tnonConfigurablePropKeys,\n\tconfigurableKeys,\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","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","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/flex.ts","../src/prop-types/image.ts","../src/prop-types/image-attachment-id.ts","../src/prop-types/image-src.ts","../src/prop-types/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/layout-direction.ts","../src/prop-types/link.ts","../src/prop-types/selection-size.ts","../src/prop-types/key-value.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/prop-types/background-prop-types/background-image-position-offset.ts","../src/prop-types/background-prop-types/background-image-size-scale.ts","../src/prop-types/boolean.ts","../src/prop-types/color-stop.ts","../src/prop-types/gradient-color-stop.ts","../src/prop-types/date-time.ts","../src/prop-types/position.ts","../src/prop-types/query.ts","../src/prop-types/html.ts","../src/prop-types/filter-prop-types/filter.ts","../src/prop-types/filter-prop-types/drop-shadow-filter.ts","../src/prop-types/filter-prop-types/filter-functions/blur-filter.ts","../src/prop-types/filter-prop-types/filter-functions/color-tone-filter.ts","../src/prop-types/filter-prop-types/filter-functions/hue-rotate-filter.ts","../src/prop-types/filter-prop-types/filter-functions/intensity-filter.ts","../src/prop-types/transform-prop-types/transform.ts","../src/prop-types/transform-prop-types/transform-functions.ts","../src/prop-types/transform-prop-types/transform-functions/move-transform.ts","../src/prop-types/transform-prop-types/types.ts","../src/prop-types/transform-prop-types/transform-functions/rotate-transform.ts","../src/prop-types/transform-prop-types/transform-functions/scale-transform.ts","../src/prop-types/transform-prop-types/transform-functions/skew-transform.ts","../src/prop-types/transform-prop-types/transform-origin.ts","../src/prop-types/transform-prop-types/perspective-origin.ts","../src/prop-types/filter-prop-types/backdrop-filter.ts","../src/utils/adjust-llm-prop-value-schema.ts","../src/utils/llm-schema-to-props.ts","../src/utils/props-to-llm-schema.ts","../src/utils/is-transformable.ts","../src/utils/filter-empty-values.ts","../src/utils/merge-props.ts","../src/utils/prop-dependency-utils.ts","../src/index.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\nconst SCHEMA_CACHE = new Map< string, unknown >();\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 getPropSchemaFromCache( key: string ) {\n\treturn SCHEMA_CACHE.get( key ) as PropTypeUtil< string, PropValue > | undefined;\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\tconst propUtil = {\n\t\textract,\n\t\tisValid,\n\t\tcreate,\n\t\tschema,\n\t\tkey: key as TKey,\n\t};\n\n\tSCHEMA_CACHE.set( key, propUtil );\n\treturn propUtil;\n}\n\nexport function createArrayPropUtils< TKey extends string, TValue extends PropValue >(\n\tkey: TKey,\n\tvalueSchema: ZodType< TValue >,\n\toverrideKey?: string\n) {\n\treturn createPropUtils( overrideKey || `${ key }-array`, z.array( valueSchema ) );\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'start-start': unknownChildrenSchema,\n\t\t'start-end': unknownChildrenSchema,\n\t\t'end-start': unknownChildrenSchema,\n\t\t'end-end': 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\t'block-start': unknownChildrenSchema,\n\t\t'block-end': unknownChildrenSchema,\n\t\t'inline-start': unknownChildrenSchema,\n\t\t'inline-end': 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 CLASSES_PROP_KEY = 'classes';\n\nexport const classesPropTypeUtil = createPropUtils(\n\tCLASSES_PROP_KEY,\n\tz.array( z.string().regex( /^[a-z][a-z-_0-9]*$/i ) )\n);\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 flexPropTypeUtil = createPropUtils(\n\t'flex',\n\tz.strictObject( {\n\t\tflexGrow: unknownChildrenSchema,\n\t\tflexShrink: unknownChildrenSchema,\n\t\tflexBasis: unknownChildrenSchema,\n\t} )\n);\n\nexport type FlexPropValue = z.infer< typeof flexPropTypeUtil.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 dimensionsPropTypeUtil = createPropUtils(\n\t'dimensions',\n\tz.strictObject( {\n\t\t'block-start': unknownChildrenSchema,\n\t\t'block-end': unknownChildrenSchema,\n\t\t'inline-start': unknownChildrenSchema,\n\t\t'inline-end': unknownChildrenSchema,\n\t} )\n);\n\nexport type DimensionsPropValue = z.infer< typeof dimensionsPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const numberPropTypeUtil = createPropUtils( 'number', z.number().nullable() );\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\n\t\t.strictObject( {\n\t\t\tunit: z.enum( [ 'px', 'em', 'rem', '%', 'vw', 'vh' ] ),\n\t\t\tsize: z.number(),\n\t\t} )\n\t\t.or(\n\t\t\tz.strictObject( {\n\t\t\t\tunit: z.enum( [ 'deg', 'rad', 'grad', 'turn' ] ),\n\t\t\t\tsize: z.number(),\n\t\t\t} )\n\t\t)\n\t\t.or(\n\t\t\tz.strictObject( {\n\t\t\t\tunit: z.enum( [ 's', 'ms' ] ),\n\t\t\t\tsize: z.number(),\n\t\t\t} )\n\t\t)\n\t\t.or(\n\t\t\tz.strictObject( {\n\t\t\t\tunit: z.literal( 'auto' ),\n\t\t\t\tsize: z.literal( '' ),\n\t\t\t} )\n\t\t)\n\t\t.or(\n\t\t\tz.strictObject( {\n\t\t\t\tunit: z.literal( 'custom' ),\n\t\t\t\tsize: z.string(),\n\t\t\t} )\n\t\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().nullable() );\n\nexport type UrlPropValue = z.infer< typeof urlPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const layoutDirectionPropTypeUtil = createPropUtils(\n\t'layout-direction',\n\tz.object( {\n\t\trow: z.any(),\n\t\tcolumn: z.any(),\n\t} )\n);\n\nexport type LayoutDirectionPropValue = z.infer< typeof layoutDirectionPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const linkPropTypeUtil = createPropUtils(\n\t'link',\n\tz.strictObject( {\n\t\tdestination: unknownChildrenSchema,\n\t\tisTargetBlank: unknownChildrenSchema,\n\t\ttag: unknownChildrenSchema,\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';\nimport { keyValuePropTypeUtil } from './key-value';\nimport { stringPropTypeUtil } from './string';\nimport { unknownChildrenSchema } from './utils';\n\nexport const selectionSizePropTypeUtil = createPropUtils(\n\t'selection-size',\n\tz.strictObject( {\n\t\tselection: z.union( [ keyValuePropTypeUtil.schema, stringPropTypeUtil.schema ] ),\n\t\tsize: unknownChildrenSchema,\n\t} )\n);\n\nexport type SelectionSizePropValue = z.infer< typeof selectionSizePropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const keyValuePropTypeUtil = createPropUtils(\n\t'key-value',\n\tz.strictObject( {\n\t\tkey: unknownChildrenSchema,\n\t\tvalue: unknownChildrenSchema,\n\t} )\n);\n\nexport type KeyValuePropValue = z.infer< typeof keyValuePropTypeUtil.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\tclip: 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\nexport const 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 { type z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const backgroundColorOverlayPropTypeUtil = createPropUtils( 'background-color-overlay', unknownChildrenSchema );\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 { type z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const backgroundImagePositionOffsetPropTypeUtil = createPropUtils(\n\t'background-image-position-offset',\n\tunknownChildrenSchema\n);\n\nexport type BackgroundImagePositionOffsetPropValue = z.infer< typeof backgroundImagePositionOffsetPropTypeUtil.schema >;\n","import { type z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const backgroundImageSizeScalePropTypeUtil = createPropUtils(\n\t'background-image-size-scale',\n\tunknownChildrenSchema\n);\n\nexport type BackgroundImageSizeScalePropValue = z.infer< typeof backgroundImageSizeScalePropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const booleanPropTypeUtil = createPropUtils( 'boolean', z.boolean().nullable() );\n\nexport type BooleanPropValue = z.infer< typeof booleanPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const colorStopPropTypeUtil = createPropUtils(\n\t'color-stop',\n\tz.strictObject( {\n\t\tcolor: unknownChildrenSchema,\n\t\toffset: unknownChildrenSchema,\n\t} )\n);\n\nexport type ColorStopPropValue = z.infer< typeof colorStopPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { colorStopPropTypeUtil } from './color-stop';\n\nexport const gradientColorStopPropTypeUtil = createPropUtils(\n\t'gradient-color-stop',\n\tz.array( colorStopPropTypeUtil.schema )\n);\n\nexport type GradientColorStopPropValue = z.infer< typeof gradientColorStopPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const DateTimePropTypeUtil = createPropUtils(\n\t'date-time',\n\tz.strictObject( {\n\t\tdate: unknownChildrenSchema,\n\t\ttime: unknownChildrenSchema,\n\t} )\n);\n\nexport type DateTimePropValue = z.infer< typeof DateTimePropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const positionPropTypeUtil = createPropUtils(\n\t'object-position',\n\tz.strictObject( {\n\t\tx: unknownChildrenSchema,\n\t\ty: unknownChildrenSchema,\n\t} )\n);\n\nexport type PositionPropTypeValue = z.infer< typeof positionPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\nimport { unknownChildrenSchema } from './utils';\n\nexport const queryPropTypeUtil = createPropUtils(\n\t'query',\n\tz.strictObject( {\n\t\tid: unknownChildrenSchema,\n\t\tlabel: unknownChildrenSchema,\n\t} )\n);\n\nexport type QueryPropValue = z.infer< typeof queryPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../utils/create-prop-utils';\n\nexport const htmlPropTypeUtil = createPropUtils( 'html', z.string().nullable() );\n\nexport type HtmlPropValue = z.infer< typeof htmlPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { stringPropTypeUtil } from '../string';\nimport { dropShadowFilterPropTypeUtil } from './drop-shadow-filter';\nimport { blurFilterPropTypeUtil } from './filter-functions/blur-filter';\nimport { colorToneFilterPropTypeUtil } from './filter-functions/color-tone-filter';\nimport { hueRotateFilterPropTypeUtil } from './filter-functions/hue-rotate-filter';\nimport { intensityFilterPropTypeUtil } from './filter-functions/intensity-filter';\n\nexport const cssFilterFunctionPropUtil = createPropUtils(\n\t'css-filter-func',\n\tz.object( {\n\t\tfunc: stringPropTypeUtil.schema,\n\t\targs: z.union( [\n\t\t\tblurFilterPropTypeUtil.schema,\n\t\t\tintensityFilterPropTypeUtil.schema,\n\t\t\tcolorToneFilterPropTypeUtil.schema,\n\t\t\thueRotateFilterPropTypeUtil.schema,\n\t\t\tdropShadowFilterPropTypeUtil.schema,\n\t\t] ),\n\t} )\n);\n\nexport const filterPropTypeUtil = createPropUtils( 'filter', z.array( cssFilterFunctionPropUtil.schema ) );\n\nexport type FilterItemPropValue = z.infer< typeof cssFilterFunctionPropUtil.schema >;\n\nexport type FilterPropValue = z.infer< typeof filterPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const dropShadowFilterPropTypeUtil = createPropUtils(\n\t'drop-shadow',\n\tz.object( {\n\t\txAxis: unknownChildrenSchema,\n\t\tyAxis: unknownChildrenSchema,\n\t\tblur: unknownChildrenSchema,\n\t\tcolor: unknownChildrenSchema,\n\t} )\n);\n\nexport type DropShadowFilterPropValue = z.infer< typeof dropShadowFilterPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../../utils';\n\nexport const blurFilterPropTypeUtil = createPropUtils(\n\t'blur',\n\tz.strictObject( {\n\t\tsize: unknownChildrenSchema,\n\t} )\n);\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../../utils';\n\nexport const colorToneFilterPropTypeUtil = createPropUtils(\n\t'color-tone',\n\tz.strictObject( {\n\t\tsize: unknownChildrenSchema,\n\t} )\n);\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../../utils';\n\nexport const hueRotateFilterPropTypeUtil = createPropUtils(\n\t'hue-rotate',\n\tz.strictObject( {\n\t\tsize: unknownChildrenSchema,\n\t} )\n);\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../../utils';\n\nexport const intensityFilterPropTypeUtil = createPropUtils(\n\t'intensity',\n\tz.strictObject( {\n\t\tsize: unknownChildrenSchema,\n\t} )\n);\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const transformPropTypeUtil = createPropUtils(\n\t'transform',\n\tz.strictObject( {\n\t\t'transform-functions': unknownChildrenSchema,\n\t\t'transform-origin': unknownChildrenSchema,\n\t\tperspective: unknownChildrenSchema,\n\t\t'perspective-origin': unknownChildrenSchema,\n\t} )\n);\n\nexport type TransformPropValue = z.infer< typeof transformPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { moveTransformPropTypeUtil } from './transform-functions/move-transform';\nimport { rotateTransformPropTypeUtil } from './transform-functions/rotate-transform';\nimport { scaleTransformPropTypeUtil } from './transform-functions/scale-transform';\nimport { skewTransformPropTypeUtil } from './transform-functions/skew-transform';\n\nconst filterTypes = moveTransformPropTypeUtil.schema\n\t.or( scaleTransformPropTypeUtil.schema )\n\t.or( rotateTransformPropTypeUtil.schema )\n\t.or( skewTransformPropTypeUtil.schema );\n\nexport const transformFunctionsPropTypeUtil = createPropUtils( 'transform-functions', z.array( filterTypes ) );\n\nexport type TransformFunctionsPropValue = z.infer< typeof transformFunctionsPropTypeUtil.schema >;\n\nexport type TransformFunctionsItemPropValue = z.infer< typeof filterTypes >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../../utils';\nimport { TransformFunctionKeys } from '../types';\n\nexport const moveTransformPropTypeUtil = createPropUtils(\n\tTransformFunctionKeys.move,\n\tz.strictObject( {\n\t\tx: unknownChildrenSchema,\n\t\ty: unknownChildrenSchema,\n\t\tz: unknownChildrenSchema,\n\t} )\n);\n\nexport type MoveTransformPropValue = z.infer< typeof moveTransformPropTypeUtil.schema >;\n","type TransformFunctions = 'transform-move' | 'transform-scale' | 'transform-rotate' | 'transform-skew';\n\nexport const TransformFunctionKeys: Record< string, TransformFunctions > = {\n\tmove: 'transform-move',\n\tscale: 'transform-scale',\n\trotate: 'transform-rotate',\n\tskew: 'transform-skew',\n};\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../../utils';\nimport { TransformFunctionKeys } from '../types';\n\nexport const rotateTransformPropTypeUtil = createPropUtils(\n\tTransformFunctionKeys.rotate,\n\tz.strictObject( {\n\t\tx: unknownChildrenSchema,\n\t\ty: unknownChildrenSchema,\n\t\tz: unknownChildrenSchema,\n\t} )\n);\n\nexport type RotateTransformPropValue = z.infer< typeof rotateTransformPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { numberPropTypeUtil } from '../../number';\nimport { TransformFunctionKeys } from '../types';\n\nexport const scaleTransformPropTypeUtil = createPropUtils(\n\tTransformFunctionKeys.scale,\n\tz.strictObject( {\n\t\tx: numberPropTypeUtil.schema.nullable(),\n\t\ty: numberPropTypeUtil.schema.nullable(),\n\t\tz: numberPropTypeUtil.schema.nullable(),\n\t} )\n);\n\nexport type ScaleTransformPropValue = z.infer< typeof scaleTransformPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../../utils';\nimport { TransformFunctionKeys } from '../types';\n\nexport const skewTransformPropTypeUtil = createPropUtils(\n\tTransformFunctionKeys.skew,\n\tz.strictObject( {\n\t\tx: unknownChildrenSchema,\n\t\ty: unknownChildrenSchema,\n\t} )\n);\n\nexport type SkewTransformPropValue = z.infer< typeof skewTransformPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const transformOriginPropTypeUtil = createPropUtils(\n\t'transform-origin',\n\tz.strictObject( {\n\t\tx: unknownChildrenSchema,\n\t\ty: unknownChildrenSchema,\n\t\tz: unknownChildrenSchema,\n\t} )\n);\n\nexport type TransformOriginPropValue = z.infer< typeof transformOriginPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { unknownChildrenSchema } from '../utils';\n\nexport const perspectiveOriginPropTypeUtil = createPropUtils(\n\t'perspective-origin',\n\tz.strictObject( {\n\t\tx: unknownChildrenSchema,\n\t\ty: unknownChildrenSchema,\n\t} )\n);\n\nexport type PerspectiveOriginPropValue = z.infer< typeof perspectiveOriginPropTypeUtil.schema >;\n","import { z } from '@elementor/schema';\n\nimport { createPropUtils } from '../../utils/create-prop-utils';\nimport { cssFilterFunctionPropUtil } from './filter';\n\nexport const backdropFilterPropTypeUtil = createPropUtils(\n\t'backdrop-filter',\n\tz.array( cssFilterFunctionPropUtil.schema )\n);\n\nexport type BackdropFilterPropValue = z.infer< typeof backdropFilterPropTypeUtil.schema >;\n\nexport type BackdropFilterItemPropValue = z.infer< typeof cssFilterFunctionPropUtil.schema >;\n","import { numberPropTypeUtil, type NumberPropValue, stringPropTypeUtil, type StringPropValue } from '../prop-types';\nimport { type ObjectPropValue, type PropValue, type TransformablePropValue } from '../types';\n\nconst ensureNotNull = ( v: unknown, fallback: unknown ) => ( v === null ? fallback : v );\n\nexport const adjustLlmPropValueSchema = ( value: Readonly< PropValue >, forceKey?: string ): PropValue => {\n\tconst clone = structuredClone( value );\n\n\tif ( typeof clone === 'string' ) {\n\t\treturn stringPropTypeUtil.create( clone );\n\t}\n\tif ( typeof clone === 'number' ) {\n\t\treturn numberPropTypeUtil.create( clone );\n\t}\n\t// Check for transformable types\n\tif ( clone && typeof clone === 'object' ) {\n\t\tif ( Array.isArray( clone ) ) {\n\t\t\treturn clone.map( ( item ) => adjustLlmPropValueSchema( item, forceKey ) ) as PropValue;\n\t\t}\n\t\tconst transformablePropValue = clone as TransformablePropValue< string >;\n\t\tif ( forceKey ) {\n\t\t\ttransformablePropValue.$$type = forceKey;\n\t\t}\n\n\t\tif ( ! transformablePropValue.$$type ) {\n\t\t\tthrow new Error( 'Missing $$type in property: ' + JSON.stringify( transformablePropValue ) );\n\t\t}\n\n\t\tif ( ! ( 'value' in transformablePropValue ) ) {\n\t\t\tthrow new Error( 'Missing value property in PropValue: ' + JSON.stringify( transformablePropValue ) );\n\t\t}\n\n\t\t// fix by type\n\t\tswitch ( transformablePropValue.$$type ) {\n\t\t\tcase 'size': {\n\t\t\t\tconst { value: rawSizePropValue } = transformablePropValue as TransformablePropValue<\n\t\t\t\t\tstring,\n\t\t\t\t\t{ size: StringPropValue | NumberPropValue; unit: StringPropValue }\n\t\t\t\t>;\n\t\t\t\tconst unit =\n\t\t\t\t\ttypeof rawSizePropValue.unit === 'string'\n\t\t\t\t\t\t? rawSizePropValue.unit\n\t\t\t\t\t\t: ensureNotNull( stringPropTypeUtil.extract( rawSizePropValue.unit ), 'px' );\n\t\t\t\tconst size =\n\t\t\t\t\ttypeof rawSizePropValue.size === 'string' || typeof rawSizePropValue.size === 'number'\n\t\t\t\t\t\t? rawSizePropValue.size\n\t\t\t\t\t\t: ensureNotNull(\n\t\t\t\t\t\t\t\tstringPropTypeUtil.extract( rawSizePropValue.size ),\n\t\t\t\t\t\t\t\tnumberPropTypeUtil.extract( rawSizePropValue.size )\n\t\t\t\t\t\t );\n\t\t\t\treturn {\n\t\t\t\t\t$$type: 'size',\n\t\t\t\t\tvalue: {\n\t\t\t\t\t\tunit,\n\t\t\t\t\t\tsize,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\n\t\tif ( typeof transformablePropValue.value === 'object' ) {\n\t\t\tif ( Array.isArray( transformablePropValue.value ) ) {\n\t\t\t\ttransformablePropValue.value = adjustLlmPropValueSchema(\n\t\t\t\t\ttransformablePropValue.value,\n\t\t\t\t\tundefined\n\t\t\t\t) as PropValue[];\n\t\t\t} else {\n\t\t\t\tconst { value: objectValue } = transformablePropValue as ObjectPropValue;\n\t\t\t\tconst clonedObject = clone as ObjectPropValue;\n\t\t\t\tclonedObject.value = {} as Record< string, PropValue >;\n\t\t\t\tObject.keys( objectValue ).forEach( ( key ) => {\n\t\t\t\t\tconst childProp = ( objectValue as Record< string, unknown > )[ key ];\n\t\t\t\t\t( clonedObject.value as Record< string, unknown > )[ key ] = adjustLlmPropValueSchema(\n\t\t\t\t\t\tchildProp as PropValue,\n\t\t\t\t\t\tundefined\n\t\t\t\t\t);\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\t}\n\treturn clone;\n};\n","import { type PropsSchema, type PropType } from '../types';\nimport { type JsonSchema7 } from './prop-json-schema';\n\nexport function jsonSchemaToPropType( schema: JsonSchema7, key = < string >schema.key ): PropType {\n\tconst meta: Record< string, unknown > = {};\n\n\tif ( schema.description ) {\n\t\tmeta.description = schema.description;\n\t}\n\n\t// Handle union types (anyOf)\n\tif ( schema.anyOf && Array.isArray( schema.anyOf ) ) {\n\t\treturn convertJsonSchemaToUnionPropType( schema, meta );\n\t}\n\n\t// Handle object types\n\tif ( schema.type === 'object' && schema.properties ) {\n\t\treturn convertJsonSchemaToObjectPropType( schema, meta, key );\n\t}\n\n\t// Handle array types\n\tif ( schema.type === 'array' && schema.items ) {\n\t\treturn convertJsonSchemaToArrayPropType( schema, meta, key );\n\t}\n\n\t// Handle plain types (string, number, boolean)\n\treturn convertJsonSchemaToPlainPropType( schema, meta, key );\n}\n\nfunction convertJsonSchemaToPlainPropType(\n\tschema: JsonSchema7,\n\tmeta: Record< string, unknown >,\n\tkey = < string >schema.key\n): PropType {\n\tconst settings: Record< string, unknown > = {};\n\n\t// Determine the key based on type\n\tlet propKey = key || 'string';\n\n\tif ( schema.type === 'number' ) {\n\t\tpropKey = 'number';\n\t} else if ( schema.type === 'boolean' ) {\n\t\tpropKey = 'boolean';\n\t} else if ( schema.type === 'string' ) {\n\t\tpropKey = 'string';\n\t}\n\n\t// Handle enum values\n\tif ( Array.isArray( schema.enum ) ) {\n\t\tsettings.enum = schema.enum;\n\t}\n\n\treturn {\n\t\tkind: 'plain',\n\t\tkey: propKey,\n\t\tsettings,\n\t\tmeta,\n\t} as PropType;\n}\n\n/**\n * Converts a JSON Schema anyOf to a union PropType\n * @param schema\n * @param meta\n */\nfunction convertJsonSchemaToUnionPropType( schema: JsonSchema7, meta: Record< string, unknown > ): PropType {\n\tconst propTypes: Record< string, PropType > = {};\n\n\tif ( ! schema.anyOf || ! Array.isArray( schema.anyOf ) ) {\n\t\tthrow new Error( 'Invalid anyOf schema' );\n\t}\n\n\t// Process each variant in the anyOf array\n\tfor ( const variantSchema of schema.anyOf ) {\n\t\t// Each variant should be an object with $$type and value properties\n\t\tif (\n\t\t\tvariantSchema.type === 'object' &&\n\t\t\tvariantSchema.properties &&\n\t\t\tvariantSchema.properties.$$type &&\n\t\t\tvariantSchema.properties.value\n\t\t) {\n\t\t\tconst typeProperty = variantSchema.properties.$$type;\n\n\t\t\t// Extract the type key from the enum\n\t\t\tlet typeKey: string;\n\t\t\tif ( typeProperty.enum && Array.isArray( typeProperty.enum ) && typeProperty.enum.length > 0 ) {\n\t\t\t\ttypeKey = typeProperty.enum[ 0 ] as string;\n\t\t\t} else {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// Convert the value schema to a PropType\n\t\t\tconst valuePropType = convertJsonSchemaToPropType( variantSchema.properties.value );\n\t\t\tpropTypes[ typeKey ] = valuePropType;\n\t\t}\n\t}\n\n\treturn {\n\t\tkind: 'union',\n\t\tprop_types: propTypes,\n\t\tsettings: {},\n\t\tmeta,\n\t} as PropType;\n}\n\nfunction convertJsonSchemaToObjectPropType(\n\tschema: JsonSchema7,\n\tmeta: Record< string, unknown >,\n\tkey = < string >schema.key\n): PropType {\n\tconst shape: Record< string, PropType > = {};\n\n\tif ( ! schema.properties ) {\n\t\treturn {\n\t\t\tkind: 'object',\n\t\t\tkey,\n\t\t\tshape: {},\n\t\t\tsettings: {},\n\t\t\tmeta,\n\t\t} as PropType;\n\t}\n\n\tconst requiredFields = Array.isArray( schema.required ) ? schema.required : [];\n\n\t// Convert each property\n\tfor ( const [ propKey, propSchema ] of Object.entries( schema.properties ) ) {\n\t\tconst subPropType = convertJsonSchemaToPropType( propSchema, key );\n\n\t\t// Mark as required if it's in the required array\n\t\tif ( requiredFields.includes( propKey ) ) {\n\t\t\tsubPropType.settings = {\n\t\t\t\t...subPropType.settings,\n\t\t\t\trequired: true,\n\t\t\t};\n\t\t}\n\n\t\tshape[ propKey ] = subPropType;\n\t}\n\n\treturn {\n\t\tkind: 'object',\n\t\tkey: key || 'object',\n\t\tshape,\n\t\tsettings: {},\n\t\tmeta,\n\t} as PropType;\n}\n\nfunction convertJsonSchemaToArrayPropType(\n\tschema: JsonSchema7,\n\tmeta: Record< string, unknown >,\n\tkey = < string >schema.key\n): PropType {\n\tif ( ! schema.items ) {\n\t\tthrow new Error( 'Array schema must have items property' );\n\t}\n\n\tconst itemPropType = convertJsonSchemaToPropType( schema.items );\n\n\treturn {\n\t\tkind: 'array',\n\t\tkey: key || 'array',\n\t\titem_prop_type: itemPropType,\n\t\tsettings: {},\n\t\tmeta,\n\t} as PropType;\n}\n\nfunction convertJsonSchemaToPropType( schema: JsonSchema7, key?: string ): PropType {\n\treturn jsonSchemaToPropType( schema, key );\n}\n\n/**\n * Converts a complete JSON Schema object back to a PropsSchema\n *\n * @param jsonSchema The JSON Schema to convert\n */\nexport function jsonSchemaToPropsSchema( jsonSchema: JsonSchema7 ): PropsSchema {\n\tconst propsSchema: PropsSchema = {};\n\n\tif ( jsonSchema.type !== 'object' || ! jsonSchema.properties ) {\n\t\tthrow new Error( 'Root schema must be an object with properties' );\n\t}\n\n\tfor ( const [ key, propSchema ] of Object.entries( jsonSchema.properties ) ) {\n\t\tpropsSchema[ key ] = convertJsonSchemaToPropType( propSchema, key );\n\t}\n\n\treturn propsSchema;\n}\n","import { type PropsSchema, type PropType } from '../types';\nimport { type JsonSchema7 } from './prop-json-schema';\n\nexport function propTypeToJsonSchema( propType: PropType ): JsonSchema7 {\n\tconst description = propType.meta?.description;\n\n\tconst schema: JsonSchema7 = {};\n\n\tif ( description ) {\n\t\tschema.description = description;\n\t}\n\n\t// Handle different kinds of prop types\n\tswitch ( propType.kind ) {\n\t\tcase 'plain':\n\t\t\treturn convertPlainPropType( propType, schema );\n\t\tcase 'union':\n\t\t\treturn convertUnionPropType( propType, schema );\n\t\tcase 'object':\n\t\t\treturn convertObjectPropType( propType, schema );\n\t\tcase 'array':\n\t\t\treturn convertArrayPropType( propType, schema );\n\t\tdefault:\n\t\t\treturn convertPlainPropType( propType, schema );\n\t}\n\n\treturn schema;\n}\n\nfunction convertPlainPropType( propType: PropType & { kind: 'plain' }, baseSchema: JsonSchema7 ): JsonSchema7 {\n\tconst schema = { ...baseSchema };\n\n\t// Determine type based on key\n\tconst key = propType.key.toLowerCase();\n\n\tswitch ( key ) {\n\t\tcase 'number':\n\t\t\tschema.type = 'number';\n\t\t\tbreak;\n\t\tcase 'boolean':\n\t\t\tschema.type = 'boolean';\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tschema.type = 'string';\n\t}\n\n\t// Handle enum from settings\n\tif ( Array.isArray( propType.settings?.enum ) ) {\n\t\tschema.enum = propType.settings.enum;\n\t}\n\n\treturn schema;\n}\n\n/**\n * Converts a union prop type to JSON Schema ( электричество anyOf)\n *\n * @param propType The union prop type to convert\n * @param baseSchema Base schema to extend\n */\nfunction convertUnionPropType( propType: PropType & { kind: 'union' }, baseSchema: JsonSchema7 ): JsonSchema7 {\n\tconst schema = structuredClone( baseSchema );\n\n\tconst propTypes = propType.prop_types || {};\n\tconst schemas: JsonSchema7[] = [];\n\n\t// Convert each prop type in the union\n\tfor ( const [ typeKey, subPropType ] of Object.entries( propTypes ) ) {\n\t\tconst subSchema = convertPropTypeToJsonSchema( subPropType );\n\n\t\tschemas.push( {\n\t\t\ttype: 'object',\n\t\t\trequired: [ '$$type', 'value' ],\n\t\t\tproperties: {\n\t\t\t\t$$type: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tconst: typeKey,\n\t\t\t\t\tdescription: subPropType.meta?.description,\n\t\t\t\t\t$comment: `Discriminator for union type variant: ${ typeKey }`,\n\t\t\t\t},\n\t\t\t\tvalue: subSchema,\n\t\t\t},\n\t\t} );\n\t}\n\n\tif ( schemas.length > 0 ) {\n\t\tschema.anyOf = schemas;\n\t}\n\n\tconst propTypeDescription = propType.meta?.description;\n\tif ( propTypeDescription ) {\n\t\tschema.description = propTypeDescription;\n\t}\n\treturn schema;\n}\n\nfunction convertObjectPropType( propType: PropType & { kind: 'object' }, baseSchema: JsonSchema7 ): JsonSchema7 {\n\tconst schema = structuredClone( baseSchema );\n\n\tschema.type = 'object';\n\tschema.properties = {};\n\n\tconst required: string[] = [];\n\n\tconst shape = propType.shape || {};\n\n\t// Convert each property in the object shape\n\tfor ( const [ key, subPropType ] of Object.entries( shape ) ) {\n\t\tconst propSchema = convertPropTypeToJsonSchema( subPropType );\n\n\t\t// Check if this property is required\n\t\tif ( subPropType.settings?.required === true ) {\n\t\t\trequired.push( key );\n\t\t}\n\n\t\tschema.properties[ key ] = propSchema;\n\t}\n\n\t// Add required array if there are required fields\n\tif ( required.length > 0 ) {\n\t\tschema.required = required;\n\t}\n\n\treturn schema;\n}\n\nfunction convertArrayPropType( propType: PropType & { kind: 'array' }, baseSchema: JsonSchema7 ): JsonSchema7 {\n\tconst schema = structuredClone( baseSchema );\n\n\tschema.type = 'array';\n\n\tconst itemPropType = propType.item_prop_type;\n\n\tif ( itemPropType ) {\n\t\tschema.items = convertPropTypeToJsonSchema( itemPropType );\n\t}\n\n\treturn schema;\n}\n\nfunction convertPropTypeToJsonSchema( propType: PropType ): JsonSchema7 {\n\treturn propTypeToJsonSchema( propType );\n}\n\nexport function propsSchemaToJsonSchema( schema: PropsSchema ): JsonSchema7 {\n\tconst jsonSchema: JsonSchema7 = {\n\t\ttype: 'object',\n\t\tproperties: {},\n\t};\n\n\tfor ( const [ key, propType ] of Object.entries( schema ) ) {\n\t\t// Skip internal properties\n\t\tif ( ! isPropKeyConfigurable( key ) ) {\n\t\t\tcontinue;\n\t\t}\n\n\t\tconst propSchema = convertPropTypeToJsonSchema( propType );\n\t\tif ( jsonSchema.properties ) {\n\t\t\tjsonSchema.properties[ key ] = propSchema;\n\t\t}\n\n\t\t// Handle required fields at root level if needed\n\t\t// (typically props are optional unless specified)\n\t}\n\n\treturn jsonSchema;\n}\n\nexport const nonConfigurablePropKeys = [ '_cssid', 'classes', 'attributes' ] as readonly string[];\n\nexport function isPropKeyConfigurable( propKey: string ): boolean {\n\treturn ! nonConfigurablePropKeys.includes( propKey );\n}\n\nexport function configurableKeys( schema: PropsSchema ): string[] {\n\treturn Object.keys( schema ).filter( isPropKeyConfigurable );\n}\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","import { type PropValue } from '../types';\nimport { isTransformable } from '../utils/is-transformable';\n\nexport const filterEmptyValues = < TValue extends PropValue >( value: TValue ): TValue | null => {\n\tif ( isEmpty( value ) ) {\n\t\treturn null;\n\t}\n\n\tif ( Array.isArray( value ) ) {\n\t\treturn value.map( filterEmptyValues ).filter( ( item ) => ! isEmpty( item ) ) as TValue;\n\t}\n\n\tif ( typeof value === 'object' ) {\n\t\treturn Object.fromEntries(\n\t\t\tObject.entries( value )\n\t\t\t\t.map( ( [ key, val ] ) => [ key, filterEmptyValues( val ) ] )\n\t\t\t\t.filter( ( [ , val ] ) => ! isEmpty( val ) )\n\t\t);\n\t}\n\n\treturn value;\n};\n\ntype Nullish = null | undefined | '';\n\nexport const isEmpty = ( value: PropValue ): value is Nullish => {\n\tif ( value && isTransformable( value ) ) {\n\t\treturn isEmpty( value.value );\n\t}\n\n\treturn isNullish( value ) || isNullishArray( value ) || isNullishObject( value );\n};\n\nconst isNullish = ( value: PropValue ): value is Nullish => value === null || value === undefined || value === '';\n\nconst isNullishArray = ( value: NonNullable< PropValue > ): value is Nullish[] =>\n\tArray.isArray( value ) && value.every( isEmpty );\n\nconst isNullishObject = ( value: NonNullable< PropValue > ): value is Record< string, Nullish > => {\n\treturn typeof value === 'object' && isNullishArray( Object.values( value ) );\n};\n","import type { Props } from '../types';\n\nexport function mergeProps( current: Props, updates: Props ) {\n\t// edge case, the server returns an array instead of an object when empty props because of PHP array / object conversion\n\tlet props: Props = {};\n\n\tif ( ! Array.isArray( current ) ) {\n\t\tprops = structuredClone( current );\n\t}\n\n\tObject.entries( updates ).forEach( ( [ key, value ] ) => {\n\t\tif ( value === null || value === undefined ) {\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-dynamic-delete\n\t\t\tdelete props[ key ];\n\t\t} else {\n\t\t\tprops[ key ] = value;\n\t\t}\n\t} );\n\n\treturn props;\n}\n","import {\n\ttype Dependency,\n\ttype DependencyTerm,\n\ttype PropKey,\n\ttype PropValue,\n\ttype TransformablePropValue,\n} from '../types';\nimport { isTransformable } from './is-transformable';\n\ntype ParsedTerm = DependencyTerm;\n\ntype Relation = Dependency[ 'relation' ];\n\nexport function isDependencyMet(\n\tdependency: Dependency | undefined,\n\tvalues: PropValue\n): { isMet: true } | { isMet: false; failingDependencies: ( DependencyTerm | Dependency )[] } {\n\tif ( ! dependency?.terms.length ) {\n\t\treturn { isMet: true };\n\t}\n\n\tconst { relation, terms } = dependency;\n\tconst method = getRelationMethod( relation );\n\n\tconst failingDependencies: ( DependencyTerm | Dependency )[] = [];\n\tconst isMet = terms[ method ]( ( term: ParsedTerm | Dependency ) => {\n\t\tconst isNestedDependency = isDependency( term );\n\t\tconst result = isNestedDependency\n\t\t\t? isDependencyMet( term, values ).isMet\n\t\t\t: evaluateTerm( term, extractValue( term.path, values, term.nestedPath )?.value );\n\n\t\tif ( ! result ) {\n\t\t\tfailingDependencies.push( term );\n\t\t}\n\n\t\treturn result;\n\t} );\n\n\treturn { isMet, failingDependencies };\n}\n\nexport function evaluateTerm( term: DependencyTerm, actualValue: unknown ) {\n\tconst { value: valueToCompare, operator } = term;\n\n\tswitch ( operator ) {\n\t\tcase 'eq':\n\t\tcase 'ne':\n\t\t\treturn ( actualValue === valueToCompare ) === ( 'eq' === operator );\n\n\t\tcase 'gt':\n\t\tcase 'lte':\n\t\t\tif ( ! isNumber( actualValue ) || ! isNumber( valueToCompare ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\treturn Number( actualValue ) > Number( valueToCompare ) === ( 'gt' === operator );\n\n\t\tcase 'lt':\n\t\tcase 'gte':\n\t\t\tif ( ! isNumber( actualValue ) || ! isNumber( valueToCompare ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\treturn Number( actualValue ) < Number( valueToCompare ) === ( 'lt' === operator );\n\t\tcase 'in':\n\t\tcase 'nin':\n\t\t\tif ( ! Array.isArray( valueToCompare ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\treturn valueToCompare.includes( actualValue as never ) === ( 'in' === operator );\n\n\t\tcase 'contains':\n\t\tcase 'ncontains':\n\t\t\tif (\n\t\t\t\t( 'string' !== typeof actualValue || 'string' !== typeof valueToCompare ) &&\n\t\t\t\t! Array.isArray( actualValue )\n\t\t\t) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\treturn ( 'contains' === operator ) === actualValue.includes( valueToCompare as never );\n\n\t\tcase 'exists':\n\t\tcase 'not_exist':\n\t\t\tconst evaluation = !! actualValue || 0 === actualValue || false === actualValue;\n\n\t\t\treturn ( 'exists' === operator ) === evaluation;\n\n\t\tdefault:\n\t\t\treturn true;\n\t}\n}\n\nfunction isNumber( value: unknown ): value is number {\n\treturn typeof value === 'number' && ! isNaN( value );\n}\n\nfunction getRelationMethod( relation: Relation ) {\n\tswitch ( relation ) {\n\t\tcase 'or':\n\t\t\treturn 'some';\n\n\t\tcase 'and':\n\t\t\treturn 'every';\n\n\t\tdefault:\n\t\t\tthrow new Error( `Relation not supported ${ relation }` );\n\t}\n}\n\nexport function extractValue(\n\tpath: string[],\n\telementValues: PropValue,\n\tnestedPath: string[] = []\n): TransformablePropValue< PropKey > | null {\n\tconst extractedValue = path.reduce( ( acc, key, index ) => {\n\t\tconst value = acc?.[ key as keyof typeof acc ] as PropValue | null;\n\n\t\treturn index !== path.length - 1 && isTransformable( value ) ? value.value ?? null : value;\n\t}, elementValues ) as TransformablePropValue< PropKey >;\n\n\tif ( ! nestedPath?.length ) {\n\t\treturn extractedValue;\n\t}\n\n\tconst nestedValue = nestedPath.reduce(\n\t\t( acc: Record< string, unknown >, key ) => acc?.[ key ] as Record< string, unknown >,\n\t\textractedValue?.value as Record< string, unknown >\n\t);\n\n\treturn {\n\t\t$$type: 'unknown',\n\t\tvalue: nestedValue,\n\t};\n}\n\nexport function isDependency( term: DependencyTerm | Dependency ): term is Dependency {\n\treturn 'terms' in term;\n}\n","import { adjustLlmPropValueSchema } from './utils/adjust-llm-prop-value-schema';\nimport { jsonSchemaToPropType } from './utils/llm-schema-to-props';\nimport {\n\tconfigurableKeys,\n\tisPropKeyConfigurable,\n\tnonConfigurablePropKeys,\n\tpropTypeToJsonSchema,\n} from './utils/props-to-llm-schema';\n\nexport { type JsonSchema7 } from './utils/prop-json-schema';\n\n// types\nexport * from './types';\nexport { type CreateOptions, type PropTypeUtil } from './utils/create-prop-utils';\n\n// prop types\nexport * from './prop-types';\n\n// utils\nexport { createArrayPropUtils, createPropUtils, getPropSchemaFromCache } from './utils/create-prop-utils';\nexport { filterEmptyValues, isEmpty } from './utils/filter-empty-values';\nexport { isTransformable } from './utils/is-transformable';\nexport { mergeProps } from './utils/merge-props';\nexport { evaluateTerm, extractValue, isDependency, isDependencyMet } from './utils/prop-dependency-utils';\n\nexport const Schema = {\n\tjsonSchemaToPropType,\n\tpropTypeToJsonSchema,\n\tadjustLlmPropValueSchema,\n\tisPropKeyConfigurable,\n\tnonConfigurablePropKeys,\n\tconfigurableKeys,\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","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","z","z","z","z","z","z","z","z","z","z"]}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@elementor/editor-props",
|
|
3
3
|
"description": "This package contains the props model for the Elementor editor",
|
|
4
|
-
"version": "3.35.0-
|
|
4
|
+
"version": "3.35.0-326",
|
|
5
5
|
"private": false,
|
|
6
6
|
"author": "Elementor Team",
|
|
7
7
|
"homepage": "https://elementor.com/",
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
"dev": "tsup --config=../../tsup.dev.ts"
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
43
|
-
"@elementor/schema": "3.35.0-
|
|
43
|
+
"@elementor/schema": "3.35.0-326"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
46
|
"tsup": "^8.3.5"
|
package/src/prop-types/link.ts
CHANGED
package/src/types.ts
CHANGED
|
@@ -17,6 +17,7 @@ export type DependencyOperator =
|
|
|
17
17
|
export type DependencyTerm = {
|
|
18
18
|
operator: DependencyOperator;
|
|
19
19
|
path: string[];
|
|
20
|
+
nestedPath?: string[];
|
|
20
21
|
value: PropValue;
|
|
21
22
|
newValue?: TransformablePropValue< string >;
|
|
22
23
|
};
|
|
@@ -24,6 +25,7 @@ export type DependencyTerm = {
|
|
|
24
25
|
export type Dependency = {
|
|
25
26
|
relation: 'or' | 'and';
|
|
26
27
|
terms: ( DependencyTerm | Dependency )[];
|
|
28
|
+
newValue?: TransformablePropValue< string >;
|
|
27
29
|
};
|
|
28
30
|
|
|
29
31
|
type BasePropTypeMeta = {
|
|
@@ -14,7 +14,7 @@ type Relation = Dependency[ 'relation' ];
|
|
|
14
14
|
export function isDependencyMet(
|
|
15
15
|
dependency: Dependency | undefined,
|
|
16
16
|
values: PropValue
|
|
17
|
-
): { isMet: true } | { isMet: false; failingDependencies: DependencyTerm[] } {
|
|
17
|
+
): { isMet: true } | { isMet: false; failingDependencies: ( DependencyTerm | Dependency )[] } {
|
|
18
18
|
if ( ! dependency?.terms.length ) {
|
|
19
19
|
return { isMet: true };
|
|
20
20
|
}
|
|
@@ -22,14 +22,14 @@ export function isDependencyMet(
|
|
|
22
22
|
const { relation, terms } = dependency;
|
|
23
23
|
const method = getRelationMethod( relation );
|
|
24
24
|
|
|
25
|
-
const failingDependencies: DependencyTerm[] = [];
|
|
25
|
+
const failingDependencies: ( DependencyTerm | Dependency )[] = [];
|
|
26
26
|
const isMet = terms[ method ]( ( term: ParsedTerm | Dependency ) => {
|
|
27
27
|
const isNestedDependency = isDependency( term );
|
|
28
28
|
const result = isNestedDependency
|
|
29
29
|
? isDependencyMet( term, values ).isMet
|
|
30
|
-
: evaluateTerm( term, extractValue( term.path, values )?.value );
|
|
30
|
+
: evaluateTerm( term, extractValue( term.path, values, term.nestedPath )?.value );
|
|
31
31
|
|
|
32
|
-
if ( ! result
|
|
32
|
+
if ( ! result ) {
|
|
33
33
|
failingDependencies.push( term );
|
|
34
34
|
}
|
|
35
35
|
|
|
@@ -109,14 +109,32 @@ function getRelationMethod( relation: Relation ) {
|
|
|
109
109
|
}
|
|
110
110
|
}
|
|
111
111
|
|
|
112
|
-
export function extractValue(
|
|
113
|
-
|
|
112
|
+
export function extractValue(
|
|
113
|
+
path: string[],
|
|
114
|
+
elementValues: PropValue,
|
|
115
|
+
nestedPath: string[] = []
|
|
116
|
+
): TransformablePropValue< PropKey > | null {
|
|
117
|
+
const extractedValue = path.reduce( ( acc, key, index ) => {
|
|
114
118
|
const value = acc?.[ key as keyof typeof acc ] as PropValue | null;
|
|
115
119
|
|
|
116
120
|
return index !== path.length - 1 && isTransformable( value ) ? value.value ?? null : value;
|
|
117
121
|
}, elementValues ) as TransformablePropValue< PropKey >;
|
|
122
|
+
|
|
123
|
+
if ( ! nestedPath?.length ) {
|
|
124
|
+
return extractedValue;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
const nestedValue = nestedPath.reduce(
|
|
128
|
+
( acc: Record< string, unknown >, key ) => acc?.[ key ] as Record< string, unknown >,
|
|
129
|
+
extractedValue?.value as Record< string, unknown >
|
|
130
|
+
);
|
|
131
|
+
|
|
132
|
+
return {
|
|
133
|
+
$$type: 'unknown',
|
|
134
|
+
value: nestedValue,
|
|
135
|
+
};
|
|
118
136
|
}
|
|
119
137
|
|
|
120
138
|
export function isDependency( term: DependencyTerm | Dependency ): term is Dependency {
|
|
121
|
-
return '
|
|
139
|
+
return 'terms' in term;
|
|
122
140
|
}
|