@searchspring/snap-toolbox 0.68.0 → 0.69.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -11,7 +11,7 @@ export type Target = {
11
11
  clickRetarget?: boolean | string;
12
12
  [any: string]: unknown;
13
13
  };
14
- export type OnTarget = (target: Target, elem: Element, originalElem?: Element) => void;
14
+ export type OnTarget = (target: Target, elem: Element, originalElem?: Element) => void | Promise<void>;
15
15
  export declare class DomTargeter {
16
16
  private targets;
17
17
  private onTarget;
@@ -1 +1 @@
1
- {"version":3,"file":"DomTargeter.d.ts","sourceRoot":"","sources":["../../../src/DomTargeter/DomTargeter.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,MAAM,GAAG;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE;QACR,MAAM,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;QAC9D,OAAO,EAAE,OAAO,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,CAAC;KACnE,CAAC;IACF,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,aAAa,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACjC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;AAGvF,qBAAa,WAAW;IACvB,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,cAAc,CAA4B;IAClD,OAAO,CAAC,aAAa,CAAsB;gBAE/B,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,QAAQ;IA0D3E,UAAU,IAAI,KAAK,CAAC,MAAM,CAAC;IAI3B,QAAQ,IAAI,IAAI;IAwDhB,YAAY,aAAc,MAAM,KAAG,IAAI,CASrC;IAEF,UAAU,aAAc,MAAM,KAAG,IAAI,CASnC;IAEF,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,MAAM;CA2Cd"}
1
+ {"version":3,"file":"DomTargeter.d.ts","sourceRoot":"","sources":["../../../src/DomTargeter/DomTargeter.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,MAAM,GAAG;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE;QACR,MAAM,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;QAC9D,OAAO,EAAE,OAAO,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,CAAC;KACnE,CAAC;IACF,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,aAAa,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACjC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE,OAAO,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAGvG,qBAAa,WAAW;IACvB,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,cAAc,CAA4B;IAClD,OAAO,CAAC,aAAa,CAAsB;gBAE/B,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,QAAQ;IA0D3E,UAAU,IAAI,KAAK,CAAC,MAAM,CAAC;IAI3B,QAAQ,IAAI,IAAI;IAiEhB,YAAY,aAAc,MAAM,KAAG,IAAI,CASrC;IAEF,UAAU,aAAc,MAAM,KAAG,IAAI,CASnC;IAEF,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,MAAM;CA2Cd"}
@@ -1,40 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __generator = (this && this.__generator) || function (thisArg, body) {
12
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
- function verb(n) { return function (v) { return step([n, v]); }; }
15
- function step(op) {
16
- if (f) throw new TypeError("Generator is already executing.");
17
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
- if (y = 0, t) op = [op[0] & 2, t.value];
20
- switch (op[0]) {
21
- case 0: case 1: t = op; break;
22
- case 4: _.label++; return { value: op[1], done: false };
23
- case 5: _.label++; y = op[1]; op = [0]; continue;
24
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
- default:
26
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
- if (t[2]) _.ops.pop();
31
- _.trys.pop(); continue;
32
- }
33
- op = body.call(thisArg, _);
34
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
- }
37
- };
38
2
  Object.defineProperty(exports, "__esModule", { value: true });
39
3
  exports.DomTargeter = void 0;
40
4
  var globallyTargetedElems = [];
@@ -122,6 +86,7 @@ var DomTargeter = /** @class */ (function () {
122
86
  };
123
87
  DomTargeter.prototype.retarget = function () {
124
88
  var _this = this;
89
+ var _a, _b;
125
90
  var targetElemPairs = this.targets.flatMap(function (target) {
126
91
  var _a;
127
92
  // hide targets before found
@@ -140,55 +105,48 @@ var DomTargeter = /** @class */ (function () {
140
105
  }
141
106
  return elems.map(function (elem) { return ({ target: target, elem: elem }); });
142
107
  });
143
- var errors = [];
144
- targetElemPairs.forEach(function (_a) {
145
- var target = _a.target, elem = _a.elem;
146
- return __awaiter(_this, void 0, void 0, function () {
147
- var injectedElem, e_1;
148
- var _b, _c;
149
- return __generator(this, function (_d) {
150
- switch (_d.label) {
151
- case 0:
152
- if (!target.inject) return [3 /*break*/, 5];
153
- _d.label = 1;
154
- case 1:
155
- _d.trys.push([1, 3, , 4]);
156
- injectedElem = this.inject(elem, target);
157
- this.targetedElems = this.targetedElems.concat(elem);
158
- return [4 /*yield*/, this.onTarget(target, injectedElem, elem)];
159
- case 2:
160
- _d.sent();
161
- return [3 /*break*/, 4];
162
- case 3:
163
- e_1 = _d.sent();
164
- errors.push(String(e_1));
165
- return [3 /*break*/, 4];
166
- case 4: return [3 /*break*/, 7];
167
- case 5:
168
- // empty target selector by default
169
- target.emptyTarget = (_b = target.emptyTarget) !== null && _b !== void 0 ? _b : true;
170
- if (target.emptyTarget)
171
- while (elem.firstChild && elem.removeChild(elem.firstChild))
172
- ;
173
- return [4 /*yield*/, this.onTarget(target, elem)];
174
- case 6:
175
- _d.sent();
176
- _d.label = 7;
177
- case 7:
178
- // unhide target
179
- target.hideTarget && this.unhideTarget(target.selector);
180
- // remove styles by default
181
- target.unsetTargetMinHeight = (_c = target.unsetTargetMinHeight) !== null && _c !== void 0 ? _c : true;
182
- if (target.unsetTargetMinHeight && elem.style.minHeight) {
183
- elem.style.minHeight = '';
184
- }
185
- return [2 /*return*/];
108
+ for (var _i = 0, targetElemPairs_1 = targetElemPairs; _i < targetElemPairs_1.length; _i++) {
109
+ var _c = targetElemPairs_1[_i], target = _c.target, elem = _c.elem;
110
+ try {
111
+ if (target.inject) {
112
+ var injectedElem = this.inject(elem, target);
113
+ this.targetedElems = this.targetedElems.concat(elem);
114
+ // handle both sync and async onTarget functions
115
+ var result = this.onTarget(target, injectedElem, elem);
116
+ if (result && typeof result.then === 'function') {
117
+ // async function - handle promise
118
+ result.catch(function (error) {
119
+ console.error('DomTargeter onTarget async failure:', error);
120
+ });
186
121
  }
187
- });
188
- });
189
- });
190
- if (errors.length) {
191
- throw new Error(errors.reduce(function (acc, err) { return (acc += err + '\n'); }, '\n'));
122
+ }
123
+ else {
124
+ // empty target selector by default
125
+ target.emptyTarget = (_a = target.emptyTarget) !== null && _a !== void 0 ? _a : true;
126
+ if (target.emptyTarget)
127
+ while (elem.firstChild && elem.removeChild(elem.firstChild))
128
+ ;
129
+ // handle both sync and async onTarget functions
130
+ var result = this.onTarget(target, elem);
131
+ if (result && typeof result.then === 'function') {
132
+ // async function - handle promise
133
+ result.catch(function (error) {
134
+ console.error('DomTargeter onTarget async failure:', error);
135
+ });
136
+ }
137
+ }
138
+ // unhide target
139
+ target.hideTarget && this.unhideTarget(target.selector);
140
+ // remove styles by default
141
+ target.unsetTargetMinHeight = (_b = target.unsetTargetMinHeight) !== null && _b !== void 0 ? _b : true;
142
+ if (target.unsetTargetMinHeight && elem.style.minHeight) {
143
+ elem.style.minHeight = '';
144
+ }
145
+ }
146
+ catch (err) {
147
+ // log the retarget failure but continue with other elements
148
+ console.error('DomTargeter retarget failure:', err);
149
+ }
192
150
  }
193
151
  };
194
152
  DomTargeter.prototype.domQuery = function (selector) {
@@ -1 +1 @@
1
- {"version":3,"file":"cookies.d.ts","sourceRoot":"","sources":["../../../src/cookies/cookies.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,EAAE,OAiDrB,CAAC;AAEF,UAAU,OAAO;IAChB,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/F,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAC9B,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CAC/C"}
1
+ {"version":3,"file":"cookies.d.ts","sourceRoot":"","sources":["../../../src/cookies/cookies.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,OAAO,EAAE,OAyDrB,CAAC;AAEF,UAAU,OAAO;IAChB,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/F,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAC9B,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CAC/C"}
@@ -1,38 +1,46 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.cookies = void 0;
4
+ var featureFlags_1 = require("../featureFlags/featureFlags");
4
5
  exports.cookies = {
5
6
  set: function (name, val, sameSite, expires, domain) {
6
- sameSite = sameSite || 'Lax';
7
- var cookie = name + '=' + encodeURIComponent(val) + ';' + 'SameSite=' + sameSite + ';path=/;';
8
- if (window.location.protocol == 'https:') {
9
- cookie += 'Secure;';
10
- }
11
- if (expires) {
12
- var d = new Date();
13
- d.setTime(d.getTime() + expires);
14
- cookie += 'expires=' + d['toUTCString']() + ';';
15
- }
16
- if (domain) {
17
- cookie += 'domain=' + domain + ';';
7
+ if ((0, featureFlags_1.getFlags)().cookies()) {
8
+ sameSite = sameSite || 'Lax';
9
+ var cookie = name + '=' + encodeURIComponent(val) + ';' + 'SameSite=' + sameSite + ';path=/;';
10
+ if (window.location.protocol == 'https:') {
11
+ cookie += 'Secure;';
12
+ }
13
+ if (expires) {
14
+ var d = new Date();
15
+ d.setTime(d.getTime() + expires);
16
+ cookie += 'expires=' + d['toUTCString']() + ';';
17
+ }
18
+ if (domain) {
19
+ cookie += 'domain=' + domain + ';';
20
+ }
21
+ window.document.cookie = cookie;
18
22
  }
19
- window.document.cookie = cookie;
20
23
  },
21
24
  get: function (name) {
22
- name = name + '=';
23
- var ca = window.document.cookie.split(';');
24
- for (var i = 0; i < ca.length; i++) {
25
- var c = ca[i];
26
- while (c.charAt(0) == ' ') {
27
- c = c.substring(1);
28
- }
29
- if (c.indexOf(name) == 0) {
30
- return decodeURIComponent(c.substring(name.length, c.length));
25
+ if ((0, featureFlags_1.getFlags)().cookies()) {
26
+ name = name + '=';
27
+ var ca = window.document.cookie.split(';');
28
+ for (var i = 0; i < ca.length; i++) {
29
+ var c = ca[i];
30
+ while (c.charAt(0) == ' ') {
31
+ c = c.substring(1);
32
+ }
33
+ if (c.indexOf(name) == 0) {
34
+ return decodeURIComponent(c.substring(name.length, c.length));
35
+ }
31
36
  }
32
37
  }
33
38
  return '';
34
39
  },
35
40
  unset: function (name, domain) {
41
+ if (!(0, featureFlags_1.getFlags)().cookies()) {
42
+ return;
43
+ }
36
44
  var cookie = name + '=; path=/; Max-Age=-99999999;';
37
45
  if (domain) {
38
46
  cookie += 'domain=' + domain + ';';
@@ -11,7 +11,7 @@ export type Target = {
11
11
  clickRetarget?: boolean | string;
12
12
  [any: string]: unknown;
13
13
  };
14
- export type OnTarget = (target: Target, elem: Element, originalElem?: Element) => void;
14
+ export type OnTarget = (target: Target, elem: Element, originalElem?: Element) => void | Promise<void>;
15
15
  export declare class DomTargeter {
16
16
  private targets;
17
17
  private onTarget;
@@ -1 +1 @@
1
- {"version":3,"file":"DomTargeter.d.ts","sourceRoot":"","sources":["../../../src/DomTargeter/DomTargeter.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,MAAM,GAAG;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE;QACR,MAAM,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;QAC9D,OAAO,EAAE,OAAO,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,CAAC;KACnE,CAAC;IACF,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,aAAa,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACjC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;AAGvF,qBAAa,WAAW;IACvB,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,cAAc,CAA4B;IAClD,OAAO,CAAC,aAAa,CAAsB;gBAE/B,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,QAAQ;IA0D3E,UAAU,IAAI,KAAK,CAAC,MAAM,CAAC;IAI3B,QAAQ,IAAI,IAAI;IAwDhB,YAAY,aAAc,MAAM,KAAG,IAAI,CASrC;IAEF,UAAU,aAAc,MAAM,KAAG,IAAI,CASnC;IAEF,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,MAAM;CA2Cd"}
1
+ {"version":3,"file":"DomTargeter.d.ts","sourceRoot":"","sources":["../../../src/DomTargeter/DomTargeter.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,MAAM,GAAG;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE;QACR,MAAM,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;QAC9D,OAAO,EAAE,OAAO,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,CAAC;KACnE,CAAC;IACF,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,aAAa,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACjC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE,OAAO,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAGvG,qBAAa,WAAW;IACvB,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,cAAc,CAA4B;IAClD,OAAO,CAAC,aAAa,CAAsB;gBAE/B,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,QAAQ;IA0D3E,UAAU,IAAI,KAAK,CAAC,MAAM,CAAC;IAI3B,QAAQ,IAAI,IAAI;IAiEhB,YAAY,aAAc,MAAM,KAAG,IAAI,CASrC;IAEF,UAAU,aAAc,MAAM,KAAG,IAAI,CASnC;IAEF,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,MAAM;CA2Cd"}
@@ -98,36 +98,47 @@ export class DomTargeter {
98
98
  }
99
99
  return elems.map((elem) => ({ target, elem }));
100
100
  });
101
- const errors = [];
102
- targetElemPairs.forEach(async ({ target, elem }) => {
103
- if (target.inject) {
104
- try {
101
+ for (const { target, elem } of targetElemPairs) {
102
+ try {
103
+ if (target.inject) {
105
104
  const injectedElem = this.inject(elem, target);
106
105
  this.targetedElems = this.targetedElems.concat(elem);
107
- await this.onTarget(target, injectedElem, elem);
106
+ // handle both sync and async onTarget functions
107
+ const result = this.onTarget(target, injectedElem, elem);
108
+ if (result && typeof result.then === 'function') {
109
+ // async function - handle promise
110
+ result.catch((error) => {
111
+ console.error('DomTargeter onTarget async failure:', error);
112
+ });
113
+ }
108
114
  }
109
- catch (e) {
110
- errors.push(String(e));
115
+ else {
116
+ // empty target selector by default
117
+ target.emptyTarget = target.emptyTarget ?? true;
118
+ if (target.emptyTarget)
119
+ while (elem.firstChild && elem.removeChild(elem.firstChild))
120
+ ;
121
+ // handle both sync and async onTarget functions
122
+ const result = this.onTarget(target, elem);
123
+ if (result && typeof result.then === 'function') {
124
+ // async function - handle promise
125
+ result.catch((error) => {
126
+ console.error('DomTargeter onTarget async failure:', error);
127
+ });
128
+ }
129
+ }
130
+ // unhide target
131
+ target.hideTarget && this.unhideTarget(target.selector);
132
+ // remove styles by default
133
+ target.unsetTargetMinHeight = target.unsetTargetMinHeight ?? true;
134
+ if (target.unsetTargetMinHeight && elem.style.minHeight) {
135
+ elem.style.minHeight = '';
111
136
  }
112
137
  }
113
- else {
114
- // empty target selector by default
115
- target.emptyTarget = target.emptyTarget ?? true;
116
- if (target.emptyTarget)
117
- while (elem.firstChild && elem.removeChild(elem.firstChild))
118
- ;
119
- await this.onTarget(target, elem);
120
- }
121
- // unhide target
122
- target.hideTarget && this.unhideTarget(target.selector);
123
- // remove styles by default
124
- target.unsetTargetMinHeight = target.unsetTargetMinHeight ?? true;
125
- if (target.unsetTargetMinHeight && elem.style.minHeight) {
126
- elem.style.minHeight = '';
138
+ catch (err) {
139
+ // log the retarget failure but continue with other elements
140
+ console.error('DomTargeter retarget failure:', err);
127
141
  }
128
- });
129
- if (errors.length) {
130
- throw new Error(errors.reduce((acc, err) => (acc += err + '\n'), '\n'));
131
142
  }
132
143
  }
133
144
  domQuery(selector) {
@@ -1 +1 @@
1
- {"version":3,"file":"cookies.d.ts","sourceRoot":"","sources":["../../../src/cookies/cookies.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,EAAE,OAiDrB,CAAC;AAEF,UAAU,OAAO;IAChB,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/F,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAC9B,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CAC/C"}
1
+ {"version":3,"file":"cookies.d.ts","sourceRoot":"","sources":["../../../src/cookies/cookies.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,OAAO,EAAE,OAyDrB,CAAC;AAEF,UAAU,OAAO;IAChB,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/F,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAC9B,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CAC/C"}
@@ -1,35 +1,43 @@
1
+ import { getFlags } from '../featureFlags/featureFlags';
1
2
  export const cookies = {
2
3
  set: (name, val, sameSite, expires, domain) => {
3
- sameSite = sameSite || 'Lax';
4
- let cookie = name + '=' + encodeURIComponent(val) + ';' + 'SameSite=' + sameSite + ';path=/;';
5
- if (window.location.protocol == 'https:') {
6
- cookie += 'Secure;';
7
- }
8
- if (expires) {
9
- const d = new Date();
10
- d.setTime(d.getTime() + expires);
11
- cookie += 'expires=' + d['toUTCString']() + ';';
12
- }
13
- if (domain) {
14
- cookie += 'domain=' + domain + ';';
4
+ if (getFlags().cookies()) {
5
+ sameSite = sameSite || 'Lax';
6
+ let cookie = name + '=' + encodeURIComponent(val) + ';' + 'SameSite=' + sameSite + ';path=/;';
7
+ if (window.location.protocol == 'https:') {
8
+ cookie += 'Secure;';
9
+ }
10
+ if (expires) {
11
+ const d = new Date();
12
+ d.setTime(d.getTime() + expires);
13
+ cookie += 'expires=' + d['toUTCString']() + ';';
14
+ }
15
+ if (domain) {
16
+ cookie += 'domain=' + domain + ';';
17
+ }
18
+ window.document.cookie = cookie;
15
19
  }
16
- window.document.cookie = cookie;
17
20
  },
18
21
  get: (name) => {
19
- name = name + '=';
20
- const ca = window.document.cookie.split(';');
21
- for (let i = 0; i < ca.length; i++) {
22
- let c = ca[i];
23
- while (c.charAt(0) == ' ') {
24
- c = c.substring(1);
25
- }
26
- if (c.indexOf(name) == 0) {
27
- return decodeURIComponent(c.substring(name.length, c.length));
22
+ if (getFlags().cookies()) {
23
+ name = name + '=';
24
+ const ca = window.document.cookie.split(';');
25
+ for (let i = 0; i < ca.length; i++) {
26
+ let c = ca[i];
27
+ while (c.charAt(0) == ' ') {
28
+ c = c.substring(1);
29
+ }
30
+ if (c.indexOf(name) == 0) {
31
+ return decodeURIComponent(c.substring(name.length, c.length));
32
+ }
28
33
  }
29
34
  }
30
35
  return '';
31
36
  },
32
37
  unset: (name, domain) => {
38
+ if (!getFlags().cookies()) {
39
+ return;
40
+ }
33
41
  let cookie = name + '=; path=/; Max-Age=-99999999;';
34
42
  if (domain) {
35
43
  cookie += 'domain=' + domain + ';';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@searchspring/snap-toolbox",
3
- "version": "0.68.0",
3
+ "version": "0.69.1",
4
4
  "description": "Snap Toolbox",
5
5
  "main": "dist/cjs/index.js",
6
6
  "module": "dist/esm/index.js",
@@ -23,5 +23,5 @@
23
23
  "files": [
24
24
  "dist/**/*"
25
25
  ],
26
- "gitHead": "4b0e2291cc4e6cef4f0357f376fb7403c651701e"
26
+ "gitHead": "a5c1359c6b56d5e28ea3266cf0233e621aa06e47"
27
27
  }