@searchcraft/javascript-sdk 0.10.1 → 0.10.3

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.
Files changed (70) hide show
  1. package/dist/components/index.d.ts +148 -83
  2. package/dist/components/index.js +7 -33
  3. package/dist/components/index.js.map +1 -1
  4. package/dist/components/{p-84e2cbd6.js → p-06bac1fc.js} +3 -3
  5. package/dist/components/{p-84e2cbd6.js.map → p-06bac1fc.js.map} +1 -1
  6. package/dist/components/p-4d37616e.js +105 -0
  7. package/dist/components/p-4d37616e.js.map +1 -0
  8. package/dist/components/{p-172a848d.js → p-508ee769.js} +8 -7
  9. package/dist/components/p-508ee769.js.map +1 -0
  10. package/dist/components/{p-3e65aa91.js → p-53c795bd.js} +4 -10
  11. package/dist/components/p-53c795bd.js.map +1 -0
  12. package/dist/components/{p-0077f677.js → p-5a4be632.js} +34 -22
  13. package/dist/components/p-5a4be632.js.map +1 -0
  14. package/dist/components/{p-5d17ace0.js → p-6717ab82.js} +7 -7
  15. package/dist/components/{p-5d17ace0.js.map → p-6717ab82.js.map} +1 -1
  16. package/dist/components/{p-868803f9.js → p-7c650118.js} +2 -2
  17. package/dist/components/{p-868803f9.js.map → p-7c650118.js.map} +1 -1
  18. package/dist/components/{p-13e81b5d.js → p-ad569b01.js} +12 -7
  19. package/dist/components/p-ad569b01.js.map +1 -0
  20. package/dist/components/{p-17c646e2.js → p-d4558d44.js} +563 -476
  21. package/dist/components/p-d4558d44.js.map +1 -0
  22. package/dist/components/{p-2be1a382.js → p-da1fb5c0.js} +2 -2
  23. package/dist/components/{p-2be1a382.js.map → p-da1fb5c0.js.map} +1 -1
  24. package/dist/components/{p-a62a2e74.js → p-fd564261.js} +4 -4
  25. package/dist/components/{p-a62a2e74.js.map → p-fd564261.js.map} +1 -1
  26. package/dist/components/searchcraft-ad.js +1 -1
  27. package/dist/components/searchcraft-facet-list.js +1 -1
  28. package/dist/components/searchcraft-filter-panel.js +20 -9
  29. package/dist/components/searchcraft-filter-panel.js.map +1 -1
  30. package/dist/components/searchcraft-input-form.js +1 -1
  31. package/dist/components/searchcraft-pagination.js +1 -1
  32. package/dist/components/searchcraft-popover-button.js +5 -3
  33. package/dist/components/searchcraft-popover-button.js.map +1 -1
  34. package/dist/components/searchcraft-popover-footer.js +1 -1
  35. package/dist/components/searchcraft-popover-form.js +8 -8
  36. package/dist/components/searchcraft-popover-form.js.map +1 -1
  37. package/dist/components/searchcraft-popover-list-item.js +1 -1
  38. package/dist/components/searchcraft-popover-list-view.js +1 -1
  39. package/dist/components/searchcraft-results-info.js +2 -2
  40. package/dist/components/searchcraft-search-result.js +1 -1
  41. package/dist/components/searchcraft-search-results-per-page.js +1 -1
  42. package/dist/components/searchcraft-search-results.js +69 -32
  43. package/dist/components/searchcraft-search-results.js.map +1 -1
  44. package/dist/components/searchcraft-slider.js +1 -1
  45. package/dist/components/searchcraft-theme.js +1 -1
  46. package/dist/components/searchcraft-theme.js.map +1 -1
  47. package/dist/components/searchcraft-toggle-button.js +1 -1
  48. package/dist/hydrate/index.js +491 -377
  49. package/dist/hydrate/index.mjs +491 -377
  50. package/dist/themes/hologram.css +1 -1
  51. package/dist/themes/hologram.css.map +1 -1
  52. package/dist/types/components/searchcraft-facet-list/searchcraft-facet-list.d.ts +1 -1
  53. package/dist/types/components/searchcraft-filter-panel/searchcraft-filter-panel.d.ts +1 -1
  54. package/dist/types/components/searchcraft-input-form/searchcraft-input-form.d.ts +7 -3
  55. package/dist/types/components/searchcraft-popover-button/searchcraft-popover-button.d.ts +3 -3
  56. package/dist/types/components/searchcraft-search-results/searchcraft-search-results.d.ts +10 -5
  57. package/dist/types/components.d.ts +20 -12
  58. package/dist/types/index.d.ts +0 -1
  59. package/dist/types/store/SearchcraftStore.types.d.ts +21 -8
  60. package/dist/types/utils/index.d.ts +0 -1
  61. package/dist/types/utils/units.d.ts +19 -6
  62. package/package.json +4 -7
  63. package/dist/components/p-0077f677.js.map +0 -1
  64. package/dist/components/p-13e81b5d.js.map +0 -1
  65. package/dist/components/p-172a848d.js.map +0 -1
  66. package/dist/components/p-17c646e2.js.map +0 -1
  67. package/dist/components/p-3e65aa91.js.map +0 -1
  68. package/dist/components/p-6104fe5d.js +0 -84
  69. package/dist/components/p-6104fe5d.js.map +0 -1
  70. package/dist/types/utils/styles.d.ts +0 -3
@@ -339,7 +339,7 @@ var uniqueTime = (key, measureText) => {
339
339
  };
340
340
  }
341
341
  };
342
- var h$1 = (nodeName, vnodeData, ...children) => {
342
+ var h = (nodeName, vnodeData, ...children) => {
343
343
  let child = null;
344
344
  let key = null;
345
345
  let slotName = null;
@@ -441,7 +441,7 @@ var convertToPrivate = (node) => {
441
441
  if (node.vname) {
442
442
  vnodeData.name = node.vname;
443
443
  }
444
- return h$1(node.vtag, vnodeData, ...node.vchildren || []);
444
+ return h(node.vtag, vnodeData, ...node.vchildren || []);
445
445
  }
446
446
  const vnode = newVNode(node.vtag, node.vtext);
447
447
  vnode.$attrs$ = node.vattrs;
@@ -1279,7 +1279,7 @@ var renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
1279
1279
  var _c, _d;
1280
1280
  const hostElm = hostRef.$hostElement$;
1281
1281
  const oldVNode = hostRef.$vnode$ || newVNode(null, null);
1282
- const rootVnode = isHost(renderFnResults) ? renderFnResults : h$1(null, null, renderFnResults);
1282
+ const rootVnode = isHost(renderFnResults) ? renderFnResults : h(null, null, renderFnResults);
1283
1283
  hostTagName = hostElm.tagName;
1284
1284
  if (isInitialLoad && rootVnode.$attrs$) {
1285
1285
  for (const key of Object.keys(rootVnode.$attrs$)) {
@@ -1951,14 +1951,14 @@ var hAsync = (nodeName, vnodeData, ...children) => {
1951
1951
  const flatChildren = children.flat(Infinity);
1952
1952
  if (flatChildren.some((child) => child instanceof Promise)) {
1953
1953
  return Promise.all(flatChildren).then((resolvedChildren) => {
1954
- return h$1(nodeName, vnodeData, ...resolvedChildren);
1954
+ return h(nodeName, vnodeData, ...resolvedChildren);
1955
1955
  }).catch((err2) => {
1956
- return h$1(nodeName, vnodeData);
1956
+ return h(nodeName, vnodeData);
1957
1957
  });
1958
1958
  }
1959
- return h$1(nodeName, vnodeData, ...flatChildren);
1959
+ return h(nodeName, vnodeData, ...flatChildren);
1960
1960
  }
1961
- return h$1(nodeName, vnodeData);
1961
+ return h(nodeName, vnodeData);
1962
1962
  };
1963
1963
  function proxyHostElement(elm, cstr) {
1964
1964
  const cmpMeta = cstr.cmpMeta;
@@ -3181,17 +3181,17 @@ Object.keys(react).forEach(function (k) {
3181
3181
  }(zustand));
3182
3182
 
3183
3183
  var B = Object.defineProperty;
3184
- var q = (r, e, n) => e in r ? B(r, e, { enumerable: !0, configurable: !0, writable: !0, value: n }) : r[e] = n;
3185
- var h = (r, e, n) => q(r, typeof e != "symbol" ? e + "" : e, n);
3186
- var D = /* @__PURE__ */ ((r) => (r[r.DEBUG = 0] = "DEBUG", r[r.INFO = 1] = "INFO", r[r.WARN = 2] = "WARN", r[r.ERROR = 3] = "ERROR", r))(D || {});
3187
- class ve {
3184
+ var N = (a, e, n) => e in a ? B(a, e, { enumerable: !0, configurable: !0, writable: !0, value: n }) : a[e] = n;
3185
+ var l = (a, e, n) => N(a, typeof e != "symbol" ? e + "" : e, n);
3186
+ var O = /* @__PURE__ */ ((a) => (a[a.DEBUG = 0] = "DEBUG", a[a.INFO = 1] = "INFO", a[a.WARN = 2] = "WARN", a[a.ERROR = 3] = "ERROR", a))(O || {});
3187
+ class pe {
3188
3188
  constructor(e) {
3189
- h(this, "logLevel");
3190
- h(this, "logFormatter");
3189
+ l(this, "logLevel");
3190
+ l(this, "logFormatter");
3191
3191
  this.logLevel = e.logLevel || 1, this.logFormatter = e.logFormatter || this.defaultFormatter;
3192
3192
  }
3193
3193
  defaultFormatter(e, n) {
3194
- return `[${D[e]}] ${( new Date()).toISOString()}: ${n}`;
3194
+ return `[${O[e]}] ${( new Date()).toISOString()}: ${n}`;
3195
3195
  }
3196
3196
  debug(e) {
3197
3197
  this.logLevel <= 0 && console.log(this.logFormatter(0, e));
@@ -3222,112 +3222,112 @@ class ve {
3222
3222
  }
3223
3223
  }
3224
3224
  }
3225
- function w(r, e, n, o) {
3226
- return new (n || (n = Promise))(function(a, i) {
3225
+ function w(a, e, n, r) {
3226
+ return new (n || (n = Promise))(function(i, o) {
3227
3227
  function t(c) {
3228
3228
  try {
3229
- l(o.next(c));
3229
+ h(r.next(c));
3230
3230
  } catch (s) {
3231
- i(s);
3231
+ o(s);
3232
3232
  }
3233
3233
  }
3234
3234
  function u(c) {
3235
3235
  try {
3236
- l(o.throw(c));
3236
+ h(r.throw(c));
3237
3237
  } catch (s) {
3238
- i(s);
3238
+ o(s);
3239
3239
  }
3240
3240
  }
3241
- function l(c) {
3241
+ function h(c) {
3242
3242
  var s;
3243
- c.done ? a(c.value) : (s = c.value, s instanceof n ? s : new n(function(f) {
3244
- f(s);
3243
+ c.done ? i(c.value) : (s = c.value, s instanceof n ? s : new n(function(p) {
3244
+ p(s);
3245
3245
  })).then(t, u);
3246
3246
  }
3247
- l((o = o.apply(r, [])).next());
3247
+ h((r = r.apply(a, [])).next());
3248
3248
  });
3249
3249
  }
3250
- function y(r, e) {
3251
- var n, o, a, i, t = { label: 0, sent: function() {
3252
- if (1 & a[0]) throw a[1];
3253
- return a[1];
3250
+ function y(a, e) {
3251
+ var n, r, i, o, t = { label: 0, sent: function() {
3252
+ if (1 & i[0]) throw i[1];
3253
+ return i[1];
3254
3254
  }, trys: [], ops: [] };
3255
- return i = { next: u(0), throw: u(1), return: u(2) }, typeof Symbol == "function" && (i[Symbol.iterator] = function() {
3255
+ return o = { next: u(0), throw: u(1), return: u(2) }, typeof Symbol == "function" && (o[Symbol.iterator] = function() {
3256
3256
  return this;
3257
- }), i;
3258
- function u(l) {
3257
+ }), o;
3258
+ function u(h) {
3259
3259
  return function(c) {
3260
3260
  return function(s) {
3261
3261
  if (n) throw new TypeError("Generator is already executing.");
3262
- for (; i && (i = 0, s[0] && (t = 0)), t; ) try {
3263
- if (n = 1, o && (a = 2 & s[0] ? o.return : s[0] ? o.throw || ((a = o.return) && a.call(o), 0) : o.next) && !(a = a.call(o, s[1])).done) return a;
3264
- switch (o = 0, a && (s = [2 & s[0], a.value]), s[0]) {
3262
+ for (; o && (o = 0, s[0] && (t = 0)), t; ) try {
3263
+ if (n = 1, r && (i = 2 & s[0] ? r.return : s[0] ? r.throw || ((i = r.return) && i.call(r), 0) : r.next) && !(i = i.call(r, s[1])).done) return i;
3264
+ switch (r = 0, i && (s = [2 & s[0], i.value]), s[0]) {
3265
3265
  case 0:
3266
3266
  case 1:
3267
- a = s;
3267
+ i = s;
3268
3268
  break;
3269
3269
  case 4:
3270
3270
  return t.label++, { value: s[1], done: !1 };
3271
3271
  case 5:
3272
- t.label++, o = s[1], s = [0];
3272
+ t.label++, r = s[1], s = [0];
3273
3273
  continue;
3274
3274
  case 7:
3275
3275
  s = t.ops.pop(), t.trys.pop();
3276
3276
  continue;
3277
3277
  default:
3278
- if (a = t.trys, !((a = a.length > 0 && a[a.length - 1]) || s[0] !== 6 && s[0] !== 2)) {
3278
+ if (i = t.trys, !((i = i.length > 0 && i[i.length - 1]) || s[0] !== 6 && s[0] !== 2)) {
3279
3279
  t = 0;
3280
3280
  continue;
3281
3281
  }
3282
- if (s[0] === 3 && (!a || s[1] > a[0] && s[1] < a[3])) {
3282
+ if (s[0] === 3 && (!i || s[1] > i[0] && s[1] < i[3])) {
3283
3283
  t.label = s[1];
3284
3284
  break;
3285
3285
  }
3286
- if (s[0] === 6 && t.label < a[1]) {
3287
- t.label = a[1], a = s;
3286
+ if (s[0] === 6 && t.label < i[1]) {
3287
+ t.label = i[1], i = s;
3288
3288
  break;
3289
3289
  }
3290
- if (a && t.label < a[2]) {
3291
- t.label = a[2], t.ops.push(s);
3290
+ if (i && t.label < i[2]) {
3291
+ t.label = i[2], t.ops.push(s);
3292
3292
  break;
3293
3293
  }
3294
- a[2] && t.ops.pop(), t.trys.pop();
3294
+ i[2] && t.ops.pop(), t.trys.pop();
3295
3295
  continue;
3296
3296
  }
3297
- s = e.call(r, t);
3298
- } catch (f) {
3299
- s = [6, f], o = 0;
3297
+ s = e.call(a, t);
3298
+ } catch (p) {
3299
+ s = [6, p], r = 0;
3300
3300
  } finally {
3301
- n = a = 0;
3301
+ n = i = 0;
3302
3302
  }
3303
3303
  if (5 & s[0]) throw s[1];
3304
3304
  return { value: s[0] ? s[1] : void 0, done: !0 };
3305
- }([l, c]);
3305
+ }([h, c]);
3306
3306
  };
3307
3307
  }
3308
3308
  }
3309
- var b = { exclude: [] }, O = {}, v = function(r, e) {
3310
- typeof window < "u" && (O[r] = e);
3309
+ var S = { exclude: [] }, D = {}, v = function(a, e) {
3310
+ typeof window < "u" && (D[a] = e);
3311
3311
  };
3312
- function A(r) {
3313
- return r ^= r >>> 16, r = Math.imul(r, 2246822507), r ^= r >>> 13, r = Math.imul(r, 3266489909), (r ^= r >>> 16) >>> 0;
3312
+ function T(a) {
3313
+ return a ^= a >>> 16, a = Math.imul(a, 2246822507), a ^= a >>> 13, a = Math.imul(a, 3266489909), (a ^= a >>> 16) >>> 0;
3314
3314
  }
3315
3315
  var m = new Uint32Array([597399067, 2869860233, 951274213, 2716044179]);
3316
- function g(r, e) {
3317
- return r << e | r >>> 32 - e;
3316
+ function g(a, e) {
3317
+ return a << e | a >>> 32 - e;
3318
3318
  }
3319
- function M(r, e) {
3319
+ function I(a, e) {
3320
3320
  var n;
3321
- if (e === void 0 && (e = 0), e = e ? 0 | e : 0, typeof r == "string" && (n = r, r = new TextEncoder().encode(n).buffer), !(r instanceof ArrayBuffer)) throw new TypeError("Expected key to be ArrayBuffer or string");
3322
- var o = new Uint32Array([e, e, e, e]);
3323
- (((function(i, t) {
3324
- for (var u = i.byteLength / 16 | 0, l = new Uint32Array(i, 0, 4 * u), c = 0; c < u; c++) {
3325
- var s = l.subarray(4 * c, 4 * (c + 1));
3321
+ if (e === void 0 && (e = 0), e = e ? 0 | e : 0, typeof a == "string" && (n = a, a = new TextEncoder().encode(n).buffer), !(a instanceof ArrayBuffer)) throw new TypeError("Expected key to be ArrayBuffer or string");
3322
+ var r = new Uint32Array([e, e, e, e]);
3323
+ (((function(o, t) {
3324
+ for (var u = o.byteLength / 16 | 0, h = new Uint32Array(o, 0, 4 * u), c = 0; c < u; c++) {
3325
+ var s = h.subarray(4 * c, 4 * (c + 1));
3326
3326
  s[0] = Math.imul(s[0], m[0]), s[0] = g(s[0], 15), s[0] = Math.imul(s[0], m[1]), t[0] = t[0] ^ s[0], t[0] = g(t[0], 19), t[0] = t[0] + t[1], t[0] = Math.imul(t[0], 5) + 1444728091, s[1] = Math.imul(s[1], m[1]), s[1] = g(s[1], 16), s[1] = Math.imul(s[1], m[2]), t[1] = t[1] ^ s[1], t[1] = g(t[1], 17), t[1] = t[1] + t[2], t[1] = Math.imul(t[1], 5) + 197830471, s[2] = Math.imul(s[2], m[2]), s[2] = g(s[2], 17), s[2] = Math.imul(s[2], m[3]), t[2] = t[2] ^ s[2], t[2] = g(t[2], 15), t[2] = t[2] + t[3], t[2] = Math.imul(t[2], 5) + 2530024501, s[3] = Math.imul(s[3], m[3]), s[3] = g(s[3], 18), s[3] = Math.imul(s[3], m[0]), t[3] = t[3] ^ s[3], t[3] = g(t[3], 13), t[3] = t[3] + t[0], t[3] = Math.imul(t[3], 5) + 850148119;
3327
3327
  }
3328
- })))(r, o), function(i, t) {
3329
- var u = i.byteLength / 16 | 0, l = i.byteLength % 16, c = new Uint32Array(4), s = new Uint8Array(i, 16 * u, l);
3330
- switch (l) {
3328
+ })))(a, r), function(o, t) {
3329
+ var u = o.byteLength / 16 | 0, h = o.byteLength % 16, c = new Uint32Array(4), s = new Uint8Array(o, 16 * u, h);
3330
+ switch (h) {
3331
3331
  case 15:
3332
3332
  c[3] = c[3] ^ s[14] << 16;
3333
3333
  case 14:
@@ -3359,178 +3359,178 @@ function M(r, e) {
3359
3359
  case 1:
3360
3360
  c[0] = c[0] ^ s[0] << 0, c[0] = Math.imul(c[0], m[0]), c[0] = g(c[0], 15), c[0] = Math.imul(c[0], m[1]), t[0] = t[0] ^ c[0];
3361
3361
  }
3362
- }(r, o), function(i, t) {
3363
- t[0] = t[0] ^ i.byteLength, t[1] = t[1] ^ i.byteLength, t[2] = t[2] ^ i.byteLength, t[3] = t[3] ^ i.byteLength, t[0] = t[0] + t[1] | 0, t[0] = t[0] + t[2] | 0, t[0] = t[0] + t[3] | 0, t[1] = t[1] + t[0] | 0, t[2] = t[2] + t[0] | 0, t[3] = t[3] + t[0] | 0, t[0] = A(t[0]), t[1] = A(t[1]), t[2] = A(t[2]), t[3] = A(t[3]), t[0] = t[0] + t[1] | 0, t[0] = t[0] + t[2] | 0, t[0] = t[0] + t[3] | 0, t[1] = t[1] + t[0] | 0, t[2] = t[2] + t[0] | 0, t[3] = t[3] + t[0] | 0;
3364
- }(r, o);
3365
- var a = new Uint8Array(o.buffer);
3366
- return Array.from(a).map(function(i) {
3367
- return i.toString(16).padStart(2, "0");
3362
+ }(a, r), function(o, t) {
3363
+ t[0] = t[0] ^ o.byteLength, t[1] = t[1] ^ o.byteLength, t[2] = t[2] ^ o.byteLength, t[3] = t[3] ^ o.byteLength, t[0] = t[0] + t[1] | 0, t[0] = t[0] + t[2] | 0, t[0] = t[0] + t[3] | 0, t[1] = t[1] + t[0] | 0, t[2] = t[2] + t[0] | 0, t[3] = t[3] + t[0] | 0, t[0] = T(t[0]), t[1] = T(t[1]), t[2] = T(t[2]), t[3] = T(t[3]), t[0] = t[0] + t[1] | 0, t[0] = t[0] + t[2] | 0, t[0] = t[0] + t[3] | 0, t[1] = t[1] + t[0] | 0, t[2] = t[2] + t[0] | 0, t[3] = t[3] + t[0] | 0;
3364
+ }(a, r);
3365
+ var i = new Uint8Array(r.buffer);
3366
+ return Array.from(i).map(function(o) {
3367
+ return o.toString(16).padStart(2, "0");
3368
3368
  }).join("");
3369
3369
  }
3370
- function H(r) {
3371
- for (var e = 0, n = 0; n < r.length; ++n) e += Math.abs(r[n]);
3370
+ function H(a) {
3371
+ for (var e = 0, n = 0; n < a.length; ++n) e += Math.abs(a[n]);
3372
3372
  return e;
3373
3373
  }
3374
- function L(r, e, n) {
3375
- for (var o = [], a = 0; a < r[0].data.length; a++) {
3376
- for (var i = [], t = 0; t < r.length; t++) i.push(r[t].data[a]);
3377
- o.push(Q(i));
3374
+ function L(a, e, n) {
3375
+ for (var r = [], i = 0; i < a[0].data.length; i++) {
3376
+ for (var o = [], t = 0; t < a.length; t++) o.push(a[t].data[i]);
3377
+ r.push(Q(o));
3378
3378
  }
3379
- var u = new Uint8ClampedArray(o);
3379
+ var u = new Uint8ClampedArray(r);
3380
3380
  return new ImageData(u, e, n);
3381
3381
  }
3382
- function Q(r) {
3383
- if (r.length === 0) return 0;
3384
- for (var e = {}, n = 0, o = r; n < o.length; n++)
3385
- e[i = o[n]] = (e[i] || 0) + 1;
3386
- var a = r[0];
3387
- for (var i in e) e[i] > e[a] && (a = parseInt(i, 10));
3388
- return a;
3382
+ function Q(a) {
3383
+ if (a.length === 0) return 0;
3384
+ for (var e = {}, n = 0, r = a; n < r.length; n++)
3385
+ e[o = r[n]] = (e[o] || 0) + 1;
3386
+ var i = a[0];
3387
+ for (var o in e) e[o] > e[i] && (i = parseInt(o, 10));
3388
+ return i;
3389
3389
  }
3390
- function E() {
3390
+ function C() {
3391
3391
  if (typeof navigator > "u") return { name: "unknown", version: "unknown" };
3392
- for (var r = navigator.userAgent, e = { Edg: "Edge", OPR: "Opera" }, n = 0, o = [/(?<name>Edge|Edg)\/(?<version>\d+(?:\.\d+)?)/, /(?<name>(?:Chrome|Chromium|OPR|Opera|Vivaldi|Brave))\/(?<version>\d+(?:\.\d+)?)/, /(?<name>(?:Firefox|Waterfox|Iceweasel|IceCat))\/(?<version>\d+(?:\.\d+)?)/, /(?<name>Safari)\/(?<version>\d+(?:\.\d+)?)/, /(?<name>MSIE|Trident|IEMobile).+?(?<version>\d+(?:\.\d+)?)/, /(?<name>[A-Za-z]+)\/(?<version>\d+(?:\.\d+)?)/, /(?<name>SamsungBrowser)\/(?<version>\d+(?:\.\d+)?)/]; n < o.length; n++) {
3393
- var a = o[n], i = r.match(a);
3394
- if (i && i.groups) return { name: e[i.groups.name] || i.groups.name, version: i.groups.version };
3392
+ for (var a = navigator.userAgent, e = { Edg: "Edge", OPR: "Opera" }, n = 0, r = [/(?<name>Edge|Edg)\/(?<version>\d+(?:\.\d+)?)/, /(?<name>(?:Chrome|Chromium|OPR|Opera|Vivaldi|Brave))\/(?<version>\d+(?:\.\d+)?)/, /(?<name>(?:Firefox|Waterfox|Iceweasel|IceCat))\/(?<version>\d+(?:\.\d+)?)/, /(?<name>Safari)\/(?<version>\d+(?:\.\d+)?)/, /(?<name>MSIE|Trident|IEMobile).+?(?<version>\d+(?:\.\d+)?)/, /(?<name>[A-Za-z]+)\/(?<version>\d+(?:\.\d+)?)/, /(?<name>SamsungBrowser)\/(?<version>\d+(?:\.\d+)?)/]; n < r.length; n++) {
3393
+ var i = r[n], o = a.match(i);
3394
+ if (o && o.groups) return { name: e[o.groups.name] || o.groups.name, version: o.groups.version };
3395
3395
  }
3396
3396
  return { name: "unknown", version: "unknown" };
3397
3397
  }
3398
3398
  v("audio", function() {
3399
3399
  return w(this, void 0, void 0, function() {
3400
- return y(this, function(r) {
3400
+ return y(this, function(a) {
3401
3401
  return [2, new Promise(function(e, n) {
3402
3402
  try {
3403
- var o = new (window.OfflineAudioContext || window.webkitOfflineAudioContext)(1, 5e3, 44100), a = o.createBufferSource(), i = o.createOscillator();
3404
- i.frequency.value = 1e3;
3405
- var t, u = o.createDynamicsCompressor();
3406
- u.threshold.value = -50, u.knee.value = 40, u.ratio.value = 12, u.attack.value = 0, u.release.value = 0.2, i.connect(u), u.connect(o.destination), i.start(), o.oncomplete = function(l) {
3407
- t = l.renderedBuffer.getChannelData(0), e({ sampleHash: H(t), oscillator: i.type, maxChannels: o.destination.maxChannelCount, channelCountMode: a.channelCountMode });
3408
- }, o.startRendering();
3409
- } catch (l) {
3410
- console.error("Error creating audio fingerprint:", l), n(l);
3403
+ var r = new (window.OfflineAudioContext || window.webkitOfflineAudioContext)(1, 5e3, 44100), i = r.createBufferSource(), o = r.createOscillator();
3404
+ o.frequency.value = 1e3;
3405
+ var t, u = r.createDynamicsCompressor();
3406
+ u.threshold.value = -50, u.knee.value = 40, u.ratio.value = 12, u.attack.value = 0, u.release.value = 0.2, o.connect(u), u.connect(r.destination), o.start(), r.oncomplete = function(h) {
3407
+ t = h.renderedBuffer.getChannelData(0), e({ sampleHash: H(t), oscillator: o.type, maxChannels: r.destination.maxChannelCount, channelCountMode: i.channelCountMode });
3408
+ }, r.startRendering();
3409
+ } catch (h) {
3410
+ console.error("Error creating audio fingerprint:", h), n(h);
3411
3411
  }
3412
3412
  })];
3413
3413
  });
3414
3414
  });
3415
3415
  });
3416
- var z = E().name !== "SamsungBrowser" ? 1 : 3, k = 280, F = 20;
3417
- E().name != "Firefox" && v("canvas", function() {
3418
- return document.createElement("canvas").getContext("2d"), new Promise(function(r) {
3419
- var e = Array.from({ length: z }, function() {
3416
+ var K = C().name !== "SamsungBrowser" ? 1 : 3, P = 280, k = 20;
3417
+ C().name != "Firefox" && v("canvas", function() {
3418
+ return document.createElement("canvas").getContext("2d"), new Promise(function(a) {
3419
+ var e = Array.from({ length: K }, function() {
3420
3420
  return function() {
3421
- var n = document.createElement("canvas"), o = n.getContext("2d");
3422
- if (!o) return new ImageData(1, 1);
3423
- n.width = k, n.height = F;
3424
- var a = o.createLinearGradient(0, 0, n.width, n.height);
3425
- a.addColorStop(0, "red"), a.addColorStop(0.16666666666666666, "orange"), a.addColorStop(0.3333333333333333, "yellow"), a.addColorStop(0.5, "green"), a.addColorStop(0.6666666666666666, "blue"), a.addColorStop(0.8333333333333334, "indigo"), a.addColorStop(1, "violet"), o.fillStyle = a, o.fillRect(0, 0, n.width, n.height);
3426
- var i = "Random Text WMwmil10Oo";
3427
- o.font = "23.123px Arial", o.fillStyle = "black", o.fillText(i, -5, 15), o.fillStyle = "rgba(0, 0, 255, 0.5)", o.fillText(i, -3.3, 17.7), o.beginPath(), o.moveTo(0, 0), o.lineTo(2 * n.width / 7, n.height), o.strokeStyle = "white", o.lineWidth = 2, o.stroke();
3428
- var t = o.getImageData(0, 0, n.width, n.height);
3421
+ var n = document.createElement("canvas"), r = n.getContext("2d");
3422
+ if (!r) return new ImageData(1, 1);
3423
+ n.width = P, n.height = k;
3424
+ var i = r.createLinearGradient(0, 0, n.width, n.height);
3425
+ i.addColorStop(0, "red"), i.addColorStop(0.16666666666666666, "orange"), i.addColorStop(0.3333333333333333, "yellow"), i.addColorStop(0.5, "green"), i.addColorStop(0.6666666666666666, "blue"), i.addColorStop(0.8333333333333334, "indigo"), i.addColorStop(1, "violet"), r.fillStyle = i, r.fillRect(0, 0, n.width, n.height);
3426
+ var o = "Random Text WMwmil10Oo";
3427
+ r.font = "23.123px Arial", r.fillStyle = "black", r.fillText(o, -5, 15), r.fillStyle = "rgba(0, 0, 255, 0.5)", r.fillText(o, -3.3, 17.7), r.beginPath(), r.moveTo(0, 0), r.lineTo(2 * n.width / 7, n.height), r.strokeStyle = "white", r.lineWidth = 2, r.stroke();
3428
+ var t = r.getImageData(0, 0, n.width, n.height);
3429
3429
  return t;
3430
3430
  }();
3431
3431
  });
3432
- r({ commonImageDataHash: M(L(e, k, F).data.toString()).toString() });
3432
+ a({ commonImageDataHash: I(L(e, P, k).data.toString()).toString() });
3433
3433
  });
3434
3434
  });
3435
- var _, K = ["Arial", "Arial Black", "Arial Narrow", "Arial Rounded MT", "Arimo", "Archivo", "Barlow", "Bebas Neue", "Bitter", "Bookman", "Calibri", "Cabin", "Candara", "Century", "Century Gothic", "Comic Sans MS", "Constantia", "Courier", "Courier New", "Crimson Text", "DM Mono", "DM Sans", "DM Serif Display", "DM Serif Text", "Dosis", "Droid Sans", "Exo", "Fira Code", "Fira Sans", "Franklin Gothic Medium", "Garamond", "Geneva", "Georgia", "Gill Sans", "Helvetica", "Impact", "Inconsolata", "Indie Flower", "Inter", "Josefin Sans", "Karla", "Lato", "Lexend", "Lucida Bright", "Lucida Console", "Lucida Sans Unicode", "Manrope", "Merriweather", "Merriweather Sans", "Montserrat", "Myriad", "Noto Sans", "Nunito", "Nunito Sans", "Open Sans", "Optima", "Orbitron", "Oswald", "Pacifico", "Palatino", "Perpetua", "PT Sans", "PT Serif", "Poppins", "Prompt", "Public Sans", "Quicksand", "Rajdhani", "Recursive", "Roboto", "Roboto Condensed", "Rockwell", "Rubik", "Segoe Print", "Segoe Script", "Segoe UI", "Sora", "Source Sans Pro", "Space Mono", "Tahoma", "Taviraj", "Times", "Times New Roman", "Titillium Web", "Trebuchet MS", "Ubuntu", "Varela Round", "Verdana", "Work Sans"], J = ["monospace", "sans-serif", "serif"];
3436
- function P(r, e) {
3437
- if (!r) throw new Error("Canvas context not supported");
3438
- return r.font = "72px ".concat(e), r.measureText("WwMmLli0Oo").width;
3435
+ var A, X = ["Arial", "Arial Black", "Arial Narrow", "Arial Rounded MT", "Arimo", "Archivo", "Barlow", "Bebas Neue", "Bitter", "Bookman", "Calibri", "Cabin", "Candara", "Century", "Century Gothic", "Comic Sans MS", "Constantia", "Courier", "Courier New", "Crimson Text", "DM Mono", "DM Sans", "DM Serif Display", "DM Serif Text", "Dosis", "Droid Sans", "Exo", "Fira Code", "Fira Sans", "Franklin Gothic Medium", "Garamond", "Geneva", "Georgia", "Gill Sans", "Helvetica", "Impact", "Inconsolata", "Indie Flower", "Inter", "Josefin Sans", "Karla", "Lato", "Lexend", "Lucida Bright", "Lucida Console", "Lucida Sans Unicode", "Manrope", "Merriweather", "Merriweather Sans", "Montserrat", "Myriad", "Noto Sans", "Nunito", "Nunito Sans", "Open Sans", "Optima", "Orbitron", "Oswald", "Pacifico", "Palatino", "Perpetua", "PT Sans", "PT Serif", "Poppins", "Prompt", "Public Sans", "Quicksand", "Rajdhani", "Recursive", "Roboto", "Roboto Condensed", "Rockwell", "Rubik", "Segoe Print", "Segoe Script", "Segoe UI", "Sora", "Source Sans Pro", "Space Mono", "Tahoma", "Taviraj", "Times", "Times New Roman", "Titillium Web", "Trebuchet MS", "Ubuntu", "Varela Round", "Verdana", "Work Sans"], J = ["monospace", "sans-serif", "serif"];
3436
+ function F(a, e) {
3437
+ if (!a) throw new Error("Canvas context not supported");
3438
+ return a.font = "72px ".concat(e), a.measureText("WwMmLli0Oo").width;
3439
3439
  }
3440
3440
  function Y() {
3441
- var r, e = document.createElement("canvas"), n = (r = e.getContext("webgl")) !== null && r !== void 0 ? r : e.getContext("experimental-webgl");
3441
+ var a, e = document.createElement("canvas"), n = (a = e.getContext("webgl")) !== null && a !== void 0 ? a : e.getContext("experimental-webgl");
3442
3442
  if (n && "getParameter" in n) try {
3443
- var o = (n.getParameter(n.VENDOR) || "").toString(), a = (n.getParameter(n.RENDERER) || "").toString(), i = { vendor: o, renderer: a, version: (n.getParameter(n.VERSION) || "").toString(), shadingLanguageVersion: (n.getParameter(n.SHADING_LANGUAGE_VERSION) || "").toString() };
3444
- if (!a.length || !o.length) {
3443
+ var r = (n.getParameter(n.VENDOR) || "").toString(), i = (n.getParameter(n.RENDERER) || "").toString(), o = { vendor: r, renderer: i, version: (n.getParameter(n.VERSION) || "").toString(), shadingLanguageVersion: (n.getParameter(n.SHADING_LANGUAGE_VERSION) || "").toString() };
3444
+ if (!i.length || !r.length) {
3445
3445
  var t = n.getExtension("WEBGL_debug_renderer_info");
3446
3446
  if (t) {
3447
- var u = (n.getParameter(t.UNMASKED_VENDOR_WEBGL) || "").toString(), l = (n.getParameter(t.UNMASKED_RENDERER_WEBGL) || "").toString();
3448
- u && (i.vendorUnmasked = u), l && (i.rendererUnmasked = l);
3447
+ var u = (n.getParameter(t.UNMASKED_VENDOR_WEBGL) || "").toString(), h = (n.getParameter(t.UNMASKED_RENDERER_WEBGL) || "").toString();
3448
+ u && (o.vendorUnmasked = u), h && (o.rendererUnmasked = h);
3449
3449
  }
3450
3450
  }
3451
- return i;
3451
+ return o;
3452
3452
  } catch {
3453
3453
  }
3454
3454
  return "undefined";
3455
3455
  }
3456
- function X() {
3457
- var r = new Float32Array(1), e = new Uint8Array(r.buffer);
3458
- return r[0] = 1 / 0, r[0] = r[0] - r[0], e[3];
3456
+ function Z() {
3457
+ var a = new Float32Array(1), e = new Uint8Array(a.buffer);
3458
+ return a[0] = 1 / 0, a[0] = a[0] - a[0], e[3];
3459
3459
  }
3460
- function Z(r, e) {
3460
+ function ee(a, e) {
3461
3461
  var n = {};
3462
- return e.forEach(function(o) {
3463
- var a = function(i) {
3464
- if (i.length === 0) return null;
3462
+ return e.forEach(function(r) {
3463
+ var i = function(o) {
3464
+ if (o.length === 0) return null;
3465
3465
  var t = {};
3466
- i.forEach(function(c) {
3466
+ o.forEach(function(c) {
3467
3467
  var s = String(c);
3468
3468
  t[s] = (t[s] || 0) + 1;
3469
3469
  });
3470
- var u = i[0], l = 1;
3470
+ var u = o[0], h = 1;
3471
3471
  return Object.keys(t).forEach(function(c) {
3472
- t[c] > l && (u = c, l = t[c]);
3472
+ t[c] > h && (u = c, h = t[c]);
3473
3473
  }), u;
3474
- }(r.map(function(i) {
3475
- return o in i ? i[o] : void 0;
3476
- }).filter(function(i) {
3477
- return i !== void 0;
3474
+ }(a.map(function(o) {
3475
+ return r in o ? o[r] : void 0;
3476
+ }).filter(function(o) {
3477
+ return o !== void 0;
3478
3478
  }));
3479
- a && (n[o] = a);
3479
+ i && (n[r] = i);
3480
3480
  }), n;
3481
3481
  }
3482
- function ee() {
3483
- var r = [], e = { "prefers-contrast": ["high", "more", "low", "less", "forced", "no-preference"], "any-hover": ["hover", "none"], "any-pointer": ["none", "coarse", "fine"], pointer: ["none", "coarse", "fine"], hover: ["hover", "none"], update: ["fast", "slow"], "inverted-colors": ["inverted", "none"], "prefers-reduced-motion": ["reduce", "no-preference"], "prefers-reduced-transparency": ["reduce", "no-preference"], scripting: ["none", "initial-only", "enabled"], "forced-colors": ["active", "none"] };
3482
+ function te() {
3483
+ var a = [], e = { "prefers-contrast": ["high", "more", "low", "less", "forced", "no-preference"], "any-hover": ["hover", "none"], "any-pointer": ["none", "coarse", "fine"], pointer: ["none", "coarse", "fine"], hover: ["hover", "none"], update: ["fast", "slow"], "inverted-colors": ["inverted", "none"], "prefers-reduced-motion": ["reduce", "no-preference"], "prefers-reduced-transparency": ["reduce", "no-preference"], scripting: ["none", "initial-only", "enabled"], "forced-colors": ["active", "none"] };
3484
3484
  return Object.keys(e).forEach(function(n) {
3485
- e[n].forEach(function(o) {
3486
- matchMedia("(".concat(n, ": ").concat(o, ")")).matches && r.push("".concat(n, ": ").concat(o));
3485
+ e[n].forEach(function(r) {
3486
+ matchMedia("(".concat(n, ": ").concat(r, ")")).matches && a.push("".concat(n, ": ").concat(r));
3487
3487
  });
3488
- }), r;
3488
+ }), a;
3489
3489
  }
3490
- function te() {
3490
+ function ne() {
3491
3491
  if (window.location.protocol === "https:" && typeof window.ApplePaySession == "function") try {
3492
- for (var r = window.ApplePaySession.supportsVersion, e = 15; e > 0; e--) if (r(e)) return e;
3492
+ for (var a = window.ApplePaySession.supportsVersion, e = 15; e > 0; e--) if (a(e)) return e;
3493
3493
  } catch {
3494
3494
  return 0;
3495
3495
  }
3496
3496
  return 0;
3497
3497
  }
3498
- E().name != "Firefox" && v("fonts", function() {
3499
- var r = this;
3498
+ C().name != "Firefox" && v("fonts", function() {
3499
+ var a = this;
3500
3500
  return new Promise(function(e, n) {
3501
3501
  try {
3502
- (function(o) {
3503
- var a;
3502
+ (function(r) {
3503
+ var i;
3504
3504
  w(this, void 0, void 0, function() {
3505
- var i, t, u;
3506
- return y(this, function(l) {
3507
- switch (l.label) {
3505
+ var o, t, u;
3506
+ return y(this, function(h) {
3507
+ switch (h.label) {
3508
3508
  case 0:
3509
- return document.body ? [3, 2] : [4, (c = 50, new Promise(function(f) {
3510
- return setTimeout(f, c, s);
3509
+ return document.body ? [3, 2] : [4, (c = 50, new Promise(function(p) {
3510
+ return setTimeout(p, c, s);
3511
3511
  }))];
3512
3512
  case 1:
3513
- return l.sent(), [3, 0];
3513
+ return h.sent(), [3, 0];
3514
3514
  case 2:
3515
- if ((i = document.createElement("iframe")).setAttribute("frameBorder", "0"), (t = i.style).setProperty("position", "fixed"), t.setProperty("display", "block", "important"), t.setProperty("visibility", "visible"), t.setProperty("border", "0"), t.setProperty("opacity", "0"), i.src = "about:blank", document.body.appendChild(i), !(u = i.contentDocument || ((a = i.contentWindow) === null || a === void 0 ? void 0 : a.document))) throw new Error("Iframe document is not accessible");
3516
- return o({ iframe: u }), setTimeout(function() {
3517
- document.body.removeChild(i);
3515
+ if ((o = document.createElement("iframe")).setAttribute("frameBorder", "0"), (t = o.style).setProperty("position", "fixed"), t.setProperty("display", "block", "important"), t.setProperty("visibility", "visible"), t.setProperty("border", "0"), t.setProperty("opacity", "0"), o.src = "about:blank", document.body.appendChild(o), !(u = o.contentDocument || ((i = o.contentWindow) === null || i === void 0 ? void 0 : i.document))) throw new Error("Iframe document is not accessible");
3516
+ return r({ iframe: u }), setTimeout(function() {
3517
+ document.body.removeChild(o);
3518
3518
  }, 0), [2];
3519
3519
  }
3520
3520
  var c, s;
3521
3521
  });
3522
3522
  });
3523
- })(function(o) {
3524
- var a = o.iframe;
3525
- return w(r, void 0, void 0, function() {
3526
- var i, t, u, l;
3523
+ })(function(r) {
3524
+ var i = r.iframe;
3525
+ return w(a, void 0, void 0, function() {
3526
+ var o, t, u, h;
3527
3527
  return y(this, function(c) {
3528
- return i = a.createElement("canvas"), t = i.getContext("2d"), u = J.map(function(s) {
3529
- return P(t, s);
3530
- }), l = {}, K.forEach(function(s) {
3531
- var f = P(t, s);
3532
- u.includes(f) || (l[s] = f);
3533
- }), e(l), [2];
3528
+ return o = i.createElement("canvas"), t = o.getContext("2d"), u = J.map(function(s) {
3529
+ return F(t, s);
3530
+ }), h = {}, X.forEach(function(s) {
3531
+ var p = F(t, s);
3532
+ u.includes(p) || (h[s] = p);
3533
+ }), e(h), [2];
3534
3534
  });
3535
3535
  });
3536
3536
  });
@@ -3539,76 +3539,76 @@ E().name != "Firefox" && v("fonts", function() {
3539
3539
  }
3540
3540
  });
3541
3541
  }), v("hardware", function() {
3542
- return new Promise(function(r, e) {
3543
- var n = navigator.deviceMemory !== void 0 ? navigator.deviceMemory : 0, o = window.performance && window.performance.memory ? window.performance.memory : 0;
3544
- r({ videocard: Y(), architecture: X(), deviceMemory: n.toString() || "undefined", jsHeapSizeLimit: o.jsHeapSizeLimit || 0 });
3542
+ return new Promise(function(a, e) {
3543
+ var n = navigator.deviceMemory !== void 0 ? navigator.deviceMemory : 0, r = window.performance && window.performance.memory ? window.performance.memory : 0;
3544
+ a({ videocard: Y(), architecture: Z(), deviceMemory: n.toString() || "undefined", jsHeapSizeLimit: r.jsHeapSizeLimit || 0 });
3545
3545
  });
3546
3546
  }), v("locales", function() {
3547
- return new Promise(function(r) {
3548
- r({ languages: navigator.language, timezone: Intl.DateTimeFormat().resolvedOptions().timeZone });
3547
+ return new Promise(function(a) {
3548
+ a({ languages: navigator.language, timezone: Intl.DateTimeFormat().resolvedOptions().timeZone });
3549
3549
  });
3550
3550
  }), v("permissions", function() {
3551
3551
  return w(this, void 0, void 0, function() {
3552
- var r;
3552
+ var a;
3553
3553
  return y(this, function(e) {
3554
- return _ = (b == null ? void 0 : b.permissions_to_check) || ["accelerometer", "accessibility", "accessibility-events", "ambient-light-sensor", "background-fetch", "background-sync", "bluetooth", "camera", "clipboard-read", "clipboard-write", "device-info", "display-capture", "gyroscope", "geolocation", "local-fonts", "magnetometer", "microphone", "midi", "nfc", "notifications", "payment-handler", "persistent-storage", "push", "speaker", "storage-access", "top-level-storage-access", "window-management", "query"], r = Array.from({ length: (b == null ? void 0 : b.retries) || 3 }, function() {
3554
+ return A = (S == null ? void 0 : S.permissions_to_check) || ["accelerometer", "accessibility", "accessibility-events", "ambient-light-sensor", "background-fetch", "background-sync", "bluetooth", "camera", "clipboard-read", "clipboard-write", "device-info", "display-capture", "gyroscope", "geolocation", "local-fonts", "magnetometer", "microphone", "midi", "nfc", "notifications", "payment-handler", "persistent-storage", "push", "speaker", "storage-access", "top-level-storage-access", "window-management", "query"], a = Array.from({ length: (S == null ? void 0 : S.retries) || 3 }, function() {
3555
3555
  return function() {
3556
3556
  return w(this, void 0, void 0, function() {
3557
- var n, o, a, i, t;
3557
+ var n, r, i, o, t;
3558
3558
  return y(this, function(u) {
3559
3559
  switch (u.label) {
3560
3560
  case 0:
3561
- n = {}, o = 0, a = _, u.label = 1;
3561
+ n = {}, r = 0, i = A, u.label = 1;
3562
3562
  case 1:
3563
- if (!(o < a.length)) return [3, 6];
3564
- i = a[o], u.label = 2;
3563
+ if (!(r < i.length)) return [3, 6];
3564
+ o = i[r], u.label = 2;
3565
3565
  case 2:
3566
- return u.trys.push([2, 4, , 5]), [4, navigator.permissions.query({ name: i })];
3566
+ return u.trys.push([2, 4, , 5]), [4, navigator.permissions.query({ name: o })];
3567
3567
  case 3:
3568
- return t = u.sent(), n[i] = t.state.toString(), [3, 5];
3568
+ return t = u.sent(), n[o] = t.state.toString(), [3, 5];
3569
3569
  case 4:
3570
3570
  return u.sent(), [3, 5];
3571
3571
  case 5:
3572
- return o++, [3, 1];
3572
+ return r++, [3, 1];
3573
3573
  case 6:
3574
3574
  return [2, n];
3575
3575
  }
3576
3576
  });
3577
3577
  });
3578
3578
  }();
3579
- }), [2, Promise.all(r).then(function(n) {
3580
- return Z(n, _);
3579
+ }), [2, Promise.all(a).then(function(n) {
3580
+ return ee(n, A);
3581
3581
  })];
3582
3582
  });
3583
3583
  });
3584
3584
  }), v("plugins", function() {
3585
- var r = [];
3585
+ var a = [];
3586
3586
  if (navigator.plugins) for (var e = 0; e < navigator.plugins.length; e++) {
3587
3587
  var n = navigator.plugins[e];
3588
- r.push([n.name, n.filename, n.description].join("|"));
3588
+ a.push([n.name, n.filename, n.description].join("|"));
3589
3589
  }
3590
- return new Promise(function(o) {
3591
- o({ plugins: r });
3590
+ return new Promise(function(r) {
3591
+ r({ plugins: a });
3592
3592
  });
3593
3593
  }), v("screen", function() {
3594
- return new Promise(function(r) {
3595
- r({ is_touchscreen: navigator.maxTouchPoints > 0, maxTouchPoints: navigator.maxTouchPoints, colorDepth: screen.colorDepth, mediaMatches: ee() });
3594
+ return new Promise(function(a) {
3595
+ a({ is_touchscreen: navigator.maxTouchPoints > 0, maxTouchPoints: navigator.maxTouchPoints, colorDepth: screen.colorDepth, mediaMatches: te() });
3596
3596
  });
3597
3597
  }), v("system", function() {
3598
- return new Promise(function(r) {
3599
- var e = E();
3600
- r({ platform: window.navigator.platform, cookieEnabled: window.navigator.cookieEnabled, productSub: navigator.productSub, product: navigator.product, useragent: navigator.userAgent, hardwareConcurrency: navigator.hardwareConcurrency, browser: { name: e.name, version: e.version }, applePayVersion: te() });
3598
+ return new Promise(function(a) {
3599
+ var e = C();
3600
+ a({ platform: window.navigator.platform, cookieEnabled: window.navigator.cookieEnabled, productSub: navigator.productSub, product: navigator.product, useragent: navigator.userAgent, hardwareConcurrency: navigator.hardwareConcurrency, browser: { name: e.name, version: e.version }, applePayVersion: ne() });
3601
3601
  });
3602
3602
  });
3603
- var p, ne = E().name !== "SamsungBrowser" ? 1 : 3, d = null;
3603
+ var f, re = C().name !== "SamsungBrowser" ? 1 : 3, d = null;
3604
3604
  v("webgl", function() {
3605
3605
  return w(this, void 0, void 0, function() {
3606
- var r;
3606
+ var a;
3607
3607
  return y(this, function(e) {
3608
- typeof document < "u" && ((p = document.createElement("canvas")).width = 200, p.height = 100, d = p.getContext("webgl"));
3608
+ typeof document < "u" && ((f = document.createElement("canvas")).width = 200, f.height = 100, d = f.getContext("webgl"));
3609
3609
  try {
3610
3610
  if (!d) throw new Error("WebGL not supported");
3611
- return r = Array.from({ length: ne }, function() {
3611
+ return a = Array.from({ length: re }, function() {
3612
3612
  return function() {
3613
3613
  try {
3614
3614
  if (!d) throw new Error("WebGL not supported");
@@ -3617,36 +3617,36 @@ v("webgl", function() {
3617
3617
  void main() {
3618
3618
  gl_Position = vec4(position, 0.0, 1.0);
3619
3619
  }
3620
- `, o = `
3620
+ `, r = `
3621
3621
  precision mediump float;
3622
3622
  void main() {
3623
3623
  gl_FragColor = vec4(0.812, 0.195, 0.553, 0.921); // Set line color
3624
3624
  }
3625
- `, a = d.createShader(d.VERTEX_SHADER), i = d.createShader(d.FRAGMENT_SHADER);
3626
- if (!a || !i) throw new Error("Failed to create shaders");
3627
- if (d.shaderSource(a, n), d.shaderSource(i, o), d.compileShader(a), !d.getShaderParameter(a, d.COMPILE_STATUS)) throw new Error("Vertex shader compilation failed: " + d.getShaderInfoLog(a));
3628
- if (d.compileShader(i), !d.getShaderParameter(i, d.COMPILE_STATUS)) throw new Error("Fragment shader compilation failed: " + d.getShaderInfoLog(i));
3625
+ `, i = d.createShader(d.VERTEX_SHADER), o = d.createShader(d.FRAGMENT_SHADER);
3626
+ if (!i || !o) throw new Error("Failed to create shaders");
3627
+ if (d.shaderSource(i, n), d.shaderSource(o, r), d.compileShader(i), !d.getShaderParameter(i, d.COMPILE_STATUS)) throw new Error("Vertex shader compilation failed: " + d.getShaderInfoLog(i));
3628
+ if (d.compileShader(o), !d.getShaderParameter(o, d.COMPILE_STATUS)) throw new Error("Fragment shader compilation failed: " + d.getShaderInfoLog(o));
3629
3629
  var t = d.createProgram();
3630
3630
  if (!t) throw new Error("Failed to create shader program");
3631
- if (d.attachShader(t, a), d.attachShader(t, i), d.linkProgram(t), !d.getProgramParameter(t, d.LINK_STATUS)) throw new Error("Shader program linking failed: " + d.getProgramInfoLog(t));
3631
+ if (d.attachShader(t, i), d.attachShader(t, o), d.linkProgram(t), !d.getProgramParameter(t, d.LINK_STATUS)) throw new Error("Shader program linking failed: " + d.getProgramInfoLog(t));
3632
3632
  d.useProgram(t);
3633
- for (var u = 137, l = new Float32Array(4 * u), c = 2 * Math.PI / u, s = 0; s < u; s++) {
3634
- var f = s * c;
3635
- l[4 * s] = 0, l[4 * s + 1] = 0, l[4 * s + 2] = Math.cos(f) * (p.width / 2), l[4 * s + 3] = Math.sin(f) * (p.height / 2);
3633
+ for (var u = 137, h = new Float32Array(4 * u), c = 2 * Math.PI / u, s = 0; s < u; s++) {
3634
+ var p = s * c;
3635
+ h[4 * s] = 0, h[4 * s + 1] = 0, h[4 * s + 2] = Math.cos(p) * (f.width / 2), h[4 * s + 3] = Math.sin(p) * (f.height / 2);
3636
3636
  }
3637
- var C = d.createBuffer();
3638
- d.bindBuffer(d.ARRAY_BUFFER, C), d.bufferData(d.ARRAY_BUFFER, l, d.STATIC_DRAW);
3637
+ var q = d.createBuffer();
3638
+ d.bindBuffer(d.ARRAY_BUFFER, q), d.bufferData(d.ARRAY_BUFFER, h, d.STATIC_DRAW);
3639
3639
  var R = d.getAttribLocation(t, "position");
3640
- d.enableVertexAttribArray(R), d.vertexAttribPointer(R, 2, d.FLOAT, !1, 0, 0), d.viewport(0, 0, p.width, p.height), d.clearColor(0, 0, 0, 1), d.clear(d.COLOR_BUFFER_BIT), d.drawArrays(d.LINES, 0, 2 * u);
3641
- var x = new Uint8ClampedArray(p.width * p.height * 4);
3642
- return d.readPixels(0, 0, p.width, p.height, d.RGBA, d.UNSIGNED_BYTE, x), new ImageData(x, p.width, p.height);
3640
+ d.enableVertexAttribArray(R), d.vertexAttribPointer(R, 2, d.FLOAT, !1, 0, 0), d.viewport(0, 0, f.width, f.height), d.clearColor(0, 0, 0, 1), d.clear(d.COLOR_BUFFER_BIT), d.drawArrays(d.LINES, 0, 2 * u);
3641
+ var x = new Uint8ClampedArray(f.width * f.height * 4);
3642
+ return d.readPixels(0, 0, f.width, f.height, d.RGBA, d.UNSIGNED_BYTE, x), new ImageData(x, f.width, f.height);
3643
3643
  } catch {
3644
3644
  return new ImageData(1, 1);
3645
3645
  } finally {
3646
3646
  d && (d.bindBuffer(d.ARRAY_BUFFER, null), d.useProgram(null), d.viewport(0, 0, d.drawingBufferWidth, d.drawingBufferHeight), d.clearColor(0, 0, 0, 0));
3647
3647
  }
3648
3648
  }();
3649
- }), [2, { commonImageHash: M(L(r, p.width, p.height).data.toString()).toString() }];
3649
+ }), [2, { commonImageHash: I(L(a, f.width, f.height).data.toString()).toString() }];
3650
3650
  } catch {
3651
3651
  return [2, { webgl: "unsupported" }];
3652
3652
  }
@@ -3654,15 +3654,15 @@ v("webgl", function() {
3654
3654
  });
3655
3655
  });
3656
3656
  });
3657
- var S = function(r, e, n, o) {
3658
- for (var a = (n - e) / o, i = 0, t = 0; t < o; t++)
3659
- i += r(e + (t + 0.5) * a);
3660
- return i * a;
3657
+ var b = function(a, e, n, r) {
3658
+ for (var i = (n - e) / r, o = 0, t = 0; t < r; t++)
3659
+ o += a(e + (t + 0.5) * i);
3660
+ return o * i;
3661
3661
  };
3662
3662
  v("math", function() {
3663
3663
  return w(void 0, void 0, void 0, function() {
3664
- return y(this, function(r) {
3665
- return [2, { acos: Math.acos(0.5), asin: S(Math.asin, -1, 1, 97), atan: S(Math.atan, -1, 1, 97), cos: S(Math.cos, 0, Math.PI, 97), cosh: Math.cosh(9 / 7), e: Math.E, largeCos: Math.cos(1e20), largeSin: Math.sin(1e20), largeTan: Math.tan(1e20), log: Math.log(1e3), pi: Math.PI, sin: S(Math.sin, -Math.PI, Math.PI, 97), sinh: S(Math.sinh, -9 / 7, 7 / 9, 97), sqrt: Math.sqrt(2), tan: S(Math.tan, 0, 2 * Math.PI, 97), tanh: S(Math.tanh, -9 / 7, 7 / 9, 97) }];
3664
+ return y(this, function(a) {
3665
+ return [2, { acos: Math.acos(0.5), asin: b(Math.asin, -1, 1, 97), atan: b(Math.atan, -1, 1, 97), cos: b(Math.cos, 0, Math.PI, 97), cosh: Math.cosh(9 / 7), e: Math.E, largeCos: Math.cos(1e20), largeSin: Math.sin(1e20), largeTan: Math.tan(1e20), log: Math.log(1e3), pi: Math.PI, sin: b(Math.sin, -Math.PI, Math.PI, 97), sinh: b(Math.sinh, -9 / 7, 7 / 9, 97), sqrt: Math.sqrt(2), tan: b(Math.tan, 0, 2 * Math.PI, 97), tanh: b(Math.tanh, -9 / 7, 7 / 9, 97) }];
3666
3666
  });
3667
3667
  });
3668
3668
  });
@@ -3674,10 +3674,12 @@ const initialSearchcraftStateValues = {
3674
3674
  hotkeyModifier: 'meta',
3675
3675
  logger: undefined,
3676
3676
  facetPathsForIndexFields: {},
3677
+ initialQuery: '',
3678
+ initialSearchClientResponseItems: [],
3677
3679
  isPopoverVisible: false,
3678
3680
  isSearchInProgress: false,
3679
- searchTerm: '',
3680
3681
  rangeValueForIndexFields: {},
3682
+ searchTerm: '',
3681
3683
  searchMode: 'fuzzy',
3682
3684
  searchClientResponseItems: [],
3683
3685
  searchResponseTimeTaken: undefined,
@@ -3685,38 +3687,49 @@ const initialSearchcraftStateValues = {
3685
3687
  searchResultsCount: 0,
3686
3688
  searchResultsPerPage: 20,
3687
3689
  searchResultsPage: 1,
3688
- sortType: 'asc',
3690
+ sortType: undefined,
3691
+ orderByField: undefined,
3692
+ // Callbacks
3693
+ afterInit: () => { },
3689
3694
  };
3690
- const searchcraftStore = zustand.createStore((set, get) => {
3695
+ const searchcraftStore = zustand.createStore((_set, get) => {
3691
3696
  const functions = {
3692
- addFacetPathsForIndexField: (data) => set((state) => ({
3697
+ set: (state) => {
3698
+ _set(state);
3699
+ return get();
3700
+ },
3701
+ addFacetPathsForIndexField: (facetPaths) => functions.set((state) => ({
3693
3702
  facetPathsForIndexFields: {
3694
3703
  ...state.facetPathsForIndexFields,
3695
- [data.fieldName]: data,
3704
+ [facetPaths.fieldName]: facetPaths,
3696
3705
  },
3697
3706
  })),
3698
- addRangeValueForIndexField: (data) => set((state) => ({
3707
+ addRangeValueForIndexField: (rangeValue) => functions.set((state) => ({
3699
3708
  rangeValueForIndexFields: {
3700
3709
  ...state.rangeValueForIndexFields,
3701
- [data.fieldName]: data,
3710
+ [rangeValue.fieldName]: rangeValue,
3702
3711
  },
3703
3712
  })),
3704
- getSearchcraftInstance: () => {
3713
+ getSearchcraftCore: () => {
3705
3714
  const { core } = get();
3706
3715
  return core;
3707
3716
  },
3708
- initialize: (searchcraftInstance, debug = false) => {
3709
- const core = searchcraftInstance;
3717
+ init: (core, debug = false) => {
3710
3718
  const logger = debug
3711
- ? new ve({ logLevel: D.DEBUG })
3719
+ ? new pe({ logLevel: O.DEBUG })
3712
3720
  : undefined;
3713
- set({
3721
+ const state = functions.set({
3714
3722
  core,
3715
3723
  logger,
3716
- searchResultsPerPage: core.config.searchResultsPerPage || 20,
3724
+ searchResultsPerPage: core?.config.searchResultsPerPage || 20,
3725
+ });
3726
+ core?.subscribe('initialized', () => {
3727
+ if (state.afterInit) {
3728
+ state.afterInit(state);
3729
+ }
3717
3730
  });
3718
3731
  },
3719
- removeFacetPathsForIndexField: (fieldName) => set((state) => {
3732
+ removeFacetPathsForIndexField: (fieldName) => functions.set((state) => {
3720
3733
  const currentPaths = state.facetPathsForIndexFields;
3721
3734
  delete currentPaths[fieldName];
3722
3735
  return {
@@ -3725,7 +3738,7 @@ const searchcraftStore = zustand.createStore((set, get) => {
3725
3738
  },
3726
3739
  };
3727
3740
  }),
3728
- removeRangeValueForIndexField: (fieldName) => set((state) => {
3741
+ removeRangeValueForIndexField: (fieldName) => functions.set((state) => {
3729
3742
  const currentValues = state.rangeValueForIndexFields;
3730
3743
  delete currentValues[fieldName];
3731
3744
  return {
@@ -3735,19 +3748,19 @@ const searchcraftStore = zustand.createStore((set, get) => {
3735
3748
  };
3736
3749
  }),
3737
3750
  resetFacetPaths: () => {
3738
- set({
3751
+ functions.set({
3739
3752
  facetPathsForIndexFields: {},
3740
3753
  });
3741
3754
  },
3742
3755
  search: async () => {
3743
3756
  const state = get();
3744
- state.logger?.log(D.INFO, `Starting search with search term: "${state.searchTerm}"`);
3757
+ state.logger?.log(O.INFO, `Starting search with search term: "${state.searchTerm}"`);
3745
3758
  if (!state.core) {
3746
3759
  throw new Error('Searchcraft instance is not initialized.');
3747
3760
  }
3748
3761
  if (!state.searchTerm.trim()) {
3749
- state.logger?.log(D.INFO, 'No search request was made: search term was empty.');
3750
- set({
3762
+ state.logger?.log(O.INFO, 'No search request was made: search term was empty.');
3763
+ functions.set({
3751
3764
  searchClientResponseItems: [],
3752
3765
  searchResultsCount: 0,
3753
3766
  searchResultsPage: 1,
@@ -3755,50 +3768,67 @@ const searchcraftStore = zustand.createStore((set, get) => {
3755
3768
  });
3756
3769
  return;
3757
3770
  }
3758
- set({ isSearchInProgress: true });
3759
- const handleSearchcraftResponse = (response, items) => {
3760
- const facetsFromResponse = response.data.facets;
3761
- set((state) => {
3762
- return {
3763
- isSearchInProgress: false,
3764
- searchClientResponseItems: items,
3765
- searchResponseTimeTaken: response.data.time_taken || 0,
3766
- searchResultsPage:
3767
- // reset to first page when response count changes
3768
- response.data.count === state.searchResultsCount
3769
- ? state.searchResultsPage
3770
- : 1,
3771
- searchResultsCount: response.data.count || 0,
3772
- };
3773
- });
3774
- if (facetsFromResponse) {
3775
- set({ searchResponseFacetPrime: facetsFromResponse });
3776
- }
3777
- state.logger?.log(D.DEBUG, `Search results: ${JSON.stringify(items)}`);
3778
- state.logger?.log(D.DEBUG, `Facets from response: ${JSON.stringify(facetsFromResponse)}`);
3779
- };
3780
- const handleAdResponse = (adClientResponseItems) => {
3781
- set({ adClientResponseItems });
3782
- };
3783
- state.core.getItems({
3771
+ functions.set({ isSearchInProgress: true });
3772
+ state.core.getResponseItems({
3784
3773
  searchTerm: state.searchTerm,
3785
3774
  mode: state.searchMode,
3786
3775
  sort: state.sortType,
3776
+ order_by: state.orderByField,
3787
3777
  facetPathsForIndexFields: state.facetPathsForIndexFields,
3788
3778
  rangeValueForIndexFields: state.rangeValueForIndexFields,
3789
3779
  offset: state.searchResultsPerPage
3790
3780
  ? state.searchResultsPerPage * (state.searchResultsPage - 1)
3791
3781
  : 0,
3792
3782
  limit: state.searchResultsPerPage,
3793
- }, handleSearchcraftResponse, handleAdResponse);
3783
+ }, functions.setSearchClientResponseItemsFromResponse, functions.setAdClientResponseItems);
3794
3784
  },
3795
- setPopoverVisibility: (isVisible) => {
3796
- set({
3797
- isPopoverVisible: isVisible,
3785
+ setAdClientResponseItems: (items) => functions.set({ adClientResponseItems: items }),
3786
+ setSearchClientResponseItemsFromResponse: (response, items) => {
3787
+ const { facets, count = 0, time_taken = 0 } = response.data;
3788
+ const state = functions.set((state) => {
3789
+ return {
3790
+ isSearchInProgress: false,
3791
+ searchClientResponseItems: items,
3792
+ searchResponseTimeTaken: time_taken,
3793
+ searchResultsPage:
3794
+ // Reset to first page when response count changes
3795
+ count === state.searchResultsCount ? state.searchResultsPage : 1,
3796
+ searchResultsCount: count,
3797
+ ...(facets && { searchResponseFacetPrime: facets }),
3798
+ };
3798
3799
  });
3800
+ state.logger?.log(O.DEBUG, `Search results: ${JSON.stringify(items)}`);
3801
+ state.logger?.log(O.DEBUG, `Facets from response: ${JSON.stringify(facets)}`);
3802
+ },
3803
+ setInitialSearchClientResponseItemsFromResponse: (response, items) => {
3804
+ const state = get();
3805
+ const { count = 0, time_taken = 0 } = response.data;
3806
+ functions.set((state) => {
3807
+ return {
3808
+ isSearchInProgress: false,
3809
+ initialSearchClientResponseItems: items,
3810
+ searchResponseTimeTaken: time_taken,
3811
+ searchResultsPage:
3812
+ // Reset to first page when response count changes
3813
+ count === state.searchResultsCount ? state.searchResultsPage : 1,
3814
+ searchResultsCount: count,
3815
+ };
3816
+ });
3817
+ state.logger?.log(O.DEBUG, `Search results: ${JSON.stringify(items)}`);
3818
+ },
3819
+ setInitialQuery: async (query) => {
3820
+ const state = functions.set({ initialQuery: query });
3821
+ state.logger?.log(O.INFO, `Starting search with query: "${state.initialQuery}"`);
3822
+ if (!state.core) {
3823
+ throw new Error('Searchcraft instance is not initialized.');
3824
+ }
3825
+ await state.core.getResponseItems(query, functions.setInitialSearchClientResponseItemsFromResponse, functions.setAdClientResponseItems);
3799
3826
  },
3800
- setSearchMode: (mode) => set({ searchMode: mode }),
3801
- setSortType: (type) => set({ sortType: type }),
3827
+ setPopoverVisibility: (isVisible) => functions.set({
3828
+ isPopoverVisible: isVisible,
3829
+ }),
3830
+ setSearchMode: (mode) => functions.set({ searchMode: mode }),
3831
+ setSortOrder: ({ orderByField, sortType }) => functions.set({ sortType, orderByField }),
3802
3832
  setSearchTerm: (searchTerm) => {
3803
3833
  const { core } = get();
3804
3834
  if (searchTerm.length === 0) {
@@ -3807,27 +3837,29 @@ const searchcraftStore = zustand.createStore((set, get) => {
3807
3837
  /**
3808
3838
  * When a new searchTerm is set, also reset the sort type, search mode, and facet paths.
3809
3839
  */
3810
- set({
3840
+ functions.set({
3811
3841
  searchTerm,
3812
3842
  facetPathsForIndexFields: {},
3813
3843
  ...(searchTerm.trim().length === 0 && {
3814
3844
  searchMode: 'fuzzy',
3815
- sortType: 'asc',
3845
+ sortType: null,
3846
+ orderByField: null,
3816
3847
  }),
3817
3848
  });
3818
3849
  },
3819
- setSearchClientResponseItems: (items) => set({ searchClientResponseItems: items }),
3850
+ setSearchClientResponseItems: (items) => functions.set({ searchClientResponseItems: items }),
3851
+ setSearchResultsCount: (count) => functions.set({ searchResultsCount: count }),
3820
3852
  setSearchResultsPage: async (page) => {
3821
- set({ searchResultsPage: page });
3853
+ functions.set({ searchResultsPage: page });
3822
3854
  await functions.search();
3823
3855
  },
3824
3856
  setSearchResultsPerPage: async (perPage) => {
3825
- set({ searchResultsPerPage: perPage });
3857
+ functions.set({ searchResultsPerPage: perPage });
3826
3858
  await functions.search();
3827
3859
  },
3828
3860
  setHotKeyAndHotKeyModifier: (hotkey, hotkeyModifier) => {
3829
3861
  const { hotkey: initialHotkey, hotkeyModifier: initialHotkeyModifier } = initialSearchcraftStateValues;
3830
- set({
3862
+ functions.set({
3831
3863
  hotkey: hotkey || initialHotkey,
3832
3864
  hotkeyModifier: hotkeyModifier || initialHotkeyModifier,
3833
3865
  });
@@ -3970,7 +4002,6 @@ function mergeFacetRoots(fieldName, currentRoot, incomingRoot) {
3970
4002
 
3971
4003
  /**
3972
4004
  * Given a document and a SearchResultMapping, return a mapped value from the document.
3973
- *
3974
4005
  * Applies formatting based on the values specified in the `SearchResultFieldName` values.
3975
4006
  *
3976
4007
  * @param document
@@ -3985,8 +4016,7 @@ function getDocumentValueFromSearchResultMapping(document, mapping) {
3985
4016
  if (valueFound) {
3986
4017
  switch (fieldNameDetails.dataType) {
3987
4018
  case 'date': {
3988
- // TODO: Use fieldNameDetails.DateFormatOptions to format the date
3989
- valueFound = getFormattedTimeFromNow(valueFound);
4019
+ valueFound = formatRelativeDate(valueFound, fieldNameDetails.dateFormatLocale, fieldNameDetails.dateFormatOptions);
3990
4020
  break;
3991
4021
  }
3992
4022
  case 'number': {
@@ -4001,6 +4031,12 @@ function getDocumentValueFromSearchResultMapping(document, mapping) {
4001
4031
  .join(mapping.delimiter || ' ');
4002
4032
  }
4003
4033
  }
4034
+ /**
4035
+ * Convert different units of time to milliseconds.
4036
+ *
4037
+ * @param unit - The unit of time
4038
+ * @returns {number}
4039
+ */
4004
4040
  function getMillis(unit) {
4005
4041
  const millisInHour = 60 * 60 * 1000;
4006
4042
  const millisInDay = 24 * millisInHour;
@@ -4019,34 +4055,51 @@ function getMillis(unit) {
4019
4055
  return 3600000;
4020
4056
  }
4021
4057
  }
4058
+ /**
4059
+ * Format a number with commas as thousands separators.
4060
+ *
4061
+ * @param number - The number to be formatted.
4062
+ * @returns {string} - The formatted number as a string.
4063
+ */
4022
4064
  function formatNumberWithCommas(number) {
4023
4065
  return number.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',');
4024
4066
  }
4025
4067
  /**
4026
- * Given a timestamp value, returns a formatted time string for the time
4027
- * since now.
4068
+ * Format a date or date string. The string is formatted relative to today's date
4069
+ * (e.g. 2 days ago) until the date range is greater than a month.
4028
4070
  *
4029
- * @param timestamp
4030
- * @returns {string} Formatted string value
4071
+ * @param dateInput - The date to be formatted.
4072
+ * @param locale - The language used for formatting the date.
4073
+ * @param options - The non-default options used for formatting the date.
4074
+ * @returns {string} - The formatted date as a string.
4031
4075
  */
4032
- function getFormattedTimeFromNow(timestamp) {
4076
+ function formatRelativeDate(dateInput, locale = 'en-US', options = {
4077
+ day: 'numeric',
4078
+ month: 'long',
4079
+ year: 'numeric',
4080
+ }) {
4081
+ const date = new Date(dateInput);
4033
4082
  const now = new Date();
4034
- const inputTime = new Date(timestamp);
4035
- const diffInSeconds = Math.floor((now.getTime() - inputTime.getTime()) / 1000);
4036
- const minutes = Math.floor(diffInSeconds / 60);
4037
- const hours = Math.floor(minutes / 60);
4038
- const days = Math.floor(hours / 24);
4039
- const years = Math.floor(days / 365);
4040
- if (minutes < 60) {
4041
- return `${minutes}m ago`;
4042
- }
4043
- if (hours < 24) {
4044
- return `${hours}h ago`;
4045
- }
4046
- if (days < 365) {
4047
- return `${days}d ago`;
4083
+ const diffMillis = now.getTime() - date.getTime();
4084
+ const oneMonthInMillis = 30 * 24 * 60 * 60 * 1000; // Approx. 1 month in ms
4085
+ if (diffMillis < oneMonthInMillis) {
4086
+ const diffSeconds = Math.trunc(diffMillis / 1000);
4087
+ const diffMinutes = Math.trunc(diffSeconds / 60);
4088
+ const diffHours = Math.trunc(diffMinutes / 60);
4089
+ const diffDays = Math.trunc(diffHours / 24);
4090
+ const relativeTimeFormat = new Intl.RelativeTimeFormat(locale, options);
4091
+ if (diffDays >= 1) {
4092
+ return relativeTimeFormat.format(-diffDays, 'day');
4093
+ }
4094
+ if (diffHours >= 1) {
4095
+ return relativeTimeFormat.format(-diffHours, 'hour');
4096
+ }
4097
+ if (diffMinutes >= 1) {
4098
+ return relativeTimeFormat.format(-diffMinutes, 'minute');
4099
+ }
4100
+ return relativeTimeFormat.format(0, 'second');
4048
4101
  }
4049
- return `${years}y ago`;
4102
+ return new Intl.DateTimeFormat(locale, options).format(date);
4050
4103
  }
4051
4104
 
4052
4105
  var purify = {exports: {}};
@@ -5463,8 +5516,7 @@ class SearchcraftFacetList {
5463
5516
  }
5464
5517
  /** Things to do when the state's search term has changed, but before the response received */
5465
5518
  if (state.searchTerm !== this.lastSearchTerm ||
5466
- state.searchMode !== this.lastSearchMode ||
5467
- state.sortType !== this.lastSortType) {
5519
+ state.searchMode !== this.lastSearchMode) {
5468
5520
  this.selectedPaths = {};
5469
5521
  this.hasNewSearchTerm = true;
5470
5522
  }
@@ -5563,12 +5615,7 @@ class SearchcraftFacetList {
5563
5615
  "baseFacetRoot": [32],
5564
5616
  "facetRoot": [32],
5565
5617
  "selectedPaths": [32],
5566
- "lastTimeTaken": [32],
5567
- "hasNewSearchTerm": [32],
5568
- "lastSearchTerm": [32],
5569
- "lastSearchMode": [32],
5570
- "lastSortType": [32],
5571
- "unsubscribe": [32]
5618
+ "lastTimeTaken": [32]
5572
5619
  },
5573
5620
  "$listeners$": undefined,
5574
5621
  "$lazyBundleId$": "-",
@@ -5665,15 +5712,26 @@ class SearchcraftFilterPanel {
5665
5712
  this.searchStore.setSearchMode(isActive ? 'exact' : 'fuzzy');
5666
5713
  this.searchStore.search();
5667
5714
  }
5668
- handleMostRecentToggleUpdated(isActive) {
5669
- this.searchStore.setSortType(isActive ? 'desc' : 'asc');
5715
+ handleMostRecentToggleUpdated(fieldName, isActive) {
5716
+ if (isActive) {
5717
+ this.searchStore.setSortOrder({
5718
+ orderByField: fieldName,
5719
+ sortType: 'desc',
5720
+ });
5721
+ }
5722
+ else {
5723
+ this.searchStore.setSortOrder({
5724
+ orderByField: null,
5725
+ sortType: null,
5726
+ });
5727
+ }
5670
5728
  this.searchStore.search();
5671
5729
  }
5672
5730
  /**
5673
5731
  * Iterate through `items` and render them based on `type`
5674
5732
  */
5675
5733
  render() {
5676
- return (hAsync("div", { key: '22344fe9d0554894bff8c2c6afe12661bf7f20d0', class: 'searchcraft-filter-panel' }, this.items.map((filterItem) => {
5734
+ return (hAsync("div", { key: '7f15e8f1a2e1be763118f9cd4ded34cf7e2902d0', class: 'searchcraft-filter-panel' }, this.items.map((filterItem) => {
5677
5735
  switch (filterItem.type) {
5678
5736
  case 'dateRange': {
5679
5737
  const item = filterItem;
@@ -5708,7 +5766,7 @@ class SearchcraftFilterPanel {
5708
5766
  case 'mostRecentToggle': {
5709
5767
  const item = filterItem;
5710
5768
  return (hAsync("searchcraft-toggle-button", { label: item.label, subLabel: item.options.subLabel, onToggleUpdated: (event) => {
5711
- this.handleMostRecentToggleUpdated(event.detail);
5769
+ this.handleMostRecentToggleUpdated(item.fieldName, event.detail);
5712
5770
  } }));
5713
5771
  }
5714
5772
  }
@@ -5800,20 +5858,31 @@ class SearchcraftInputForm {
5800
5858
  searchTerm = '';
5801
5859
  error = false;
5802
5860
  core;
5803
- searchStore = searchcraftStore.getState();
5861
+ searchcraftStore = searchcraftStore.getState();
5862
+ unsubscribe = () => { };
5804
5863
  init() {
5805
5864
  if (this.core) {
5806
- this.searchStore.initialize(this.core);
5865
+ this.searchcraftStore.init(this.core);
5807
5866
  this.inputInit?.emit();
5808
5867
  }
5809
5868
  }
5810
- connectedCallback() {
5869
+ onCoreChange() {
5811
5870
  this.init();
5812
5871
  }
5813
- onCoreChange() {
5872
+ connectedCallback() {
5814
5873
  this.init();
5815
5874
  }
5816
- handleOnInput = (event) => {
5875
+ componentDidLoad() {
5876
+ this.unsubscribe = searchcraftStore.subscribe((state) => {
5877
+ this.searchTerm = state.searchTerm;
5878
+ this.inputValue = state.searchTerm;
5879
+ });
5880
+ }
5881
+ disconnectedCallback() {
5882
+ this.handleReset();
5883
+ this.unsubscribe?.();
5884
+ }
5885
+ handleInput = (event) => {
5817
5886
  const input = event.target;
5818
5887
  this.inputValue = input.value;
5819
5888
  if (!this.autoSearch) {
@@ -5821,31 +5890,32 @@ class SearchcraftInputForm {
5821
5890
  }
5822
5891
  this.performSearch(input.value);
5823
5892
  };
5824
- performSearch = async (value) => {
5825
- if (value === searchcraftStore.getState().searchTerm) {
5893
+ performSearch = async (searchTerm) => {
5894
+ if (searchTerm === this.searchTerm) {
5826
5895
  return;
5827
5896
  }
5828
- this.searchTerm = value.trim();
5897
+ this.searchcraftStore.setSearchTerm(searchTerm.trim());
5829
5898
  this.error = false;
5830
- this.searchStore.setSearchTerm(this.searchTerm);
5831
5899
  try {
5832
- await this.searchStore.search();
5900
+ await this.searchcraftStore.search();
5833
5901
  }
5834
5902
  catch (error) {
5835
- console.log(error);
5903
+ console.error(`Search for ${searchTerm} failed:`, error);
5836
5904
  this.error = true;
5837
5905
  }
5838
5906
  };
5839
- handleClearInput = () => {
5840
- this.inputValue = '';
5841
- this.searchTerm = '';
5842
- this.searchStore.setSearchTerm('');
5843
- this.searchStore.setSearchClientResponseItems([]);
5907
+ handleReset = () => {
5908
+ this.searchcraftStore.setSearchResultsCount(0);
5909
+ this.searchcraftStore.setSearchTerm('');
5910
+ this.searchcraftStore.setSearchClientResponseItems([]);
5844
5911
  this.error = false;
5845
5912
  };
5913
+ handleClearInput = () => {
5914
+ this.handleReset();
5915
+ };
5846
5916
  handleFormSubmit = async (event) => {
5847
5917
  event.preventDefault();
5848
- await this.performSearch(this.searchTerm);
5918
+ await this.performSearch(this.inputValue);
5849
5919
  };
5850
5920
  render() {
5851
5921
  const isShowingClearButton = this.inputValue.length > 0;
@@ -5858,9 +5928,9 @@ class SearchcraftInputForm {
5858
5928
  const inputGridStyles = {
5859
5929
  gap: shouldHaveVerticalGap ? '4px 8px' : '0px 8px',
5860
5930
  };
5861
- return (hAsync("form", { key: '488789f41d06780cf1cb3ab55013995fd16985bc', class: 'searchcraft-input-form', onSubmit: this.handleFormSubmit }, hAsync("div", { key: 'abde33425daaa82f068d7bb31fca8f94d55b79e5', class: inputGridClassNames, style: inputGridStyles }, hAsync("div", { key: 'd2ee4a97e3384550160e3d77c73167e725b78910', class: 'searchcraft-input-form-button' }, hAsync("searchcraft-button", { key: '6ca8bffa156a032dbddce0728f682f7e713b00b3', onButtonClick: this.handleFormSubmit, label: this.buttonLabel })), this.inputLabel && (hAsync("div", { key: '760f54d2ca7401fdd3151f0baa65163ba447aad4', class: 'searchcraft-input-form-label' }, hAsync("searchcraft-input-label", { key: '9b1e1fcc8559ba7417edc23cd495c27c44e9d394', label: this.inputLabel }))), this.error && (hAsync("div", { key: 'e2ba421228fe3daa1b60b3bda963be7b8fe5e2dd', class: 'searchcraft-input-form-error-message' }, hAsync("searchcraft-error-message", { key: '07655cb3197b9bd20fe6feb610a58b5679a82c33' }, "Something went wrong."))), hAsync("div", { key: '93c20245f8f1bcb1656e88d7c26644ab41dd5000', class: 'searchcraft-input-form-input-wrapper' }, hAsync("input", { key: '2a3748be8434ac01ebae9907e0a762e868d5d10f', autoComplete: 'off', class: 'searchcraft-input-form-input', onFocus: () => this.inputFocus?.emit(), onBlur: () => this.inputBlur?.emit(), onInput: (event) => {
5862
- this.handleOnInput(event);
5863
- }, placeholder: this.placeholderValue, type: 'text', value: this.inputValue }), hAsync("div", { key: 'c9eb1230b10d3bb91ffe0e43481ac3d1a1362b29', class: 'searchcraft-input-form-input-icon' }, hAsync("svg", { key: '68b3d2c336cc99faacb28e0a98cd93f88f9df13b', class: 'searchcraft-input-form-input-search-icon', viewBox: '0 0 20 20', fill: 'none', xmlns: 'http://www.w3.org/2000/svg', "aria-labelledby": 'searchcraft-title' }, hAsync("title", { key: 'da56c06e543f45c59ef0f5922bd7d61fef448630' }, "Search icon"), hAsync("path", { key: 'ae0bcf6b95f861155cf0023d72a33f6d437b67dd', d: 'M17.5 17.5L13.875 13.875M15.8333 9.16667C15.8333 12.8486 12.8486 15.8333 9.16667 15.8333C5.48477 15.8333 2.5 12.8486 2.5 9.16667C2.5 5.48477 5.48477 2.5 9.16667 2.5C12.8486 2.5 15.8333 5.48477 15.8333 9.16667Z', stroke: 'currentColor', "stroke-width": '1.5', "stroke-linecap": 'round', "stroke-linejoin": 'round' }))), isShowingClearButton && (hAsync("button", { key: '5663606a70f3c4afd44406e6e550dc44573c5421', type: 'button', class: 'searchcraft-input-form-clear-button', onClick: this.handleClearInput }, hAsync("svg", { key: '15f316ed61153f1054e3c5ac6dffca48b702ac81', class: 'searchcraft-input-form-clear-icon', viewBox: '0 0 22 22', fill: 'none', xmlns: 'http://www.w3.org/2000/svg', "aria-labelledby": 'icon-title' }, hAsync("title", { key: '3e93ab9c95db6a7c012a9b25875aa78f33984ce6' }, "Clear icon"), hAsync("path", { key: 'b31b09b4a928e113720a13e9826e1d462c4e65bd', d: 'M14 8L8 14M8 8L14 14M21 11C21 16.5228 16.5228 21 11 21C5.47715 21 1 16.5228 1 11C1 5.47715 5.47715 1 11 1C16.5228 1 21 5.47715 21 11Z', stroke: 'currentColor', "stroke-width": '1.5', "stroke-linecap": 'round', "stroke-linejoin": 'round' }))))))));
5931
+ return (hAsync("form", { key: '6af89b2ab634e0f3e0ef575f98f33d091602f95a', class: 'searchcraft-input-form', onSubmit: this.handleFormSubmit }, hAsync("div", { key: '93fea8e2b80468afeb6014122d5b749d74bfaf35', class: inputGridClassNames, style: inputGridStyles }, hAsync("div", { key: '1e5a416843b99aec68c4672a9c78f607347dc9d1', class: 'searchcraft-input-form-button' }, hAsync("searchcraft-button", { key: 'c38c1df0ce20f914ed76fbc0acad5a22b40e6fff', onButtonClick: this.handleFormSubmit, label: this.buttonLabel })), this.inputLabel && (hAsync("div", { key: '2169a4466b0fdc8075c0dc74da442aef28a84d65', class: 'searchcraft-input-form-label' }, hAsync("searchcraft-input-label", { key: 'a263b5aa2a4d50d297f06c1fe9e6afb64763f097', label: this.inputLabel }))), this.error && (hAsync("div", { key: '49be2ac0f2d01916e5ea533e6406ee9d4d932178', class: 'searchcraft-input-form-error-message' }, hAsync("searchcraft-error-message", { key: '310c9aebcf580d4abe92d288c6b70a5adf083f8e' }, "Something went wrong."))), hAsync("div", { key: 'f4702e368815e049586e97cf59541b2dc5460fc0', class: 'searchcraft-input-form-input-wrapper' }, hAsync("input", { key: 'a8cddd5e937eee1d30fb98eaaa3dbffe96c192ce', autoComplete: 'off', class: 'searchcraft-input-form-input', onFocus: () => this.inputFocus?.emit(), onBlur: () => this.inputBlur?.emit(), onInput: (event) => {
5932
+ this.handleInput(event);
5933
+ }, placeholder: this.placeholderValue, type: 'text', value: this.inputValue }), hAsync("div", { key: '616b4dde1ba016cf6a2fba8594a99a3a3f584ef5', class: 'searchcraft-input-form-input-icon' }, hAsync("svg", { key: 'daaef561677a06a76813375e429be7e053b8b122', class: 'searchcraft-input-form-input-search-icon', viewBox: '0 0 20 20', fill: 'none', xmlns: 'http://www.w3.org/2000/svg', "aria-labelledby": 'searchcraft-title' }, hAsync("title", { key: 'e6d82ca64dd9bfc663813c239d11e5652aa0b9a1' }, "Search icon"), hAsync("path", { key: '1df856c98c2063c1d0c80027255935f73b513939', d: 'M17.5 17.5L13.875 13.875M15.8333 9.16667C15.8333 12.8486 12.8486 15.8333 9.16667 15.8333C5.48477 15.8333 2.5 12.8486 2.5 9.16667C2.5 5.48477 5.48477 2.5 9.16667 2.5C12.8486 2.5 15.8333 5.48477 15.8333 9.16667Z', stroke: 'currentColor', "stroke-width": '1.5', "stroke-linecap": 'round', "stroke-linejoin": 'round' }))), isShowingClearButton && (hAsync("button", { key: '8dd6dfefe0ba909657bd436b559ce35b5004f9ae', type: 'button', class: 'searchcraft-input-form-clear-button', onClick: this.handleClearInput }, hAsync("svg", { key: 'bcdba04d5c0949cacc8e1962d2b3cd40ad995de6', class: 'searchcraft-input-form-clear-icon', viewBox: '0 0 22 22', fill: 'none', xmlns: 'http://www.w3.org/2000/svg', "aria-labelledby": 'icon-title' }, hAsync("title", { key: 'e01e7fb9b23daf9434520c4c68c0d7539b37d1f8' }, "Clear icon"), hAsync("path", { key: 'ce526d332b6e352cd9cf6008ee2f7497c6769782', d: 'M14 8L8 14M8 8L14 14M21 11C21 16.5228 16.5228 21 11 21C5.47715 21 1 16.5228 1 11C1 5.47715 5.47715 1 11 1C16.5228 1 21 5.47715 21 11Z', stroke: 'currentColor', "stroke-width": '1.5', "stroke-linecap": 'round', "stroke-linejoin": 'round' }))))))));
5864
5934
  }
5865
5935
  static get watchers() { return {
5866
5936
  "core": ["onCoreChange"]
@@ -6080,7 +6150,7 @@ class SearchcraftPagination {
6080
6150
  * // index.js
6081
6151
  * const popoverButton = document.querySelector('searchcraft-popover-button');
6082
6152
  *
6083
- * popoverButton.template = (isPopoverVisible, { html }) => html`
6153
+ * popoverButton.template = ({ isPopoverVisible }, { html }) => html`
6084
6154
  * <span>Click me</span>
6085
6155
  * `;
6086
6156
  * ```
@@ -6088,7 +6158,7 @@ class SearchcraftPagination {
6088
6158
  * @react-example
6089
6159
  * ```jsx
6090
6160
  * <SearchcraftPopoverButton
6091
- * template={(isPopoverVisible, { html }) => html`
6161
+ * template={({ isPopoverVisible }, { html }) => html`
6092
6162
  * <span>Click me</span>
6093
6163
  * `}
6094
6164
  * >
@@ -6099,7 +6169,7 @@ class SearchcraftPagination {
6099
6169
  * @vue-example
6100
6170
  * ```jsx
6101
6171
  * <SearchcraftPopoverButton
6102
- * :template={(isPopoverVisible, { html }) => html`
6172
+ * :template={({ isPopoverVisible }, { html }) => html`
6103
6173
  * <span>Click me</span>
6104
6174
  * `}
6105
6175
  * >
@@ -6194,8 +6264,10 @@ class SearchcraftPopoverButton {
6194
6264
  }
6195
6265
  }
6196
6266
  render() {
6197
- return (hAsync("button", { key: 'd24721368deab8e6e9ade770170712f5b8504364', class: `searchcraft-popover-button ${this.type ? ` searchcraft-popover-button-${this.type}` : ''}`, onClick: this.handleOnClick.bind(this), type: 'button' }, typeof this.template !== 'undefined'
6198
- ? this.template(this.isPopoverVisible, { html })
6267
+ return (hAsync("button", { key: '74e36b0593ba2cbb03f5ecff1434bc7056bf0db0', class: `searchcraft-popover-button ${this.type ? ` searchcraft-popover-button-${this.type}` : ''}`, innerHTML: typeof this.template !== 'undefined'
6268
+ ? this.template({ isPopoverVisible: this.isPopoverVisible }, { html })
6269
+ : undefined, onClick: this.handleOnClick.bind(this), type: 'button' }, typeof this.template !== 'undefined'
6270
+ ? undefined
6199
6271
  : this.type
6200
6272
  ? this.renderSlot()
6201
6273
  : 'Open Popover'));
@@ -6490,14 +6562,14 @@ class SearchcraftPopoverForm {
6490
6562
  if (this.isPopoverVisibleInState) {
6491
6563
  return (hAsync("div", { class: classNames('searchcraft-popover-form searchcraft-popover-form-modal', {
6492
6564
  'searchcraft-popover-form-active': this.hasResultsToShow,
6493
- }) }, hAsync("div", { class: 'searchcraft-popover-form-modal-backdrop', onClick: this.handleModalBackdropClick }), hAsync("div", { class: 'searchcraft-popover-form-modal-wrapper' }, hAsync("div", { class: 'searchcraft-popover-form-input searchcraft-popover-form-modal-input' }, hAsync("searchcraft-input-form", { onInputFocus: this.handleInputFocus.bind(this), onInputInit: this.handleInputInit.bind(this) }), hAsync("button", { type: 'button', class: 'searchcraft-popover-form-input-cancel-button searchcraft-popover-form-modal-input-cancel-button', onClick: this.handleCancelButtonClick.bind(this) }, "Cancel")), this.hasResultsToShow && (hAsync("searchcraft-popover-list-view", { popoverResultMappings: this.popoverResultMappings, searchClientResponseItems: this.searchClientResponseItems, adClientResponseItems: this.adClientResponseItems, searchResultsPage: this.searchResultsPage, searchResultsPerPage: this.searchResultsPerPage })), hAsync("searchcraft-popover-footer", null))));
6565
+ }) }, hAsync("div", { class: 'searchcraft-popover-form-modal-backdrop', onClick: this.handleModalBackdropClick }), hAsync("div", { class: 'searchcraft-popover-form-modal-wrapper' }, hAsync("div", { class: 'searchcraft-popover-form-input searchcraft-popover-form-modal-input' }, hAsync("searchcraft-input-form", { onInputFocus: this.handleInputFocus.bind(this), onInputInit: this.handleInputInit.bind(this) }), hAsync("button", { type: 'button', class: 'searchcraft-popover-form-cancel-button searchcraft-popover-form-modal-cancel-button', onClick: this.handleCancelButtonClick.bind(this) }, "Cancel")), hAsync("div", { class: 'searchcraft-popover-form-modal-popover-list-view' }, this.hasResultsToShow && (hAsync("searchcraft-popover-list-view", { popoverResultMappings: this.popoverResultMappings, searchClientResponseItems: this.searchClientResponseItems, adClientResponseItems: this.adClientResponseItems, searchResultsPage: this.searchResultsPage, searchResultsPerPage: this.searchResultsPerPage }))), hAsync("searchcraft-popover-footer", null))));
6494
6566
  }
6495
6567
  }
6496
6568
  renderFullscreenPopover() {
6497
6569
  if (this.isPopoverVisibleInState) {
6498
6570
  return (hAsync("div", { class: classNames('searchcraft-popover-form searchcraft-popover-form-fullscreen', {
6499
6571
  'searchcraft-popover-form-active': this.hasResultsToShow,
6500
- }) }, hAsync("div", { class: 'searchcraft-popover-form-input searchcraft-popover-form-fullscreen-input' }, hAsync("searchcraft-input-form", { onInputFocus: this.handleInputFocus.bind(this), onInputInit: this.handleInputInit.bind(this) }), hAsync("button", { type: 'button', class: 'searchcraft-popover-form-input-cancel-button searchcraft-popover-form-fullscreen-input-cancel-button', onClick: this.handleCancelButtonClick.bind(this) }, "Cancel")), this.hasResultsToShow && (hAsync("searchcraft-popover-list-view", { popoverResultMappings: this.popoverResultMappings, searchClientResponseItems: this.searchClientResponseItems, adClientResponseItems: this.adClientResponseItems, searchResultsPage: this.searchResultsPage, searchResultsPerPage: this.searchResultsPerPage })), hAsync("searchcraft-popover-footer", null)));
6572
+ }) }, hAsync("div", { class: 'searchcraft-popover-form-input searchcraft-popover-form-fullscreen-input' }, hAsync("searchcraft-input-form", { onInputFocus: this.handleInputFocus.bind(this), onInputInit: this.handleInputInit.bind(this) }), hAsync("button", { type: 'button', class: 'searchcraft-popover-form-cancel-button searchcraft-popover-form-fullscreen-cancel-button', onClick: this.handleCancelButtonClick.bind(this) }, "Cancel")), hAsync("div", { class: 'searchcraft-popover-form-fullscreen-popover-list-view' }, this.hasResultsToShow && (hAsync("searchcraft-popover-list-view", { popoverResultMappings: this.popoverResultMappings, searchClientResponseItems: this.searchClientResponseItems, adClientResponseItems: this.adClientResponseItems, searchResultsPage: this.searchResultsPage, searchResultsPerPage: this.searchResultsPerPage }))), hAsync("searchcraft-popover-footer", null)));
6501
6573
  }
6502
6574
  }
6503
6575
  render() {
@@ -6570,12 +6642,12 @@ class SearchcraftPopoverListItem {
6570
6642
  disconnectedCallback() { }
6571
6643
  handleLinkClick = () => {
6572
6644
  const state = searchcraftStore.getState();
6573
- const searchcraft = state.getSearchcraftInstance();
6574
- if (searchcraft) {
6645
+ const core = state.getSearchcraftCore();
6646
+ if (core) {
6575
6647
  const document_position = this.documentPosition;
6576
6648
  const search_term = state.searchTerm;
6577
6649
  const number_of_documents = state.searchClientResponseItems.length || 0;
6578
- searchcraft.measureClient?.sendMeasureEvent('document_clicked', {
6650
+ core.measureClient?.sendMeasureEvent('document_clicked', {
6579
6651
  document_position,
6580
6652
  number_of_documents,
6581
6653
  search_term,
@@ -6583,7 +6655,7 @@ class SearchcraftPopoverListItem {
6583
6655
  }
6584
6656
  };
6585
6657
  render() {
6586
- return (hAsync("div", { key: '2ad974b85e385f99724f9ac85d646cc82208e24a', class: 'searchcraft-popover-list-item' }, hAsync("a", { key: '68da0953d5efa18fd003c22df5321be8096bace6', class: 'searchcraft-popover-list-item-link', href: this.href, onClick: this.handleLinkClick.bind(this) }, this.imageSource && (hAsync("div", { key: '49c99c8b9b5c8ca74b7e656e9ff87169ed42d305', class: 'searchcraft-popover-list-item-image-wrapper' }, hAsync("img", { key: '04022544e1d64e2d48b86a9d27e14e83e7ff43df', alt: this.imageAlt, src: this.imageSource, class: 'searchcraft-popover-list-item-image' }))), hAsync("div", { key: 'eca661cccf12e41dea5b0a70637864763a579336', class: 'searchcraft-popover-list-item-content' }, this.title && (hAsync("p", { key: 'c5cc621f946b521fb7c4b1fc7a8eb1d00b5c6d3f', class: 'searchcraft-popover-list-item-content-title' }, this.title)), this.subtitle && (hAsync("p", { key: '595cb3dea62af52dd1df0e7515dd186688d695db', class: 'searchcraft-popover-list-item-content-subtitle' }, this.subtitle))))));
6658
+ return (hAsync("div", { key: '63a2f070ce71cd1330105c03985e32cd1f228b29', class: 'searchcraft-popover-list-item' }, hAsync("a", { key: 'd9bb09248be9be235147acdfeed1a9f29cd123a2', class: 'searchcraft-popover-list-item-link', href: this.href, onClick: this.handleLinkClick.bind(this) }, this.imageSource && (hAsync("div", { key: '6af7c3e754885730d8651a593f13b7b5b704a26d', class: 'searchcraft-popover-list-item-image-wrapper' }, hAsync("img", { key: '74c7e53467efd83ae95439a7065c1de2748113f5', alt: this.imageAlt, src: this.imageSource, class: 'searchcraft-popover-list-item-image' }))), hAsync("div", { key: '25a12e5cf582b248773005f5fb58f7a15304d2d1', class: 'searchcraft-popover-list-item-content' }, this.title && (hAsync("p", { key: '8169f7730feb832178adbc9bdb14a089e955a2ad', class: 'searchcraft-popover-list-item-content-title' }, this.title)), this.subtitle && (hAsync("p", { key: '96812df1bab635e3865bdfdb31f133ca629d800e', class: 'searchcraft-popover-list-item-content-subtitle' }, this.subtitle))))));
6587
6659
  }
6588
6660
  static get cmpMeta() { return {
6589
6661
  "$flags$": 0,
@@ -6677,23 +6749,27 @@ class SearchcraftPopoverListItemAd {
6677
6749
  if (!item.admAd) {
6678
6750
  return;
6679
6751
  }
6680
- return (hAsync("div", { class: 'searchcraft-adm-ad' }, hAsync("a", { class: 'searchcraft-adm-ad-link', href: item.admAd.click_url }, item.admAd.image_url && (hAsync("div", { class: 'searchcraft-adm-ad-image-wrapper' }, hAsync("img", { alt: item.admAd.term || 'image', src: item.admAd.image_url, class: 'searchcraft-adm-ad-image' }))), hAsync("div", { class: 'searchcraft-adm-ad-content' }, hAsync("p", { class: 'searchcraft-adm-ad-content-title' }, item.admAd.term), item.admAd.price && (hAsync("p", { class: 'searchcraft-adm-ad-content-subtitle' }, item.admAd.price))))));
6752
+ let templateHtml = '<p>Ad Marketplace Ad Placeholder</p>';
6753
+ if (this.core?.config?.admAdTemplate) {
6754
+ templateHtml = this.core?.config?.admAdTemplate(item.admAd, { html });
6755
+ }
6756
+ return (hAsync("div", { class: 'searchcraft-ad searchcraft-adm-ad', "data-searchcraft-ad-container-id": this.adContainerId, id: `searchcraft-adm-ad-${this.adContainerId}`, innerHTML: templateHtml }));
6681
6757
  }
6682
6758
  renderCustomAd() {
6683
6759
  const templateRenderFunction = this.core?.config?.customAdTemplate;
6684
6760
  const containerId = `searchcraft-custom-ad-${this.adContainerId}`;
6685
- let containerInnerHTML = '<p>Custom Ad Placeholder</p>';
6761
+ let templateHtml = '<p>Custom Ad Placeholder</p>';
6686
6762
  if (templateRenderFunction) {
6687
- containerInnerHTML = templateRenderFunction({
6763
+ templateHtml = templateRenderFunction({
6688
6764
  searchTerm: this.searchTerm || '',
6689
6765
  adContainerId: this.adContainerId,
6690
6766
  }, { html });
6691
6767
  }
6692
- return (hAsync("div", { class: 'searchcraft-custom-ad', id: containerId, "data-searchcraft-ad-container-id": this.adContainerId, innerHTML: containerInnerHTML }));
6768
+ return (hAsync("div", { class: 'searchcraft-ad searchcraft-custom-ad', id: containerId, "data-searchcraft-ad-container-id": this.adContainerId, innerHTML: templateHtml }));
6693
6769
  }
6694
6770
  renderNativoAd() {
6695
6771
  const nativoClassName = this.core?.config.nativoAdClassName || 'ntv-item';
6696
- return hAsync("div", { class: nativoClassName });
6772
+ return (hAsync("div", { id: `searchcraft-native-ad-${this.adContainerId}`, class: classNames('searchcraft-ad', nativoClassName), "data-searchcraft-ad-container-id": this.adContainerId }));
6697
6773
  }
6698
6774
  render() {
6699
6775
  // Don't render ads while search is in progress
@@ -7014,16 +7090,17 @@ class SearchcraftSearchResult {
7014
7090
  try {
7015
7091
  this.templateHtml = this.template?.(this.item.document, this.index, {
7016
7092
  html,
7093
+ source_index: this.item.source_index,
7017
7094
  });
7018
7095
  }
7019
7096
  catch (error) {
7020
- console.error(`Invalid search result template: ${error}`);
7097
+ console.error('Invalid search result template:', error);
7021
7098
  }
7022
7099
  }
7023
7100
  }
7024
7101
  handleResultContainerClick = (event) => {
7025
7102
  const state = searchcraftStore.getState();
7026
- const searchcraft = state.getSearchcraftInstance();
7103
+ const core = state.getSearchcraftCore();
7027
7104
  if (!event.target) {
7028
7105
  return;
7029
7106
  }
@@ -7031,14 +7108,14 @@ class SearchcraftSearchResult {
7031
7108
  const link = target.closest('a');
7032
7109
  if (!link ||
7033
7110
  !this.hostElement?.contains(link) ||
7034
- !searchcraft ||
7035
- !searchcraft.measureClient) {
7111
+ !core ||
7112
+ !core.measureClient) {
7036
7113
  return;
7037
7114
  }
7038
7115
  const document_position = this.documentPosition;
7039
7116
  const search_term = state.searchTerm;
7040
7117
  const number_of_documents = state.searchClientResponseItems.length || 0;
7041
- searchcraft.measureClient.sendMeasureEvent('document_clicked', {
7118
+ core.measureClient.sendMeasureEvent('document_clicked', {
7042
7119
  document_position,
7043
7120
  number_of_documents,
7044
7121
  search_term,
@@ -7128,37 +7205,50 @@ class SearchcraftSearchResults {
7128
7205
  constructor(hostRef) {
7129
7206
  registerInstance(this, hostRef);
7130
7207
  }
7208
+ /**
7209
+ * A query that will appears when the component initializes or the search term is ''..
7210
+ */
7211
+ initialQuery;
7131
7212
  /**
7132
7213
  * A callback function responsible for rendering a result. Passed to `searchcraft-search-result`.
7133
7214
  */
7134
7215
  template;
7135
- searchTerm = '';
7136
- searchClientResponseItems;
7137
7216
  adClientResponseItems = [];
7138
- searchResultsPerPage;
7139
- searchResultsPage;
7140
- isSearchInProgress = true;
7141
7217
  config;
7218
+ initialSearchClientResponseItems;
7219
+ isSearchInProgress = true;
7220
+ searchClientResponseItems;
7221
+ searchResultsPage;
7222
+ searchResultsPerPage;
7223
+ searchTerm = '';
7142
7224
  unsubscribe = () => { };
7143
7225
  componentDidLoad() {
7226
+ const state = searchcraftStore.getState();
7227
+ this.handleStateChange(state);
7228
+ this.searchClientResponseItems = state.searchClientResponseItems;
7229
+ this.searchTerm = state.searchTerm;
7230
+ this.config = state.core?.config;
7231
+ state.afterInit = (state) => {
7232
+ if (this.initialQuery) {
7233
+ state.setInitialQuery(this.initialQuery);
7234
+ }
7235
+ };
7144
7236
  this.unsubscribe = searchcraftStore.subscribe((state) => this.handleStateChange(state));
7145
- const currentState = searchcraftStore.getState();
7146
- this.handleStateChange(currentState);
7147
- this.searchClientResponseItems = currentState.searchClientResponseItems;
7148
- this.searchTerm = currentState.searchTerm;
7149
- this.config = currentState.core?.config;
7150
7237
  }
7151
7238
  disconnectedCallback() {
7152
7239
  this.unsubscribe?.();
7153
7240
  }
7154
7241
  handleStateChange(state) {
7155
- this.searchClientResponseItems = [...state.searchClientResponseItems];
7156
7242
  this.adClientResponseItems = [...state.adClientResponseItems];
7157
- this.searchTerm = state.searchTerm;
7158
- this.searchResultsPage = state.searchResultsPage;
7159
- this.searchResultsPerPage = state.searchResultsPerPage;
7160
7243
  this.config = state.core?.config;
7244
+ this.initialSearchClientResponseItems = [
7245
+ ...state.initialSearchClientResponseItems,
7246
+ ];
7161
7247
  this.isSearchInProgress = state.isSearchInProgress;
7248
+ this.searchClientResponseItems = [...state.searchClientResponseItems];
7249
+ this.searchResultsPage = state.searchResultsPage;
7250
+ this.searchResultsPerPage = state.searchResultsPerPage;
7251
+ this.searchTerm = state.searchTerm;
7162
7252
  }
7163
7253
  renderEmptyState() {
7164
7254
  return (hAsync("div", { class: 'searchcraft-search-results-empty-state' }, hAsync("slot", { name: 'empty-search' })));
@@ -7167,7 +7257,12 @@ class SearchcraftSearchResults {
7167
7257
  return (hAsync("div", { class: 'searchcraft-search-results' }, hAsync("div", { class: 'searchcraft-search-results-error-message' }, hAsync("searchcraft-error-message", null, "No search results found for \"", this.searchTerm, "\" query."))));
7168
7258
  }
7169
7259
  renderWithADMAds() {
7170
- return (hAsync("div", { class: 'searchcraft-search-results' }, this.adClientResponseItems?.map((item) => (hAsync("searchcraft-ad", { adSource: 'adMarketplace', adClientResponseItem: item, adContainerId: nanoid(), key: item.id }))), this.searchClientResponseItems?.map((item, index) => (hAsync("searchcraft-search-result", { key: item.id, "document-position": this.searchResultsPerPage * (this.searchResultsPage - 1) + index, index: index, item: item, template: this.template })))));
7260
+ const items = this.searchClientResponseItems?.length
7261
+ ? this.searchClientResponseItems
7262
+ : this.initialSearchClientResponseItems?.length
7263
+ ? this.initialSearchClientResponseItems
7264
+ : [];
7265
+ return (hAsync("div", { class: 'searchcraft-search-results' }, this.adClientResponseItems?.map((item) => (hAsync("searchcraft-ad", { adSource: 'adMarketplace', adClientResponseItem: item, adContainerId: nanoid(), key: item.id }))), items.map((item, index) => (hAsync("searchcraft-search-result", { key: item.id, "document-position": this.searchResultsPerPage * (this.searchResultsPage - 1) + index, index: index, item: item, template: this.template })))));
7171
7266
  }
7172
7267
  renderWithCustomAds() {
7173
7268
  const itemsToRender = [];
@@ -7175,16 +7270,20 @@ class SearchcraftSearchResults {
7175
7270
  const interstitialQuantity = this.config?.customAdInterstitialQuantity || 1;
7176
7271
  const adStartQuantity = this.config?.customAdStartQuantity || 0;
7177
7272
  const adEndQuantity = this.config?.customAdEndQuantity || 0;
7178
- const searchItems = this.searchClientResponseItems || [];
7273
+ const items = this.searchClientResponseItems?.length
7274
+ ? this.searchClientResponseItems
7275
+ : this.initialSearchClientResponseItems?.length
7276
+ ? this.initialSearchClientResponseItems
7277
+ : [];
7179
7278
  // Renders ads at beginning
7180
7279
  for (let n = 0; n < adStartQuantity; n++) {
7181
7280
  itemsToRender.push(hAsync("searchcraft-ad", { adSource: 'Custom', adContainerId: nanoid(), key: `${n}-ad` }));
7182
7281
  }
7183
7282
  // Renders search results + interstitial ads
7184
- searchItems.forEach((item, index) => {
7283
+ items.forEach((item, index) => {
7185
7284
  if (interstitialInterval &&
7186
7285
  index % interstitialInterval === 0 &&
7187
- index + interstitialInterval < searchItems.length &&
7286
+ index + interstitialInterval < items.length &&
7188
7287
  index >= interstitialInterval) {
7189
7288
  for (let n = 0; n < interstitialQuantity; n++) {
7190
7289
  itemsToRender.push(hAsync("searchcraft-ad", { adSource: 'Custom', adContainerId: nanoid(), key: `${item.id}-ad-${n}` }));
@@ -7205,16 +7304,20 @@ class SearchcraftSearchResults {
7205
7304
  const interstitialQuantity = this.config?.nativoAdInterstitialQuantity || 1;
7206
7305
  const adStartQuantity = this.config?.nativoAdStartQuantity || 0;
7207
7306
  const adEndQuantity = this.config?.nativoAdEndQuantity || 0;
7208
- const searchItems = this.searchClientResponseItems || [];
7307
+ const items = this.searchClientResponseItems?.length
7308
+ ? this.searchClientResponseItems
7309
+ : this.initialSearchClientResponseItems?.length
7310
+ ? this.initialSearchClientResponseItems
7311
+ : [];
7209
7312
  // Renders ads at beginning
7210
7313
  for (let n = 0; n < adStartQuantity; n++) {
7211
7314
  itemsToRender.push(hAsync("searchcraft-ad", { adSource: 'Nativo', adContainerId: nanoid(), key: `${n}-ad` }));
7212
7315
  }
7213
7316
  // Renders search results + interstitial ads
7214
- searchItems.forEach((item, index) => {
7317
+ items.forEach((item, index) => {
7215
7318
  if (interstitialInterval &&
7216
7319
  (index + interstitialStartIndex) % interstitialInterval === 0 &&
7217
- index + interstitialInterval < searchItems.length &&
7320
+ index + interstitialInterval < items.length &&
7218
7321
  index >= interstitialInterval) {
7219
7322
  for (let n = 0; n < interstitialQuantity; n++) {
7220
7323
  itemsToRender.push(hAsync("searchcraft-ad", { adSource: 'Nativo', adContainerId: nanoid(), key: `${item.id}-ad-${n}` }));
@@ -7229,14 +7332,23 @@ class SearchcraftSearchResults {
7229
7332
  return hAsync("div", { class: 'searchcraft-search-results' }, itemsToRender);
7230
7333
  }
7231
7334
  renderWithNoAds() {
7232
- return (hAsync("div", { class: 'searchcraft-search-results' }, this.searchClientResponseItems?.map((item, index) => (hAsync("searchcraft-search-result", { key: item.id, "document-position": this.searchResultsPerPage * (this.searchResultsPage - 1) + index, index: index, item: item, template: this.template })))));
7335
+ const items = this.searchClientResponseItems?.length
7336
+ ? this.searchClientResponseItems
7337
+ : this.initialSearchClientResponseItems?.length
7338
+ ? this.initialSearchClientResponseItems
7339
+ : [];
7340
+ return (hAsync("div", { class: 'searchcraft-search-results' }, items.map((item, index) => (hAsync("searchcraft-search-result", { key: item.id, "document-position": this.searchResultsPerPage * (this.searchResultsPage - 1) + index, index: index, item: item, template: this.template })))));
7233
7341
  }
7234
7342
  render() {
7235
- if (this.searchTerm.trim() === '') {
7343
+ const searchClientResponseItems = this.searchClientResponseItems || [];
7344
+ const initialSearchClientResponseItems = this.initialSearchClientResponseItems || [];
7345
+ if (this.searchTerm === '' &&
7346
+ initialSearchClientResponseItems.length === 0 &&
7347
+ !this.isSearchInProgress) {
7236
7348
  return this.renderEmptyState();
7237
7349
  }
7238
7350
  if (this.searchTerm.length > 0 &&
7239
- (this.searchClientResponseItems || []).length === 0 &&
7351
+ searchClientResponseItems.length === 0 &&
7240
7352
  !this.isSearchInProgress) {
7241
7353
  return this.renderNoResultsFoundState();
7242
7354
  }
@@ -7255,14 +7367,16 @@ class SearchcraftSearchResults {
7255
7367
  "$flags$": 4,
7256
7368
  "$tagName$": "searchcraft-search-results",
7257
7369
  "$members$": {
7370
+ "initialQuery": [1, "initial-query"],
7258
7371
  "template": [16],
7259
- "searchTerm": [32],
7260
- "searchClientResponseItems": [32],
7261
7372
  "adClientResponseItems": [32],
7262
- "searchResultsPerPage": [32],
7263
- "searchResultsPage": [32],
7373
+ "config": [32],
7374
+ "initialSearchClientResponseItems": [32],
7264
7375
  "isSearchInProgress": [32],
7265
- "config": [32]
7376
+ "searchClientResponseItems": [32],
7377
+ "searchResultsPage": [32],
7378
+ "searchResultsPerPage": [32],
7379
+ "searchTerm": [32]
7266
7380
  },
7267
7381
  "$listeners$": undefined,
7268
7382
  "$lazyBundleId$": "-",
@@ -7566,7 +7680,7 @@ class SearchcraftSlider {
7566
7680
  }; }
7567
7681
  }
7568
7682
 
7569
- var styles = `[class*=searchcraft-],[class*=searchcraft-] *,[class*=searchcraft-]::before,[class*=searchcraft-]::after,[class*=searchcraft-] *,::before,[class*=searchcraft-] *,::after{box-sizing:border-box;padding:0;margin:0}:root{--sc-text-base-size: 1em;--sc-text-scale-ratio: 1.1;--sc-font-family: sans-serif;--sc-font-bold: 700;--sc-font-normal: 400;--sc-heading-1-font-size: calc( var(--sc-text-base-size) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) );--sc-heading-2-font-size: calc( var(--sc-text-base-size) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) );--sc-heading-3-font-size: calc( var(--sc-text-base-size) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) );--sc-heading-4-font-size: calc( var(--sc-text-base-size) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) );--sc-heading-5-font-size: calc( var(--sc-text-base-size) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) );--sc-heading-6-font-size: calc( var(--sc-text-base-size) / ( var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) ) );--sc-body-font-size: calc(var(--sc-text-base-size));--sc-body-small-font-size: calc( var(--sc-text-base-size) / ( var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) ) )}:root{--sc-border-radius: 8px;--sc-border-radius-sm: calc(var(--sc-border-radius) / 2);--sc-border-radius-lg: calc(var(--sc-border-radius) * 2);--sc-border-radius-xl: calc(var(--sc-border-radius) * 3);--sc-border-radius-2xl: calc(var(--sc-border-radius) * 4);--sc-border-radius-full: 9999px}:root{--sc-breakpoint-sm: 576px;--sc-breakpoint-md: 768px;--sc-breakpoint-lg: 992px}:root{--sc-surface-neutral-primary: var(--sc-color-background, #ffffff);--sc-color-background-hover-computed: hsl( from var(--sc-color-background) h s clamp(10, calc(l + 5), 95) );--sc-surface-neutral-primary-hover: var( --sc-color-background-hover, var(--sc-color-background-hover-computed, #fafafa) );--sc-color-background-active-computed: hsl( from var(--sc-color-background) h s clamp(5, calc(l - 5), 90) );--sc-surface-neutral-primary-active: var( --sc-color-background-active, var(--sc-color-background-active-computed, #f7f7f7) );--sc-surface-neutral-secondary: var( --sc-color-background-secondary, var(--sc-color-background, #f3f3f3) );--sc-color-background-secondary-hover-computed: hsl( from var(--sc-color-background-secondary) h s clamp(10, calc(l + 5), 95) );--sc-surface-neutral-secondary-hover: var( --sc-color-background-hover, var(--sc-color-background-hover-computed, #e6e6e6) );--sc-color-background-secondary-active-computed: hsl( from var(--sc-color-background-secondary) h s clamp(5, calc(l - 5), 90) );--sc-surface-neutral-secondary-active: var( --sc-color-background-secondary-active, var(--sc-color-background-active-computed, #e0e0e0) );--sc-surface-neutral-light: #ffffff;--sc-content-neutral-primary: var(--sc-color-foreground, #292929);--sc-color-foreground-secondary-computed: hsl( from var(--sc-color-foreground) h s clamp(10, calc(l + 5), 90) );--sc-content-neutral-secondary: var( --sc-color-foreground-secondary, var(--sc-color-foreground-secondary-computed, #404040) );--sc-border-neutral: var(--sc-color-border, rgba(0, 0, 0, 0.1));--sc-surface-brand-primary: var(--sc-color-brand, #000000);--sc-color-brand-hover-computed: hsl( from var(--sc-color-brand) h s clamp(20, calc(l + 5), 95) );--sc-surface-brand-primary-hover: var( --sc-color-brand-hover, var(--sc-color-brand-hover-computed, #2e2e2e) );--sc-color-brand-active-computed: hsl( from var(--sc-color-brand) h s clamp(10, calc(l - 5), 85) );--sc-surface-brand-primary-active: var( --sc-color-brand-active, var(--sc-color-brand-active-computed, #292929) );--sc-surface-brand-secondary: var( --sc-color-brand-secondary, var(--sc-color-brand, #e6e6e6) );--sc-color-brand-secondary-hover-computed: hsl( from var(--sc-color-brand-secondary) h s clamp(10, calc(l + 5), 95) );--sc-surface-brand-secondary-hover: var( --sc-color-background-hover, var(--sc-color-background-hover-computed, #ebebeb) );--sc-color-brand-secondary-active-computed: hsl( from var(--sc-color-brand-secondary) h s clamp(5, calc(l - 5), 90) );--sc-surface-brand-secondary-active: var( --sc-color-brand-secondary-active, var(--sc-color-brand-active-computed, #e0e0e0) );--sc-content-brand: var( --sc-color-brand-text, var(--sc-surface-brand-primary) );--sc-content-brand-on-primary: #ffffff;--sc-border-brand: var(--sc-surface-brand-primary);--sc-surface-success-primary: var(--sc-color-success, #008000);--sc-color-success-primary-hover-computed: hsl( from var(--sc-color-success) h s 30 );--sc-surface-success-primary-hover: var( --sc-color-success-primary-hover, var(--sc-color-success-primary-hover-computed, #009900) );--sc-color-success-primary-active-computed: hsl( from var(--sc-color-success) h s 20 );--sc-surface-success-primary-active: var( --sc-color-success-primary-active, var(--sc-color-success-primary-active-computed, #006600) );--sc-color-success-secondary-computed: hsl( from var(--sc-color-success) h s 90 );--sc-surface-success-secondary: var( --sc-color-success-secondary, var(--sc-color-success-secondary-computed, #ccffcc) );--sc-color-success-secondary-hover-computed: hsl( from var(--sc-color-success-secondary) h s 95 );--sc-surface-success-secondary-hover: var( --sc-color-success-secondary-hover, var(--sc-color-success-secondary-hover-computed, #e6ffe6) );--sc-color-success-secondary-active-computed: hsl( from var(--sc-color-success-secondary) h s 85 );--sc-surface-success-secondary-active: var( --sc-color-success-secondary-active, var(--sc-color-success-secondary-active-computed, #b2ffb2) );--sc-content-success: var( --sc-color-brand-text, hsl(from var(--sc-surface-success-primary) h s 30) );--sc-content-success-on-primary: #ffffff;--sc-border-success: var(--sc-surface-success-primary);--sc-surface-caution-primary: var(--sc-color-caution, #cc6600);--sc-color-caution-primary-hover-computed: hsl( from var(--sc-color-caution) h s 30 );--sc-surface-caution-primary-hover: var( --sc-color-caution-primary-hover, var(--sc-color-caution-primary-hover-computed, #e57300) );--sc-color-caution-primary-active-computed: hsl( from var(--sc-color-caution) h s 20 );--sc-surface-caution-primary-active: var( --sc-color-caution-primary-active, var(--sc-color-caution-primary-active-computed, #b25a00) );--sc-color-caution-secondary-computed: hsl( from var(--sc-color-caution) h s 90 );--sc-surface-caution-secondary: var( --sc-color-caution-secondary, var(--sc-color-caution-secondary-computed, #ffd9b3) );--sc-color-caution-secondary-hover-computed: hsl( from var(--sc-color-caution-secondary) h s 95 );--sc-surface-caution-secondary-hover: var( --sc-color-caution-secondary-hover, var(--sc-color-caution-secondary-hover-computed, #ffe5cc) );--sc-color-caution-secondary-active-computed: hsl( from var(--sc-color-caution-secondary) h s 85 );--sc-surface-caution-secondary-active: var( --sc-color-caution-secondary-active, var(--sc-color-caution-secondary-active-computed, #ffcc99) );--sc-content-caution: var( --sc-color-caution-text, hsl(from var(--sc-surface-caution-primary) h s 30) );--sc-content-caution-on-primary: #ffffff;--sc-border-caution: var(--sc-surface-caution-primary);--sc-surface-danger-primary: var(--sc-color-danger, #cc0000);--sc-color-danger-primary-hover-computed: hsl( from var(--sc-color-danger) h s 30 );--sc-surface-danger-primary-hover: var( --sc-color-danger-primary-hover, var(--sc-color-danger-primary-hover-computed, #e50000) );--sc-color-danger-primary-active-computed: hsl( from var(--sc-color-danger) h s 20 );--sc-surface-danger-primary-active: var( --sc-color-danger-primary-active, var(--sc-color-danger-primary-active-computed, #b30000) );--sc-color-danger-secondary-computed: hsl(from var(--sc-color-danger) h s 90);--sc-surface-danger-secondary: var( --sc-color-danger-secondary, var(--sc-color-danger-secondary-computed, #ffcccc) );--sc-color-danger-secondary-hover-computed: hsl( from var(--sc-color-danger-secondary) h s 95 );--sc-surface-danger-secondary-hover: var( --sc-color-danger-secondary-hover, var(--sc-color-danger-secondary-hover-computed, #ffe7e7) );--sc-color-danger-secondary-active-computed: hsl( from var(--sc-color-danger-secondary) h s 85 );--sc-surface-danger-secondary-active: var( --sc-color-danger-secondary-active, var(--sc-color-danger-secondary-active-computed, #ffb3b3) );--sc-content-danger: var( --sc-color-caution-text, hsl(from var(--sc-surface-danger-primary) h s 30) );--sc-content-danger-on-primary: #ffffff;--sc-border-danger: var(--sc-surface-danger-primary);--sc-color-disabled: hsl(from var(--sc-color-page-primary) h s calc(l * 0.5));--sc-surface-disabled: var(--sc-color-disabled, #d9d9d9);--sc-color-disabled-text: hsl( from var(--sc-color-text-primary) h s calc(l * 0.5) );--sc-content-disabled: var(--sc-color-disabled-text, #737373);--sc-content-disabled-on-disabled: var(--sc-color-disabled-text, #737373)}@supports(hanging-punctuation: first) and (font: -apple-system-body) and (-webkit-appearance: none){:root{--sc-color-background-hover-computed: hsl( from var(--sc-color-background) h s clamp(10%, calc(l + 5%), 95%) );--sc-color-background-active-computed: hsl( from var(--sc-color-background) h s clamp(5%, calc(l - 5%), 90%) );--sc-color-foreground-secondary-computed: hsl( from var(--sc-color-foreground) h s clamp(10%, calc(l + 5%), 90%) );--sc-color-brand-hover-computed: hsl( from var(--sc-color-brand) h s clamp(20%, calc(l + 5%), 95%) );--sc-color-brand-active-computed: hsl( from var(--sc-color-brand) h s clamp(10%, calc(l - 5%), 85%) );--sc-color-success-primary-hover-computed: hsl( from var(--sc-color-success) h s 30% );--sc-color-success-primary-active-computed: hsl( from var(--sc-color-success) h s 20% );--sc-color-success-secondary-computed: hsl( from var(--sc-color-success) h s 90% );--sc-color-success-secondary-hover-computed: hsl( from var(--sc-color-success-secondary) h s 95% );--sc-color-success-secondary-active-computed: hsl( from var(--sc-color-success-secondary) h s 85% );--sc-content-success: var( --sc-color-brand-text, hsl(from var(--sc-surface-success-primary) h s 30%) );--sc-color-caution-primary-hover-computed: hsl( from var(--sc-color-caution) h s 30% );--sc-color-caution-primary-active-computed: hsl( from var(--sc-color-caution) h s 20% );--sc-color-caution-secondary-computed: hsl( from var(--sc-color-caution) h s 90% );--sc-color-caution-secondary-hover-computed: hsl( from var(--sc-color-caution-secondary) h s 95% );--sc-color-caution-secondary-active-computed: hsl( from var(--sc-color-caution-secondary) h s 85% );--sc-content-caution: var( --sc-color-caution-text, hsl(from var(--sc-surface-caution-primary) h s 30%) );--sc-color-danger-primary-hover-computed: hsl( from var(--sc-color-danger) h s 30% );--sc-color-danger-primary-active-computed: hsl( from var(--sc-color-danger) h s 20% );--sc-color-danger-secondary-computed: hsl( from var(--sc-color-danger) h s 90% );--sc-color-danger-secondary-hover-computed: hsl( from var(--sc-color-danger-secondary) h s 95% );--sc-color-danger-secondary-active-computed: hsl( from var(--sc-color-danger-secondary) h s 85% );--sc-content-danger: var( --sc-color-caution-text, hsl(from var(--sc-surface-danger-primary) h s 30%) )}}.searchcraft-adm-ad{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;border-bottom:1px solid var(--sc-border-neutral);padding:12px 0}searchcraft-ad:last-child .searchcraft-adm-ad{border-bottom:none}.searchcraft-adm-ad-link{align-items:flex-start;background-color:rgb(from blue r g b/5%);color:var(--sc-content-neutral-primary);display:flex;gap:24px;padding:12px;text-decoration:none}.searchcraft-adm-ad-link:focus,.searchcraft-adm-ad-link:active{background-color:var(--sc-surface-neutral-primary-active)}.searchcraft-adm-ad-link:hover{background-color:var(--sc-surface-neutral-primary-hover)}.searchcraft-adm-ad-image-wrapper{align-items:center;aspect-ratio:16/9;display:flex;flex-shrink:0;justify-content:center;width:160px}.searchcraft-adm-ad-image{height:100%;object-fit:var(--sc-popover-list-item-image-fit);width:100%}.searchcraft-adm-ad-content{display:flex;flex-direction:column;flex-grow:1;gap:4px;justify-content:center}.searchcraft-adm-ad-content-title,.searchcraft-adm-ad-content-subtitle{display:-webkit-box;line-clamp:2;margin:0;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical}.searchcraft-adm-ad-content-title{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-heading-5-font-size);font-weight:var(--sc-font-bold)}.searchcraft-adm-ad-content-subtitle{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-font-normal)}.searchcraft-search-result{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-font-normal)}.searchcraft-search-result-no-template{display:flex;flex-direction:column;font-size:.875rem}.searchcraft-search-result-no-template>p{margin:0}.searchcraft-search-results{display:flex;flex-direction:column;justify-content:center;gap:16px}.searchcraft-search-results-empty-state{text-align:center}.searchcraft-search-results-error-message{text-align:center}.searchcraft-button{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-font-normal);background:none;border:2px solid rgba(0,0,0,0);border-radius:var(--sc-border-radius);cursor:pointer;display:flex;gap:4px;padding:12px;position:relative}.searchcraft-button.searchcraft-button-disabled{cursor:not-allowed}.searchcraft-button-primary{background-color:var(--sc-surface-brand-primary);color:var(--sc-content-brand-on-primary);font-weight:var(--sc-font-bold)}.searchcraft-button-primary:hover{background-color:var(--sc-surface-brand-primary-hover)}.searchcraft-button-primary:focus{border-color:var(--sc-border-primary)}.searchcraft-button-primary:active{background-color:var(--sc-surface-brand-primary-active)}.searchcraft-button-primary.searchcraft-button-disabled,.searchcraft-button-primary.searchcraft-button-disabled:hover,.searchcraft-button-primary.searchcraft-button-disabled:focus,.searchcraft-button-primary.searchcraft-button-disabled:active{background-color:var(--sc-surface-disabled);border-color:rgba(0,0,0,0);color:var(--sc-content-disabled)}.searchcraft-button-tertiary{background-color:var(--sc-surface-neutral-primary);color:var(--sc-content-brand);font-weight:var(--sc-font-normal)}.searchcraft-button-tertiary:hover{background-color:var(--sc-surface-brand-secondary-hover)}.searchcraft-button-tertiary:focus{background-color:var(--sc-surface-neutral-light);border-color:var(--sc-border-primary)}.searchcraft-button-tertiary:active{background-color:var(--sc-surface-brand-secondary-active)}.searchcraft-button-tertiary.searchcraft-button-disabled,.searchcraft-button-tertiary.searchcraft-button-disabled:hover,.searchcraft-button-tertiary.searchcraft-button-disabled:focus,.searchcraft-button-tertiary.searchcraft-button-disabled:active{background-color:var(--sc-surface-neutral-light);border-color:rgba(0,0,0,0);color:var(--sc-content-disabled)}.searchcraft-button-icon{fill:none}.searchcraft-error-message{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-font-size);font-weight:var(--sc-font-normal);color:var(--sc-content-danger);margin:0}.searchcraft-facet-list{display:flex;flex-direction:column;gap:6px;width:100%}.searchcraft-facet-list-checkbox-label{align-items:center;color:var(--sc-content-brand);display:flex;font-family:var(--sc-font-family);font-size:14px;font-weight:600;gap:14px;position:relative;-webkit-font-smoothing:antialiased}.searchcraft-facet-list-checkbox-input-wrapper{position:relative}.searchcraft-facet-list-checkbox-input{align-items:center;appearance:none;background-color:var(--sc-surface-neutral-secondary);border:1px solid var(--sc-surface-disabled);border-radius:var(--sc-border-radius-sm);cursor:pointer;display:flex;height:24px;justify-content:center;width:24px;margin:0}.searchcraft-facet-list-checkbox-input:focus{outline:2px solid var(--sc-surface-brand-primary)}.searchcraft-facet-list-checkbox-input:checked{background-color:var(--sc-surface-brand-primary);position:relative}.searchcraft-facet-list-checkbox-input:checked+.searchcraft-facet-list-checkbox-input-check-icon{display:block}.searchcraft-facet-list-checkbox-input:checked+.searchcraft-facet-list-checkbox-input-dash-icon{display:block}.searchcraft-facet-child-list{display:flex;flex-direction:column;gap:6px}.searchcraft-facet-child-list-checkbox-label{margin-left:24px}.searchcraft-facet-child-list-checkbox-label:first-child{margin-top:6px}.searchcraft-facet-list-checkbox-input-check-icon{display:none;height:16px;left:50%;position:absolute;margin-top:2px;top:50%;transform:translate(-50%, -50%);width:16px}.searchcraft-facet-list-checkbox-input-dash-icon{display:none;height:3px;left:50%;position:absolute;top:50%;transform:translate(-50%, -50%);width:14px}.searchcraft-facet-list-message{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-font-size);font-weight:var(--sc-font-normal);color:var(--sc-content-disabled);text-align:center}.searchcraft-filter-panel{display:flex;flex-direction:column;gap:16px}.searchcraft-filter-panel-section{display:flex;flex-direction:column;gap:8px}.searchcraft-filter-panel-label{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-font-size);font-weight:var(--sc-font-normal);font-weight:var(--sc-font-bold)}:root{--sc-input-form-border-radius: var(--sc-border-radius);--sc-input-form-search-icon-size: 20px;--sc-input-form-clear-icon-size: 20px}.searchcraft-input-form-grid{display:grid;gap:4px 8px}.searchcraft-input-form-grid-button-left{grid-template-rows:repeat(3, auto);grid-template-columns:auto 1fr}.searchcraft-input-form-grid-button-left .searchcraft-input-form-button{grid-column:1/span 1;grid-row:2/span 1}.searchcraft-input-form-grid-button-left .searchcraft-input-form-label{grid-column:2/span 1;grid-row:1/span 1}.searchcraft-input-form-grid-button-left .searchcraft-input-form-error-message{grid-column:2/span 1;grid-row:3/span 1}.searchcraft-input-form-grid-button-left .searchcraft-input-form-input-wrapper{grid-column:2/span 1;grid-row:2/span 1}.searchcraft-input-form-grid-button-right{grid-template-rows:repeat(3, auto);grid-template-columns:1fr auto}.searchcraft-input-form-grid-button-right .searchcraft-input-form-button{grid-column:2/span 1;grid-row:2/span 1}.searchcraft-input-form-grid-button-right .searchcraft-input-form-label{grid-column:1/span 1;grid-row:1/span 1}.searchcraft-input-form-grid-button-right .searchcraft-input-form-error-message{grid-column:1/span 1;grid-row:3/span 1}.searchcraft-input-form-grid-button-right .searchcraft-input-form-input-wrapper{grid-column:1/span 1;grid-row:2/span 1}.searchcraft-input-form-grid-button-none{grid-template-rows:repeat(3, auto);grid-template-columns:auto}.searchcraft-input-form-grid-button-none .searchcraft-input-form-button{display:none}.searchcraft-input-form-grid-button-none .searchcraft-input-form-label{grid-column:1/span 1;grid-row:1/span 1}.searchcraft-input-form-grid-button-none .searchcraft-input-form-error-message{grid-column:1/span 1;grid-row:3/span 1}.searchcraft-input-form-grid-button-none .searchcraft-input-form-input-wrapper{grid-column:1/span 1;grid-row:2/span 1}.searchcraft-input-form-input-wrapper{display:flex;position:relative}.searchcraft-input-form-input{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-font-normal);background-color:var(--sc-surface-neutral-secondary);border-radius:var(--sc-input-form-border-radius);border:none;color:var(--sc-content-neutral-primary);flex:1;outline:none;padding:12px 44px}.searchcraft-input-form-input::placeholder{color:var(--sc-content-disabled)}.searchcraft-input-form-input:focus{outline:var(--sc-border-brand) solid 2px;outline-offset:-1px}.searchcraft-input-form-input:focus::placeholder{opacity:0}.searchcraft-input-form-error{color:var(--sc-content-danger);outline:var(--sc-border-danger) solid 2px}.searchcraft-input-form-error:focus{outline:var(--sc-border-danger) solid 2px}.searchcraft-input-form-input-icon{align-items:center;bottom:0;display:flex;justify-content:center;left:0;position:absolute;pointer-events:none;top:0;width:44px}.searchcraft-input-form-input-search-icon{color:var(--sc-content-neutral-secondary);fill:none;height:var(--sc-input-form-search-icon-size);pointer-events:none;width:var(--sc-input-form-search-icon-size)}.searchcraft-input-form-clear-button{all:unset;align-items:center;bottom:0;border:none;cursor:pointer;display:flex;justify-content:center;outline:none;position:absolute;right:0;top:0;width:44px}.searchcraft-input-form-clear-icon{color:var(--sc-content-brand);fill:none;height:var(--sc-input-form-clear-icon-size);width:var(--sc-input-form-clear-icon-size)}.searchcraft-input-label{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-font-size);font-weight:var(--sc-font-normal);color:var(--sc-content-neutral-primary);font-weight:var(--sc-font-bold);margin-top:4px;margin-bottom:4px}:root{--sc-popover-button-border-radius: var(--sc-border-radius)}@media(min-width: 576px){:root{--sc-popover-button-border-radius: var(--sc-border-radius-lg)}}.searchcraft-popover-button{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-font-normal);cursor:pointer}.searchcraft-popover-button-skeuomorphic{appearance:none;background:none;border:none;color:var(--sc-content-neutral-primary);display:block;width:100%}.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-wrapper{border:1px solid var(--sc-border-neutral);border-radius:var(--sc-popover-button-border-radius);box-shadow:0 1px 1px rgb(from var(--sc-content-neutral-secondary) r g b/10%) inset,0 2px 4px rgb(from var(--sc-content-neutral-secondary) r g b/5%) inset;display:flex;gap:24px;height:40px;justify-content:space-between;line-height:1;padding:4px 5px 4px 10px;background:var(--sc-surface-neutral-primary)}@media(min-width: 576px){.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-wrapper{box-shadow:0 1px 1px rgb(from var(--sc-content-neutral-secondary) r g b/10%) inset,0 2px 2px rgb(from var(--sc-content-neutral-secondary) r g b/5%) inset,0 4px 4px rgb(from var(--sc-content-neutral-secondary) r g b/5%) inset;height:63px;padding:8px 10px 8px 16px}}.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-input{align-items:center;display:flex;gap:4px}@media(min-width: 576px){.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-input{gap:8px}}.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-keycaps{color:var(--sc-content-neutral-secondary);display:flex;gap:4px;font-size:20px;font-weight:500}@media(min-width: 576px){.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-keycaps{gap:8px}}.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-keycaps-keycap{border-radius:calc(var(--sc-popover-button-border-radius) - 3px);border-radius:calc(var(var(--sc-popover-button-border-radius)) - 3px);background-color:var(--sc-surface-neutral-primary);box-shadow:0 3px hsl(from var(--sc-surface-neutral-secondary) h s calc(l - 5)),0 1px 2px rgb(from var(--sc-content-neutral-secondary) r g b/10%),0 6px 4px rgb(from var(--sc-content-neutral-secondary) r g b/5%);height:calc(100% - 2px);position:relative}@media(min-width: 576px){.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-keycaps-keycap{border-radius:calc(var(--sc-popover-button-border-radius) - 8px);border-radius:calc(var(var(--sc-popover-button-border-radius)) - 8px);box-shadow:0 4px hsl(from var(--sc-surface-neutral-secondary) h s calc(l - 5)),0 1px 2px rgb(from var(--sc-content-neutral-secondary) r g b/15%),0 6px 1px rgb(from var(--sc-content-neutral-secondary) r g b/20%),0 7px 2px rgb(from var(--sc-content-neutral-secondary) r g b/15%),0 9px 4px rgb(from var(--sc-content-neutral-secondary) r g b/10%),0 13px 8px rgb(from var(--sc-content-neutral-secondary) r g b/5%);height:calc(100% - 5px)}}.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-keycaps-keycap::before,.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-keycaps-keycap::after{content:"";display:block}.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-keycaps-keycap::before{border-radius:calc(var(--sc-popover-button-border-radius) - 4px);border-radius:calc(var(var(--sc-popover-button-border-radius)) - 4px);background:linear-gradient(340deg, rgb(from var(--sc-surface-neutral-secondary) r g b/2%) 0%, var(--sc-surface-neutral-secondary) 100%);inset:2px;position:absolute}@media(min-width: 576px){.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-keycaps-keycap::before{border-radius:calc(var(--sc-popover-button-border-radius) - 12px);border-radius:calc(var(var(--sc-popover-button-border-radius)) - 12px);inset:4px}}.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-keycaps-keycap::after{aspect-ratio:1/1;height:100%}.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-keycaps-keycap>span{display:flex;line-height:1;left:50%;margin-top:2%;position:absolute;top:50%;transform:translate(-50%, -50%)}.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-input-search-icon{height:60%;width:auto}@media(min-width: 576px){.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-input-search-icon{height:50%}}:root{--sc-popover-list-view-height: 600px;--sc-popover-modal-max-width: 800px}.searchcraft-popover-form{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-font-normal);display:flex;flex:1;flex-direction:column}.searchcraft-popover-form searchcraft-input-form,.searchcraft-popover-form searchcraft-popover-footer{width:100%}.searchcraft-popover-form.searchcraft-popover-form-active .searchcraft-popover-form-input{padding-bottom:1px}.searchcraft-popover-form searchcraft-popover-list-view{flex-shrink:1;height:100%;min-height:0;overflow:auto;padding:0 24px}.searchcraft-popover-form-input{display:flex;flex-direction:row;gap:12px}.searchcraft-popover-form-input .searchcraft-input-form-input{background-color:var(--sc-surface-neutral-primary);border:1px solid var(--sc-border-neutral);border-radius:var(--sc-border-radius-lg);box-shadow:0 1px 1px rgb(from var(--sc-content-neutral-primary) r g b/10%) inset,0 2px 2px rgb(from var(--sc-content-neutral-primary) r g b/5%) inset,0 4px 4px rgb(from var(--sc-content-neutral-primary) r g b/5%) inset}.searchcraft-popover-form-input-cancel-button{background:none;border:none;cursor:pointer}.searchcraft-popover-form-modal-input,.searchcraft-popover-form-fullscreen-input{padding:24px}.searchcraft-popover-form-inline{background-color:var(--sc-surface-neutral-primary);border:1px solid rgba(0,0,0,0);border-radius:var(--sc-border-radius-xl);padding:12px;position:relative}.searchcraft-popover-form-inline.searchcraft-popover-form-active{border:1px solid var(--sc-border-neutral);border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0;padding-bottom:1px}.searchcraft-popover-form-inline searchcraft-popover-list-view{padding:0 12px}.searchcraft-popover-form-inline .searchcraft-input-form-input,.searchcraft-popover-form-inline .searchcraft-popover-list-item-link,.searchcraft-popover-form-inline .searchcraft-adm-ad-link{border-radius:calc(--sc-border-radius-xl - 12px);border-radius:calc(var(--sc-border-radius-xl) - 12px)}.searchcraft-popover-form-inline-wrapper{background-color:var(--sc-surface-neutral-primary);border:1px solid var(--sc-border-neutral);border-top:none;border-bottom-left-radius:var(--sc-border-radius-xl);border-bottom-right-radius:var(--sc-border-radius-xl);display:flex;flex-direction:column;left:-1px;max-height:var(--sc-popover-list-view-height);overflow:hidden;position:absolute;right:-1px;top:100%}.searchcraft-popover-form-modal{align-items:center;display:flex;inset:0;position:fixed;z-index:1000}.searchcraft-popover-form-modal searchcraft-popover-list-view{flex-shrink:1;min-height:0;overflow:auto;padding:0 24px}.searchcraft-popover-form-modal .searchcraft-input-form-input,.searchcraft-popover-form-modal .searchcraft-popover-list-item-link,.searchcraft-popover-form-modal .searchcraft-adm-ad-link{border-radius:calc(--sc-border-radius-2xl - 20px);border-radius:calc(var(--sc-border-radius-2xl) - 20px)}.searchcraft-popover-form-modal-backdrop{background-color:rgb(from var(--sc-content-neutral-primary) r g b/50%);display:none;inset:0;position:fixed}@media(min-width: 576px){.searchcraft-popover-form-modal-backdrop{display:block}}.searchcraft-popover-form-modal-wrapper{background-color:var(--sc-surface-neutral-primary);border-radius:var(--sc-border-radius-2xl);box-shadow:1px 2px rgb(from var(--sc-content-neutral-primary) r g b/7%),0 2px 4px rgb(from var(--sc-content-neutral-primary) r g b/7%),0 4px 8px rgb(from var(--sc-content-neutral-primary) r g b/7%),0 8px 16px rgb(from var(--sc-content-neutral-primary) r g b/7%),0 16px 32px rgb(from var(--sc-content-neutral-primary) r g b/7%),0 32px 64px rgb(from var(--sc-content-neutral-primary) r g b/7%);display:flex;flex-direction:column;inset:0;max-width:var(--sc-popover-modal-max-width);overflow:hidden;position:absolute;width:100%;z-index:1001}@media(min-width: 576px){.searchcraft-popover-form-modal-wrapper{inset:0;margin-top:100px;max-height:var(--sc-popover-list-view-height);max-width:var(--sc-popover-modal-max-width);position:relative}}.searchcraft-popover-form-modal-input-cancel-button{border-radius:calc(--sc-border-radius-2xl - 20px);border-radius:calc(var(--sc-border-radius-2xl) - 20px);padding:8px 12px}.searchcraft-popover-form-fullscreen{background-color:var(--sc-surface-neutral-primary);display:flex;flex-direction:column;justify-content:space-between;inset:0;position:fixed;z-index:1000}.searchcraft-popover-form-fullscreen .searchcraft-popover-list-item-link,.searchcraft-popover-form-fullscreen .searchcraft-adm-ad-link{border-radius:var(--sc-border-radius-lg)}.searchcraft-popover-form-fullscreen-input-cancel-button{border-radius:var(--sc-border-radius-lg)}.searchcraft-popover-footer{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;background-color:var(--sc-surface-neutral-secondary);display:flex;gap:8px;justify-content:space-between;line-height:1;padding:20px 32px;box-shadow:0 1px 1px rgb(from var(--sc-content-neutral-primary) r g b/10%) inset,0 2px 2px rgb(from var(--sc-content-neutral-primary) r g b/5%) inset,0 4px 4px rgb(from var(--sc-content-neutral-primary) r g b/5%) inset}.searchcraft-popover-footer-results-info{margin:0}.searchcraft-popover-footer-link{color:var(--sc-content-neutral-primary);display:flex;max-width:160px;width:100%}:root{--sc-popover-list-item-image-fit: contain}.searchcraft-popover-list-item{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;border-bottom:1px solid var(--sc-border-neutral);padding:12px 0}searchcraft-popover-list-item:last-child .searchcraft-popover-list-item{border-bottom:none}.searchcraft-popover-list-item-link{align-items:flex-start;color:var(--sc-content-neutral-primary);display:flex;gap:24px;padding:12px;text-decoration:none}.searchcraft-popover-list-item-link:focus,.searchcraft-popover-list-item-link:active{background-color:var(--sc-surface-neutral-primary-active)}.searchcraft-popover-list-item-link:hover{background-color:var(--sc-surface-neutral-primary-hover)}.searchcraft-popover-list-item-image-wrapper{align-items:center;aspect-ratio:16/9;display:flex;flex-shrink:0;justify-content:center;width:160px}.searchcraft-popover-list-item-image{height:100%;object-fit:var(--sc-popover-list-item-image-fit);width:100%}.searchcraft-popover-list-item-content{display:flex;flex-direction:column;flex-grow:1;gap:4px;justify-content:center}.searchcraft-popover-list-item-content-title,.searchcraft-popover-list-item-content-subtitle{display:-webkit-box;line-clamp:2;margin:0;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical}.searchcraft-popover-list-item-content-title{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-heading-5-font-size);font-weight:var(--sc-font-bold)}.searchcraft-popover-list-item-content-subtitle{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-font-normal)}.searchcraft-popover-list-view{display:flex;flex-direction:column}.searchcraft-results-info{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-font-normal);color:var(--sc-content-primary);margin:0}.searchcraft-slider{align-items:center;display:flex;flex-direction:column;gap:10px;width:100%}.searchcraft-slider-range{align-items:center;background-color:var(--sc-surface-disabled);border-radius:999px;display:flex;position:relative;height:4px;width:100%}.searchcraft-slider-range::-webkit-slider-runnable-track{pointer-events:none}.searchcraft-slider-range .searchcraft-slider-active-range{background-color:var(--sc-surface-brand-primary);border-radius:2px;height:4px;position:absolute;top:50%;transform:translateY(-50%);z-index:0}.searchcraft-slider-range .searchcraft-slider-active-range::-webkit-slider-runnable-track{pointer-events:none}.searchcraft-slider-range .searchcraft-slider-active-range::-moz-range-track{pointer-events:none}.searchcraft-slider-range .searchcraft-slider-input{appearance:none;background:rgba(0,0,0,0);border-radius:2px;height:4px;margin:0;outline:none;pointer-events:none;position:absolute;width:100%;-webkit-appearance:none}.searchcraft-slider-range .searchcraft-slider-input::-webkit-slider-thumb{background-color:var(--sc-surface-neutral-light);border-radius:50%;border:2px solid var(--sc-border-neutral);cursor:pointer;height:20px;pointer-events:all;width:20px;-webkit-appearance:none}.searchcraft-slider-range .searchcraft-slider-input::-moz-range-thumb{background-color:var(--sc-surface-neutral-light);border-radius:50%;border:2px solid var(--sc-border-neutral);cursor:pointer;height:20px;pointer-events:all;width:20px}.searchcraft-slider-label{color:var(--sc-content-primary);display:flex;font-family:"Source Sans Pro",sans-serif;font-size:15px;font-weight:600;justify-content:space-between;margin-top:10px;width:100%}.searchcraft-slider-start-label,.searchcraft-slider-end-label{min-width:30px;text-align:center}.searchcraft-toggle-button{align-items:flex-start;display:flex;gap:10px;justify-content:space-between}.searchcraft-toggle-button-label{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-font-normal);color:var(--sc-content-neutral-primary);margin:0}.searchcraft-toggle-button-sub-label{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-font-size);font-weight:var(--sc-font-normal);color:var(--sc-content-neutral-secondary);margin:0}.searchcraft-toggle-button-background{background:var(--sc-surface-disabled);border-radius:var(--sc-border-radius-full);border:none;cursor:pointer;flex-shrink:0;height:26px;position:relative;transition:background-color .2s;width:44px}.searchcraft-toggle-button-handle{background:var(--sc-surface-neutral-light);border-radius:50%;height:18px;left:4px;position:absolute;top:calc(50% - 9px);transition:transform .3s ease;width:18px}.searchcraft-toggle-button-active .searchcraft-toggle-button-background{background:var(--sc-surface-brand-primary);box-shadow:0px 0px 0px 1px rgba(0,0,0,.05)}.searchcraft-toggle-button-active .searchcraft-toggle-button-handle{transform:translateX(16px)}.searchcraft-pagination{display:inline-grid;gap:16px;grid-template-columns:repeat(3, auto);grid-template-rows:1fr}.searchcraft-pagination-list{border:1px solid var(--sc-border-neutral);border-radius:var(--sc-border-radius);display:flex;list-style-type:none;margin:0;overflow:hidden;padding:0;width:auto}.searchcraft-pagination-list li{border-right:1px solid var(--sc-border-neutral);height:100%;min-height:44px;width:44px}.searchcraft-pagination-list li:last-child{border-right:none}.searchcraft-pagination-item{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-font-normal);align-items:center;background-color:var(--sc-surface-neutral-primary);border:none;display:flex;height:100%;justify-content:center;width:100%}.searchcraft-pagination-item-active{background-color:var(--sc-surface-brand-secondary);font-weight:var(--sc-font-bold)}.searchcraft-pagination-control{border:1px solid var(--sc-border-neutral);border-radius:var(--sc-border-radius)}.searchcraft-pagination-range{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-font-normal);align-items:center;display:flex}.searchcraft-select{display:flex;flex-direction:column;gap:4px}.searchcraft-select-label{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-font-size);font-weight:var(--sc-font-normal);font-weight:var(--sc-font-bold)}.searchcraft-select-input-wrapper{position:relative}.searchcraft-select-input{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-font-normal);appearance:none;background-color:var(--sc-surface-neutral-secondary);border:2px solid rgba(0,0,0,0);border-radius:var(--sc-border-radius);cursor:pointer;height:44px;padding:0 44px 0 16px;width:100%}.searchcraft-select-input:hover{background-color:var(--sc-surface-neutral-secondary-hover)}.searchcraft-select-input:active{background-color:var(--sc-surface-neutral-secondary-active)}.searchcraft-select-input:focus{border-color:var(--sc-border-brand);outline:none}.searchcraft-select-input-icon{fill:none;pointer-events:none;position:absolute;right:12px;top:50%;transform:translateY(-50%)}.searchcraft-select-caption{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-font-size);font-weight:var(--sc-font-normal)}.searchcraft-search-results-per-page{display:flex}.searchcraft-search-results-per-page-select{align-items:center;display:flex;gap:12px}.searchcraft-search-results-per-page-select-label{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-font-normal)}.searchcraft-search-results-per-page-select-input{min-width:120px}/*# sourceMappingURL=hologram.css.map */
7683
+ var styles = `[class*=searchcraft-],[class*=searchcraft-] *,[class*=searchcraft-]::before,[class*=searchcraft-]::after,[class*=searchcraft-] *,::before,[class*=searchcraft-] *,::after{box-sizing:border-box;padding:0;margin:0}:root{--sc-text-base-size: 1em;--sc-text-scale-ratio: 1.1;--sc-font-family: sans-serif;--sc-font-bold: 700;--sc-font-normal: 400;--sc-heading-1-font-size: calc( var(--sc-text-base-size) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) );--sc-heading-2-font-size: calc( var(--sc-text-base-size) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) );--sc-heading-3-font-size: calc( var(--sc-text-base-size) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) );--sc-heading-4-font-size: calc( var(--sc-text-base-size) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) );--sc-heading-5-font-size: calc( var(--sc-text-base-size) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) );--sc-heading-6-font-size: calc( var(--sc-text-base-size) / ( var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) ) );--sc-body-font-size: calc(var(--sc-text-base-size));--sc-body-small-font-size: calc( var(--sc-text-base-size) / ( var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) * var(--sc-text-scale-ratio) ) )}:root{--sc-border-radius: 8px;--sc-border-radius-sm: calc(var(--sc-border-radius) / 2);--sc-border-radius-lg: calc(var(--sc-border-radius) * 2);--sc-border-radius-xl: calc(var(--sc-border-radius) * 3);--sc-border-radius-2xl: calc(var(--sc-border-radius) * 4);--sc-border-radius-full: 9999px}:root{--sc-breakpoint-sm: 576px;--sc-breakpoint-md: 768px;--sc-breakpoint-lg: 992px}:root{--sc-surface-neutral-primary: var(--sc-color-background, #ffffff);--sc-color-background-hover-computed: hsl( from var(--sc-color-background) h s clamp(10, calc(l + 5), 95) );--sc-surface-neutral-primary-hover: var( --sc-color-background-hover, var(--sc-color-background-hover-computed, #fafafa) );--sc-color-background-active-computed: hsl( from var(--sc-color-background) h s clamp(5, calc(l - 5), 90) );--sc-surface-neutral-primary-active: var( --sc-color-background-active, var(--sc-color-background-active-computed, #f7f7f7) );--sc-surface-neutral-secondary: var( --sc-color-background-secondary, var(--sc-color-background, #f3f3f3) );--sc-color-background-secondary-hover-computed: hsl( from var(--sc-color-background-secondary) h s clamp(10, calc(l + 5), 95) );--sc-surface-neutral-secondary-hover: var( --sc-color-background-hover, var(--sc-color-background-hover-computed, #e6e6e6) );--sc-color-background-secondary-active-computed: hsl( from var(--sc-color-background-secondary) h s clamp(5, calc(l - 5), 90) );--sc-surface-neutral-secondary-active: var( --sc-color-background-secondary-active, var(--sc-color-background-active-computed, #e0e0e0) );--sc-surface-neutral-light: #ffffff;--sc-content-neutral-primary: var(--sc-color-foreground, #292929);--sc-color-foreground-secondary-computed: hsl( from var(--sc-color-foreground) h s clamp(10, calc(l + 5), 90) );--sc-content-neutral-secondary: var( --sc-color-foreground-secondary, var(--sc-color-foreground-secondary-computed, #404040) );--sc-border-neutral: var(--sc-color-border, rgba(0, 0, 0, 0.1));--sc-surface-brand-primary: var(--sc-color-brand, #000000);--sc-color-brand-hover-computed: hsl( from var(--sc-color-brand) h s clamp(20, calc(l + 5), 95) );--sc-surface-brand-primary-hover: var( --sc-color-brand-hover, var(--sc-color-brand-hover-computed, #2e2e2e) );--sc-color-brand-active-computed: hsl( from var(--sc-color-brand) h s clamp(10, calc(l - 5), 85) );--sc-surface-brand-primary-active: var( --sc-color-brand-active, var(--sc-color-brand-active-computed, #292929) );--sc-surface-brand-secondary: var( --sc-color-brand-secondary, var(--sc-color-brand, #e6e6e6) );--sc-color-brand-secondary-hover-computed: hsl( from var(--sc-color-brand-secondary) h s clamp(10, calc(l + 5), 95) );--sc-surface-brand-secondary-hover: var( --sc-color-background-hover, var(--sc-color-background-hover-computed, #ebebeb) );--sc-color-brand-secondary-active-computed: hsl( from var(--sc-color-brand-secondary) h s clamp(5, calc(l - 5), 90) );--sc-surface-brand-secondary-active: var( --sc-color-brand-secondary-active, var(--sc-color-brand-active-computed, #e0e0e0) );--sc-content-brand: var( --sc-color-brand-text, var(--sc-surface-brand-primary) );--sc-content-brand-on-primary: #ffffff;--sc-border-brand: var(--sc-surface-brand-primary);--sc-surface-success-primary: var(--sc-color-success, #008000);--sc-color-success-primary-hover-computed: hsl( from var(--sc-color-success) h s 30 );--sc-surface-success-primary-hover: var( --sc-color-success-primary-hover, var(--sc-color-success-primary-hover-computed, #009900) );--sc-color-success-primary-active-computed: hsl( from var(--sc-color-success) h s 20 );--sc-surface-success-primary-active: var( --sc-color-success-primary-active, var(--sc-color-success-primary-active-computed, #006600) );--sc-color-success-secondary-computed: hsl( from var(--sc-color-success) h s 90 );--sc-surface-success-secondary: var( --sc-color-success-secondary, var(--sc-color-success-secondary-computed, #ccffcc) );--sc-color-success-secondary-hover-computed: hsl( from var(--sc-color-success-secondary) h s 95 );--sc-surface-success-secondary-hover: var( --sc-color-success-secondary-hover, var(--sc-color-success-secondary-hover-computed, #e6ffe6) );--sc-color-success-secondary-active-computed: hsl( from var(--sc-color-success-secondary) h s 85 );--sc-surface-success-secondary-active: var( --sc-color-success-secondary-active, var(--sc-color-success-secondary-active-computed, #b2ffb2) );--sc-content-success: var( --sc-color-brand-text, hsl(from var(--sc-surface-success-primary) h s 30) );--sc-content-success-on-primary: #ffffff;--sc-border-success: var(--sc-surface-success-primary);--sc-surface-caution-primary: var(--sc-color-caution, #cc6600);--sc-color-caution-primary-hover-computed: hsl( from var(--sc-color-caution) h s 30 );--sc-surface-caution-primary-hover: var( --sc-color-caution-primary-hover, var(--sc-color-caution-primary-hover-computed, #e57300) );--sc-color-caution-primary-active-computed: hsl( from var(--sc-color-caution) h s 20 );--sc-surface-caution-primary-active: var( --sc-color-caution-primary-active, var(--sc-color-caution-primary-active-computed, #b25a00) );--sc-color-caution-secondary-computed: hsl( from var(--sc-color-caution) h s 90 );--sc-surface-caution-secondary: var( --sc-color-caution-secondary, var(--sc-color-caution-secondary-computed, #ffd9b3) );--sc-color-caution-secondary-hover-computed: hsl( from var(--sc-color-caution-secondary) h s 95 );--sc-surface-caution-secondary-hover: var( --sc-color-caution-secondary-hover, var(--sc-color-caution-secondary-hover-computed, #ffe5cc) );--sc-color-caution-secondary-active-computed: hsl( from var(--sc-color-caution-secondary) h s 85 );--sc-surface-caution-secondary-active: var( --sc-color-caution-secondary-active, var(--sc-color-caution-secondary-active-computed, #ffcc99) );--sc-content-caution: var( --sc-color-caution-text, hsl(from var(--sc-surface-caution-primary) h s 30) );--sc-content-caution-on-primary: #ffffff;--sc-border-caution: var(--sc-surface-caution-primary);--sc-surface-danger-primary: var(--sc-color-danger, #cc0000);--sc-color-danger-primary-hover-computed: hsl( from var(--sc-color-danger) h s 30 );--sc-surface-danger-primary-hover: var( --sc-color-danger-primary-hover, var(--sc-color-danger-primary-hover-computed, #e50000) );--sc-color-danger-primary-active-computed: hsl( from var(--sc-color-danger) h s 20 );--sc-surface-danger-primary-active: var( --sc-color-danger-primary-active, var(--sc-color-danger-primary-active-computed, #b30000) );--sc-color-danger-secondary-computed: hsl(from var(--sc-color-danger) h s 90);--sc-surface-danger-secondary: var( --sc-color-danger-secondary, var(--sc-color-danger-secondary-computed, #ffcccc) );--sc-color-danger-secondary-hover-computed: hsl( from var(--sc-color-danger-secondary) h s 95 );--sc-surface-danger-secondary-hover: var( --sc-color-danger-secondary-hover, var(--sc-color-danger-secondary-hover-computed, #ffe7e7) );--sc-color-danger-secondary-active-computed: hsl( from var(--sc-color-danger-secondary) h s 85 );--sc-surface-danger-secondary-active: var( --sc-color-danger-secondary-active, var(--sc-color-danger-secondary-active-computed, #ffb3b3) );--sc-content-danger: var( --sc-color-caution-text, hsl(from var(--sc-surface-danger-primary) h s 30) );--sc-content-danger-on-primary: #ffffff;--sc-border-danger: var(--sc-surface-danger-primary);--sc-color-disabled: hsl(from var(--sc-color-page-primary) h s calc(l * 0.5));--sc-surface-disabled: var(--sc-color-disabled, #d9d9d9);--sc-color-disabled-text: hsl( from var(--sc-color-text-primary) h s calc(l * 0.5) );--sc-content-disabled: var(--sc-color-disabled-text, #737373);--sc-content-disabled-on-disabled: var(--sc-color-disabled-text, #737373)}@supports(hanging-punctuation: first) and (font: -apple-system-body) and (-webkit-appearance: none){:root{--sc-color-background-hover-computed: hsl( from var(--sc-color-background) h s clamp(10%, calc(l + 5%), 95%) );--sc-color-background-active-computed: hsl( from var(--sc-color-background) h s clamp(5%, calc(l - 5%), 90%) );--sc-color-foreground-secondary-computed: hsl( from var(--sc-color-foreground) h s clamp(10%, calc(l + 5%), 90%) );--sc-color-brand-hover-computed: hsl( from var(--sc-color-brand) h s clamp(20%, calc(l + 5%), 95%) );--sc-color-brand-active-computed: hsl( from var(--sc-color-brand) h s clamp(10%, calc(l - 5%), 85%) );--sc-color-success-primary-hover-computed: hsl( from var(--sc-color-success) h s 30% );--sc-color-success-primary-active-computed: hsl( from var(--sc-color-success) h s 20% );--sc-color-success-secondary-computed: hsl( from var(--sc-color-success) h s 90% );--sc-color-success-secondary-hover-computed: hsl( from var(--sc-color-success-secondary) h s 95% );--sc-color-success-secondary-active-computed: hsl( from var(--sc-color-success-secondary) h s 85% );--sc-content-success: var( --sc-color-brand-text, hsl(from var(--sc-surface-success-primary) h s 30%) );--sc-color-caution-primary-hover-computed: hsl( from var(--sc-color-caution) h s 30% );--sc-color-caution-primary-active-computed: hsl( from var(--sc-color-caution) h s 20% );--sc-color-caution-secondary-computed: hsl( from var(--sc-color-caution) h s 90% );--sc-color-caution-secondary-hover-computed: hsl( from var(--sc-color-caution-secondary) h s 95% );--sc-color-caution-secondary-active-computed: hsl( from var(--sc-color-caution-secondary) h s 85% );--sc-content-caution: var( --sc-color-caution-text, hsl(from var(--sc-surface-caution-primary) h s 30%) );--sc-color-danger-primary-hover-computed: hsl( from var(--sc-color-danger) h s 30% );--sc-color-danger-primary-active-computed: hsl( from var(--sc-color-danger) h s 20% );--sc-color-danger-secondary-computed: hsl( from var(--sc-color-danger) h s 90% );--sc-color-danger-secondary-hover-computed: hsl( from var(--sc-color-danger-secondary) h s 95% );--sc-color-danger-secondary-active-computed: hsl( from var(--sc-color-danger-secondary) h s 85% );--sc-content-danger: var( --sc-color-caution-text, hsl(from var(--sc-surface-danger-primary) h s 30%) )}}.searchcraft-ad{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased}.searchcraft-ad-no-template{display:flex;flex-direction:column;font-size:.875rem}.searchcraft-ad-no-template>p{margin:0}.searchcraft-adm-ad{display:flex;flex-direction:column;justify-content:center;gap:16px}.searchcraft-search-result{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased}.searchcraft-search-result-no-template{display:flex;flex-direction:column;font-size:.875rem}.searchcraft-search-result-no-template>p{margin:0}.searchcraft-search-results{display:flex;flex-direction:column;justify-content:center;gap:16px}.searchcraft-search-results-empty-state{text-align:center}.searchcraft-search-results-error-message{text-align:center}.searchcraft-button{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-font-normal);background:none;border:2px solid rgba(0,0,0,0);border-radius:var(--sc-border-radius);cursor:pointer;display:flex;gap:4px;padding:12px;position:relative}.searchcraft-button.searchcraft-button-disabled{cursor:not-allowed}.searchcraft-button-primary{background-color:var(--sc-surface-brand-primary);color:var(--sc-content-brand-on-primary);font-weight:var(--sc-font-bold)}.searchcraft-button-primary:hover{background-color:var(--sc-surface-brand-primary-hover)}.searchcraft-button-primary:focus{border-color:var(--sc-border-primary)}.searchcraft-button-primary:active{background-color:var(--sc-surface-brand-primary-active)}.searchcraft-button-primary.searchcraft-button-disabled,.searchcraft-button-primary.searchcraft-button-disabled:hover,.searchcraft-button-primary.searchcraft-button-disabled:focus,.searchcraft-button-primary.searchcraft-button-disabled:active{background-color:var(--sc-surface-disabled);border-color:rgba(0,0,0,0);color:var(--sc-content-disabled)}.searchcraft-button-tertiary{background-color:var(--sc-surface-neutral-primary);color:var(--sc-content-brand);font-weight:var(--sc-font-normal)}.searchcraft-button-tertiary:hover{background-color:var(--sc-surface-brand-secondary-hover)}.searchcraft-button-tertiary:focus{background-color:var(--sc-surface-neutral-light);border-color:var(--sc-border-primary)}.searchcraft-button-tertiary:active{background-color:var(--sc-surface-brand-secondary-active)}.searchcraft-button-tertiary.searchcraft-button-disabled,.searchcraft-button-tertiary.searchcraft-button-disabled:hover,.searchcraft-button-tertiary.searchcraft-button-disabled:focus,.searchcraft-button-tertiary.searchcraft-button-disabled:active{background-color:var(--sc-surface-neutral-light);border-color:rgba(0,0,0,0);color:var(--sc-content-disabled)}.searchcraft-button-icon{fill:none}.searchcraft-error-message{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-font-size);font-weight:var(--sc-font-normal);color:var(--sc-content-danger);margin:0}.searchcraft-facet-list{display:flex;flex-direction:column;gap:6px;width:100%}.searchcraft-facet-list-checkbox-label{align-items:center;color:var(--sc-content-neutral-primary);display:flex;font-family:var(--sc-font-family);font-size:14px;font-weight:600;gap:14px;position:relative;-webkit-font-smoothing:antialiased}.searchcraft-facet-list-checkbox-input-wrapper{position:relative}.searchcraft-facet-list-checkbox-input{align-items:center;appearance:none;background-color:var(--sc-surface-neutral-secondary);border:1px solid var(--sc-surface-disabled);border-radius:var(--sc-border-radius-sm);cursor:pointer;display:flex;height:24px;justify-content:center;width:24px;margin:0}.searchcraft-facet-list-checkbox-input:focus{outline:2px solid var(--sc-surface-brand-primary)}.searchcraft-facet-list-checkbox-input:checked{background-color:var(--sc-surface-brand-primary);position:relative}.searchcraft-facet-list-checkbox-input:checked+.searchcraft-facet-list-checkbox-input-check-icon{display:block}.searchcraft-facet-list-checkbox-input:checked+.searchcraft-facet-list-checkbox-input-dash-icon{display:block}.searchcraft-facet-child-list{display:flex;flex-direction:column;gap:6px}.searchcraft-facet-child-list-checkbox-label{margin-left:24px}.searchcraft-facet-child-list-checkbox-label:first-child{margin-top:6px}.searchcraft-facet-list-checkbox-input-check-icon{display:none;height:16px;left:50%;position:absolute;margin-top:2px;top:50%;transform:translate(-50%, -50%);width:16px}.searchcraft-facet-list-checkbox-input-dash-icon{display:none;height:3px;left:50%;position:absolute;top:50%;transform:translate(-50%, -50%);width:14px}.searchcraft-facet-list-message{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-font-size);font-weight:var(--sc-font-normal);color:var(--sc-content-disabled);text-align:center}.searchcraft-filter-panel{display:flex;flex-direction:column;gap:16px}.searchcraft-filter-panel-section{display:flex;flex-direction:column;gap:8px}.searchcraft-filter-panel-label{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-font-size);font-weight:var(--sc-font-normal);font-weight:var(--sc-font-bold)}:root{--sc-input-form-border-radius: var(--sc-border-radius);--sc-input-form-search-icon-size: 20px;--sc-input-form-clear-icon-size: 20px}.searchcraft-input-form-grid{display:grid;gap:4px 8px}.searchcraft-input-form-grid-button-left{grid-template-rows:repeat(3, auto);grid-template-columns:auto 1fr}.searchcraft-input-form-grid-button-left .searchcraft-input-form-button{grid-column:1/span 1;grid-row:2/span 1}.searchcraft-input-form-grid-button-left .searchcraft-input-form-label{grid-column:2/span 1;grid-row:1/span 1}.searchcraft-input-form-grid-button-left .searchcraft-input-form-error-message{grid-column:2/span 1;grid-row:3/span 1}.searchcraft-input-form-grid-button-left .searchcraft-input-form-input-wrapper{grid-column:2/span 1;grid-row:2/span 1}.searchcraft-input-form-grid-button-right{grid-template-rows:repeat(3, auto);grid-template-columns:1fr auto}.searchcraft-input-form-grid-button-right .searchcraft-input-form-button{grid-column:2/span 1;grid-row:2/span 1}.searchcraft-input-form-grid-button-right .searchcraft-input-form-label{grid-column:1/span 1;grid-row:1/span 1}.searchcraft-input-form-grid-button-right .searchcraft-input-form-error-message{grid-column:1/span 1;grid-row:3/span 1}.searchcraft-input-form-grid-button-right .searchcraft-input-form-input-wrapper{grid-column:1/span 1;grid-row:2/span 1}.searchcraft-input-form-grid-button-none{grid-template-rows:repeat(3, auto);grid-template-columns:auto}.searchcraft-input-form-grid-button-none .searchcraft-input-form-button{display:none}.searchcraft-input-form-grid-button-none .searchcraft-input-form-label{grid-column:1/span 1;grid-row:1/span 1}.searchcraft-input-form-grid-button-none .searchcraft-input-form-error-message{grid-column:1/span 1;grid-row:3/span 1}.searchcraft-input-form-grid-button-none .searchcraft-input-form-input-wrapper{grid-column:1/span 1;grid-row:2/span 1}.searchcraft-input-form-input-wrapper{display:flex;position:relative}.searchcraft-input-form-input{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-font-normal);background-color:var(--sc-surface-neutral-secondary);border-radius:var(--sc-input-form-border-radius);border:none;color:var(--sc-content-neutral-primary);flex:1;outline:none;padding:12px 44px}.searchcraft-input-form-input::placeholder{color:var(--sc-content-disabled)}.searchcraft-input-form-input:focus{outline:var(--sc-border-brand) solid 2px;outline-offset:-1px}.searchcraft-input-form-input:focus::placeholder{opacity:0}.searchcraft-input-form-error{color:var(--sc-content-danger);outline:var(--sc-border-danger) solid 2px}.searchcraft-input-form-error:focus{outline:var(--sc-border-danger) solid 2px}.searchcraft-input-form-input-icon{align-items:center;bottom:0;display:flex;justify-content:center;left:0;position:absolute;pointer-events:none;top:0;width:44px}.searchcraft-input-form-input-search-icon{color:var(--sc-content-neutral-secondary);fill:none;height:var(--sc-input-form-search-icon-size);pointer-events:none;width:var(--sc-input-form-search-icon-size)}.searchcraft-input-form-clear-button{all:unset;align-items:center;bottom:0;border:none;cursor:pointer;display:flex;justify-content:center;outline:none;position:absolute;right:0;top:0;width:44px}.searchcraft-input-form-clear-icon{color:var(--sc-content-brand);fill:none;height:var(--sc-input-form-clear-icon-size);width:var(--sc-input-form-clear-icon-size)}.searchcraft-input-label{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-font-size);font-weight:var(--sc-font-normal);color:var(--sc-content-neutral-primary);font-weight:var(--sc-font-bold);margin-top:4px;margin-bottom:4px}:root{--sc-popover-button-border-radius: var(--sc-border-radius)}@media(min-width: 576px){:root{--sc-popover-button-border-radius: var(--sc-border-radius-lg)}}.searchcraft-popover-button{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-font-normal);cursor:pointer}.searchcraft-popover-button-skeuomorphic{appearance:none;background:none;border:none;color:var(--sc-content-neutral-primary);display:block;width:100%}.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-wrapper{border:1px solid var(--sc-border-neutral);border-radius:var(--sc-popover-button-border-radius);box-shadow:0 1px 1px rgb(from var(--sc-content-neutral-secondary) r g b/10%) inset,0 2px 4px rgb(from var(--sc-content-neutral-secondary) r g b/5%) inset;display:flex;gap:24px;height:40px;justify-content:space-between;line-height:1;padding:4px 5px 4px 10px;background:var(--sc-surface-neutral-primary)}@media(min-width: 576px){.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-wrapper{box-shadow:0 1px 1px rgb(from var(--sc-content-neutral-secondary) r g b/10%) inset,0 2px 2px rgb(from var(--sc-content-neutral-secondary) r g b/5%) inset,0 4px 4px rgb(from var(--sc-content-neutral-secondary) r g b/5%) inset;height:63px;padding:8px 10px 8px 16px}}.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-input{align-items:center;display:flex;gap:4px}@media(min-width: 576px){.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-input{gap:8px}}.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-keycaps{color:var(--sc-content-neutral-secondary);display:flex;gap:4px;font-size:20px;font-weight:500}@media(min-width: 576px){.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-keycaps{gap:8px}}.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-keycaps-keycap{border-radius:calc(var(--sc-popover-button-border-radius) - 3px);border-radius:calc(var(var(--sc-popover-button-border-radius)) - 3px);background-color:var(--sc-surface-neutral-primary);box-shadow:0 3px hsl(from var(--sc-surface-neutral-secondary) h s calc(l - 5)),0 1px 2px rgb(from var(--sc-content-neutral-secondary) r g b/10%),0 6px 4px rgb(from var(--sc-content-neutral-secondary) r g b/5%);height:calc(100% - 2px);position:relative}@media(min-width: 576px){.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-keycaps-keycap{border-radius:calc(var(--sc-popover-button-border-radius) - 8px);border-radius:calc(var(var(--sc-popover-button-border-radius)) - 8px);box-shadow:0 4px hsl(from var(--sc-surface-neutral-secondary) h s calc(l - 5)),0 1px 2px rgb(from var(--sc-content-neutral-secondary) r g b/15%),0 6px 1px rgb(from var(--sc-content-neutral-secondary) r g b/20%),0 7px 2px rgb(from var(--sc-content-neutral-secondary) r g b/15%),0 9px 4px rgb(from var(--sc-content-neutral-secondary) r g b/10%),0 13px 8px rgb(from var(--sc-content-neutral-secondary) r g b/5%);height:calc(100% - 5px)}}.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-keycaps-keycap::before,.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-keycaps-keycap::after{content:"";display:block}.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-keycaps-keycap::before{border-radius:calc(var(--sc-popover-button-border-radius) - 4px);border-radius:calc(var(var(--sc-popover-button-border-radius)) - 4px);background:linear-gradient(340deg, rgb(from var(--sc-surface-neutral-secondary) r g b/2%) 0%, var(--sc-surface-neutral-secondary) 100%);inset:2px;position:absolute}@media(min-width: 576px){.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-keycaps-keycap::before{border-radius:calc(var(--sc-popover-button-border-radius) - 12px);border-radius:calc(var(var(--sc-popover-button-border-radius)) - 12px);inset:4px}}.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-keycaps-keycap::after{aspect-ratio:1/1;height:100%}.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-keycaps-keycap>span{display:flex;line-height:1;left:50%;margin-top:2%;position:absolute;top:50%;transform:translate(-50%, -50%)}.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-input-search-icon{height:60%;width:auto}@media(min-width: 576px){.searchcraft-popover-button-skeuomorphic .searchcraft-popover-button-input-search-icon{height:50%}}:root{--sc-popover-list-view-height: 600px;--sc-popover-modal-max-width: 800px}.searchcraft-popover-form{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-font-normal);display:flex;flex:1;flex-direction:column}.searchcraft-popover-form searchcraft-input-form,.searchcraft-popover-form searchcraft-popover-footer{width:100%}.searchcraft-popover-form.searchcraft-popover-form-active .searchcraft-popover-form-input{padding-bottom:1px}.searchcraft-popover-form searchcraft-popover-list-view{flex-shrink:1;height:100%;min-height:0;overflow:auto;padding:0 24px}.searchcraft-popover-form-input{display:flex;flex-direction:row;gap:12px}.searchcraft-popover-form-input .searchcraft-input-form-input{background-color:var(--sc-surface-neutral-primary);border:1px solid var(--sc-border-neutral);border-radius:var(--sc-border-radius-lg);box-shadow:0 1px 1px rgb(from var(--sc-content-neutral-primary) r g b/10%) inset,0 2px 2px rgb(from var(--sc-content-neutral-primary) r g b/5%) inset,0 4px 4px rgb(from var(--sc-content-neutral-primary) r g b/5%) inset;width:0}.searchcraft-popover-form-cancel-button{background:none;border:none;cursor:pointer;font-size:14px}.searchcraft-popover-form-modal-input,.searchcraft-popover-form-fullscreen-input{padding:24px}.searchcraft-popover-form-modal-popover-list-view,.searchcraft-popover-form-fullscreen-popover-list-view{flex-grow:1;flex-shrink:1;min-height:0;overflow:auto;padding:0 24px}.searchcraft-popover-form-inline{background-color:var(--sc-surface-neutral-primary);border:1px solid rgba(0,0,0,0);border-radius:var(--sc-border-radius-xl);padding:12px;position:relative}.searchcraft-popover-form-inline.searchcraft-popover-form-active{border:1px solid var(--sc-border-neutral);border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0;padding-bottom:1px}.searchcraft-popover-form-inline searchcraft-popover-list-view{padding:0 12px}.searchcraft-popover-form-inline .searchcraft-input-form-input,.searchcraft-popover-form-inline .searchcraft-popover-list-item-link,.searchcraft-popover-form-inline .searchcraft-adm-ad-link{border-radius:calc(--sc-border-radius-xl - 12px);border-radius:calc(var(--sc-border-radius-xl) - 12px)}.searchcraft-popover-form-inline-wrapper{background-color:var(--sc-surface-neutral-primary);border:1px solid var(--sc-border-neutral);border-top:none;border-bottom-left-radius:var(--sc-border-radius-xl);border-bottom-right-radius:var(--sc-border-radius-xl);display:flex;flex-direction:column;left:-1px;max-height:var(--sc-popover-list-view-height);overflow:hidden;position:absolute;right:-1px;top:100%}.searchcraft-popover-form-modal{align-items:center;display:flex;inset:0;position:fixed;z-index:1000}.searchcraft-popover-form-modal .searchcraft-input-form-input,.searchcraft-popover-form-modal .searchcraft-popover-list-item-link,.searchcraft-popover-form-modal .searchcraft-adm-ad-link{border-radius:calc(--sc-border-radius-2xl - 20px);border-radius:calc(var(--sc-border-radius-2xl) - 20px)}.searchcraft-popover-form-modal-backdrop{background-color:rgb(from var(--sc-content-neutral-primary) r g b/50%);display:none;inset:0;position:fixed}@media(min-width: 576px){.searchcraft-popover-form-modal-backdrop{display:block}}.searchcraft-popover-form-modal-wrapper{background-color:var(--sc-surface-neutral-primary);box-shadow:1px 2px rgb(from var(--sc-content-neutral-primary) r g b/7%),0 2px 4px rgb(from var(--sc-content-neutral-primary) r g b/7%),0 4px 8px rgb(from var(--sc-content-neutral-primary) r g b/7%),0 8px 16px rgb(from var(--sc-content-neutral-primary) r g b/7%),0 16px 32px rgb(from var(--sc-content-neutral-primary) r g b/7%),0 32px 64px rgb(from var(--sc-content-neutral-primary) r g b/7%);display:flex;flex-direction:column;inset:0;max-width:var(--sc-popover-modal-max-width);overflow:hidden;position:absolute;width:100%;z-index:1001}@media(min-width: 576px){.searchcraft-popover-form-modal-wrapper{border-radius:var(--sc-border-radius-2xl);inset:0;margin-top:100px;max-height:var(--sc-popover-list-view-height);max-width:var(--sc-popover-modal-max-width);position:relative}}.searchcraft-popover-form-modal-cancel-button{border-radius:calc(--sc-border-radius-2xl - 20px);border-radius:calc(var(--sc-border-radius-2xl) - 20px);padding:8px}@media(min-width: 576px){.searchcraft-popover-form-modal-cancel-button{padding:8px 12px}}.searchcraft-popover-form-fullscreen{background-color:var(--sc-surface-neutral-primary);display:flex;flex-direction:column;justify-content:space-between;inset:0;position:fixed;z-index:1000}.searchcraft-popover-form-fullscreen .searchcraft-popover-list-item-link,.searchcraft-popover-form-fullscreen .searchcraft-adm-ad-link{border-radius:var(--sc-border-radius-lg)}.searchcraft-popover-form-fullscreen-cancel-button{border-radius:var(--sc-border-radius-lg);padding:8px}@media(min-width: 576px){.searchcraft-popover-form-fullscreen-cancel-button{padding:8px 12px}}.searchcraft-popover-footer{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;background-color:var(--sc-surface-neutral-secondary);box-shadow:0 1px 1px rgb(from var(--sc-content-neutral-primary) r g b/10%) inset,0 2px 2px rgb(from var(--sc-content-neutral-primary) r g b/5%) inset,0 4px 4px rgb(from var(--sc-content-neutral-primary) r g b/5%) inset;display:flex;gap:8px;justify-content:space-between;line-height:1;padding:20px 24px}@media(min-width: 576px){.searchcraft-popover-footer{padding:20px 32px}}.searchcraft-popover-footer-results-info{margin:0}.searchcraft-popover-footer-link{color:var(--sc-content-neutral-primary);display:flex;max-width:160px;width:100%}:root{--sc-popover-list-item-image-fit: contain}.searchcraft-popover-list-item{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;border-bottom:1px solid var(--sc-border-neutral);padding:12px 0}searchcraft-popover-list-item:last-child .searchcraft-popover-list-item{border-bottom:none}.searchcraft-popover-list-item-link{align-items:flex-start;color:var(--sc-content-neutral-primary);display:flex;gap:24px;padding:12px;text-decoration:none}.searchcraft-popover-list-item-link:focus,.searchcraft-popover-list-item-link:active{background-color:var(--sc-surface-neutral-primary-active)}.searchcraft-popover-list-item-link:hover{background-color:var(--sc-surface-neutral-primary-hover)}.searchcraft-popover-list-item-image-wrapper{align-items:center;aspect-ratio:16/9;display:flex;flex-shrink:0;justify-content:center;width:160px}.searchcraft-popover-list-item-image{height:100%;object-fit:var(--sc-popover-list-item-image-fit);width:100%}.searchcraft-popover-list-item-content{display:flex;flex-direction:column;flex-grow:1;gap:4px;justify-content:center}.searchcraft-popover-list-item-content-title,.searchcraft-popover-list-item-content-subtitle{display:-webkit-box;line-clamp:2;margin:0;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical}.searchcraft-popover-list-item-content-title{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-heading-5-font-size);font-weight:var(--sc-font-bold)}.searchcraft-popover-list-item-content-subtitle{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-font-normal)}.searchcraft-popover-list-view{display:flex;flex-direction:column}.searchcraft-results-info{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-font-normal);color:var(--sc-content-primary);margin:0}.searchcraft-slider{align-items:center;display:flex;flex-direction:column;gap:10px;width:100%}.searchcraft-slider-range{align-items:center;background-color:var(--sc-surface-disabled);border-radius:999px;display:flex;position:relative;height:4px;width:100%}.searchcraft-slider-range::-webkit-slider-runnable-track{pointer-events:none}.searchcraft-slider-range .searchcraft-slider-active-range{background-color:var(--sc-surface-brand-primary);border-radius:2px;height:4px;position:absolute;top:50%;transform:translateY(-50%);z-index:0}.searchcraft-slider-range .searchcraft-slider-active-range::-webkit-slider-runnable-track{pointer-events:none}.searchcraft-slider-range .searchcraft-slider-active-range::-moz-range-track{pointer-events:none}.searchcraft-slider-range .searchcraft-slider-input{appearance:none;background:rgba(0,0,0,0);border-radius:2px;height:4px;margin:0;outline:none;pointer-events:none;position:absolute;width:100%;-webkit-appearance:none}.searchcraft-slider-range .searchcraft-slider-input::-webkit-slider-thumb{background-color:var(--sc-surface-neutral-light);border-radius:50%;border:2px solid var(--sc-border-neutral);cursor:pointer;height:20px;pointer-events:all;width:20px;-webkit-appearance:none}.searchcraft-slider-range .searchcraft-slider-input::-moz-range-thumb{background-color:var(--sc-surface-neutral-light);border-radius:50%;border:2px solid var(--sc-border-neutral);cursor:pointer;height:20px;pointer-events:all;width:20px}.searchcraft-slider-label{color:var(--sc-content-primary);display:flex;font-family:"Source Sans Pro",sans-serif;font-size:15px;font-weight:600;justify-content:space-between;margin-top:10px;width:100%}.searchcraft-slider-start-label,.searchcraft-slider-end-label{min-width:30px;text-align:center}.searchcraft-toggle-button{align-items:flex-start;display:flex;gap:10px;justify-content:space-between}.searchcraft-toggle-button-label{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-font-normal);color:var(--sc-content-neutral-primary);margin:0}.searchcraft-toggle-button-sub-label{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-font-size);font-weight:var(--sc-font-normal);color:var(--sc-content-neutral-secondary);margin:0}.searchcraft-toggle-button-background{background:var(--sc-surface-disabled);border-radius:var(--sc-border-radius-full);border:none;cursor:pointer;flex-shrink:0;height:26px;position:relative;transition:background-color .2s;width:44px}.searchcraft-toggle-button-handle{background:var(--sc-surface-neutral-light);border-radius:50%;height:18px;left:4px;position:absolute;top:calc(50% - 9px);transition:transform .3s ease;width:18px}.searchcraft-toggle-button-active .searchcraft-toggle-button-background{background:var(--sc-surface-brand-primary);box-shadow:0px 0px 0px 1px rgba(0,0,0,.05)}.searchcraft-toggle-button-active .searchcraft-toggle-button-handle{transform:translateX(16px)}.searchcraft-pagination{display:inline-grid;gap:16px;grid-template-columns:repeat(3, auto);grid-template-rows:1fr}.searchcraft-pagination-list{border:1px solid var(--sc-border-neutral);border-radius:var(--sc-border-radius);display:flex;list-style-type:none;margin:0;overflow:hidden;padding:0;width:auto}.searchcraft-pagination-list li{border-right:1px solid var(--sc-border-neutral);height:100%;min-height:44px;width:44px}.searchcraft-pagination-list li:last-child{border-right:none}.searchcraft-pagination-item{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-font-normal);align-items:center;background-color:var(--sc-surface-neutral-primary);border:none;display:flex;height:100%;justify-content:center;width:100%}.searchcraft-pagination-item-active{background-color:var(--sc-surface-brand-secondary);font-weight:var(--sc-font-bold)}.searchcraft-pagination-control{border:1px solid var(--sc-border-neutral);border-radius:var(--sc-border-radius)}.searchcraft-pagination-range{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-font-normal);align-items:center;display:flex}.searchcraft-select{display:flex;flex-direction:column;gap:4px}.searchcraft-select-label{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-font-size);font-weight:var(--sc-font-normal);font-weight:var(--sc-font-bold)}.searchcraft-select-input-wrapper{position:relative}.searchcraft-select-input{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-font-normal);appearance:none;background-color:var(--sc-surface-neutral-secondary);border:2px solid rgba(0,0,0,0);border-radius:var(--sc-border-radius);cursor:pointer;height:44px;padding:0 44px 0 16px;width:100%}.searchcraft-select-input:hover{background-color:var(--sc-surface-neutral-secondary-hover)}.searchcraft-select-input:active{background-color:var(--sc-surface-neutral-secondary-active)}.searchcraft-select-input:focus{border-color:var(--sc-border-brand);outline:none}.searchcraft-select-input-icon{fill:none;pointer-events:none;position:absolute;right:12px;top:50%;transform:translateY(-50%)}.searchcraft-select-caption{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-small-font-size);font-weight:var(--sc-font-normal)}.searchcraft-search-results-per-page{display:flex}.searchcraft-search-results-per-page-select{align-items:center;display:flex;gap:12px}.searchcraft-search-results-per-page-select-label{font-family:var(--sc-font-family);line-height:1.25;-webkit-font-smoothing:antialiased;font-size:var(--sc-body-font-size);font-weight:var(--sc-font-normal)}.searchcraft-search-results-per-page-select-input{min-width:120px}/*# sourceMappingURL=hologram.css.map */
7570
7684
  `;
7571
7685
 
7572
7686
  /**