@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;;;CAuMrB,CAAA"}
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
- shouldShow = false; // evaluateConditions(conditions, envState)
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-error
114
+ //@ts-expect-errors envState typing doesn't match
145
115
  const shouldShowPreInverse = shouldShowBlock(envState, blockState);
146
- shouldShow = isInverse ? !shouldShowPreInverse : shouldShowPreInverse;
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
  }
@@ -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
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../lib/utils.ts"],"names":[],"mappings":"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"}
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
- // export const evaluateConditions = (group: any, context: any): boolean => {
485
- // const { logic = "OR", conditions = [] } = group
486
- // const results = conditions.map(
487
- // (condition: any) =>
488
- // condition.logic
489
- // ? evaluateConditions(condition, context) // Nested group
490
- // : evaluateSingleCondition(condition, context) // Single condition
491
- // )
492
- // console.log({ results, logic })
493
- // switch (logic) {
494
- // case "AND":
495
- // return results.every(Boolean)
496
- // case "OR":
497
- // return results.some(Boolean)
498
- // case "NOT":
499
- // return !results.some(Boolean)
500
- // default:
501
- // throw new Error(`Unsupported logic operator: ${logic}`)
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
- switch (operator) {
509
- case "equals":
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
- return envValues.includes(value);
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
- return envValues.some((envValue) => envValue.includes(value));
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
- console.warn(`Unknown operator: ${operator}`);
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) ----
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tapcart/mobile-components",
3
- "version": "0.7.49",
3
+ "version": "0.7.50",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "style": "dist/styles.css",