@tapcart/mobile-components 0.7.49 → 0.7.50
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-block-conditional-rendering.d.ts","sourceRoot":"","sources":["../../../components/hooks/use-block-conditional-rendering.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,YAAY,EAGb,MAAM,kBAAkB,CAAA;AAgBzB,eAAO,MAAM,4BAA4B,WAC/B;IACN,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACf,UACO,YAAY;;;
|
|
1
|
+
{"version":3,"file":"use-block-conditional-rendering.d.ts","sourceRoot":"","sources":["../../../components/hooks/use-block-conditional-rendering.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,YAAY,EAGb,MAAM,kBAAkB,CAAA;AAgBzB,eAAO,MAAM,4BAA4B,WAC/B;IACN,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACf,UACO,YAAY;;;CAkLrB,CAAA"}
|
|
@@ -16,7 +16,7 @@ import { useCollection } from "./use-collection";
|
|
|
16
16
|
import { useSearchParams } from "next/navigation";
|
|
17
17
|
//@ts-expect-error
|
|
18
18
|
import { useVariables } from "@tapcart/webbridge-react";
|
|
19
|
-
import { gidFromId, countNumberOfTagsInState, getEnvState, shouldShowBlock, } from "../../lib/utils";
|
|
19
|
+
import { gidFromId, countNumberOfTagsInState, getEnvState, shouldShowBlock, evaluateConditions, } from "../../lib/utils";
|
|
20
20
|
export const useBlockConditionalRendering = (_props, _block) => {
|
|
21
21
|
var _a, _b, _c, _d, _e;
|
|
22
22
|
const _f = ((_a = _block === null || _block === void 0 ? void 0 : _block.visibilityConditions) === null || _a === void 0 ? void 0 : _a.conditions) || {}, { enabled: conditionalsV1IsEnabled = false, exclude: isInverse = false } = _f, restOfProps = __rest(_f, ["enabled", "exclude"]);
|
|
@@ -29,7 +29,7 @@ export const useBlockConditionalRendering = (_props, _block) => {
|
|
|
29
29
|
const customerVariables = variables === null || variables === void 0 ? void 0 : variables.customer;
|
|
30
30
|
// locale is provided in this form en_US
|
|
31
31
|
const [language, country] = ((_b = deviceVariables === null || deviceVariables === void 0 ? void 0 : deviceVariables.locale) === null || _b === void 0 ? void 0 : _b.split("_")) || [];
|
|
32
|
-
const productId = (_c = searchParams.get("productId")) !== null && _c !== void 0 ? _c : undefined;
|
|
32
|
+
const productId = (_c = searchParams === null || searchParams === void 0 ? void 0 : searchParams.get("productId")) !== null && _c !== void 0 ? _c : undefined;
|
|
33
33
|
const location = {
|
|
34
34
|
country: country || "US",
|
|
35
35
|
language: language || "en",
|
|
@@ -68,8 +68,8 @@ export const useBlockConditionalRendering = (_props, _block) => {
|
|
|
68
68
|
.map((m) => `${m.namespace}.${m.key}`)
|
|
69
69
|
.join(",")
|
|
70
70
|
: undefined, [collectionMetafieldsQuery]);
|
|
71
|
-
const collectionId = (_d = searchParams.get("collectionId")) !== null && _d !== void 0 ? _d : undefined;
|
|
72
|
-
const collectionHandle = (_e = searchParams.get("collectionHandle")) !== null && _e !== void 0 ? _e : undefined;
|
|
71
|
+
const collectionId = (_d = searchParams === null || searchParams === void 0 ? void 0 : searchParams.get("collectionId")) !== null && _d !== void 0 ? _d : undefined;
|
|
72
|
+
const collectionHandle = (_e = searchParams === null || searchParams === void 0 ? void 0 : searchParams.get("collectionHandle")) !== null && _e !== void 0 ? _e : undefined;
|
|
73
73
|
const { specificCollection = {}, error: useCollectionError, loading: isCollectionLoading, } = useCollection({
|
|
74
74
|
appId,
|
|
75
75
|
apiUrl,
|
|
@@ -89,65 +89,44 @@ export const useBlockConditionalRendering = (_props, _block) => {
|
|
|
89
89
|
products,
|
|
90
90
|
collection: specificCollection,
|
|
91
91
|
customer: customerVariables,
|
|
92
|
+
blockState,
|
|
92
93
|
};
|
|
93
94
|
console.log({ context, blockState, conditions });
|
|
94
95
|
let shouldShow = true;
|
|
95
96
|
const blockConditionalsIsEnabled = conditionalsV1IsEnabled || conditionalsV2IsEnabled;
|
|
97
|
+
const blockHasTags = countNumberOfTagsInState(blockState) > 0;
|
|
98
|
+
const product = products.length === 1 ? products[0] : undefined;
|
|
99
|
+
const envState = getEnvState({
|
|
100
|
+
location,
|
|
101
|
+
product,
|
|
102
|
+
collection: specificCollection,
|
|
103
|
+
customer: customerVariables,
|
|
104
|
+
});
|
|
96
105
|
try {
|
|
97
|
-
// if (blockConditionalsIsEnabled) {
|
|
98
|
-
// if (_version === 2) {
|
|
99
|
-
// // Evaluate v2 conditions
|
|
100
|
-
// shouldShow = evaluateConditions(conditions, context)
|
|
101
|
-
// } else {
|
|
102
|
-
// // Evaluate v1 conditions
|
|
103
|
-
// const blockHasTags = countNumberOfTagsInState(blockState) > 0
|
|
104
|
-
// if (blockHasTags) {
|
|
105
|
-
// const product = products.length === 1 ? products[0] : undefined
|
|
106
|
-
// const envState = getEnvState({
|
|
107
|
-
// location,
|
|
108
|
-
// product,
|
|
109
|
-
// collection: specificCollection as Collection,
|
|
110
|
-
// customer: customerVariables,
|
|
111
|
-
// })
|
|
112
|
-
// //@ts-expect-errors envState typing doesn't match
|
|
113
|
-
// const shouldShowPreInverse = shouldShowBlock(envState, blockState)
|
|
114
|
-
// // TODO: Currently negation of properties is not available but is required for migration of certain merchants
|
|
115
|
-
// // This code is to be removed and updated when inverse feature is available for all blocks
|
|
116
|
-
// // If exclude tag is applied then block should show inversely
|
|
117
|
-
// if (isInverse) {
|
|
118
|
-
// shouldShow = !shouldShowPreInverse
|
|
119
|
-
// } else {
|
|
120
|
-
// shouldShow = shouldShowPreInverse
|
|
121
|
-
// }
|
|
122
|
-
// }
|
|
123
|
-
// }
|
|
124
|
-
// } else {
|
|
125
|
-
// // If visibility conditions are disabled, always show the block
|
|
126
|
-
// shouldShow = true
|
|
127
|
-
// }
|
|
128
|
-
const blockHasTags = countNumberOfTagsInState(blockState) > 0;
|
|
129
|
-
console.log({ blockConditionalsIsEnabled, _version, blockState, blockHasTags });
|
|
130
106
|
if (blockConditionalsIsEnabled) {
|
|
131
|
-
const product = products.length === 1 ? products[0] : undefined;
|
|
132
|
-
const envState = getEnvState({
|
|
133
|
-
location,
|
|
134
|
-
product,
|
|
135
|
-
collection: specificCollection,
|
|
136
|
-
customer: customerVariables,
|
|
137
|
-
});
|
|
138
|
-
console.log({ product, envState, });
|
|
139
107
|
if (_version === 2) {
|
|
140
|
-
|
|
108
|
+
// Evaluate v2 conditions
|
|
109
|
+
shouldShow = evaluateConditions(conditions, envState);
|
|
141
110
|
}
|
|
142
111
|
else {
|
|
112
|
+
// Evaluate v1 conditions
|
|
143
113
|
if (blockHasTags) {
|
|
144
|
-
//@ts-expect-
|
|
114
|
+
//@ts-expect-errors envState typing doesn't match
|
|
145
115
|
const shouldShowPreInverse = shouldShowBlock(envState, blockState);
|
|
146
|
-
|
|
116
|
+
// TODO: Currently negation of properties is not available but is required for migration of certain merchants
|
|
117
|
+
// This code is to be removed and updated when inverse feature is available for all blocks
|
|
118
|
+
// If exclude tag is applied then block should show inversely
|
|
119
|
+
if (isInverse) {
|
|
120
|
+
shouldShow = !shouldShowPreInverse;
|
|
121
|
+
}
|
|
122
|
+
else {
|
|
123
|
+
shouldShow = shouldShowPreInverse;
|
|
124
|
+
}
|
|
147
125
|
}
|
|
148
126
|
}
|
|
149
127
|
}
|
|
150
128
|
else {
|
|
129
|
+
// If visibility conditions are disabled, always show the block
|
|
151
130
|
shouldShow = true;
|
|
152
131
|
}
|
|
153
132
|
}
|
package/dist/lib/utils.d.ts
CHANGED
|
@@ -247,7 +247,6 @@ export declare const isMetafield: (obj: any) => obj is ConditionalSelectorMetafi
|
|
|
247
247
|
export declare const isArrayOfUserSelectedTags: (arr: any[]) => arr is UserSelectedTag[];
|
|
248
248
|
export declare const isArrayOfMetafields: (arr: any[]) => arr is ConditionalSelectorMetafield[];
|
|
249
249
|
export declare const shouldShowBlock: (envState: ConditionalSelectorValues, blockState: ConditionalSelectorValues) => boolean;
|
|
250
|
+
export declare const evaluateConditions: (group: any, context: any) => boolean;
|
|
250
251
|
export declare const evaluateSingleCondition: (condition: any, context: any) => boolean;
|
|
251
|
-
export declare const evaluateCondition: (condition: any, envState: ConditionalSelectorValues) => any;
|
|
252
|
-
export declare const evaluateConditions: (conditionsObj: any, envState: ConditionalSelectorValues) => boolean;
|
|
253
252
|
//# sourceMappingURL=utils.d.ts.map
|
package/dist/lib/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,4BAA4B,EAC5B,yBAAyB,EACzB,UAAU,EACV,eAAe,EACf,OAAO,EACP,QAAQ,EACR,gBAAgB,EACjB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,UAAU,EAAQ,MAAM,MAAM,CAAA;AAMvC,MAAM,MAAM,KAAK,GAAG;IAAE,IAAI,EAAE,QAAQ,GAAG,WAAW,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAEnE,wBAAgB,EAAE,CAAC,GAAG,MAAM,EAAE,UAAU,EAAE,UAEzC;AAED,eAAO,MAAM,eAAe,UAc3B,CAAA;AAED,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,CAAA;AAMjE,OAAO,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAA;AAI9C,eAAO,MAAM,QAAQ,gBAAiB,KAAK,GAAG,SAAS,uBAUtD,CAAA;AAED,KAAK,UAAU,GAAG,KAAK,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAA;AAC7D,KAAK,WAAW,GAAG,UAAU,EAAE,CAAA;AAE/B,eAAO,MAAM,mBAAmB;;;;;;;;;;;;CAU/B,CAAA;AAED,KAAK,iBAAiB,GAAG,KAAK,GAAG,QAAQ,GAAG,QAAQ,CAAA;AAEpD,MAAM,MAAM,OAAO,GAAG;IACpB,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,UAAU,mBAAmB;IAC3B,SAAS,EAAE,iBAAiB,CAAA;IAC5B,OAAO,EAAE,OAAO,CAAA;CACjB;AAED,eAAO,MAAM,yBAAyB,wBACf,mBAAmB;;;;;;;;;;;;CAczC,CAAA;AAED,eAAO,MAAM,eAAe,QAAS,MAAM;;CAE1C,CAAA;AAED,UAAU,WAAW;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;CACtB;AACD,eAAO,MAAM,cAAc,YAAa,WAAW;;;CAKlD,CAAA;AAED,eAAO,MAAM,eAAe,YAAa,QAAQ,OAAO,CAAC,GAAG,SAAS;;;;;;;;;;CAWpE,CAAA;AAED,eAAO,MAAM,cAAc,WAAY,QAAQ,OAAO,CAAC,GAAG,SAAS;;;;;;;;;;CAUlE,CAAA;AAED,UAAU,WAAW;IACnB,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,WAAW,CAAC,EAAE,KAAK,CAAA;CACpB;AAED,eAAO,MAAM,cAAc,gBACZ,WAAW,gBACX,MAAM;;;;;;;CAwBpB,CAAA;AAED,MAAM,WAAW,oBAAqB,SAAQ,WAAW;IACvD,eAAe,CAAC,EAAE,KAAK,CAAA;IACvB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,eAAO,MAAM,4BAA4B,yBACjB,oBAAoB;;;;;;;;;;;;;;;;CA8B3C,CAAA;AAED,KAAK,oBAAoB,GAAG,mBAAmB,GAAG;IAChD,eAAe,CAAC,EAAE,KAAK,CAAA;IACvB,WAAW,CAAC,EAAE,KAAK,CAAA;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAC3B,CAAA;AAED,eAAO,MAAM,4BAA4B,yBACjB,oBAAoB;;;;;CAU3C,CAAA;AAED,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM,CAAA;QACd,MAAM,EAAE,MAAM,GAAG,MAAM,CAAA;KACxB,CAAA;IACD,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;IACrB,KAAK,EAAE,KAAK,CAAA;IACZ,SAAS,EAAE,OAAO,CAAA;IAClB,aAAa,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAA;IACtD,QAAQ,EAAE,OAAO,CAAA;CAClB,CAAA;AAED,KAAK,QAAQ,GAAG,SAAS,CAAA;AACzB,KAAK,OAAO,GAAG,SAAS,CAAA;AAExB,eAAO,MAAM,YAAY,cAAe,QAAQ,GAAG,OAAO;;;;;;;;CAWzD,CAAA;AAED,eAAO,MAAM,oBAAoB,cACpB,MAAM;;;;;;;;;;;;;;;CAYlB,CAAA;AAQD,eAAO,MAAM,kBAAkB,cAAe,MAAM,WAGnD,CAAA;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAK5D;AAED,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAI7E;AAED,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAI7E;AAGD,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,cAOpC,GAAG,EAAE,aAU3B;AACD,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,IAAI,GAAG,MAAM,UAG1D;AAED,eAAO,MAAM,gBAAgB,WAAY,MAAM,WAQ9C,CAAA;AAED,eAAO,MAAM,eAAe,YAAa,MAAM;;;;;;;CAW9C,CAAA;AAED,KAAK,kBAAkB,GAAG;IACxB,UAAU,EAAE,CAAC,GAAG,EAAE;QAChB,WAAW,EAAE;YAAE,IAAI,EAAE,UAAU,GAAG,KAAK,CAAC;YAAC,GAAG,EAAE,MAAM,CAAA;SAAE,CAAA;KACvD,KAAK,IAAI,CAAA;IACV,WAAW,EAAE,CAAC,GAAG,EAAE;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;IACjD,cAAc,EAAE,CAAC,GAAG,EAAE;QAAE,YAAY,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;CACxD,CAAA;AAmBD,eAAO,MAAM,qBAAqB,SAC1B,YAAY,GAAG,KAAK,GAAG,SAAS,GAAG,YAAY,GAAG,MAAM,iBAjBrC,MAAM,WAAW,kBAAkB,yBAE5C,MAAM,WAAW,kBAAkB,yBAO/B,MAAM,WAAW,kBAAkB,yBAEhC,MAAM,WAAW,kBAAkB,yBAS3D,CAAA;AAED,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,YAOlD;AAED,eAAO,MAAM,wBAAwB,gBACtB;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,EAAE,2BAQpE,CAAA;AAED,eAAO,MAAM,4BAA4B,yCAOxC,CAAA;AAED,eAAO,MAAM,SAAS,SACd,MAAM,UACJ,MAAM,cACF,OAAO,WAGpB,CAAA;AAED,eAAO,MAAM,4BAA4B,oBAAqB,SAAS;;;;;;;CAetE,CAAA;AAKD,wBAAgB,SAAS,CAAC,EAAE,EAAE,MAAM,UAGnC;AAED,eAAO,MAAM,wBAAwB,UAAW,yBAAyB,WAOxE,CAAA;AAkHD,KAAK,QAAQ,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAA;AAErD,eAAO,MAAM,WAAW;cAMZ,QAAQ;;;;;;;;;;;;;;;;;;;;;;;CAuDnB,CAAA;AAED,eAAO,MAAM,iBAAiB,QAAS,GAAG,2BAC+B,CAAA;AAEzE,eAAO,MAAM,WAAW,QAAS,GAAG,wCACO,CAAA;AAE3C,eAAO,MAAM,yBAAyB,QAC/B,GAAG,EAAE,6BAGX,CAAA;AAED,eAAO,MAAM,mBAAmB,QACzB,GAAG,EAAE,0CAGX,CAAA;AA6BD,eAAO,MAAM,eAAe,aAChB,yBAAyB,cACvB,yBAAyB,YAoDtC,CAAA;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../lib/utils.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/utils.js
CHANGED
|
@@ -481,69 +481,57 @@ export const shouldShowBlock = (envState, blockState) => {
|
|
|
481
481
|
return hasMatchingMetafields || hasMatchingTags;
|
|
482
482
|
};
|
|
483
483
|
// Helper to evaluate v2 conditions
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
484
|
+
export const evaluateConditions = (group, context) => {
|
|
485
|
+
const { logic = "OR", conditions = [] } = group;
|
|
486
|
+
console.log("Evaluating group:", { logic, conditions });
|
|
487
|
+
const results = conditions.map((condition) => {
|
|
488
|
+
if (condition.logic) {
|
|
489
|
+
return evaluateConditions(condition, context); // Nested group
|
|
490
|
+
}
|
|
491
|
+
else {
|
|
492
|
+
const result = evaluateSingleCondition(condition, context);
|
|
493
|
+
console.log("Evaluated condition:", { condition, result });
|
|
494
|
+
return result;
|
|
495
|
+
}
|
|
496
|
+
});
|
|
497
|
+
console.log("Results:", { results, logic });
|
|
498
|
+
switch (logic) {
|
|
499
|
+
case "AND":
|
|
500
|
+
return results.every(Boolean);
|
|
501
|
+
case "OR":
|
|
502
|
+
return results.some(Boolean);
|
|
503
|
+
case "NOT":
|
|
504
|
+
return !results.some(Boolean);
|
|
505
|
+
default:
|
|
506
|
+
throw new Error(`Unsupported logic operator: ${logic}`);
|
|
507
|
+
}
|
|
508
|
+
};
|
|
504
509
|
// Helper to evaluate a single condition
|
|
505
510
|
export const evaluateSingleCondition = (condition, context) => {
|
|
506
511
|
const { type, operator, value } = condition;
|
|
507
512
|
const contextValue = context[type];
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
return contextValue === value;
|
|
511
|
-
case "contains":
|
|
512
|
-
return Array.isArray(contextValue) && contextValue.includes(value);
|
|
513
|
-
default:
|
|
514
|
-
throw new Error(`Unsupported operator: ${operator}`);
|
|
513
|
+
if (!contextValue) {
|
|
514
|
+
return false; // If the context doesn't have the required type, return false
|
|
515
515
|
}
|
|
516
|
-
};
|
|
517
|
-
export const evaluateCondition = (condition, envState) => {
|
|
518
|
-
var _a;
|
|
519
|
-
const { type, operator, value } = condition;
|
|
520
|
-
const envValues =
|
|
521
|
-
// @ts-expect-error
|
|
522
|
-
((_a = envState[type]) === null || _a === void 0 ? void 0 : _a.map((item) => item.value)) || [];
|
|
523
516
|
switch (operator) {
|
|
524
517
|
case "equals":
|
|
525
|
-
|
|
518
|
+
if (Array.isArray(contextValue)) {
|
|
519
|
+
// Handle arrays of UserSelectedTag or ConditionalSelectorMetafield
|
|
520
|
+
return contextValue.some((item) => item.value === value);
|
|
521
|
+
}
|
|
522
|
+
else {
|
|
523
|
+
return contextValue === value;
|
|
524
|
+
}
|
|
526
525
|
case "contains":
|
|
527
|
-
|
|
526
|
+
if (Array.isArray(contextValue)) {
|
|
527
|
+
// Handle arrays of UserSelectedTag or ConditionalSelectorMetafield
|
|
528
|
+
return contextValue.some((item) => item.value === value);
|
|
529
|
+
}
|
|
530
|
+
else {
|
|
531
|
+
return contextValue.includes(value);
|
|
532
|
+
}
|
|
528
533
|
default:
|
|
529
|
-
|
|
530
|
-
return false;
|
|
534
|
+
throw new Error(`Unsupported operator: ${operator}`);
|
|
531
535
|
}
|
|
532
536
|
};
|
|
533
|
-
export const evaluateConditions = (conditionsObj, envState) => {
|
|
534
|
-
const { logic, conditions } = conditionsObj;
|
|
535
|
-
if (!conditions || conditions.length === 0)
|
|
536
|
-
return true;
|
|
537
|
-
const results = conditions.map((condition) => {
|
|
538
|
-
if (condition.conditions) {
|
|
539
|
-
// Nested condition group (AND/OR)
|
|
540
|
-
return evaluateConditions(condition, envState);
|
|
541
|
-
}
|
|
542
|
-
else {
|
|
543
|
-
// Single condition check
|
|
544
|
-
return evaluateCondition(condition, envState);
|
|
545
|
-
}
|
|
546
|
-
});
|
|
547
|
-
return logic === "AND" ? results.every(Boolean) : results.some(Boolean);
|
|
548
|
-
};
|
|
549
537
|
// --- End (Block conditional rendering util functions) ----
|