@process.co/ui 0.0.20 → 0.0.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -3,6 +3,9 @@
3
3
  var React45 = require('react');
4
4
  var jsxRuntime = require('react/jsx-runtime');
5
5
  var ReactDOM4 = require('react-dom');
6
+ var PropTypes = require('prop-types');
7
+
8
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
6
9
 
7
10
  function _interopNamespace(e) {
8
11
  if (e && e.__esModule) return e;
@@ -24,12 +27,97 @@ function _interopNamespace(e) {
24
27
 
25
28
  var React45__namespace = /*#__PURE__*/_interopNamespace(React45);
26
29
  var ReactDOM4__namespace = /*#__PURE__*/_interopNamespace(ReactDOM4);
30
+ var PropTypes__default = /*#__PURE__*/_interopDefault(PropTypes);
27
31
 
28
32
  var __defProp = Object.defineProperty;
33
+ var __getOwnPropNames = Object.getOwnPropertyNames;
34
+ var __commonJS = (cb, mod) => function __require() {
35
+ return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
36
+ };
29
37
  var __export = (target, all) => {
30
38
  for (var name in all)
31
39
  __defProp(target, name, { get: all[name], enumerable: true });
32
40
  };
41
+
42
+ // ../../node_modules/.pnpm/@fortawesome+fontawesome-svg-core@6.7.2/node_modules/@fortawesome/fontawesome-svg-core/package.json
43
+ var require_package = __commonJS({
44
+ "../../node_modules/.pnpm/@fortawesome+fontawesome-svg-core@6.7.2/node_modules/@fortawesome/fontawesome-svg-core/package.json"(exports$1, module) {
45
+ module.exports = {
46
+ description: "The iconic font, CSS, and SVG framework",
47
+ keywords: [
48
+ "font",
49
+ "awesome",
50
+ "fontawesome",
51
+ "icon",
52
+ "svg",
53
+ "bootstrap"
54
+ ],
55
+ homepage: "https://fontawesome.com",
56
+ bugs: {
57
+ url: "https://github.com/FortAwesome/Font-Awesome/issues"
58
+ },
59
+ author: "The Font Awesome Team (https://github.com/orgs/FortAwesome/people)",
60
+ repository: {
61
+ type: "git",
62
+ url: "https://github.com/FortAwesome/Font-Awesome"
63
+ },
64
+ engines: {
65
+ node: ">=6"
66
+ },
67
+ dependencies: {
68
+ "@fortawesome/fontawesome-common-types": "6.7.2"
69
+ },
70
+ version: "6.7.2",
71
+ name: "@fortawesome/fontawesome-svg-core",
72
+ main: "index.js",
73
+ module: "index.mjs",
74
+ "jsnext:main": "index.mjs",
75
+ style: "styles.css",
76
+ license: "MIT",
77
+ types: "./index.d.ts",
78
+ exports: {
79
+ ".": {
80
+ types: "./index.d.ts",
81
+ module: "./index.mjs",
82
+ import: "./index.mjs",
83
+ require: "./index.js",
84
+ style: "./styles.css",
85
+ default: "./index.js"
86
+ },
87
+ "./index": {
88
+ types: "./index.d.ts",
89
+ module: "./index.mjs",
90
+ import: "./index.mjs",
91
+ require: "./index.js",
92
+ default: "./index.js"
93
+ },
94
+ "./index.js": {
95
+ types: "./index.d.ts",
96
+ module: "./index.mjs",
97
+ import: "./index.mjs",
98
+ require: "./index.js",
99
+ default: "./index.js"
100
+ },
101
+ "./plugins": {
102
+ types: "./index.d.ts",
103
+ module: "./plugins.mjs",
104
+ import: "./plugins.mjs",
105
+ default: "./plugins.mjs"
106
+ },
107
+ "./import.macro": "./import.macro.js",
108
+ "./import.macro.js": "./import.macro.js",
109
+ "./styles": "./styles.css",
110
+ "./styles.css": "./styles.css",
111
+ "./package.json": "./package.json"
112
+ },
113
+ sideEffects: [
114
+ "./index.js",
115
+ "./index.mjs",
116
+ "./styles.css"
117
+ ]
118
+ };
119
+ }
120
+ });
33
121
  function setRef(ref, value) {
34
122
  if (typeof ref === "function") {
35
123
  return ref(value);
@@ -164,26 +252,26 @@ function getElementRef(element) {
164
252
 
165
253
  // ../../node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.mjs
166
254
  function r(e) {
167
- var t, f, n = "";
255
+ var t2, f, n = "";
168
256
  if ("string" == typeof e || "number" == typeof e) n += e;
169
257
  else if ("object" == typeof e) if (Array.isArray(e)) {
170
- var o = e.length;
171
- for (t = 0; t < o; t++) e[t] && (f = r(e[t])) && (n && (n += " "), n += f);
258
+ var o2 = e.length;
259
+ for (t2 = 0; t2 < o2; t2++) e[t2] && (f = r(e[t2])) && (n && (n += " "), n += f);
172
260
  } else for (f in e) e[f] && (n && (n += " "), n += f);
173
261
  return n;
174
262
  }
175
263
  function clsx() {
176
- for (var e, t, f = 0, n = "", o = arguments.length; f < o; f++) (e = arguments[f]) && (t = r(e)) && (n && (n += " "), n += t);
264
+ for (var e, t2, f = 0, n = "", o2 = arguments.length; f < o2; f++) (e = arguments[f]) && (t2 = r(e)) && (n && (n += " "), n += t2);
177
265
  return n;
178
266
  }
179
267
 
180
268
  // ../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.mjs
181
269
  var falsyToString = (value) => typeof value === "boolean" ? `${value}` : value === 0 ? "0" : value;
182
270
  var cx = clsx;
183
- var cva = (base, config) => (props) => {
271
+ var cva = (base, config2) => (props) => {
184
272
  var _config_compoundVariants;
185
- if ((config === null || config === void 0 ? void 0 : config.variants) == null) return cx(base, props === null || props === void 0 ? void 0 : props.class, props === null || props === void 0 ? void 0 : props.className);
186
- const { variants, defaultVariants } = config;
273
+ if ((config2 === null || config2 === void 0 ? void 0 : config2.variants) == null) return cx(base, props === null || props === void 0 ? void 0 : props.class, props === null || props === void 0 ? void 0 : props.className);
274
+ const { variants, defaultVariants } = config2;
187
275
  const getVariantClassNames = Object.keys(variants).map((variant) => {
188
276
  const variantProp = props === null || props === void 0 ? void 0 : props[variant];
189
277
  const defaultVariantProp = defaultVariants === null || defaultVariants === void 0 ? void 0 : defaultVariants[variant];
@@ -199,7 +287,7 @@ var cva = (base, config) => (props) => {
199
287
  acc[key] = value;
200
288
  return acc;
201
289
  }, {});
202
- const getCompoundVariantClassNames = config === null || config === void 0 ? void 0 : (_config_compoundVariants = config.compoundVariants) === null || _config_compoundVariants === void 0 ? void 0 : _config_compoundVariants.reduce((acc, param) => {
290
+ const getCompoundVariantClassNames = config2 === null || config2 === void 0 ? void 0 : (_config_compoundVariants = config2.compoundVariants) === null || _config_compoundVariants === void 0 ? void 0 : _config_compoundVariants.reduce((acc, param) => {
203
291
  let { class: cvClass, className: cvClassName, ...compoundVariantOptions } = param;
204
292
  return Object.entries(compoundVariantOptions).every((param2) => {
205
293
  let [key, value] = param2;
@@ -242,12 +330,12 @@ var createClassPartObject = (nextPart = /* @__PURE__ */ new Map(), validators =
242
330
  var CLASS_PART_SEPARATOR = "-";
243
331
  var EMPTY_CONFLICTS = [];
244
332
  var ARBITRARY_PROPERTY_PREFIX = "arbitrary..";
245
- var createClassGroupUtils = (config) => {
246
- const classMap = createClassMap(config);
333
+ var createClassGroupUtils = (config2) => {
334
+ const classMap = createClassMap(config2);
247
335
  const {
248
336
  conflictingClassGroups,
249
337
  conflictingClassGroupModifiers
250
- } = config;
338
+ } = config2;
251
339
  const getClassGroupId = (className) => {
252
340
  if (className.startsWith("[") && className.endsWith("]")) {
253
341
  return getGroupIdForArbitraryProperty(className);
@@ -306,11 +394,11 @@ var getGroupIdForArbitraryProperty = (className) => className.slice(1, -1).index
306
394
  const property = content.slice(0, colonIndex);
307
395
  return property ? ARBITRARY_PROPERTY_PREFIX + property : void 0;
308
396
  })();
309
- var createClassMap = (config) => {
397
+ var createClassMap = (config2) => {
310
398
  const {
311
399
  theme,
312
400
  classGroups
313
- } = config;
401
+ } = config2;
314
402
  return processClassGroups(classGroups, theme);
315
403
  };
316
404
  var processClassGroups = (classGroups, theme) => {
@@ -427,11 +515,11 @@ var createResultObject = (modifiers, hasImportantModifier, baseClassName, maybeP
427
515
  maybePostfixModifierPosition,
428
516
  isExternal
429
517
  });
430
- var createParseClassName = (config) => {
518
+ var createParseClassName = (config2) => {
431
519
  const {
432
520
  prefix,
433
521
  experimentalParseClassName
434
- } = config;
522
+ } = config2;
435
523
  let parseClassName = (className) => {
436
524
  const modifiers = [];
437
525
  let bracketDepth = 0;
@@ -490,9 +578,9 @@ var createParseClassName = (config) => {
490
578
  }
491
579
  return parseClassName;
492
580
  };
493
- var createSortModifiers = (config) => {
581
+ var createSortModifiers = (config2) => {
494
582
  const modifierWeights = /* @__PURE__ */ new Map();
495
- config.orderSensitiveModifiers.forEach((mod, index2) => {
583
+ config2.orderSensitiveModifiers.forEach((mod, index2) => {
496
584
  modifierWeights.set(mod, 1e6 + index2);
497
585
  });
498
586
  return (modifiers) => {
@@ -520,14 +608,14 @@ var createSortModifiers = (config) => {
520
608
  return result;
521
609
  };
522
610
  };
523
- var createConfigUtils = (config) => ({
524
- cache: createLruCache(config.cacheSize),
525
- parseClassName: createParseClassName(config),
526
- sortModifiers: createSortModifiers(config),
527
- ...createClassGroupUtils(config)
611
+ var createConfigUtils = (config2) => ({
612
+ cache: createLruCache(config2.cacheSize),
613
+ parseClassName: createParseClassName(config2),
614
+ sortModifiers: createSortModifiers(config2),
615
+ ...createClassGroupUtils(config2)
528
616
  });
529
617
  var SPLIT_CLASSES_REGEX = /\s+/;
530
- var mergeClassList = (classList, configUtils) => {
618
+ var mergeClassList = (classList2, configUtils) => {
531
619
  const {
532
620
  parseClassName,
533
621
  getClassGroupId,
@@ -535,7 +623,7 @@ var mergeClassList = (classList, configUtils) => {
535
623
  sortModifiers
536
624
  } = configUtils;
537
625
  const classGroupsInConflict = [];
538
- const classNames = classList.trim().split(SPLIT_CLASSES_REGEX);
626
+ const classNames = classList2.trim().split(SPLIT_CLASSES_REGEX);
539
627
  let result = "";
540
628
  for (let index2 = classNames.length - 1; index2 >= 0; index2 -= 1) {
541
629
  const originalClassName = classNames[index2];
@@ -616,21 +704,21 @@ var createTailwindMerge = (createConfigFirst, ...createConfigRest) => {
616
704
  let cacheGet;
617
705
  let cacheSet;
618
706
  let functionToCall;
619
- const initTailwindMerge = (classList) => {
620
- const config = createConfigRest.reduce((previousConfig, createConfigCurrent) => createConfigCurrent(previousConfig), createConfigFirst());
621
- configUtils = createConfigUtils(config);
707
+ const initTailwindMerge = (classList2) => {
708
+ const config2 = createConfigRest.reduce((previousConfig, createConfigCurrent) => createConfigCurrent(previousConfig), createConfigFirst());
709
+ configUtils = createConfigUtils(config2);
622
710
  cacheGet = configUtils.cache.get;
623
711
  cacheSet = configUtils.cache.set;
624
712
  functionToCall = tailwindMerge;
625
- return tailwindMerge(classList);
713
+ return tailwindMerge(classList2);
626
714
  };
627
- const tailwindMerge = (classList) => {
628
- const cachedResult = cacheGet(classList);
715
+ const tailwindMerge = (classList2) => {
716
+ const cachedResult = cacheGet(classList2);
629
717
  if (cachedResult) {
630
718
  return cachedResult;
631
719
  }
632
- const result = mergeClassList(classList, configUtils);
633
- cacheSet(classList, result);
720
+ const result = mergeClassList(classList2, configUtils);
721
+ cacheSet(classList2, result);
634
722
  return result;
635
723
  };
636
724
  functionToCall = initTailwindMerge;
@@ -3292,13 +3380,13 @@ var useInsertionEffect = React45__namespace[" useInsertionEffect ".trim().toStri
3292
3380
  function useControllableState({
3293
3381
  prop,
3294
3382
  defaultProp,
3295
- onChange = () => {
3383
+ onChange: onChange2 = () => {
3296
3384
  },
3297
3385
  caller
3298
3386
  }) {
3299
3387
  const [uncontrolledProp, setUncontrolledProp, onChangeRef] = useUncontrolledState({
3300
3388
  defaultProp,
3301
- onChange
3389
+ onChange: onChange2
3302
3390
  });
3303
3391
  const isControlled = prop !== void 0;
3304
3392
  const value = isControlled ? prop : uncontrolledProp;
@@ -3333,14 +3421,14 @@ function useControllableState({
3333
3421
  }
3334
3422
  function useUncontrolledState({
3335
3423
  defaultProp,
3336
- onChange
3424
+ onChange: onChange2
3337
3425
  }) {
3338
3426
  const [value, setValue] = React45__namespace.useState(defaultProp);
3339
3427
  const prevValueRef = React45__namespace.useRef(value);
3340
- const onChangeRef = React45__namespace.useRef(onChange);
3428
+ const onChangeRef = React45__namespace.useRef(onChange2);
3341
3429
  useInsertionEffect(() => {
3342
- onChangeRef.current = onChange;
3343
- }, [onChange]);
3430
+ onChangeRef.current = onChange2;
3431
+ }, [onChange2]);
3344
3432
  React45__namespace.useEffect(() => {
3345
3433
  if (prevValueRef.current !== value) {
3346
3434
  onChangeRef.current?.(value);
@@ -4148,8 +4236,8 @@ var oppositeAlignmentMap = {
4148
4236
  start: "end",
4149
4237
  end: "start"
4150
4238
  };
4151
- function clamp(start, value, end) {
4152
- return max(start, min(value, end));
4239
+ function clamp(start, value, end2) {
4240
+ return max(start, min(value, end2));
4153
4241
  }
4154
4242
  function evaluate(value, param) {
4155
4243
  return typeof value === "function" ? value(param) : value;
@@ -4243,7 +4331,7 @@ function getPaddingObject(padding) {
4243
4331
  }
4244
4332
  function rectToClientRect(rect) {
4245
4333
  const {
4246
- x,
4334
+ x: x2,
4247
4335
  y,
4248
4336
  width,
4249
4337
  height
@@ -4252,10 +4340,10 @@ function rectToClientRect(rect) {
4252
4340
  width,
4253
4341
  height,
4254
4342
  top: y,
4255
- left: x,
4256
- right: x + width,
4343
+ left: x2,
4344
+ right: x2 + width,
4257
4345
  bottom: y + height,
4258
- x,
4346
+ x: x2,
4259
4347
  y
4260
4348
  };
4261
4349
  }
@@ -4316,13 +4404,13 @@ function computeCoordsFromPlacement(_ref, placement, rtl) {
4316
4404
  }
4317
4405
  return coords;
4318
4406
  }
4319
- var computePosition = async (reference, floating, config) => {
4407
+ var computePosition = async (reference, floating, config2) => {
4320
4408
  const {
4321
4409
  placement = "bottom",
4322
4410
  strategy = "absolute",
4323
4411
  middleware = [],
4324
4412
  platform: platform2
4325
- } = config;
4413
+ } = config2;
4326
4414
  const validMiddleware = middleware.filter(Boolean);
4327
4415
  const rtl = await (platform2.isRTL == null ? void 0 : platform2.isRTL(floating));
4328
4416
  let rects = await platform2.getElementRects({
@@ -4331,7 +4419,7 @@ var computePosition = async (reference, floating, config) => {
4331
4419
  strategy
4332
4420
  });
4333
4421
  let {
4334
- x,
4422
+ x: x2,
4335
4423
  y
4336
4424
  } = computeCoordsFromPlacement(rects, placement, rtl);
4337
4425
  let statefulPlacement = placement;
@@ -4348,7 +4436,7 @@ var computePosition = async (reference, floating, config) => {
4348
4436
  data,
4349
4437
  reset
4350
4438
  } = await fn({
4351
- x,
4439
+ x: x2,
4352
4440
  y,
4353
4441
  initialPlacement: placement,
4354
4442
  placement: statefulPlacement,
@@ -4361,7 +4449,7 @@ var computePosition = async (reference, floating, config) => {
4361
4449
  floating
4362
4450
  }
4363
4451
  });
4364
- x = nextX != null ? nextX : x;
4452
+ x2 = nextX != null ? nextX : x2;
4365
4453
  y = nextY != null ? nextY : y;
4366
4454
  middlewareData = {
4367
4455
  ...middlewareData,
@@ -4384,7 +4472,7 @@ var computePosition = async (reference, floating, config) => {
4384
4472
  }) : reset.rects;
4385
4473
  }
4386
4474
  ({
4387
- x,
4475
+ x: x2,
4388
4476
  y
4389
4477
  } = computeCoordsFromPlacement(rects, statefulPlacement, rtl));
4390
4478
  }
@@ -4392,7 +4480,7 @@ var computePosition = async (reference, floating, config) => {
4392
4480
  }
4393
4481
  }
4394
4482
  return {
4395
- x,
4483
+ x: x2,
4396
4484
  y,
4397
4485
  placement: statefulPlacement,
4398
4486
  strategy,
@@ -4405,7 +4493,7 @@ async function detectOverflow(state, options) {
4405
4493
  options = {};
4406
4494
  }
4407
4495
  const {
4408
- x,
4496
+ x: x2,
4409
4497
  y,
4410
4498
  platform: platform2,
4411
4499
  rects,
@@ -4429,7 +4517,7 @@ async function detectOverflow(state, options) {
4429
4517
  strategy
4430
4518
  }));
4431
4519
  const rect = elementContext === "floating" ? {
4432
- x,
4520
+ x: x2,
4433
4521
  y,
4434
4522
  width: rects.floating.width,
4435
4523
  height: rects.floating.height
@@ -4460,7 +4548,7 @@ var arrow = (options) => ({
4460
4548
  options,
4461
4549
  async fn(state) {
4462
4550
  const {
4463
- x,
4551
+ x: x2,
4464
4552
  y,
4465
4553
  placement,
4466
4554
  rects,
@@ -4477,7 +4565,7 @@ var arrow = (options) => ({
4477
4565
  }
4478
4566
  const paddingObject = getPaddingObject(padding);
4479
4567
  const coords = {
4480
- x,
4568
+ x: x2,
4481
4569
  y
4482
4570
  };
4483
4571
  const axis = getAlignmentAxis(placement);
@@ -4734,7 +4822,7 @@ var offset = function(options) {
4734
4822
  async fn(state) {
4735
4823
  var _middlewareData$offse, _middlewareData$arrow;
4736
4824
  const {
4737
- x,
4825
+ x: x2,
4738
4826
  y,
4739
4827
  placement,
4740
4828
  middlewareData
@@ -4744,7 +4832,7 @@ var offset = function(options) {
4744
4832
  return {};
4745
4833
  }
4746
4834
  return {
4747
- x: x + diffCoords.x,
4835
+ x: x2 + diffCoords.x,
4748
4836
  y: y + diffCoords.y,
4749
4837
  data: {
4750
4838
  ...diffCoords,
@@ -4763,7 +4851,7 @@ var shift = function(options) {
4763
4851
  options,
4764
4852
  async fn(state) {
4765
4853
  const {
4766
- x,
4854
+ x: x2,
4767
4855
  y,
4768
4856
  placement
4769
4857
  } = state;
@@ -4773,11 +4861,11 @@ var shift = function(options) {
4773
4861
  limiter = {
4774
4862
  fn: (_ref) => {
4775
4863
  let {
4776
- x: x2,
4864
+ x: x3,
4777
4865
  y: y2
4778
4866
  } = _ref;
4779
4867
  return {
4780
- x: x2,
4868
+ x: x3,
4781
4869
  y: y2
4782
4870
  };
4783
4871
  }
@@ -4785,7 +4873,7 @@ var shift = function(options) {
4785
4873
  ...detectOverflowOptions
4786
4874
  } = evaluate(options, state);
4787
4875
  const coords = {
4788
- x,
4876
+ x: x2,
4789
4877
  y
4790
4878
  };
4791
4879
  const overflow = await detectOverflow(state, detectOverflowOptions);
@@ -4815,7 +4903,7 @@ var shift = function(options) {
4815
4903
  return {
4816
4904
  ...limitedCoords,
4817
4905
  data: {
4818
- x: limitedCoords.x - x,
4906
+ x: limitedCoords.x - x2,
4819
4907
  y: limitedCoords.y - y,
4820
4908
  enabled: {
4821
4909
  [mainAxis]: checkMainAxis,
@@ -4834,7 +4922,7 @@ var limitShift = function(options) {
4834
4922
  options,
4835
4923
  fn(state) {
4836
4924
  const {
4837
- x,
4925
+ x: x2,
4838
4926
  y,
4839
4927
  placement,
4840
4928
  rects,
@@ -4846,7 +4934,7 @@ var limitShift = function(options) {
4846
4934
  crossAxis: checkCrossAxis = true
4847
4935
  } = evaluate(options, state);
4848
4936
  const coords = {
4849
- x,
4937
+ x: x2,
4850
4938
  y
4851
4939
  };
4852
4940
  const crossAxis = getSideAxis(placement);
@@ -5041,8 +5129,8 @@ var willChangeValues = ["transform", "translate", "scale", "rotate", "perspectiv
5041
5129
  var containValues = ["paint", "layout", "strict", "content"];
5042
5130
  function isContainingBlock(elementOrCss) {
5043
5131
  const webkit = isWebKit();
5044
- const css = isElement(elementOrCss) ? getComputedStyle2(elementOrCss) : elementOrCss;
5045
- return transformProperties.some((value) => css[value] ? css[value] !== "none" : false) || (css.containerType ? css.containerType !== "normal" : false) || !webkit && (css.backdropFilter ? css.backdropFilter !== "none" : false) || !webkit && (css.filter ? css.filter !== "none" : false) || willChangeValues.some((value) => (css.willChange || "").includes(value)) || containValues.some((value) => (css.contain || "").includes(value));
5132
+ const css2 = isElement(elementOrCss) ? getComputedStyle2(elementOrCss) : elementOrCss;
5133
+ return transformProperties.some((value) => css2[value] ? css2[value] !== "none" : false) || (css2.containerType ? css2.containerType !== "normal" : false) || !webkit && (css2.backdropFilter ? css2.backdropFilter !== "none" : false) || !webkit && (css2.filter ? css2.filter !== "none" : false) || willChangeValues.some((value) => (css2.willChange || "").includes(value)) || containValues.some((value) => (css2.contain || "").includes(value));
5046
5134
  }
5047
5135
  function getContainingBlock(element) {
5048
5136
  let currentNode = getParentNode(element);
@@ -5125,9 +5213,9 @@ function getFrameElement(win) {
5125
5213
 
5126
5214
  // ../../node_modules/.pnpm/@floating-ui+dom@1.7.4/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs
5127
5215
  function getCssDimensions(element) {
5128
- const css = getComputedStyle2(element);
5129
- let width = parseFloat(css.width) || 0;
5130
- let height = parseFloat(css.height) || 0;
5216
+ const css2 = getComputedStyle2(element);
5217
+ let width = parseFloat(css2.width) || 0;
5218
+ let height = parseFloat(css2.height) || 0;
5131
5219
  const hasOffset = isHTMLElement(element);
5132
5220
  const offsetWidth = hasOffset ? element.offsetWidth : width;
5133
5221
  const offsetHeight = hasOffset ? element.offsetHeight : height;
@@ -5156,16 +5244,16 @@ function getScale(element) {
5156
5244
  height,
5157
5245
  $
5158
5246
  } = getCssDimensions(domElement);
5159
- let x = ($ ? round(rect.width) : rect.width) / width;
5247
+ let x2 = ($ ? round(rect.width) : rect.width) / width;
5160
5248
  let y = ($ ? round(rect.height) : rect.height) / height;
5161
- if (!x || !Number.isFinite(x)) {
5162
- x = 1;
5249
+ if (!x2 || !Number.isFinite(x2)) {
5250
+ x2 = 1;
5163
5251
  }
5164
5252
  if (!y || !Number.isFinite(y)) {
5165
5253
  y = 1;
5166
5254
  }
5167
5255
  return {
5168
- x,
5256
+ x: x2,
5169
5257
  y
5170
5258
  };
5171
5259
  }
@@ -5209,7 +5297,7 @@ function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetPar
5209
5297
  }
5210
5298
  }
5211
5299
  const visualOffsets = shouldAddVisualOffsets(domElement, isFixedStrategy, offsetParent) ? getVisualOffsets(domElement) : createCoords(0);
5212
- let x = (clientRect.left + visualOffsets.x) / scale.x;
5300
+ let x2 = (clientRect.left + visualOffsets.x) / scale.x;
5213
5301
  let y = (clientRect.top + visualOffsets.y) / scale.y;
5214
5302
  let width = clientRect.width / scale.x;
5215
5303
  let height = clientRect.height / scale.y;
@@ -5221,14 +5309,14 @@ function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetPar
5221
5309
  while (currentIFrame && offsetParent && offsetWin !== currentWin) {
5222
5310
  const iframeScale = getScale(currentIFrame);
5223
5311
  const iframeRect = currentIFrame.getBoundingClientRect();
5224
- const css = getComputedStyle2(currentIFrame);
5225
- const left = iframeRect.left + (currentIFrame.clientLeft + parseFloat(css.paddingLeft)) * iframeScale.x;
5226
- const top = iframeRect.top + (currentIFrame.clientTop + parseFloat(css.paddingTop)) * iframeScale.y;
5227
- x *= iframeScale.x;
5312
+ const css2 = getComputedStyle2(currentIFrame);
5313
+ const left = iframeRect.left + (currentIFrame.clientLeft + parseFloat(css2.paddingLeft)) * iframeScale.x;
5314
+ const top = iframeRect.top + (currentIFrame.clientTop + parseFloat(css2.paddingTop)) * iframeScale.y;
5315
+ x2 *= iframeScale.x;
5228
5316
  y *= iframeScale.y;
5229
5317
  width *= iframeScale.x;
5230
5318
  height *= iframeScale.y;
5231
- x += left;
5319
+ x2 += left;
5232
5320
  y += top;
5233
5321
  currentWin = getWindow(currentIFrame);
5234
5322
  currentIFrame = getFrameElement(currentWin);
@@ -5237,7 +5325,7 @@ function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetPar
5237
5325
  return rectToClientRect({
5238
5326
  width,
5239
5327
  height,
5240
- x,
5328
+ x: x2,
5241
5329
  y
5242
5330
  });
5243
5331
  }
@@ -5250,10 +5338,10 @@ function getWindowScrollBarX(element, rect) {
5250
5338
  }
5251
5339
  function getHTMLOffset(documentElement, scroll) {
5252
5340
  const htmlRect = documentElement.getBoundingClientRect();
5253
- const x = htmlRect.left + scroll.scrollLeft - getWindowScrollBarX(documentElement, htmlRect);
5341
+ const x2 = htmlRect.left + scroll.scrollLeft - getWindowScrollBarX(documentElement, htmlRect);
5254
5342
  const y = htmlRect.top + scroll.scrollTop;
5255
5343
  return {
5256
- x,
5344
+ x: x2,
5257
5345
  y
5258
5346
  };
5259
5347
  }
@@ -5305,15 +5393,15 @@ function getDocumentRect(element) {
5305
5393
  const body = element.ownerDocument.body;
5306
5394
  const width = max(html.scrollWidth, html.clientWidth, body.scrollWidth, body.clientWidth);
5307
5395
  const height = max(html.scrollHeight, html.clientHeight, body.scrollHeight, body.clientHeight);
5308
- let x = -scroll.scrollLeft + getWindowScrollBarX(element);
5396
+ let x2 = -scroll.scrollLeft + getWindowScrollBarX(element);
5309
5397
  const y = -scroll.scrollTop;
5310
5398
  if (getComputedStyle2(body).direction === "rtl") {
5311
- x += max(html.clientWidth, body.clientWidth) - width;
5399
+ x2 += max(html.clientWidth, body.clientWidth) - width;
5312
5400
  }
5313
5401
  return {
5314
5402
  width,
5315
5403
  height,
5316
- x,
5404
+ x: x2,
5317
5405
  y
5318
5406
  };
5319
5407
  }
@@ -5324,14 +5412,14 @@ function getViewportRect(element, strategy) {
5324
5412
  const visualViewport = win.visualViewport;
5325
5413
  let width = html.clientWidth;
5326
5414
  let height = html.clientHeight;
5327
- let x = 0;
5415
+ let x2 = 0;
5328
5416
  let y = 0;
5329
5417
  if (visualViewport) {
5330
5418
  width = visualViewport.width;
5331
5419
  height = visualViewport.height;
5332
5420
  const visualViewportBased = isWebKit();
5333
5421
  if (!visualViewportBased || visualViewportBased && strategy === "fixed") {
5334
- x = visualViewport.offsetLeft;
5422
+ x2 = visualViewport.offsetLeft;
5335
5423
  y = visualViewport.offsetTop;
5336
5424
  }
5337
5425
  }
@@ -5351,7 +5439,7 @@ function getViewportRect(element, strategy) {
5351
5439
  return {
5352
5440
  width,
5353
5441
  height,
5354
- x,
5442
+ x: x2,
5355
5443
  y
5356
5444
  };
5357
5445
  }
@@ -5363,12 +5451,12 @@ function getInnerBoundingClientRect(element, strategy) {
5363
5451
  const scale = isHTMLElement(element) ? getScale(element) : createCoords(1);
5364
5452
  const width = element.clientWidth * scale.x;
5365
5453
  const height = element.clientHeight * scale.y;
5366
- const x = left * scale.x;
5454
+ const x2 = left * scale.x;
5367
5455
  const y = top * scale.y;
5368
5456
  return {
5369
5457
  width,
5370
5458
  height,
5371
- x,
5459
+ x: x2,
5372
5460
  y
5373
5461
  };
5374
5462
  }
@@ -5488,10 +5576,10 @@ function getRectRelativeToOffsetParent(element, offsetParent, strategy) {
5488
5576
  setLeftRTLScrollbarOffset();
5489
5577
  }
5490
5578
  const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll) : createCoords(0);
5491
- const x = rect.left + scroll.scrollLeft - offsets.x - htmlOffset.x;
5579
+ const x2 = rect.left + scroll.scrollLeft - offsets.x - htmlOffset.x;
5492
5580
  const y = rect.top + scroll.scrollTop - offsets.y - htmlOffset.y;
5493
5581
  return {
5494
- x,
5582
+ x: x2,
5495
5583
  y,
5496
5584
  width: rect.width,
5497
5585
  height: rect.height
@@ -5858,15 +5946,15 @@ function useFloating(options) {
5858
5946
  if (!referenceRef.current || !floatingRef.current) {
5859
5947
  return;
5860
5948
  }
5861
- const config = {
5949
+ const config2 = {
5862
5950
  placement,
5863
5951
  strategy,
5864
5952
  middleware: latestMiddleware
5865
5953
  };
5866
5954
  if (platformRef.current) {
5867
- config.platform = platformRef.current;
5955
+ config2.platform = platformRef.current;
5868
5956
  }
5869
- computePosition2(referenceRef.current, floatingRef.current, config).then((data2) => {
5957
+ computePosition2(referenceRef.current, floatingRef.current, config2).then((data2) => {
5870
5958
  const fullData = {
5871
5959
  ...data2,
5872
5960
  // The floating element's position may be recomputed while it's closed
@@ -5928,12 +6016,12 @@ function useFloating(options) {
5928
6016
  if (!elements.floating) {
5929
6017
  return initialStyles;
5930
6018
  }
5931
- const x = roundByDPR(elements.floating, data.x);
6019
+ const x2 = roundByDPR(elements.floating, data.x);
5932
6020
  const y = roundByDPR(elements.floating, data.y);
5933
6021
  if (transform) {
5934
6022
  return {
5935
6023
  ...initialStyles,
5936
- transform: "translate(" + x + "px, " + y + "px)",
6024
+ transform: "translate(" + x2 + "px, " + y + "px)",
5937
6025
  ...getDPR(elements.floating) >= 1.5 && {
5938
6026
  willChange: "transform"
5939
6027
  }
@@ -5941,7 +6029,7 @@ function useFloating(options) {
5941
6029
  }
5942
6030
  return {
5943
6031
  position: strategy,
5944
- left: x,
6032
+ left: x2,
5945
6033
  top: y
5946
6034
  };
5947
6035
  }, [strategy, transform, elements.floating, data.x, data.y]);
@@ -6307,22 +6395,22 @@ var transformOrigin = (options) => ({
6307
6395
  const noArrowAlign = { start: "0%", center: "50%", end: "100%" }[placedAlign];
6308
6396
  const arrowXCenter = (middlewareData.arrow?.x ?? 0) + arrowWidth / 2;
6309
6397
  const arrowYCenter = (middlewareData.arrow?.y ?? 0) + arrowHeight / 2;
6310
- let x = "";
6398
+ let x2 = "";
6311
6399
  let y = "";
6312
6400
  if (placedSide === "bottom") {
6313
- x = isArrowHidden ? noArrowAlign : `${arrowXCenter}px`;
6401
+ x2 = isArrowHidden ? noArrowAlign : `${arrowXCenter}px`;
6314
6402
  y = `${-arrowHeight}px`;
6315
6403
  } else if (placedSide === "top") {
6316
- x = isArrowHidden ? noArrowAlign : `${arrowXCenter}px`;
6404
+ x2 = isArrowHidden ? noArrowAlign : `${arrowXCenter}px`;
6317
6405
  y = `${rects.floating.height + arrowHeight}px`;
6318
6406
  } else if (placedSide === "right") {
6319
- x = `${-arrowHeight}px`;
6407
+ x2 = `${-arrowHeight}px`;
6320
6408
  y = isArrowHidden ? noArrowAlign : `${arrowYCenter}px`;
6321
6409
  } else if (placedSide === "left") {
6322
- x = `${rects.floating.width + arrowHeight}px`;
6410
+ x2 = `${rects.floating.width + arrowHeight}px`;
6323
6411
  y = isArrowHidden ? noArrowAlign : `${arrowYCenter}px`;
6324
6412
  }
6325
- return { data: { x, y } };
6413
+ return { data: { x: x2, y } };
6326
6414
  }
6327
6415
  });
6328
6416
  function getSideAndAlignFromPlacement(placement) {
@@ -6381,15 +6469,15 @@ function usePresence(present) {
6381
6469
  prevAnimationNameRef.current = state === "mounted" ? currentAnimationName : "none";
6382
6470
  }, [state]);
6383
6471
  useLayoutEffect2(() => {
6384
- const styles = stylesRef.current;
6472
+ const styles2 = stylesRef.current;
6385
6473
  const wasPresent = prevPresentRef.current;
6386
6474
  const hasPresentChanged = wasPresent !== present;
6387
6475
  if (hasPresentChanged) {
6388
6476
  const prevAnimationName = prevAnimationNameRef.current;
6389
- const currentAnimationName = getAnimationName(styles);
6477
+ const currentAnimationName = getAnimationName(styles2);
6390
6478
  if (present) {
6391
6479
  send("MOUNT");
6392
- } else if (currentAnimationName === "none" || styles?.display === "none") {
6480
+ } else if (currentAnimationName === "none" || styles2?.display === "none") {
6393
6481
  send("UNMOUNT");
6394
6482
  } else {
6395
6483
  const isAnimating = prevAnimationName !== currentAnimationName;
@@ -6448,8 +6536,8 @@ function usePresence(present) {
6448
6536
  }, [])
6449
6537
  };
6450
6538
  }
6451
- function getAnimationName(styles) {
6452
- return styles?.animationName || "none";
6539
+ function getAnimationName(styles2) {
6540
+ return styles2?.animationName || "none";
6453
6541
  }
6454
6542
  function getElementRef3(element) {
6455
6543
  let getter = Object.getOwnPropertyDescriptor(element.props, "ref")?.get;
@@ -6700,8 +6788,8 @@ var correctTargets = function(parent, targets) {
6700
6788
  }
6701
6789
  console.error("aria-hidden", target, "in not contained inside", parent, ". Doing nothing");
6702
6790
  return null;
6703
- }).filter(function(x) {
6704
- return Boolean(x);
6791
+ }).filter(function(x2) {
6792
+ return Boolean(x2);
6705
6793
  });
6706
6794
  };
6707
6795
  var applyAttributeToOthers = function(originalTarget, parentNode, markerName, controlAttribute) {
@@ -6797,25 +6885,25 @@ var hideOthers = function(originalTarget, parentNode, markerName) {
6797
6885
 
6798
6886
  // ../../node_modules/.pnpm/tslib@2.8.1/node_modules/tslib/tslib.es6.mjs
6799
6887
  var __assign = function() {
6800
- __assign = Object.assign || function __assign2(t) {
6801
- for (var s, i = 1, n = arguments.length; i < n; i++) {
6802
- s = arguments[i];
6803
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
6888
+ __assign = Object.assign || function __assign2(t2) {
6889
+ for (var s2, i = 1, n = arguments.length; i < n; i++) {
6890
+ s2 = arguments[i];
6891
+ for (var p2 in s2) if (Object.prototype.hasOwnProperty.call(s2, p2)) t2[p2] = s2[p2];
6804
6892
  }
6805
- return t;
6893
+ return t2;
6806
6894
  };
6807
6895
  return __assign.apply(this, arguments);
6808
6896
  };
6809
- function __rest(s, e) {
6810
- var t = {};
6811
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
6812
- t[p] = s[p];
6813
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
6814
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
6815
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
6816
- t[p[i]] = s[p[i]];
6897
+ function __rest(s2, e) {
6898
+ var t2 = {};
6899
+ for (var p2 in s2) if (Object.prototype.hasOwnProperty.call(s2, p2) && e.indexOf(p2) < 0)
6900
+ t2[p2] = s2[p2];
6901
+ if (s2 != null && typeof Object.getOwnPropertySymbols === "function")
6902
+ for (var i = 0, p2 = Object.getOwnPropertySymbols(s2); i < p2.length; i++) {
6903
+ if (e.indexOf(p2[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s2, p2[i]))
6904
+ t2[p2[i]] = s2[p2[i]];
6817
6905
  }
6818
- return t;
6906
+ return t2;
6819
6907
  }
6820
6908
  function __spreadArray(to, from, pack) {
6821
6909
  for (var i = 0, l = from.length, ar; i < l; i++) {
@@ -6921,8 +7009,8 @@ function innerCreateMedium(defaults, middleware) {
6921
7009
  var item = middleware(data, assigned);
6922
7010
  buffer.push(item);
6923
7011
  return function() {
6924
- buffer = buffer.filter(function(x) {
6925
- return x !== item;
7012
+ buffer = buffer.filter(function(x2) {
7013
+ return x2 !== item;
6926
7014
  });
6927
7015
  };
6928
7016
  },
@@ -6934,8 +7022,8 @@ function innerCreateMedium(defaults, middleware) {
6934
7022
  cbs.forEach(cb);
6935
7023
  }
6936
7024
  buffer = {
6937
- push: function(x) {
6938
- return cb(x);
7025
+ push: function(x2) {
7026
+ return cb(x2);
6939
7027
  },
6940
7028
  filter: function() {
6941
7029
  return buffer;
@@ -6961,8 +7049,8 @@ function innerCreateMedium(defaults, middleware) {
6961
7049
  };
6962
7050
  cycle();
6963
7051
  buffer = {
6964
- push: function(x) {
6965
- pendingQueue.push(x);
7052
+ push: function(x2) {
7053
+ pendingQueue.push(x2);
6966
7054
  cycle();
6967
7055
  },
6968
7056
  filter: function(filter) {
@@ -7052,11 +7140,11 @@ function makeStyleTag() {
7052
7140
  }
7053
7141
  return tag;
7054
7142
  }
7055
- function injectStyles(tag, css) {
7143
+ function injectStyles(tag, css2) {
7056
7144
  if (tag.styleSheet) {
7057
- tag.styleSheet.cssText = css;
7145
+ tag.styleSheet.cssText = css2;
7058
7146
  } else {
7059
- tag.appendChild(document.createTextNode(css));
7147
+ tag.appendChild(document.createTextNode(css2));
7060
7148
  }
7061
7149
  }
7062
7150
  function insertStyleTag(tag) {
@@ -7064,21 +7152,21 @@ function insertStyleTag(tag) {
7064
7152
  head.appendChild(tag);
7065
7153
  }
7066
7154
  var stylesheetSingleton = function() {
7067
- var counter = 0;
7155
+ var counter2 = 0;
7068
7156
  var stylesheet = null;
7069
7157
  return {
7070
7158
  add: function(style) {
7071
- if (counter == 0) {
7159
+ if (counter2 == 0) {
7072
7160
  if (stylesheet = makeStyleTag()) {
7073
7161
  injectStyles(stylesheet, style);
7074
7162
  insertStyleTag(stylesheet);
7075
7163
  }
7076
7164
  }
7077
- counter++;
7165
+ counter2++;
7078
7166
  },
7079
7167
  remove: function() {
7080
- counter--;
7081
- if (!counter && stylesheet) {
7168
+ counter2--;
7169
+ if (!counter2 && stylesheet) {
7082
7170
  stylesheet.parentNode && stylesheet.parentNode.removeChild(stylesheet);
7083
7171
  stylesheet = null;
7084
7172
  }
@@ -7089,13 +7177,13 @@ var stylesheetSingleton = function() {
7089
7177
  // ../../node_modules/.pnpm/react-style-singleton@2.2.3_@types+react@19.2.2_react@19.2.2/node_modules/react-style-singleton/dist/es2015/hook.js
7090
7178
  var styleHookSingleton = function() {
7091
7179
  var sheet = stylesheetSingleton();
7092
- return function(styles, isDynamic) {
7180
+ return function(styles2, isDynamic) {
7093
7181
  React45__namespace.useEffect(function() {
7094
- sheet.add(styles);
7182
+ sheet.add(styles2);
7095
7183
  return function() {
7096
7184
  sheet.remove();
7097
7185
  };
7098
- }, [styles && isDynamic]);
7186
+ }, [styles2 && isDynamic]);
7099
7187
  };
7100
7188
  };
7101
7189
 
@@ -7103,8 +7191,8 @@ var styleHookSingleton = function() {
7103
7191
  var styleSingleton = function() {
7104
7192
  var useStyle = styleHookSingleton();
7105
7193
  var Sheet = function(_a) {
7106
- var styles = _a.styles, dynamic = _a.dynamic;
7107
- useStyle(styles, dynamic);
7194
+ var styles2 = _a.styles, dynamic = _a.dynamic;
7195
+ useStyle(styles2, dynamic);
7108
7196
  return null;
7109
7197
  };
7110
7198
  return Sheet;
@@ -7117,8 +7205,8 @@ var zeroGap = {
7117
7205
  right: 0,
7118
7206
  gap: 0
7119
7207
  };
7120
- var parse = function(x) {
7121
- return parseInt(x || "", 10) || 0;
7208
+ var parse = function(x2) {
7209
+ return parseInt(x2 || "", 10) || 0;
7122
7210
  };
7123
7211
  var getOffset = function(gapMode) {
7124
7212
  var cs = window.getComputedStyle(document.body);
@@ -7160,8 +7248,8 @@ var getStyles = function(_a, allowRelative, gapMode, important) {
7160
7248
  ].filter(Boolean).join(""), "\n }\n \n .").concat(zeroRightClassName, " {\n right: ").concat(gap, "px ").concat(important, ";\n }\n \n .").concat(fullWidthClassName, " {\n margin-right: ").concat(gap, "px ").concat(important, ";\n }\n \n .").concat(zeroRightClassName, " .").concat(zeroRightClassName, " {\n right: 0 ").concat(important, ";\n }\n \n .").concat(fullWidthClassName, " .").concat(fullWidthClassName, " {\n margin-right: 0 ").concat(important, ";\n }\n \n body[").concat(lockAttribute, "] {\n ").concat(removedBarSizeVariable, ": ").concat(gap, "px;\n }\n");
7161
7249
  };
7162
7250
  var getCurrentUseCounter = function() {
7163
- var counter = parseInt(document.body.getAttribute(lockAttribute) || "0", 10);
7164
- return isFinite(counter) ? counter : 0;
7251
+ var counter2 = parseInt(document.body.getAttribute(lockAttribute) || "0", 10);
7252
+ return isFinite(counter2) ? counter2 : 0;
7165
7253
  };
7166
7254
  var useLockAttribute = function() {
7167
7255
  React45__namespace.useEffect(function() {
@@ -7212,11 +7300,11 @@ var elementCanBeScrolled = function(node, overflow) {
7212
7300
  if (!(node instanceof Element)) {
7213
7301
  return false;
7214
7302
  }
7215
- var styles = window.getComputedStyle(node);
7303
+ var styles2 = window.getComputedStyle(node);
7216
7304
  return (
7217
7305
  // not-not-scrollable
7218
- styles[overflow] !== "hidden" && // contains scroll inside self
7219
- !(styles.overflowY === styles.overflowX && !alwaysContainsScroll(node) && styles[overflow] === "visible")
7306
+ styles2[overflow] !== "hidden" && // contains scroll inside self
7307
+ !(styles2.overflowY === styles2.overflowX && !alwaysContainsScroll(node) && styles2[overflow] === "visible")
7220
7308
  );
7221
7309
  };
7222
7310
  var elementCouldBeVScrolled = function(node) {
@@ -7314,8 +7402,8 @@ var getDeltaXY = function(event) {
7314
7402
  var extractRef = function(ref) {
7315
7403
  return ref && "current" in ref ? ref.current : ref;
7316
7404
  };
7317
- var deltaCompare = function(x, y) {
7318
- return x[0] === y[0] && x[1] === y[1];
7405
+ var deltaCompare = function(x2, y) {
7406
+ return x2[0] === y[0] && x2[1] === y[1];
7319
7407
  };
7320
7408
  var generateStyle = function(id) {
7321
7409
  return "\n .block-interactivity-".concat(id, " {pointer-events: none;}\n .allow-interactivity-").concat(id, " {pointer-events: all;}\n");
@@ -7820,7 +7908,7 @@ var ITEM_NAME2 = "MenuItem";
7820
7908
  var ITEM_SELECT = "menu.itemSelect";
7821
7909
  var MenuItem = React45__namespace.forwardRef(
7822
7910
  (props, forwardedRef) => {
7823
- const { disabled = false, onSelect, ...itemProps } = props;
7911
+ const { disabled: disabled2 = false, onSelect, ...itemProps } = props;
7824
7912
  const ref = React45__namespace.useRef(null);
7825
7913
  const rootContext = useMenuRootContext(ITEM_NAME2, props.__scopeMenu);
7826
7914
  const contentContext = useMenuContentContext(ITEM_NAME2, props.__scopeMenu);
@@ -7828,7 +7916,7 @@ var MenuItem = React45__namespace.forwardRef(
7828
7916
  const isPointerDownRef = React45__namespace.useRef(false);
7829
7917
  const handleSelect = () => {
7830
7918
  const menuItem = ref.current;
7831
- if (!disabled && menuItem) {
7919
+ if (!disabled2 && menuItem) {
7832
7920
  const itemSelectEvent = new CustomEvent(ITEM_SELECT, { bubbles: true, cancelable: true });
7833
7921
  menuItem.addEventListener(ITEM_SELECT, (event) => onSelect?.(event), { once: true });
7834
7922
  dispatchDiscreteCustomEvent(menuItem, itemSelectEvent);
@@ -7844,7 +7932,7 @@ var MenuItem = React45__namespace.forwardRef(
7844
7932
  {
7845
7933
  ...itemProps,
7846
7934
  ref: composedRefs,
7847
- disabled,
7935
+ disabled: disabled2,
7848
7936
  onClick: composeEventHandlers(props.onClick, handleSelect),
7849
7937
  onPointerDown: (event) => {
7850
7938
  props.onPointerDown?.(event);
@@ -7855,7 +7943,7 @@ var MenuItem = React45__namespace.forwardRef(
7855
7943
  }),
7856
7944
  onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {
7857
7945
  const isTypingAhead = contentContext.searchRef.current !== "";
7858
- if (disabled || isTypingAhead && event.key === " ") return;
7946
+ if (disabled2 || isTypingAhead && event.key === " ") return;
7859
7947
  if (SELECTION_KEYS.includes(event.key)) {
7860
7948
  event.currentTarget.click();
7861
7949
  event.preventDefault();
@@ -7868,7 +7956,7 @@ var MenuItem = React45__namespace.forwardRef(
7868
7956
  MenuItem.displayName = ITEM_NAME2;
7869
7957
  var MenuItemImpl = React45__namespace.forwardRef(
7870
7958
  (props, forwardedRef) => {
7871
- const { __scopeMenu, disabled = false, textValue, ...itemProps } = props;
7959
+ const { __scopeMenu, disabled: disabled2 = false, textValue, ...itemProps } = props;
7872
7960
  const contentContext = useMenuContentContext(ITEM_NAME2, __scopeMenu);
7873
7961
  const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeMenu);
7874
7962
  const ref = React45__namespace.useRef(null);
@@ -7885,21 +7973,21 @@ var MenuItemImpl = React45__namespace.forwardRef(
7885
7973
  Collection2.ItemSlot,
7886
7974
  {
7887
7975
  scope: __scopeMenu,
7888
- disabled,
7976
+ disabled: disabled2,
7889
7977
  textValue: textValue ?? textContent,
7890
- children: /* @__PURE__ */ jsxRuntime.jsx(Item, { asChild: true, ...rovingFocusGroupScope, focusable: !disabled, children: /* @__PURE__ */ jsxRuntime.jsx(
7978
+ children: /* @__PURE__ */ jsxRuntime.jsx(Item, { asChild: true, ...rovingFocusGroupScope, focusable: !disabled2, children: /* @__PURE__ */ jsxRuntime.jsx(
7891
7979
  Primitive.div,
7892
7980
  {
7893
7981
  role: "menuitem",
7894
7982
  "data-highlighted": isFocused ? "" : void 0,
7895
- "aria-disabled": disabled || void 0,
7896
- "data-disabled": disabled ? "" : void 0,
7983
+ "aria-disabled": disabled2 || void 0,
7984
+ "data-disabled": disabled2 ? "" : void 0,
7897
7985
  ...itemProps,
7898
7986
  ref: composedRefs,
7899
7987
  onPointerMove: composeEventHandlers(
7900
7988
  props.onPointerMove,
7901
7989
  whenMouse((event) => {
7902
- if (disabled) {
7990
+ if (disabled2) {
7903
7991
  contentContext.onItemLeave(event);
7904
7992
  } else {
7905
7993
  contentContext.onItemEnter(event);
@@ -8251,7 +8339,7 @@ function getNextMatch(values, search, currentMatch) {
8251
8339
  return nextMatch !== currentMatch ? nextMatch : void 0;
8252
8340
  }
8253
8341
  function isPointInPolygon(point, polygon) {
8254
- const { x, y } = point;
8342
+ const { x: x2, y } = point;
8255
8343
  let inside = false;
8256
8344
  for (let i = 0, j = polygon.length - 1; i < polygon.length; j = i++) {
8257
8345
  const ii = polygon[i];
@@ -8260,7 +8348,7 @@ function isPointInPolygon(point, polygon) {
8260
8348
  const yi = ii.y;
8261
8349
  const xj = jj.x;
8262
8350
  const yj = jj.y;
8263
- const intersect = yi > y !== yj > y && x < (xj - xi) * (y - yi) / (yj - yi) + xi;
8351
+ const intersect = yi > y !== yj > y && x2 < (xj - xi) * (y - yi) / (yj - yi) + xi;
8264
8352
  if (intersect) inside = !inside;
8265
8353
  }
8266
8354
  return inside;
@@ -8333,7 +8421,7 @@ DropdownMenu.displayName = DROPDOWN_MENU_NAME;
8333
8421
  var TRIGGER_NAME = "DropdownMenuTrigger";
8334
8422
  var DropdownMenuTrigger = React45__namespace.forwardRef(
8335
8423
  (props, forwardedRef) => {
8336
- const { __scopeDropdownMenu, disabled = false, ...triggerProps } = props;
8424
+ const { __scopeDropdownMenu, disabled: disabled2 = false, ...triggerProps } = props;
8337
8425
  const context = useDropdownMenuContext(TRIGGER_NAME, __scopeDropdownMenu);
8338
8426
  const menuScope = useMenuScope(__scopeDropdownMenu);
8339
8427
  return /* @__PURE__ */ jsxRuntime.jsx(Anchor2, { asChild: true, ...menuScope, children: /* @__PURE__ */ jsxRuntime.jsx(
@@ -8345,18 +8433,18 @@ var DropdownMenuTrigger = React45__namespace.forwardRef(
8345
8433
  "aria-expanded": context.open,
8346
8434
  "aria-controls": context.open ? context.contentId : void 0,
8347
8435
  "data-state": context.open ? "open" : "closed",
8348
- "data-disabled": disabled ? "" : void 0,
8349
- disabled,
8436
+ "data-disabled": disabled2 ? "" : void 0,
8437
+ disabled: disabled2,
8350
8438
  ...triggerProps,
8351
8439
  ref: composeRefs(forwardedRef, context.triggerRef),
8352
8440
  onPointerDown: composeEventHandlers(props.onPointerDown, (event) => {
8353
- if (!disabled && event.button === 0 && event.ctrlKey === false) {
8441
+ if (!disabled2 && event.button === 0 && event.ctrlKey === false) {
8354
8442
  context.onOpenToggle();
8355
8443
  if (!context.open) event.preventDefault();
8356
8444
  }
8357
8445
  }),
8358
8446
  onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {
8359
- if (disabled) return;
8447
+ if (disabled2) return;
8360
8448
  if (["Enter", " "].includes(event.key)) context.onOpenToggle();
8361
8449
  if (event.key === "ArrowDown") context.onOpenChange(true);
8362
8450
  if (["Enter", " ", "ArrowDown"].includes(event.key)) event.preventDefault();
@@ -8918,11 +9006,11 @@ function useResolvedExpectedType(expectedType, devCtx) {
8918
9006
  const content = match[1]?.trim() || "";
8919
9007
  if (content.startsWith("[") && content.endsWith("]")) {
8920
9008
  const arrayContent = content.slice(1, -1);
8921
- const fieldNames = arrayContent.split(",").map((s) => s.trim().replace(/^["']|["']$/g, "")).filter(Boolean);
9009
+ const fieldNames = arrayContent.split(",").map((s2) => s2.trim().replace(/^["']|["']$/g, "")).filter(Boolean);
8922
9010
  if (!inferredTypes) {
8923
9011
  return `Subscribing to: ${fieldNames.join(", ")}`;
8924
9012
  }
8925
- const types = fieldNames.map((name) => inferredTypes[name]).filter((t) => !!t && t.length > 0);
9013
+ const types = fieldNames.map((name) => inferredTypes[name]).filter((t2) => !!t2 && t2.length > 0);
8926
9014
  if (types.length === 0) {
8927
9015
  return `Waiting for: ${fieldNames.join(", ")}`;
8928
9016
  }
@@ -8942,8 +9030,8 @@ function Input({
8942
9030
  fieldName,
8943
9031
  label,
8944
9032
  value,
8945
- onChange,
8946
- disabled = false,
9033
+ onChange: onChange2,
9034
+ disabled: disabled2 = false,
8947
9035
  placeholder,
8948
9036
  expectedType = "string",
8949
9037
  required = false,
@@ -8966,8 +9054,8 @@ function Input({
8966
9054
  return value != null && typeof value === "object" && "expression" in value;
8967
9055
  }, [value]);
8968
9056
  const handleChange = React45__namespace.useCallback(
8969
- (e) => onChange(e.target.value),
8970
- [onChange]
9057
+ (e) => onChange2(e.target.value),
9058
+ [onChange2]
8971
9059
  );
8972
9060
  const showError = hasRequiredError || required && !displayValue;
8973
9061
  const isWaiting = resolvedExpectedType.startsWith("Waiting for:") || resolvedExpectedType.startsWith("Subscribing to:");
@@ -9009,7 +9097,7 @@ function Input({
9009
9097
  type: "text",
9010
9098
  value: displayValue,
9011
9099
  onChange: handleChange,
9012
- disabled,
9100
+ disabled: disabled2,
9013
9101
  placeholder: placeholder || "Enter value or {{ expression }}...",
9014
9102
  className: cn(
9015
9103
  "uii:w-full uii:h-9 uii:px-3 uii:rounded-sm uii:border uii:bg-background uii:text-sm",
@@ -9017,7 +9105,7 @@ function Input({
9017
9105
  "focus:uii:border-ring focus:uii:ring-ring/50 focus:uii:ring-[3px]",
9018
9106
  showError ? "uii:border-red-500 hover:uii:border-red-600" : "uii:border-input hover:uii:border-ring/50",
9019
9107
  isExpression && "uii:font-mono uii:text-amber-600",
9020
- disabled && "uii:opacity-50 uii:cursor-not-allowed",
9108
+ disabled2 && "uii:opacity-50 uii:cursor-not-allowed",
9021
9109
  editorClassName
9022
9110
  )
9023
9111
  }
@@ -9089,7 +9177,7 @@ var Select = (props) => {
9089
9177
  dir,
9090
9178
  name,
9091
9179
  autoComplete,
9092
- disabled,
9180
+ disabled: disabled2,
9093
9181
  required,
9094
9182
  form
9095
9183
  } = props;
@@ -9132,7 +9220,7 @@ var Select = (props) => {
9132
9220
  onOpenChange: setOpen,
9133
9221
  dir: direction,
9134
9222
  triggerPointerDownPosRef,
9135
- disabled,
9223
+ disabled: disabled2,
9136
9224
  children: [
9137
9225
  /* @__PURE__ */ jsxRuntime.jsx(Collection3.Provider, { scope: __scopeSelect, children: /* @__PURE__ */ jsxRuntime.jsx(
9138
9226
  SelectNativeOptionsProvider,
@@ -9161,7 +9249,7 @@ var Select = (props) => {
9161
9249
  autoComplete,
9162
9250
  value,
9163
9251
  onChange: (event) => setValue(event.target.value),
9164
- disabled,
9252
+ disabled: disabled2,
9165
9253
  form,
9166
9254
  children: [
9167
9255
  value === void 0 ? /* @__PURE__ */ jsxRuntime.jsx("option", { value: "" }) : null,
@@ -9178,10 +9266,10 @@ Select.displayName = SELECT_NAME;
9178
9266
  var TRIGGER_NAME2 = "SelectTrigger";
9179
9267
  var SelectTrigger = React45__namespace.forwardRef(
9180
9268
  (props, forwardedRef) => {
9181
- const { __scopeSelect, disabled = false, ...triggerProps } = props;
9269
+ const { __scopeSelect, disabled: disabled2 = false, ...triggerProps } = props;
9182
9270
  const popperScope = usePopperScope2(__scopeSelect);
9183
9271
  const context = useSelectContext(TRIGGER_NAME2, __scopeSelect);
9184
- const isDisabled = context.disabled || disabled;
9272
+ const isDisabled = context.disabled || disabled2;
9185
9273
  const composedRefs = useComposedRefs(forwardedRef, context.onTriggerChange);
9186
9274
  const getItems = useCollection3(__scopeSelect);
9187
9275
  const pointerTypeRef = React45__namespace.useRef("touch");
@@ -9424,8 +9512,8 @@ var SelectContentImpl = React45__namespace.forwardRef(
9424
9512
  }
9425
9513
  });
9426
9514
  const itemRefCallback = React45__namespace.useCallback(
9427
- (node, value, disabled) => {
9428
- const isFirstValidItem = !firstValidItemFoundRef.current && !disabled;
9515
+ (node, value, disabled2) => {
9516
+ const isFirstValidItem = !firstValidItemFoundRef.current && !disabled2;
9429
9517
  const isSelectedItem = context.value !== void 0 && context.value === value;
9430
9518
  if (isSelectedItem || isFirstValidItem) {
9431
9519
  setSelectedItem(node);
@@ -9436,8 +9524,8 @@ var SelectContentImpl = React45__namespace.forwardRef(
9436
9524
  );
9437
9525
  const handleItemLeave = React45__namespace.useCallback(() => content?.focus(), [content]);
9438
9526
  const itemTextRefCallback = React45__namespace.useCallback(
9439
- (node, value, disabled) => {
9440
- const isFirstValidItem = !firstValidItemFoundRef.current && !disabled;
9527
+ (node, value, disabled2) => {
9528
+ const isFirstValidItem = !firstValidItemFoundRef.current && !disabled2;
9441
9529
  const isSelectedItem = context.value !== void 0 && context.value === value;
9442
9530
  if (isSelectedItem || isFirstValidItem) {
9443
9531
  setSelectedItemText(node);
@@ -9838,7 +9926,7 @@ var SelectItem = React45__namespace.forwardRef(
9838
9926
  const {
9839
9927
  __scopeSelect,
9840
9928
  value,
9841
- disabled = false,
9929
+ disabled: disabled2 = false,
9842
9930
  textValue: textValueProp,
9843
9931
  ...itemProps
9844
9932
  } = props;
@@ -9849,12 +9937,12 @@ var SelectItem = React45__namespace.forwardRef(
9849
9937
  const [isFocused, setIsFocused] = React45__namespace.useState(false);
9850
9938
  const composedRefs = useComposedRefs(
9851
9939
  forwardedRef,
9852
- (node) => contentContext.itemRefCallback?.(node, value, disabled)
9940
+ (node) => contentContext.itemRefCallback?.(node, value, disabled2)
9853
9941
  );
9854
9942
  const textId = useId();
9855
9943
  const pointerTypeRef = React45__namespace.useRef("touch");
9856
9944
  const handleSelect = () => {
9857
- if (!disabled) {
9945
+ if (!disabled2) {
9858
9946
  context.onValueChange(value);
9859
9947
  context.onOpenChange(false);
9860
9948
  }
@@ -9869,7 +9957,7 @@ var SelectItem = React45__namespace.forwardRef(
9869
9957
  {
9870
9958
  scope: __scopeSelect,
9871
9959
  value,
9872
- disabled,
9960
+ disabled: disabled2,
9873
9961
  textId,
9874
9962
  isSelected,
9875
9963
  onItemTextChange: React45__namespace.useCallback((node) => {
@@ -9880,7 +9968,7 @@ var SelectItem = React45__namespace.forwardRef(
9880
9968
  {
9881
9969
  scope: __scopeSelect,
9882
9970
  value,
9883
- disabled,
9971
+ disabled: disabled2,
9884
9972
  textValue,
9885
9973
  children: /* @__PURE__ */ jsxRuntime.jsx(
9886
9974
  Primitive.div,
@@ -9890,9 +9978,9 @@ var SelectItem = React45__namespace.forwardRef(
9890
9978
  "data-highlighted": isFocused ? "" : void 0,
9891
9979
  "aria-selected": isSelected && isFocused,
9892
9980
  "data-state": isSelected ? "checked" : "unchecked",
9893
- "aria-disabled": disabled || void 0,
9894
- "data-disabled": disabled ? "" : void 0,
9895
- tabIndex: disabled ? void 0 : -1,
9981
+ "aria-disabled": disabled2 || void 0,
9982
+ "data-disabled": disabled2 ? "" : void 0,
9983
+ tabIndex: disabled2 ? void 0 : -1,
9896
9984
  ...itemProps,
9897
9985
  ref: composedRefs,
9898
9986
  onFocus: composeEventHandlers(itemProps.onFocus, () => setIsFocused(true)),
@@ -9908,7 +9996,7 @@ var SelectItem = React45__namespace.forwardRef(
9908
9996
  }),
9909
9997
  onPointerMove: composeEventHandlers(itemProps.onPointerMove, (event) => {
9910
9998
  pointerTypeRef.current = event.pointerType;
9911
- if (disabled) {
9999
+ if (disabled2) {
9912
10000
  contentContext.onItemLeave?.();
9913
10001
  } else if (pointerTypeRef.current === "mouse") {
9914
10002
  event.currentTarget.focus({ preventScroll: true });
@@ -10326,11 +10414,11 @@ function useResolvedExpectedType2(expectedType, devCtx) {
10326
10414
  const content = match[1]?.trim() || "";
10327
10415
  if (content.startsWith("[") && content.endsWith("]")) {
10328
10416
  const arrayContent = content.slice(1, -1);
10329
- const fieldNames = arrayContent.split(",").map((s) => s.trim().replace(/^["']|["']$/g, "")).filter(Boolean);
10417
+ const fieldNames = arrayContent.split(",").map((s2) => s2.trim().replace(/^["']|["']$/g, "")).filter(Boolean);
10330
10418
  if (!inferredTypes) {
10331
10419
  return `Subscribing to: ${fieldNames.join(", ")}`;
10332
10420
  }
10333
- const types = fieldNames.map((name) => inferredTypes[name]).filter((t) => !!t && t.length > 0);
10421
+ const types = fieldNames.map((name) => inferredTypes[name]).filter((t2) => !!t2 && t2.length > 0);
10334
10422
  if (types.length === 0) {
10335
10423
  return `Waiting for: ${fieldNames.join(", ")}`;
10336
10424
  }
@@ -10350,9 +10438,9 @@ function Select3({
10350
10438
  fieldName,
10351
10439
  label,
10352
10440
  value,
10353
- onChange,
10441
+ onChange: onChange2,
10354
10442
  options: rawOptions,
10355
- disabled = false,
10443
+ disabled: disabled2 = false,
10356
10444
  placeholder,
10357
10445
  expectedType = "string",
10358
10446
  hideTypeBadge = false,
@@ -10390,21 +10478,21 @@ function Select3({
10390
10478
  setIsExpressionMode(true);
10391
10479
  return;
10392
10480
  }
10393
- onChange(newValue);
10394
- }, [onChange]);
10481
+ onChange2(newValue);
10482
+ }, [onChange2]);
10395
10483
  const handleExpressionChange = React45__namespace.useCallback(
10396
10484
  (e) => {
10397
10485
  const newValue = e.target.value;
10398
10486
  setExpressionValue(newValue);
10399
- onChange(newValue);
10487
+ onChange2(newValue);
10400
10488
  },
10401
- [onChange]
10489
+ [onChange2]
10402
10490
  );
10403
10491
  const handleSwitchToValue = React45__namespace.useCallback(() => {
10404
10492
  setIsExpressionMode(false);
10405
10493
  setExpressionValue("");
10406
- onChange("");
10407
- }, [onChange]);
10494
+ onChange2("");
10495
+ }, [onChange2]);
10408
10496
  const showError = hasRequiredError || required && !displayValue;
10409
10497
  const renderProps = {
10410
10498
  value: displayValue,
@@ -10460,12 +10548,12 @@ function Select3({
10460
10548
  type: "text",
10461
10549
  value: expressionValue,
10462
10550
  onChange: handleExpressionChange,
10463
- disabled,
10551
+ disabled: disabled2,
10464
10552
  placeholder: "Enter expression...",
10465
10553
  className: cn(
10466
10554
  "uii:flex-1 uii:h-full uii:px-3 uii:bg-transparent uii:text-sm uii:font-mono uii:text-amber-600",
10467
10555
  "uii:outline-none uii:border-none",
10468
- disabled && "uii:opacity-50 uii:cursor-not-allowed"
10556
+ disabled2 && "uii:opacity-50 uii:cursor-not-allowed"
10469
10557
  )
10470
10558
  }
10471
10559
  ), /* @__PURE__ */ React45__namespace.createElement(
@@ -10515,7 +10603,7 @@ function Select3({
10515
10603
  {
10516
10604
  value: displayValue,
10517
10605
  onValueChange: (e) => handleSelectChange(e),
10518
- disabled: disabled ?? disabled
10606
+ disabled: disabled2 ?? disabled2
10519
10607
  },
10520
10608
  /* @__PURE__ */ React45__namespace.createElement(
10521
10609
  SelectTrigger2,
@@ -10543,30 +10631,30 @@ function parseInferredTypes(typeStr) {
10543
10631
  result.rawTypes = ["any"];
10544
10632
  return result;
10545
10633
  }
10546
- const types = typeStr.split("|").map((t) => t.trim()).filter(Boolean);
10634
+ const types = typeStr.split("|").map((t2) => t2.trim()).filter(Boolean);
10547
10635
  const baseTypesSet = /* @__PURE__ */ new Set();
10548
10636
  const rawTypesSet = /* @__PURE__ */ new Set();
10549
- for (const t of types) {
10550
- rawTypesSet.add(t);
10551
- const stringLiteralMatch = t.match(/^["'](.*)["']$/);
10637
+ for (const t2 of types) {
10638
+ rawTypesSet.add(t2);
10639
+ const stringLiteralMatch = t2.match(/^["'](.*)["']$/);
10552
10640
  if (stringLiteralMatch && stringLiteralMatch[1] !== void 0) {
10553
10641
  result.stringConstants.push(stringLiteralMatch[1]);
10554
10642
  baseTypesSet.add("string");
10555
10643
  result.hasConstants = true;
10556
10644
  continue;
10557
10645
  }
10558
- if (/^-?\d+(\.\d+)?$/.test(t)) {
10559
- result.numberConstants.push(parseFloat(t));
10646
+ if (/^-?\d+(\.\d+)?$/.test(t2)) {
10647
+ result.numberConstants.push(parseFloat(t2));
10560
10648
  baseTypesSet.add("number");
10561
10649
  result.hasConstants = true;
10562
10650
  continue;
10563
10651
  }
10564
- if (t === "true" || t === "false") {
10652
+ if (t2 === "true" || t2 === "false") {
10565
10653
  baseTypesSet.add("boolean");
10566
10654
  result.hasConstants = true;
10567
10655
  continue;
10568
10656
  }
10569
- baseTypesSet.add(t);
10657
+ baseTypesSet.add(t2);
10570
10658
  }
10571
10659
  result.baseTypes = Array.from(baseTypesSet);
10572
10660
  result.rawTypes = Array.from(rawTypesSet);
@@ -10578,18 +10666,18 @@ function computeExtendedType(inferredType, opDef) {
10578
10666
  }
10579
10667
  const parsed = parseInferredTypes(inferredType);
10580
10668
  const matchingLiterals = [];
10581
- for (const t of parsed.rawTypes) {
10669
+ for (const t2 of parsed.rawTypes) {
10582
10670
  if (opDef.narrowsTo === "string") {
10583
- if (t === "string") ; else if (/^["'].*["']$/.test(t)) {
10584
- matchingLiterals.push(t);
10671
+ if (t2 === "string") ; else if (/^["'].*["']$/.test(t2)) {
10672
+ matchingLiterals.push(t2);
10585
10673
  }
10586
10674
  } else if (opDef.narrowsTo === "number") {
10587
- if (t === "number") ; else if (/^-?\d+(\.\d+)?$/.test(t)) {
10588
- matchingLiterals.push(t);
10675
+ if (t2 === "number") ; else if (/^-?\d+(\.\d+)?$/.test(t2)) {
10676
+ matchingLiterals.push(t2);
10589
10677
  }
10590
10678
  } else if (opDef.narrowsTo === "boolean") {
10591
- if (t === "boolean") ; else if (t === "true" || t === "false") {
10592
- matchingLiterals.push(t);
10679
+ if (t2 === "boolean") ; else if (t2 === "true" || t2 === "false") {
10680
+ matchingLiterals.push(t2);
10593
10681
  }
10594
10682
  }
10595
10683
  }
@@ -10606,7 +10694,7 @@ function filterOperatorsByType(operators, inferredType) {
10606
10694
  const { baseTypes } = parsed;
10607
10695
  return operators.filter((op) => {
10608
10696
  if (op.types.includes("any")) return true;
10609
- return op.types.some((t) => baseTypes.includes(t) || baseTypes.includes("any"));
10697
+ return op.types.some((t2) => baseTypes.includes(t2) || baseTypes.includes("any"));
10610
10698
  });
10611
10699
  }
10612
10700
  function getStringConstants(inferredType) {
@@ -10681,7 +10769,7 @@ function InferredTypesProvider({ children }) {
10681
10769
  return /* @__PURE__ */ React45__namespace.default.createElement(React45__namespace.default.Fragment, null, children);
10682
10770
  }
10683
10771
  function intersectTypes(types) {
10684
- const validTypes = types.filter((t) => !!t && t.length > 0);
10772
+ const validTypes = types.filter((t2) => !!t2 && t2.length > 0);
10685
10773
  if (validTypes.length === 0) return "any";
10686
10774
  if (validTypes.length === 1) return validTypes[0];
10687
10775
  return validTypes[0];
@@ -10701,7 +10789,7 @@ function parseInferSyntax(expectedType) {
10701
10789
  subscribeToField: content
10702
10790
  };
10703
10791
  }
10704
- const allowedTypes = content.split("|").map((t) => t.trim()).filter(Boolean);
10792
+ const allowedTypes = content.split("|").map((t2) => t2.trim()).filter(Boolean);
10705
10793
  return {
10706
10794
  mode: "publish",
10707
10795
  allowedTypes
@@ -10935,7 +11023,10 @@ function useFieldValidation() {
10935
11023
  var slots_exports = {};
10936
11024
  __export(slots_exports, {
10937
11025
  ExportManager: () => ExportManager,
10938
- SlotElements: () => SlotElements
11026
+ SlotDelete: () => SlotDelete,
11027
+ SlotDragHandle: () => SlotDragHandle,
11028
+ SlotElements: () => SlotElements,
11029
+ SlotEnable: () => SlotEnable
10939
11030
  });
10940
11031
 
10941
11032
  // src/components/slots/SlotElements.tsx
@@ -10949,23 +11040,3431 @@ var ExportManager = (props) => {
10949
11040
  const { slotId } = props;
10950
11041
  return /* @__PURE__ */ React.createElement(Button, { variant: "outline", size: "sm" }, "Manage Exports");
10951
11042
  };
10952
- /*! Bundled license information:
11043
+ var SWITCH_NAME = "Switch";
11044
+ var [createSwitchContext] = createContextScope(SWITCH_NAME);
11045
+ var [SwitchProvider, useSwitchContext] = createSwitchContext(SWITCH_NAME);
11046
+ var Switch = React45__namespace.forwardRef(
11047
+ (props, forwardedRef) => {
11048
+ const {
11049
+ __scopeSwitch,
11050
+ name,
11051
+ checked: checkedProp,
11052
+ defaultChecked,
11053
+ required,
11054
+ disabled: disabled2,
11055
+ value = "on",
11056
+ onCheckedChange,
11057
+ form,
11058
+ ...switchProps
11059
+ } = props;
11060
+ const [button, setButton] = React45__namespace.useState(null);
11061
+ const composedRefs = useComposedRefs(forwardedRef, (node) => setButton(node));
11062
+ const hasConsumerStoppedPropagationRef = React45__namespace.useRef(false);
11063
+ const isFormControl = button ? form || !!button.closest("form") : true;
11064
+ const [checked, setChecked] = useControllableState({
11065
+ prop: checkedProp,
11066
+ defaultProp: defaultChecked ?? false,
11067
+ onChange: onCheckedChange,
11068
+ caller: SWITCH_NAME
11069
+ });
11070
+ return /* @__PURE__ */ jsxRuntime.jsxs(SwitchProvider, { scope: __scopeSwitch, checked, disabled: disabled2, children: [
11071
+ /* @__PURE__ */ jsxRuntime.jsx(
11072
+ Primitive.button,
11073
+ {
11074
+ type: "button",
11075
+ role: "switch",
11076
+ "aria-checked": checked,
11077
+ "aria-required": required,
11078
+ "data-state": getState(checked),
11079
+ "data-disabled": disabled2 ? "" : void 0,
11080
+ disabled: disabled2,
11081
+ value,
11082
+ ...switchProps,
11083
+ ref: composedRefs,
11084
+ onClick: composeEventHandlers(props.onClick, (event) => {
11085
+ setChecked((prevChecked) => !prevChecked);
11086
+ if (isFormControl) {
11087
+ hasConsumerStoppedPropagationRef.current = event.isPropagationStopped();
11088
+ if (!hasConsumerStoppedPropagationRef.current) event.stopPropagation();
11089
+ }
11090
+ })
11091
+ }
11092
+ ),
11093
+ isFormControl && /* @__PURE__ */ jsxRuntime.jsx(
11094
+ SwitchBubbleInput,
11095
+ {
11096
+ control: button,
11097
+ bubbles: !hasConsumerStoppedPropagationRef.current,
11098
+ name,
11099
+ value,
11100
+ checked,
11101
+ required,
11102
+ disabled: disabled2,
11103
+ form,
11104
+ style: { transform: "translateX(-100%)" }
11105
+ }
11106
+ )
11107
+ ] });
11108
+ }
11109
+ );
11110
+ Switch.displayName = SWITCH_NAME;
11111
+ var THUMB_NAME = "SwitchThumb";
11112
+ var SwitchThumb = React45__namespace.forwardRef(
11113
+ (props, forwardedRef) => {
11114
+ const { __scopeSwitch, ...thumbProps } = props;
11115
+ const context = useSwitchContext(THUMB_NAME, __scopeSwitch);
11116
+ return /* @__PURE__ */ jsxRuntime.jsx(
11117
+ Primitive.span,
11118
+ {
11119
+ "data-state": getState(context.checked),
11120
+ "data-disabled": context.disabled ? "" : void 0,
11121
+ ...thumbProps,
11122
+ ref: forwardedRef
11123
+ }
11124
+ );
11125
+ }
11126
+ );
11127
+ SwitchThumb.displayName = THUMB_NAME;
11128
+ var BUBBLE_INPUT_NAME2 = "SwitchBubbleInput";
11129
+ var SwitchBubbleInput = React45__namespace.forwardRef(
11130
+ ({
11131
+ __scopeSwitch,
11132
+ control,
11133
+ checked,
11134
+ bubbles = true,
11135
+ ...props
11136
+ }, forwardedRef) => {
11137
+ const ref = React45__namespace.useRef(null);
11138
+ const composedRefs = useComposedRefs(ref, forwardedRef);
11139
+ const prevChecked = usePrevious(checked);
11140
+ const controlSize = useSize(control);
11141
+ React45__namespace.useEffect(() => {
11142
+ const input = ref.current;
11143
+ if (!input) return;
11144
+ const inputProto = window.HTMLInputElement.prototype;
11145
+ const descriptor = Object.getOwnPropertyDescriptor(
11146
+ inputProto,
11147
+ "checked"
11148
+ );
11149
+ const setChecked = descriptor.set;
11150
+ if (prevChecked !== checked && setChecked) {
11151
+ const event = new Event("click", { bubbles });
11152
+ setChecked.call(input, checked);
11153
+ input.dispatchEvent(event);
11154
+ }
11155
+ }, [prevChecked, checked, bubbles]);
11156
+ return /* @__PURE__ */ jsxRuntime.jsx(
11157
+ "input",
11158
+ {
11159
+ type: "checkbox",
11160
+ "aria-hidden": true,
11161
+ defaultChecked: checked,
11162
+ ...props,
11163
+ tabIndex: -1,
11164
+ ref: composedRefs,
11165
+ style: {
11166
+ ...props.style,
11167
+ ...controlSize,
11168
+ position: "absolute",
11169
+ pointerEvents: "none",
11170
+ opacity: 0,
11171
+ margin: 0
11172
+ }
11173
+ }
11174
+ );
11175
+ }
11176
+ );
11177
+ SwitchBubbleInput.displayName = BUBBLE_INPUT_NAME2;
11178
+ function getState(checked) {
11179
+ return checked ? "checked" : "unchecked";
11180
+ }
11181
+ var Root4 = Switch;
11182
+ var Thumb = SwitchThumb;
10953
11183
 
10954
- lucide-react/dist/esm/shared/src/utils.js:
10955
- lucide-react/dist/esm/defaultAttributes.js:
10956
- lucide-react/dist/esm/Icon.js:
10957
- lucide-react/dist/esm/createLucideIcon.js:
10958
- lucide-react/dist/esm/icons/check.js:
10959
- lucide-react/dist/esm/icons/chevron-down.js:
10960
- lucide-react/dist/esm/icons/chevron-right.js:
10961
- lucide-react/dist/esm/icons/chevron-up.js:
10962
- lucide-react/dist/esm/icons/circle.js:
10963
- lucide-react/dist/esm/lucide-react.js:
10964
- (**
10965
- * @license lucide-react v0.476.0 - ISC
10966
- *
10967
- * This source code is licensed under the ISC license.
10968
- * See the LICENSE file in the root directory of this source tree.
11184
+ // src/components/ui/switch.tsx
11185
+ var switchRootVariants = cva(
11186
+ "uii:peer uii:inline-flex uii:shrink-0 uii:cursor-pointer uii:items-center uii:rounded-full uii:border-2 uii:border-transparent uii:transition-all uii:outline-none uii:focus-visible:border-ring uii:focus-visible:ring-ring/50 uii:focus-visible:ring-[3px] uii:disabled:cursor-not-allowed uii:disabled:opacity-50 uii:data-[state=checked]:bg-primary uii:data-[state=unchecked]:bg-input uii:shadow-xs",
11187
+ {
11188
+ variants: {
11189
+ size: {
11190
+ xs: "uii:h-3 uii:w-6",
11191
+ // tiny track
11192
+ sm: "uii:h-4 uii:w-7",
11193
+ // small track
11194
+ md: "uii:h-5 uii:w-9",
11195
+ // current default
11196
+ lg: "uii:h-7 uii:w-14",
11197
+ // larger track
11198
+ xl: "uii:h-9 uii:w-20"
11199
+ // extra large track
11200
+ }
11201
+ },
11202
+ defaultVariants: { size: "md" }
11203
+ }
11204
+ );
11205
+ var switchThumbVariants = cva(
11206
+ "uii:bg-background uii:pointer-events-none uii:block uii:rounded-full uii:ring-0 uii:shadow-lg uii:transition-transform uii:data-[state=unchecked]:translate-x-0",
11207
+ {
11208
+ variants: {
11209
+ size: {
11210
+ xs: "uii:size-2 uii:data-[state=checked]:translate-x-3",
11211
+ sm: "uii:size-3 uii:data-[state=checked]:translate-x-3",
11212
+ md: "uii:size-4 uii:data-[state=checked]:translate-x-4",
11213
+ // current default
11214
+ lg: "uii:size-6 uii:data-[state=checked]:translate-x-6",
11215
+ xl: "uii:size-8 uii:data-[state=checked]:translate-x-8"
11216
+ }
11217
+ },
11218
+ defaultVariants: { size: "md" }
11219
+ }
11220
+ );
11221
+ function Switch2({ className, size: size4, ...props }) {
11222
+ return /* @__PURE__ */ React45__namespace.createElement(
11223
+ Root4,
11224
+ {
11225
+ "data-slot": "switch",
11226
+ className: cn(switchRootVariants({ size: size4 }), className),
11227
+ ...props
11228
+ },
11229
+ /* @__PURE__ */ React45__namespace.createElement(
11230
+ Thumb,
11231
+ {
11232
+ "data-slot": "switch-thumb",
11233
+ className: cn(switchThumbVariants({ size: size4 }))
11234
+ }
11235
+ )
11236
+ );
11237
+ }
11238
+
11239
+ // src/components/slots/SlotEnable.tsx
11240
+ var SlotEnable = (props) => {
11241
+ const { slotId } = props;
11242
+ return /* @__PURE__ */ React.createElement("div", { className: "uii:flex uii:items-center uii:justify-center uii:ml-1" }, /* @__PURE__ */ React.createElement(Switch2, { size: "xs", checked: true, onCheckedChange: () => {
11243
+ } }));
11244
+ };
11245
+
11246
+ // ../../node_modules/.pnpm/@fortawesome+fontawesome-svg-core@6.7.2/node_modules/@fortawesome/fontawesome-svg-core/index.mjs
11247
+ function _defineProperty(e, r3, t2) {
11248
+ return (r3 = _toPropertyKey(r3)) in e ? Object.defineProperty(e, r3, {
11249
+ value: t2,
11250
+ enumerable: true,
11251
+ configurable: true,
11252
+ writable: true
11253
+ }) : e[r3] = t2, e;
11254
+ }
11255
+ function ownKeys(e, r3) {
11256
+ var t2 = Object.keys(e);
11257
+ if (Object.getOwnPropertySymbols) {
11258
+ var o2 = Object.getOwnPropertySymbols(e);
11259
+ r3 && (o2 = o2.filter(function(r4) {
11260
+ return Object.getOwnPropertyDescriptor(e, r4).enumerable;
11261
+ })), t2.push.apply(t2, o2);
11262
+ }
11263
+ return t2;
11264
+ }
11265
+ function _objectSpread2(e) {
11266
+ for (var r3 = 1; r3 < arguments.length; r3++) {
11267
+ var t2 = null != arguments[r3] ? arguments[r3] : {};
11268
+ r3 % 2 ? ownKeys(Object(t2), true).forEach(function(r4) {
11269
+ _defineProperty(e, r4, t2[r4]);
11270
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t2)) : ownKeys(Object(t2)).forEach(function(r4) {
11271
+ Object.defineProperty(e, r4, Object.getOwnPropertyDescriptor(t2, r4));
11272
+ });
11273
+ }
11274
+ return e;
11275
+ }
11276
+ function _toPrimitive(t2, r3) {
11277
+ if ("object" != typeof t2 || !t2) return t2;
11278
+ var e = t2[Symbol.toPrimitive];
11279
+ if (void 0 !== e) {
11280
+ var i = e.call(t2, r3);
11281
+ if ("object" != typeof i) return i;
11282
+ throw new TypeError("@@toPrimitive must return a primitive value.");
11283
+ }
11284
+ return ("string" === r3 ? String : Number)(t2);
11285
+ }
11286
+ function _toPropertyKey(t2) {
11287
+ var i = _toPrimitive(t2, "string");
11288
+ return "symbol" == typeof i ? i : i + "";
11289
+ }
11290
+ var noop3 = () => {
11291
+ };
11292
+ var _WINDOW = {};
11293
+ var _DOCUMENT = {};
11294
+ var _MUTATION_OBSERVER = null;
11295
+ var _PERFORMANCE = {
11296
+ mark: noop3,
11297
+ measure: noop3
11298
+ };
11299
+ try {
11300
+ if (typeof window !== "undefined") _WINDOW = window;
11301
+ if (typeof document !== "undefined") _DOCUMENT = document;
11302
+ if (typeof MutationObserver !== "undefined") _MUTATION_OBSERVER = MutationObserver;
11303
+ if (typeof performance !== "undefined") _PERFORMANCE = performance;
11304
+ } catch (e) {
11305
+ }
11306
+ var {
11307
+ userAgent = ""
11308
+ } = _WINDOW.navigator || {};
11309
+ var WINDOW = _WINDOW;
11310
+ var DOCUMENT = _DOCUMENT;
11311
+ var MUTATION_OBSERVER = _MUTATION_OBSERVER;
11312
+ var PERFORMANCE = _PERFORMANCE;
11313
+ !!WINDOW.document;
11314
+ var IS_DOM = !!DOCUMENT.documentElement && !!DOCUMENT.head && typeof DOCUMENT.addEventListener === "function" && typeof DOCUMENT.createElement === "function";
11315
+ var IS_IE = ~userAgent.indexOf("MSIE") || ~userAgent.indexOf("Trident/");
11316
+ var p = /fa(s|r|l|t|d|dr|dl|dt|b|k|kd|ss|sr|sl|st|sds|sdr|sdl|sdt)?[\-\ ]/;
11317
+ var g = /Font ?Awesome ?([56 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit)?.*/i;
11318
+ var S = {
11319
+ classic: {
11320
+ fa: "solid",
11321
+ fas: "solid",
11322
+ "fa-solid": "solid",
11323
+ far: "regular",
11324
+ "fa-regular": "regular",
11325
+ fal: "light",
11326
+ "fa-light": "light",
11327
+ fat: "thin",
11328
+ "fa-thin": "thin",
11329
+ fab: "brands",
11330
+ "fa-brands": "brands"
11331
+ },
11332
+ duotone: {
11333
+ fa: "solid",
11334
+ fad: "solid",
11335
+ "fa-solid": "solid",
11336
+ "fa-duotone": "solid",
11337
+ fadr: "regular",
11338
+ "fa-regular": "regular",
11339
+ fadl: "light",
11340
+ "fa-light": "light",
11341
+ fadt: "thin",
11342
+ "fa-thin": "thin"
11343
+ },
11344
+ sharp: {
11345
+ fa: "solid",
11346
+ fass: "solid",
11347
+ "fa-solid": "solid",
11348
+ fasr: "regular",
11349
+ "fa-regular": "regular",
11350
+ fasl: "light",
11351
+ "fa-light": "light",
11352
+ fast: "thin",
11353
+ "fa-thin": "thin"
11354
+ },
11355
+ "sharp-duotone": {
11356
+ fa: "solid",
11357
+ fasds: "solid",
11358
+ "fa-solid": "solid",
11359
+ fasdr: "regular",
11360
+ "fa-regular": "regular",
11361
+ fasdl: "light",
11362
+ "fa-light": "light",
11363
+ fasdt: "thin",
11364
+ "fa-thin": "thin"
11365
+ }
11366
+ };
11367
+ var A = {
11368
+ GROUP: "duotone-group",
11369
+ PRIMARY: "primary",
11370
+ SECONDARY: "secondary"
11371
+ };
11372
+ var P = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"];
11373
+ var s = "classic";
11374
+ var t = "duotone";
11375
+ var r2 = "sharp";
11376
+ var o = "sharp-duotone";
11377
+ var L = [s, t, r2, o];
11378
+ var G = {
11379
+ classic: {
11380
+ 900: "fas",
11381
+ 400: "far",
11382
+ normal: "far",
11383
+ 300: "fal",
11384
+ 100: "fat"
11385
+ },
11386
+ duotone: {
11387
+ 900: "fad",
11388
+ 400: "fadr",
11389
+ 300: "fadl",
11390
+ 100: "fadt"
11391
+ },
11392
+ sharp: {
11393
+ 900: "fass",
11394
+ 400: "fasr",
11395
+ 300: "fasl",
11396
+ 100: "fast"
11397
+ },
11398
+ "sharp-duotone": {
11399
+ 900: "fasds",
11400
+ 400: "fasdr",
11401
+ 300: "fasdl",
11402
+ 100: "fasdt"
11403
+ }
11404
+ };
11405
+ var lt = {
11406
+ "Font Awesome 6 Free": {
11407
+ 900: "fas",
11408
+ 400: "far"
11409
+ },
11410
+ "Font Awesome 6 Pro": {
11411
+ 900: "fas",
11412
+ 400: "far",
11413
+ normal: "far",
11414
+ 300: "fal",
11415
+ 100: "fat"
11416
+ },
11417
+ "Font Awesome 6 Brands": {
11418
+ 400: "fab",
11419
+ normal: "fab"
11420
+ },
11421
+ "Font Awesome 6 Duotone": {
11422
+ 900: "fad",
11423
+ 400: "fadr",
11424
+ normal: "fadr",
11425
+ 300: "fadl",
11426
+ 100: "fadt"
11427
+ },
11428
+ "Font Awesome 6 Sharp": {
11429
+ 900: "fass",
11430
+ 400: "fasr",
11431
+ normal: "fasr",
11432
+ 300: "fasl",
11433
+ 100: "fast"
11434
+ },
11435
+ "Font Awesome 6 Sharp Duotone": {
11436
+ 900: "fasds",
11437
+ 400: "fasdr",
11438
+ normal: "fasdr",
11439
+ 300: "fasdl",
11440
+ 100: "fasdt"
11441
+ }
11442
+ };
11443
+ var pt = /* @__PURE__ */ new Map([["classic", {
11444
+ defaultShortPrefixId: "fas",
11445
+ defaultStyleId: "solid",
11446
+ styleIds: ["solid", "regular", "light", "thin", "brands"],
11447
+ futureStyleIds: [],
11448
+ defaultFontWeight: 900
11449
+ }], ["sharp", {
11450
+ defaultShortPrefixId: "fass",
11451
+ defaultStyleId: "solid",
11452
+ styleIds: ["solid", "regular", "light", "thin"],
11453
+ futureStyleIds: [],
11454
+ defaultFontWeight: 900
11455
+ }], ["duotone", {
11456
+ defaultShortPrefixId: "fad",
11457
+ defaultStyleId: "solid",
11458
+ styleIds: ["solid", "regular", "light", "thin"],
11459
+ futureStyleIds: [],
11460
+ defaultFontWeight: 900
11461
+ }], ["sharp-duotone", {
11462
+ defaultShortPrefixId: "fasds",
11463
+ defaultStyleId: "solid",
11464
+ styleIds: ["solid", "regular", "light", "thin"],
11465
+ futureStyleIds: [],
11466
+ defaultFontWeight: 900
11467
+ }]]);
11468
+ var xt = {
11469
+ classic: {
11470
+ solid: "fas",
11471
+ regular: "far",
11472
+ light: "fal",
11473
+ thin: "fat",
11474
+ brands: "fab"
11475
+ },
11476
+ duotone: {
11477
+ solid: "fad",
11478
+ regular: "fadr",
11479
+ light: "fadl",
11480
+ thin: "fadt"
11481
+ },
11482
+ sharp: {
11483
+ solid: "fass",
11484
+ regular: "fasr",
11485
+ light: "fasl",
11486
+ thin: "fast"
11487
+ },
11488
+ "sharp-duotone": {
11489
+ solid: "fasds",
11490
+ regular: "fasdr",
11491
+ light: "fasdl",
11492
+ thin: "fasdt"
11493
+ }
11494
+ };
11495
+ var Ft = ["fak", "fa-kit", "fakd", "fa-kit-duotone"];
11496
+ var St = {
11497
+ kit: {
11498
+ fak: "kit",
11499
+ "fa-kit": "kit"
11500
+ },
11501
+ "kit-duotone": {
11502
+ fakd: "kit-duotone",
11503
+ "fa-kit-duotone": "kit-duotone"
11504
+ }
11505
+ };
11506
+ var At = ["kit"];
11507
+ var Ct = {
11508
+ kit: {
11509
+ "fa-kit": "fak"
11510
+ }};
11511
+ var Lt = ["fak", "fakd"];
11512
+ var Wt = {
11513
+ kit: {
11514
+ fak: "fa-kit"
11515
+ }};
11516
+ var Et = {
11517
+ kit: {
11518
+ kit: "fak"
11519
+ },
11520
+ "kit-duotone": {
11521
+ "kit-duotone": "fakd"
11522
+ }
11523
+ };
11524
+ var t$1 = {
11525
+ GROUP: "duotone-group",
11526
+ SWAP_OPACITY: "swap-opacity",
11527
+ PRIMARY: "primary",
11528
+ SECONDARY: "secondary"
11529
+ };
11530
+ var r$1 = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"];
11531
+ var bt$1 = ["fak", "fa-kit", "fakd", "fa-kit-duotone"];
11532
+ var Yt = {
11533
+ "Font Awesome Kit": {
11534
+ 400: "fak",
11535
+ normal: "fak"
11536
+ },
11537
+ "Font Awesome Kit Duotone": {
11538
+ 400: "fakd",
11539
+ normal: "fakd"
11540
+ }
11541
+ };
11542
+ var ua = {
11543
+ classic: {
11544
+ "fa-brands": "fab",
11545
+ "fa-duotone": "fad",
11546
+ "fa-light": "fal",
11547
+ "fa-regular": "far",
11548
+ "fa-solid": "fas",
11549
+ "fa-thin": "fat"
11550
+ },
11551
+ duotone: {
11552
+ "fa-regular": "fadr",
11553
+ "fa-light": "fadl",
11554
+ "fa-thin": "fadt"
11555
+ },
11556
+ sharp: {
11557
+ "fa-solid": "fass",
11558
+ "fa-regular": "fasr",
11559
+ "fa-light": "fasl",
11560
+ "fa-thin": "fast"
11561
+ },
11562
+ "sharp-duotone": {
11563
+ "fa-solid": "fasds",
11564
+ "fa-regular": "fasdr",
11565
+ "fa-light": "fasdl",
11566
+ "fa-thin": "fasdt"
11567
+ }
11568
+ };
11569
+ var I$1 = {
11570
+ classic: ["fas", "far", "fal", "fat", "fad"],
11571
+ duotone: ["fadr", "fadl", "fadt"],
11572
+ sharp: ["fass", "fasr", "fasl", "fast"],
11573
+ "sharp-duotone": ["fasds", "fasdr", "fasdl", "fasdt"]
11574
+ };
11575
+ var ga = {
11576
+ classic: {
11577
+ fab: "fa-brands",
11578
+ fad: "fa-duotone",
11579
+ fal: "fa-light",
11580
+ far: "fa-regular",
11581
+ fas: "fa-solid",
11582
+ fat: "fa-thin"
11583
+ },
11584
+ duotone: {
11585
+ fadr: "fa-regular",
11586
+ fadl: "fa-light",
11587
+ fadt: "fa-thin"
11588
+ },
11589
+ sharp: {
11590
+ fass: "fa-solid",
11591
+ fasr: "fa-regular",
11592
+ fasl: "fa-light",
11593
+ fast: "fa-thin"
11594
+ },
11595
+ "sharp-duotone": {
11596
+ fasds: "fa-solid",
11597
+ fasdr: "fa-regular",
11598
+ fasdl: "fa-light",
11599
+ fasdt: "fa-thin"
11600
+ }
11601
+ };
11602
+ var x = ["fa-solid", "fa-regular", "fa-light", "fa-thin", "fa-duotone", "fa-brands"];
11603
+ var Ia = ["fa", "fas", "far", "fal", "fat", "fad", "fadr", "fadl", "fadt", "fab", "fass", "fasr", "fasl", "fast", "fasds", "fasdr", "fasdl", "fasdt", ...r$1, ...x];
11604
+ var m$1 = ["solid", "regular", "light", "thin", "duotone", "brands"];
11605
+ var c$1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
11606
+ var F$1 = c$1.concat([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]);
11607
+ var ma = [...Object.keys(I$1), ...m$1, "2xs", "xs", "sm", "lg", "xl", "2xl", "beat", "border", "fade", "beat-fade", "bounce", "flip-both", "flip-horizontal", "flip-vertical", "flip", "fw", "inverse", "layers-counter", "layers-text", "layers", "li", "pull-left", "pull-right", "pulse", "rotate-180", "rotate-270", "rotate-90", "rotate-by", "shake", "spin-pulse", "spin-reverse", "spin", "stack-1x", "stack-2x", "stack", "ul", t$1.GROUP, t$1.SWAP_OPACITY, t$1.PRIMARY, t$1.SECONDARY].concat(c$1.map((a) => "".concat(a, "x"))).concat(F$1.map((a) => "w-".concat(a)));
11608
+ var wa = {
11609
+ "Font Awesome 5 Free": {
11610
+ 900: "fas",
11611
+ 400: "far"
11612
+ },
11613
+ "Font Awesome 5 Pro": {
11614
+ 900: "fas",
11615
+ 400: "far",
11616
+ normal: "far",
11617
+ 300: "fal"
11618
+ },
11619
+ "Font Awesome 5 Brands": {
11620
+ 400: "fab",
11621
+ normal: "fab"
11622
+ },
11623
+ "Font Awesome 5 Duotone": {
11624
+ 900: "fad"
11625
+ }
11626
+ };
11627
+ var NAMESPACE_IDENTIFIER = "___FONT_AWESOME___";
11628
+ var UNITS_IN_GRID = 16;
11629
+ var DEFAULT_CSS_PREFIX = "fa";
11630
+ var DEFAULT_REPLACEMENT_CLASS = "svg-inline--fa";
11631
+ var DATA_FA_I2SVG = "data-fa-i2svg";
11632
+ var DATA_FA_PSEUDO_ELEMENT = "data-fa-pseudo-element";
11633
+ var DATA_FA_PSEUDO_ELEMENT_PENDING = "data-fa-pseudo-element-pending";
11634
+ var DATA_PREFIX = "data-prefix";
11635
+ var DATA_ICON = "data-icon";
11636
+ var HTML_CLASS_I2SVG_BASE_CLASS = "fontawesome-i2svg";
11637
+ var MUTATION_APPROACH_ASYNC = "async";
11638
+ var TAGNAMES_TO_SKIP_FOR_PSEUDOELEMENTS = ["HTML", "HEAD", "STYLE", "SCRIPT"];
11639
+ var PRODUCTION = (() => {
11640
+ try {
11641
+ return process.env.NODE_ENV === "production";
11642
+ } catch (e$$1) {
11643
+ return false;
11644
+ }
11645
+ })();
11646
+ function familyProxy(obj) {
11647
+ return new Proxy(obj, {
11648
+ get(target, prop) {
11649
+ return prop in target ? target[prop] : target[s];
11650
+ }
11651
+ });
11652
+ }
11653
+ var _PREFIX_TO_STYLE = _objectSpread2({}, S);
11654
+ _PREFIX_TO_STYLE[s] = _objectSpread2(_objectSpread2(_objectSpread2(_objectSpread2({}, {
11655
+ "fa-duotone": "duotone"
11656
+ }), S[s]), St["kit"]), St["kit-duotone"]);
11657
+ var PREFIX_TO_STYLE = familyProxy(_PREFIX_TO_STYLE);
11658
+ var _STYLE_TO_PREFIX = _objectSpread2({}, xt);
11659
+ _STYLE_TO_PREFIX[s] = _objectSpread2(_objectSpread2(_objectSpread2(_objectSpread2({}, {
11660
+ duotone: "fad"
11661
+ }), _STYLE_TO_PREFIX[s]), Et["kit"]), Et["kit-duotone"]);
11662
+ var STYLE_TO_PREFIX = familyProxy(_STYLE_TO_PREFIX);
11663
+ var _PREFIX_TO_LONG_STYLE = _objectSpread2({}, ga);
11664
+ _PREFIX_TO_LONG_STYLE[s] = _objectSpread2(_objectSpread2({}, _PREFIX_TO_LONG_STYLE[s]), Wt["kit"]);
11665
+ var PREFIX_TO_LONG_STYLE = familyProxy(_PREFIX_TO_LONG_STYLE);
11666
+ var _LONG_STYLE_TO_PREFIX = _objectSpread2({}, ua);
11667
+ _LONG_STYLE_TO_PREFIX[s] = _objectSpread2(_objectSpread2({}, _LONG_STYLE_TO_PREFIX[s]), Ct["kit"]);
11668
+ familyProxy(_LONG_STYLE_TO_PREFIX);
11669
+ var ICON_SELECTION_SYNTAX_PATTERN = p;
11670
+ var LAYERS_TEXT_CLASSNAME = "fa-layers-text";
11671
+ var FONT_FAMILY_PATTERN = g;
11672
+ var _FONT_WEIGHT_TO_PREFIX = _objectSpread2({}, G);
11673
+ familyProxy(_FONT_WEIGHT_TO_PREFIX);
11674
+ var ATTRIBUTES_WATCHED_FOR_MUTATION = ["class", "data-prefix", "data-icon", "data-fa-transform", "data-fa-mask"];
11675
+ var DUOTONE_CLASSES = A;
11676
+ var RESERVED_CLASSES = [...At, ...ma];
11677
+ var initial = WINDOW.FontAwesomeConfig || {};
11678
+ function getAttrConfig(attr) {
11679
+ var element = DOCUMENT.querySelector("script[" + attr + "]");
11680
+ if (element) {
11681
+ return element.getAttribute(attr);
11682
+ }
11683
+ }
11684
+ function coerce(val) {
11685
+ if (val === "") return true;
11686
+ if (val === "false") return false;
11687
+ if (val === "true") return true;
11688
+ return val;
11689
+ }
11690
+ if (DOCUMENT && typeof DOCUMENT.querySelector === "function") {
11691
+ const attrs = [["data-family-prefix", "familyPrefix"], ["data-css-prefix", "cssPrefix"], ["data-family-default", "familyDefault"], ["data-style-default", "styleDefault"], ["data-replacement-class", "replacementClass"], ["data-auto-replace-svg", "autoReplaceSvg"], ["data-auto-add-css", "autoAddCss"], ["data-auto-a11y", "autoA11y"], ["data-search-pseudo-elements", "searchPseudoElements"], ["data-observe-mutations", "observeMutations"], ["data-mutate-approach", "mutateApproach"], ["data-keep-original-source", "keepOriginalSource"], ["data-measure-performance", "measurePerformance"], ["data-show-missing-icons", "showMissingIcons"]];
11692
+ attrs.forEach((_ref) => {
11693
+ let [attr, key] = _ref;
11694
+ const val = coerce(getAttrConfig(attr));
11695
+ if (val !== void 0 && val !== null) {
11696
+ initial[key] = val;
11697
+ }
11698
+ });
11699
+ }
11700
+ var _default = {
11701
+ styleDefault: "solid",
11702
+ familyDefault: s,
11703
+ cssPrefix: DEFAULT_CSS_PREFIX,
11704
+ replacementClass: DEFAULT_REPLACEMENT_CLASS,
11705
+ autoReplaceSvg: true,
11706
+ autoAddCss: true,
11707
+ autoA11y: true,
11708
+ searchPseudoElements: false,
11709
+ observeMutations: true,
11710
+ mutateApproach: "async",
11711
+ keepOriginalSource: true,
11712
+ measurePerformance: false,
11713
+ showMissingIcons: true
11714
+ };
11715
+ if (initial.familyPrefix) {
11716
+ initial.cssPrefix = initial.familyPrefix;
11717
+ }
11718
+ var _config = _objectSpread2(_objectSpread2({}, _default), initial);
11719
+ if (!_config.autoReplaceSvg) _config.observeMutations = false;
11720
+ var config = {};
11721
+ Object.keys(_default).forEach((key) => {
11722
+ Object.defineProperty(config, key, {
11723
+ enumerable: true,
11724
+ set: function(val) {
11725
+ _config[key] = val;
11726
+ _onChangeCb.forEach((cb) => cb(config));
11727
+ },
11728
+ get: function() {
11729
+ return _config[key];
11730
+ }
11731
+ });
11732
+ });
11733
+ Object.defineProperty(config, "familyPrefix", {
11734
+ enumerable: true,
11735
+ set: function(val) {
11736
+ _config.cssPrefix = val;
11737
+ _onChangeCb.forEach((cb) => cb(config));
11738
+ },
11739
+ get: function() {
11740
+ return _config.cssPrefix;
11741
+ }
11742
+ });
11743
+ WINDOW.FontAwesomeConfig = config;
11744
+ var _onChangeCb = [];
11745
+ function onChange(cb) {
11746
+ _onChangeCb.push(cb);
11747
+ return () => {
11748
+ _onChangeCb.splice(_onChangeCb.indexOf(cb), 1);
11749
+ };
11750
+ }
11751
+ var d$2 = UNITS_IN_GRID;
11752
+ var meaninglessTransform = {
11753
+ size: 16,
11754
+ x: 0,
11755
+ y: 0,
11756
+ rotate: 0,
11757
+ flipX: false,
11758
+ flipY: false
11759
+ };
11760
+ function insertCss(css2) {
11761
+ if (!css2 || !IS_DOM) {
11762
+ return;
11763
+ }
11764
+ const style = DOCUMENT.createElement("style");
11765
+ style.setAttribute("type", "text/css");
11766
+ style.innerHTML = css2;
11767
+ const headChildren = DOCUMENT.head.childNodes;
11768
+ let beforeChild = null;
11769
+ for (let i = headChildren.length - 1; i > -1; i--) {
11770
+ const child = headChildren[i];
11771
+ const tagName = (child.tagName || "").toUpperCase();
11772
+ if (["STYLE", "LINK"].indexOf(tagName) > -1) {
11773
+ beforeChild = child;
11774
+ }
11775
+ }
11776
+ DOCUMENT.head.insertBefore(style, beforeChild);
11777
+ return css2;
11778
+ }
11779
+ var idPool = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
11780
+ function nextUniqueId() {
11781
+ let size4 = 12;
11782
+ let id = "";
11783
+ while (size4-- > 0) {
11784
+ id += idPool[Math.random() * 62 | 0];
11785
+ }
11786
+ return id;
11787
+ }
11788
+ function toArray(obj) {
11789
+ const array = [];
11790
+ for (let i = (obj || []).length >>> 0; i--; ) {
11791
+ array[i] = obj[i];
11792
+ }
11793
+ return array;
11794
+ }
11795
+ function classArray(node) {
11796
+ if (node.classList) {
11797
+ return toArray(node.classList);
11798
+ } else {
11799
+ return (node.getAttribute("class") || "").split(" ").filter((i) => i);
11800
+ }
11801
+ }
11802
+ function htmlEscape(str) {
11803
+ return "".concat(str).replace(/&/g, "&amp;").replace(/"/g, "&quot;").replace(/'/g, "&#39;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
11804
+ }
11805
+ function joinAttributes(attributes) {
11806
+ return Object.keys(attributes || {}).reduce((acc, attributeName) => {
11807
+ return acc + "".concat(attributeName, '="').concat(htmlEscape(attributes[attributeName]), '" ');
11808
+ }, "").trim();
11809
+ }
11810
+ function joinStyles(styles2) {
11811
+ return Object.keys(styles2 || {}).reduce((acc, styleName) => {
11812
+ return acc + "".concat(styleName, ": ").concat(styles2[styleName].trim(), ";");
11813
+ }, "");
11814
+ }
11815
+ function transformIsMeaningful(transform) {
11816
+ return transform.size !== meaninglessTransform.size || transform.x !== meaninglessTransform.x || transform.y !== meaninglessTransform.y || transform.rotate !== meaninglessTransform.rotate || transform.flipX || transform.flipY;
11817
+ }
11818
+ function transformForSvg(_ref) {
11819
+ let {
11820
+ transform,
11821
+ containerWidth,
11822
+ iconWidth
11823
+ } = _ref;
11824
+ const outer = {
11825
+ transform: "translate(".concat(containerWidth / 2, " 256)")
11826
+ };
11827
+ const innerTranslate = "translate(".concat(transform.x * 32, ", ").concat(transform.y * 32, ") ");
11828
+ const innerScale = "scale(".concat(transform.size / 16 * (transform.flipX ? -1 : 1), ", ").concat(transform.size / 16 * (transform.flipY ? -1 : 1), ") ");
11829
+ const innerRotate = "rotate(".concat(transform.rotate, " 0 0)");
11830
+ const inner = {
11831
+ transform: "".concat(innerTranslate, " ").concat(innerScale, " ").concat(innerRotate)
11832
+ };
11833
+ const path = {
11834
+ transform: "translate(".concat(iconWidth / 2 * -1, " -256)")
11835
+ };
11836
+ return {
11837
+ outer,
11838
+ inner,
11839
+ path
11840
+ };
11841
+ }
11842
+ function transformForCss(_ref2) {
11843
+ let {
11844
+ transform,
11845
+ width = UNITS_IN_GRID,
11846
+ height = UNITS_IN_GRID,
11847
+ startCentered = false
11848
+ } = _ref2;
11849
+ let val = "";
11850
+ if (startCentered && IS_IE) {
11851
+ val += "translate(".concat(transform.x / d$2 - width / 2, "em, ").concat(transform.y / d$2 - height / 2, "em) ");
11852
+ } else if (startCentered) {
11853
+ val += "translate(calc(-50% + ".concat(transform.x / d$2, "em), calc(-50% + ").concat(transform.y / d$2, "em)) ");
11854
+ } else {
11855
+ val += "translate(".concat(transform.x / d$2, "em, ").concat(transform.y / d$2, "em) ");
11856
+ }
11857
+ val += "scale(".concat(transform.size / d$2 * (transform.flipX ? -1 : 1), ", ").concat(transform.size / d$2 * (transform.flipY ? -1 : 1), ") ");
11858
+ val += "rotate(".concat(transform.rotate, "deg) ");
11859
+ return val;
11860
+ }
11861
+ var baseStyles = ':root, :host {\n --fa-font-solid: normal 900 1em/1 "Font Awesome 6 Free";\n --fa-font-regular: normal 400 1em/1 "Font Awesome 6 Free";\n --fa-font-light: normal 300 1em/1 "Font Awesome 6 Pro";\n --fa-font-thin: normal 100 1em/1 "Font Awesome 6 Pro";\n --fa-font-duotone: normal 900 1em/1 "Font Awesome 6 Duotone";\n --fa-font-duotone-regular: normal 400 1em/1 "Font Awesome 6 Duotone";\n --fa-font-duotone-light: normal 300 1em/1 "Font Awesome 6 Duotone";\n --fa-font-duotone-thin: normal 100 1em/1 "Font Awesome 6 Duotone";\n --fa-font-brands: normal 400 1em/1 "Font Awesome 6 Brands";\n --fa-font-sharp-solid: normal 900 1em/1 "Font Awesome 6 Sharp";\n --fa-font-sharp-regular: normal 400 1em/1 "Font Awesome 6 Sharp";\n --fa-font-sharp-light: normal 300 1em/1 "Font Awesome 6 Sharp";\n --fa-font-sharp-thin: normal 100 1em/1 "Font Awesome 6 Sharp";\n --fa-font-sharp-duotone-solid: normal 900 1em/1 "Font Awesome 6 Sharp Duotone";\n --fa-font-sharp-duotone-regular: normal 400 1em/1 "Font Awesome 6 Sharp Duotone";\n --fa-font-sharp-duotone-light: normal 300 1em/1 "Font Awesome 6 Sharp Duotone";\n --fa-font-sharp-duotone-thin: normal 100 1em/1 "Font Awesome 6 Sharp Duotone";\n}\n\nsvg:not(:root).svg-inline--fa, svg:not(:host).svg-inline--fa {\n overflow: visible;\n box-sizing: content-box;\n}\n\n.svg-inline--fa {\n display: var(--fa-display, inline-block);\n height: 1em;\n overflow: visible;\n vertical-align: -0.125em;\n}\n.svg-inline--fa.fa-2xs {\n vertical-align: 0.1em;\n}\n.svg-inline--fa.fa-xs {\n vertical-align: 0em;\n}\n.svg-inline--fa.fa-sm {\n vertical-align: -0.0714285705em;\n}\n.svg-inline--fa.fa-lg {\n vertical-align: -0.2em;\n}\n.svg-inline--fa.fa-xl {\n vertical-align: -0.25em;\n}\n.svg-inline--fa.fa-2xl {\n vertical-align: -0.3125em;\n}\n.svg-inline--fa.fa-pull-left {\n margin-right: var(--fa-pull-margin, 0.3em);\n width: auto;\n}\n.svg-inline--fa.fa-pull-right {\n margin-left: var(--fa-pull-margin, 0.3em);\n width: auto;\n}\n.svg-inline--fa.fa-li {\n width: var(--fa-li-width, 2em);\n top: 0.25em;\n}\n.svg-inline--fa.fa-fw {\n width: var(--fa-fw-width, 1.25em);\n}\n\n.fa-layers svg.svg-inline--fa {\n bottom: 0;\n left: 0;\n margin: auto;\n position: absolute;\n right: 0;\n top: 0;\n}\n\n.fa-layers-counter, .fa-layers-text {\n display: inline-block;\n position: absolute;\n text-align: center;\n}\n\n.fa-layers {\n display: inline-block;\n height: 1em;\n position: relative;\n text-align: center;\n vertical-align: -0.125em;\n width: 1em;\n}\n.fa-layers svg.svg-inline--fa {\n transform-origin: center center;\n}\n\n.fa-layers-text {\n left: 50%;\n top: 50%;\n transform: translate(-50%, -50%);\n transform-origin: center center;\n}\n\n.fa-layers-counter {\n background-color: var(--fa-counter-background-color, #ff253a);\n border-radius: var(--fa-counter-border-radius, 1em);\n box-sizing: border-box;\n color: var(--fa-inverse, #fff);\n line-height: var(--fa-counter-line-height, 1);\n max-width: var(--fa-counter-max-width, 5em);\n min-width: var(--fa-counter-min-width, 1.5em);\n overflow: hidden;\n padding: var(--fa-counter-padding, 0.25em 0.5em);\n right: var(--fa-right, 0);\n text-overflow: ellipsis;\n top: var(--fa-top, 0);\n transform: scale(var(--fa-counter-scale, 0.25));\n transform-origin: top right;\n}\n\n.fa-layers-bottom-right {\n bottom: var(--fa-bottom, 0);\n right: var(--fa-right, 0);\n top: auto;\n transform: scale(var(--fa-layers-scale, 0.25));\n transform-origin: bottom right;\n}\n\n.fa-layers-bottom-left {\n bottom: var(--fa-bottom, 0);\n left: var(--fa-left, 0);\n right: auto;\n top: auto;\n transform: scale(var(--fa-layers-scale, 0.25));\n transform-origin: bottom left;\n}\n\n.fa-layers-top-right {\n top: var(--fa-top, 0);\n right: var(--fa-right, 0);\n transform: scale(var(--fa-layers-scale, 0.25));\n transform-origin: top right;\n}\n\n.fa-layers-top-left {\n left: var(--fa-left, 0);\n right: auto;\n top: var(--fa-top, 0);\n transform: scale(var(--fa-layers-scale, 0.25));\n transform-origin: top left;\n}\n\n.fa-1x {\n font-size: 1em;\n}\n\n.fa-2x {\n font-size: 2em;\n}\n\n.fa-3x {\n font-size: 3em;\n}\n\n.fa-4x {\n font-size: 4em;\n}\n\n.fa-5x {\n font-size: 5em;\n}\n\n.fa-6x {\n font-size: 6em;\n}\n\n.fa-7x {\n font-size: 7em;\n}\n\n.fa-8x {\n font-size: 8em;\n}\n\n.fa-9x {\n font-size: 9em;\n}\n\n.fa-10x {\n font-size: 10em;\n}\n\n.fa-2xs {\n font-size: 0.625em;\n line-height: 0.1em;\n vertical-align: 0.225em;\n}\n\n.fa-xs {\n font-size: 0.75em;\n line-height: 0.0833333337em;\n vertical-align: 0.125em;\n}\n\n.fa-sm {\n font-size: 0.875em;\n line-height: 0.0714285718em;\n vertical-align: 0.0535714295em;\n}\n\n.fa-lg {\n font-size: 1.25em;\n line-height: 0.05em;\n vertical-align: -0.075em;\n}\n\n.fa-xl {\n font-size: 1.5em;\n line-height: 0.0416666682em;\n vertical-align: -0.125em;\n}\n\n.fa-2xl {\n font-size: 2em;\n line-height: 0.03125em;\n vertical-align: -0.1875em;\n}\n\n.fa-fw {\n text-align: center;\n width: 1.25em;\n}\n\n.fa-ul {\n list-style-type: none;\n margin-left: var(--fa-li-margin, 2.5em);\n padding-left: 0;\n}\n.fa-ul > li {\n position: relative;\n}\n\n.fa-li {\n left: calc(-1 * var(--fa-li-width, 2em));\n position: absolute;\n text-align: center;\n width: var(--fa-li-width, 2em);\n line-height: inherit;\n}\n\n.fa-border {\n border-color: var(--fa-border-color, #eee);\n border-radius: var(--fa-border-radius, 0.1em);\n border-style: var(--fa-border-style, solid);\n border-width: var(--fa-border-width, 0.08em);\n padding: var(--fa-border-padding, 0.2em 0.25em 0.15em);\n}\n\n.fa-pull-left {\n float: left;\n margin-right: var(--fa-pull-margin, 0.3em);\n}\n\n.fa-pull-right {\n float: right;\n margin-left: var(--fa-pull-margin, 0.3em);\n}\n\n.fa-beat {\n animation-name: fa-beat;\n animation-delay: var(--fa-animation-delay, 0s);\n animation-direction: var(--fa-animation-direction, normal);\n animation-duration: var(--fa-animation-duration, 1s);\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\n animation-timing-function: var(--fa-animation-timing, ease-in-out);\n}\n\n.fa-bounce {\n animation-name: fa-bounce;\n animation-delay: var(--fa-animation-delay, 0s);\n animation-direction: var(--fa-animation-direction, normal);\n animation-duration: var(--fa-animation-duration, 1s);\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\n animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));\n}\n\n.fa-fade {\n animation-name: fa-fade;\n animation-delay: var(--fa-animation-delay, 0s);\n animation-direction: var(--fa-animation-direction, normal);\n animation-duration: var(--fa-animation-duration, 1s);\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\n animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));\n}\n\n.fa-beat-fade {\n animation-name: fa-beat-fade;\n animation-delay: var(--fa-animation-delay, 0s);\n animation-direction: var(--fa-animation-direction, normal);\n animation-duration: var(--fa-animation-duration, 1s);\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\n animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));\n}\n\n.fa-flip {\n animation-name: fa-flip;\n animation-delay: var(--fa-animation-delay, 0s);\n animation-direction: var(--fa-animation-direction, normal);\n animation-duration: var(--fa-animation-duration, 1s);\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\n animation-timing-function: var(--fa-animation-timing, ease-in-out);\n}\n\n.fa-shake {\n animation-name: fa-shake;\n animation-delay: var(--fa-animation-delay, 0s);\n animation-direction: var(--fa-animation-direction, normal);\n animation-duration: var(--fa-animation-duration, 1s);\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\n animation-timing-function: var(--fa-animation-timing, linear);\n}\n\n.fa-spin {\n animation-name: fa-spin;\n animation-delay: var(--fa-animation-delay, 0s);\n animation-direction: var(--fa-animation-direction, normal);\n animation-duration: var(--fa-animation-duration, 2s);\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\n animation-timing-function: var(--fa-animation-timing, linear);\n}\n\n.fa-spin-reverse {\n --fa-animation-direction: reverse;\n}\n\n.fa-pulse,\n.fa-spin-pulse {\n animation-name: fa-spin;\n animation-direction: var(--fa-animation-direction, normal);\n animation-duration: var(--fa-animation-duration, 1s);\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\n animation-timing-function: var(--fa-animation-timing, steps(8));\n}\n\n@media (prefers-reduced-motion: reduce) {\n .fa-beat,\n.fa-bounce,\n.fa-fade,\n.fa-beat-fade,\n.fa-flip,\n.fa-pulse,\n.fa-shake,\n.fa-spin,\n.fa-spin-pulse {\n animation-delay: -1ms;\n animation-duration: 1ms;\n animation-iteration-count: 1;\n transition-delay: 0s;\n transition-duration: 0s;\n }\n}\n@keyframes fa-beat {\n 0%, 90% {\n transform: scale(1);\n }\n 45% {\n transform: scale(var(--fa-beat-scale, 1.25));\n }\n}\n@keyframes fa-bounce {\n 0% {\n transform: scale(1, 1) translateY(0);\n }\n 10% {\n transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);\n }\n 30% {\n transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));\n }\n 50% {\n transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);\n }\n 57% {\n transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));\n }\n 64% {\n transform: scale(1, 1) translateY(0);\n }\n 100% {\n transform: scale(1, 1) translateY(0);\n }\n}\n@keyframes fa-fade {\n 50% {\n opacity: var(--fa-fade-opacity, 0.4);\n }\n}\n@keyframes fa-beat-fade {\n 0%, 100% {\n opacity: var(--fa-beat-fade-opacity, 0.4);\n transform: scale(1);\n }\n 50% {\n opacity: 1;\n transform: scale(var(--fa-beat-fade-scale, 1.125));\n }\n}\n@keyframes fa-flip {\n 50% {\n transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));\n }\n}\n@keyframes fa-shake {\n 0% {\n transform: rotate(-15deg);\n }\n 4% {\n transform: rotate(15deg);\n }\n 8%, 24% {\n transform: rotate(-18deg);\n }\n 12%, 28% {\n transform: rotate(18deg);\n }\n 16% {\n transform: rotate(-22deg);\n }\n 20% {\n transform: rotate(22deg);\n }\n 32% {\n transform: rotate(-12deg);\n }\n 36% {\n transform: rotate(12deg);\n }\n 40%, 100% {\n transform: rotate(0deg);\n }\n}\n@keyframes fa-spin {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n.fa-rotate-90 {\n transform: rotate(90deg);\n}\n\n.fa-rotate-180 {\n transform: rotate(180deg);\n}\n\n.fa-rotate-270 {\n transform: rotate(270deg);\n}\n\n.fa-flip-horizontal {\n transform: scale(-1, 1);\n}\n\n.fa-flip-vertical {\n transform: scale(1, -1);\n}\n\n.fa-flip-both,\n.fa-flip-horizontal.fa-flip-vertical {\n transform: scale(-1, -1);\n}\n\n.fa-rotate-by {\n transform: rotate(var(--fa-rotate-angle, 0));\n}\n\n.fa-stack {\n display: inline-block;\n vertical-align: middle;\n height: 2em;\n position: relative;\n width: 2.5em;\n}\n\n.fa-stack-1x,\n.fa-stack-2x {\n bottom: 0;\n left: 0;\n margin: auto;\n position: absolute;\n right: 0;\n top: 0;\n z-index: var(--fa-stack-z-index, auto);\n}\n\n.svg-inline--fa.fa-stack-1x {\n height: 1em;\n width: 1.25em;\n}\n.svg-inline--fa.fa-stack-2x {\n height: 2em;\n width: 2.5em;\n}\n\n.fa-inverse {\n color: var(--fa-inverse, #fff);\n}\n\n.sr-only,\n.fa-sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border-width: 0;\n}\n\n.sr-only-focusable:not(:focus),\n.fa-sr-only-focusable:not(:focus) {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border-width: 0;\n}\n\n.svg-inline--fa .fa-primary {\n fill: var(--fa-primary-color, currentColor);\n opacity: var(--fa-primary-opacity, 1);\n}\n\n.svg-inline--fa .fa-secondary {\n fill: var(--fa-secondary-color, currentColor);\n opacity: var(--fa-secondary-opacity, 0.4);\n}\n\n.svg-inline--fa.fa-swap-opacity .fa-primary {\n opacity: var(--fa-secondary-opacity, 0.4);\n}\n\n.svg-inline--fa.fa-swap-opacity .fa-secondary {\n opacity: var(--fa-primary-opacity, 1);\n}\n\n.svg-inline--fa mask .fa-primary,\n.svg-inline--fa mask .fa-secondary {\n fill: black;\n}';
11862
+ function css() {
11863
+ const dcp = DEFAULT_CSS_PREFIX;
11864
+ const drc = DEFAULT_REPLACEMENT_CLASS;
11865
+ const fp = config.cssPrefix;
11866
+ const rc = config.replacementClass;
11867
+ let s2 = baseStyles;
11868
+ if (fp !== dcp || rc !== drc) {
11869
+ const dPatt = new RegExp("\\.".concat(dcp, "\\-"), "g");
11870
+ const customPropPatt = new RegExp("\\--".concat(dcp, "\\-"), "g");
11871
+ const rPatt = new RegExp("\\.".concat(drc), "g");
11872
+ s2 = s2.replace(dPatt, ".".concat(fp, "-")).replace(customPropPatt, "--".concat(fp, "-")).replace(rPatt, ".".concat(rc));
11873
+ }
11874
+ return s2;
11875
+ }
11876
+ var _cssInserted = false;
11877
+ function ensureCss() {
11878
+ if (config.autoAddCss && !_cssInserted) {
11879
+ insertCss(css());
11880
+ _cssInserted = true;
11881
+ }
11882
+ }
11883
+ var InjectCSS = {
11884
+ mixout() {
11885
+ return {
11886
+ dom: {
11887
+ css,
11888
+ insertCss: ensureCss
11889
+ }
11890
+ };
11891
+ },
11892
+ hooks() {
11893
+ return {
11894
+ beforeDOMElementCreation() {
11895
+ ensureCss();
11896
+ },
11897
+ beforeI2svg() {
11898
+ ensureCss();
11899
+ }
11900
+ };
11901
+ }
11902
+ };
11903
+ var w = WINDOW || {};
11904
+ if (!w[NAMESPACE_IDENTIFIER]) w[NAMESPACE_IDENTIFIER] = {};
11905
+ if (!w[NAMESPACE_IDENTIFIER].styles) w[NAMESPACE_IDENTIFIER].styles = {};
11906
+ if (!w[NAMESPACE_IDENTIFIER].hooks) w[NAMESPACE_IDENTIFIER].hooks = {};
11907
+ if (!w[NAMESPACE_IDENTIFIER].shims) w[NAMESPACE_IDENTIFIER].shims = [];
11908
+ var namespace = w[NAMESPACE_IDENTIFIER];
11909
+ var functions = [];
11910
+ var listener = function() {
11911
+ DOCUMENT.removeEventListener("DOMContentLoaded", listener);
11912
+ loaded = 1;
11913
+ functions.map((fn) => fn());
11914
+ };
11915
+ var loaded = false;
11916
+ if (IS_DOM) {
11917
+ loaded = (DOCUMENT.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(DOCUMENT.readyState);
11918
+ if (!loaded) DOCUMENT.addEventListener("DOMContentLoaded", listener);
11919
+ }
11920
+ function domready(fn) {
11921
+ if (!IS_DOM) return;
11922
+ loaded ? setTimeout(fn, 0) : functions.push(fn);
11923
+ }
11924
+ function toHtml(abstractNodes) {
11925
+ const {
11926
+ tag,
11927
+ attributes = {},
11928
+ children = []
11929
+ } = abstractNodes;
11930
+ if (typeof abstractNodes === "string") {
11931
+ return htmlEscape(abstractNodes);
11932
+ } else {
11933
+ return "<".concat(tag, " ").concat(joinAttributes(attributes), ">").concat(children.map(toHtml).join(""), "</").concat(tag, ">");
11934
+ }
11935
+ }
11936
+ function iconFromMapping(mapping, prefix, iconName) {
11937
+ if (mapping && mapping[prefix] && mapping[prefix][iconName]) {
11938
+ return {
11939
+ prefix,
11940
+ iconName,
11941
+ icon: mapping[prefix][iconName]
11942
+ };
11943
+ }
11944
+ }
11945
+ var reduce = function fastReduceObject(subject, fn, initialValue, thisContext) {
11946
+ var keys = Object.keys(subject), length = keys.length, iterator = fn, i, key, result;
11947
+ if (initialValue === void 0) {
11948
+ i = 1;
11949
+ result = subject[keys[0]];
11950
+ } else {
11951
+ i = 0;
11952
+ result = initialValue;
11953
+ }
11954
+ for (; i < length; i++) {
11955
+ key = keys[i];
11956
+ result = iterator(result, subject[key], key, subject);
11957
+ }
11958
+ return result;
11959
+ };
11960
+ function ucs2decode(string) {
11961
+ const output = [];
11962
+ let counter2 = 0;
11963
+ const length = string.length;
11964
+ while (counter2 < length) {
11965
+ const value = string.charCodeAt(counter2++);
11966
+ if (value >= 55296 && value <= 56319 && counter2 < length) {
11967
+ const extra = string.charCodeAt(counter2++);
11968
+ if ((extra & 64512) == 56320) {
11969
+ output.push(((value & 1023) << 10) + (extra & 1023) + 65536);
11970
+ } else {
11971
+ output.push(value);
11972
+ counter2--;
11973
+ }
11974
+ } else {
11975
+ output.push(value);
11976
+ }
11977
+ }
11978
+ return output;
11979
+ }
11980
+ function toHex(unicode) {
11981
+ const decoded = ucs2decode(unicode);
11982
+ return decoded.length === 1 ? decoded[0].toString(16) : null;
11983
+ }
11984
+ function codePointAt(string, index2) {
11985
+ const size4 = string.length;
11986
+ let first = string.charCodeAt(index2);
11987
+ let second;
11988
+ if (first >= 55296 && first <= 56319 && size4 > index2 + 1) {
11989
+ second = string.charCodeAt(index2 + 1);
11990
+ if (second >= 56320 && second <= 57343) {
11991
+ return (first - 55296) * 1024 + second - 56320 + 65536;
11992
+ }
11993
+ }
11994
+ return first;
11995
+ }
11996
+ function normalizeIcons(icons) {
11997
+ return Object.keys(icons).reduce((acc, iconName) => {
11998
+ const icon2 = icons[iconName];
11999
+ const expanded = !!icon2.icon;
12000
+ if (expanded) {
12001
+ acc[icon2.iconName] = icon2.icon;
12002
+ } else {
12003
+ acc[iconName] = icon2;
12004
+ }
12005
+ return acc;
12006
+ }, {});
12007
+ }
12008
+ function defineIcons(prefix, icons) {
12009
+ let params = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
12010
+ const {
12011
+ skipHooks = false
12012
+ } = params;
12013
+ const normalized = normalizeIcons(icons);
12014
+ if (typeof namespace.hooks.addPack === "function" && !skipHooks) {
12015
+ namespace.hooks.addPack(prefix, normalizeIcons(icons));
12016
+ } else {
12017
+ namespace.styles[prefix] = _objectSpread2(_objectSpread2({}, namespace.styles[prefix] || {}), normalized);
12018
+ }
12019
+ if (prefix === "fas") {
12020
+ defineIcons("fa", icons);
12021
+ }
12022
+ }
12023
+ var {
12024
+ styles,
12025
+ shims
12026
+ } = namespace;
12027
+ var FAMILY_NAMES = Object.keys(PREFIX_TO_LONG_STYLE);
12028
+ var PREFIXES_FOR_FAMILY = FAMILY_NAMES.reduce((acc, familyId) => {
12029
+ acc[familyId] = Object.keys(PREFIX_TO_LONG_STYLE[familyId]);
12030
+ return acc;
12031
+ }, {});
12032
+ var _defaultUsablePrefix = null;
12033
+ var _byUnicode = {};
12034
+ var _byLigature = {};
12035
+ var _byOldName = {};
12036
+ var _byOldUnicode = {};
12037
+ var _byAlias = {};
12038
+ function isReserved(name) {
12039
+ return ~RESERVED_CLASSES.indexOf(name);
12040
+ }
12041
+ function getIconName(cssPrefix, cls) {
12042
+ const parts = cls.split("-");
12043
+ const prefix = parts[0];
12044
+ const iconName = parts.slice(1).join("-");
12045
+ if (prefix === cssPrefix && iconName !== "" && !isReserved(iconName)) {
12046
+ return iconName;
12047
+ } else {
12048
+ return null;
12049
+ }
12050
+ }
12051
+ var build = () => {
12052
+ const lookup = (reducer) => {
12053
+ return reduce(styles, (o$$1, style, prefix) => {
12054
+ o$$1[prefix] = reduce(style, reducer, {});
12055
+ return o$$1;
12056
+ }, {});
12057
+ };
12058
+ _byUnicode = lookup((acc, icon2, iconName) => {
12059
+ if (icon2[3]) {
12060
+ acc[icon2[3]] = iconName;
12061
+ }
12062
+ if (icon2[2]) {
12063
+ const aliases = icon2[2].filter((a$$1) => {
12064
+ return typeof a$$1 === "number";
12065
+ });
12066
+ aliases.forEach((alias) => {
12067
+ acc[alias.toString(16)] = iconName;
12068
+ });
12069
+ }
12070
+ return acc;
12071
+ });
12072
+ _byLigature = lookup((acc, icon2, iconName) => {
12073
+ acc[iconName] = iconName;
12074
+ if (icon2[2]) {
12075
+ const aliases = icon2[2].filter((a$$1) => {
12076
+ return typeof a$$1 === "string";
12077
+ });
12078
+ aliases.forEach((alias) => {
12079
+ acc[alias] = iconName;
12080
+ });
12081
+ }
12082
+ return acc;
12083
+ });
12084
+ _byAlias = lookup((acc, icon2, iconName) => {
12085
+ const aliases = icon2[2];
12086
+ acc[iconName] = iconName;
12087
+ aliases.forEach((alias) => {
12088
+ acc[alias] = iconName;
12089
+ });
12090
+ return acc;
12091
+ });
12092
+ const hasRegular = "far" in styles || config.autoFetchSvg;
12093
+ const shimLookups = reduce(shims, (acc, shim) => {
12094
+ const maybeNameMaybeUnicode = shim[0];
12095
+ let prefix = shim[1];
12096
+ const iconName = shim[2];
12097
+ if (prefix === "far" && !hasRegular) {
12098
+ prefix = "fas";
12099
+ }
12100
+ if (typeof maybeNameMaybeUnicode === "string") {
12101
+ acc.names[maybeNameMaybeUnicode] = {
12102
+ prefix,
12103
+ iconName
12104
+ };
12105
+ }
12106
+ if (typeof maybeNameMaybeUnicode === "number") {
12107
+ acc.unicodes[maybeNameMaybeUnicode.toString(16)] = {
12108
+ prefix,
12109
+ iconName
12110
+ };
12111
+ }
12112
+ return acc;
12113
+ }, {
12114
+ names: {},
12115
+ unicodes: {}
12116
+ });
12117
+ _byOldName = shimLookups.names;
12118
+ _byOldUnicode = shimLookups.unicodes;
12119
+ _defaultUsablePrefix = getCanonicalPrefix(config.styleDefault, {
12120
+ family: config.familyDefault
12121
+ });
12122
+ };
12123
+ onChange((c$$1) => {
12124
+ _defaultUsablePrefix = getCanonicalPrefix(c$$1.styleDefault, {
12125
+ family: config.familyDefault
12126
+ });
12127
+ });
12128
+ build();
12129
+ function byUnicode(prefix, unicode) {
12130
+ return (_byUnicode[prefix] || {})[unicode];
12131
+ }
12132
+ function byLigature(prefix, ligature) {
12133
+ return (_byLigature[prefix] || {})[ligature];
12134
+ }
12135
+ function byAlias(prefix, alias) {
12136
+ return (_byAlias[prefix] || {})[alias];
12137
+ }
12138
+ function byOldName(name) {
12139
+ return _byOldName[name] || {
12140
+ prefix: null,
12141
+ iconName: null
12142
+ };
12143
+ }
12144
+ function byOldUnicode(unicode) {
12145
+ const oldUnicode = _byOldUnicode[unicode];
12146
+ const newUnicode = byUnicode("fas", unicode);
12147
+ return oldUnicode || (newUnicode ? {
12148
+ prefix: "fas",
12149
+ iconName: newUnicode
12150
+ } : null) || {
12151
+ prefix: null,
12152
+ iconName: null
12153
+ };
12154
+ }
12155
+ function getDefaultUsablePrefix() {
12156
+ return _defaultUsablePrefix;
12157
+ }
12158
+ var emptyCanonicalIcon = () => {
12159
+ return {
12160
+ prefix: null,
12161
+ iconName: null,
12162
+ rest: []
12163
+ };
12164
+ };
12165
+ function getFamilyId(values) {
12166
+ let family = s;
12167
+ const famProps = FAMILY_NAMES.reduce((acc, familyId) => {
12168
+ acc[familyId] = "".concat(config.cssPrefix, "-").concat(familyId);
12169
+ return acc;
12170
+ }, {});
12171
+ L.forEach((familyId) => {
12172
+ if (values.includes(famProps[familyId]) || values.some((v$$1) => PREFIXES_FOR_FAMILY[familyId].includes(v$$1))) {
12173
+ family = familyId;
12174
+ }
12175
+ });
12176
+ return family;
12177
+ }
12178
+ function getCanonicalPrefix(styleOrPrefix) {
12179
+ let params = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
12180
+ const {
12181
+ family = s
12182
+ } = params;
12183
+ const style = PREFIX_TO_STYLE[family][styleOrPrefix];
12184
+ if (family === t && !styleOrPrefix) {
12185
+ return "fad";
12186
+ }
12187
+ const prefix = STYLE_TO_PREFIX[family][styleOrPrefix] || STYLE_TO_PREFIX[family][style];
12188
+ const defined = styleOrPrefix in namespace.styles ? styleOrPrefix : null;
12189
+ const result = prefix || defined || null;
12190
+ return result;
12191
+ }
12192
+ function moveNonFaClassesToRest(classNames) {
12193
+ let rest = [];
12194
+ let iconName = null;
12195
+ classNames.forEach((cls) => {
12196
+ const result = getIconName(config.cssPrefix, cls);
12197
+ if (result) {
12198
+ iconName = result;
12199
+ } else if (cls) {
12200
+ rest.push(cls);
12201
+ }
12202
+ });
12203
+ return {
12204
+ iconName,
12205
+ rest
12206
+ };
12207
+ }
12208
+ function sortedUniqueValues(arr) {
12209
+ return arr.sort().filter((value, index2, arr2) => {
12210
+ return arr2.indexOf(value) === index2;
12211
+ });
12212
+ }
12213
+ function getCanonicalIcon(values) {
12214
+ let params = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
12215
+ const {
12216
+ skipLookups = false
12217
+ } = params;
12218
+ let givenPrefix = null;
12219
+ const faCombinedClasses = Ia.concat(bt$1);
12220
+ const faStyleOrFamilyClasses = sortedUniqueValues(values.filter((cls) => faCombinedClasses.includes(cls)));
12221
+ const nonStyleOrFamilyClasses = sortedUniqueValues(values.filter((cls) => !Ia.includes(cls)));
12222
+ const faStyles = faStyleOrFamilyClasses.filter((cls) => {
12223
+ givenPrefix = cls;
12224
+ return !P.includes(cls);
12225
+ });
12226
+ const [styleFromValues = null] = faStyles;
12227
+ const family = getFamilyId(faStyleOrFamilyClasses);
12228
+ const canonical = _objectSpread2(_objectSpread2({}, moveNonFaClassesToRest(nonStyleOrFamilyClasses)), {}, {
12229
+ prefix: getCanonicalPrefix(styleFromValues, {
12230
+ family
12231
+ })
12232
+ });
12233
+ return _objectSpread2(_objectSpread2(_objectSpread2({}, canonical), getDefaultCanonicalPrefix({
12234
+ values,
12235
+ family,
12236
+ styles,
12237
+ config,
12238
+ canonical,
12239
+ givenPrefix
12240
+ })), applyShimAndAlias(skipLookups, givenPrefix, canonical));
12241
+ }
12242
+ function applyShimAndAlias(skipLookups, givenPrefix, canonical) {
12243
+ let {
12244
+ prefix,
12245
+ iconName
12246
+ } = canonical;
12247
+ if (skipLookups || !prefix || !iconName) {
12248
+ return {
12249
+ prefix,
12250
+ iconName
12251
+ };
12252
+ }
12253
+ const shim = givenPrefix === "fa" ? byOldName(iconName) : {};
12254
+ const aliasIconName = byAlias(prefix, iconName);
12255
+ iconName = shim.iconName || aliasIconName || iconName;
12256
+ prefix = shim.prefix || prefix;
12257
+ if (prefix === "far" && !styles["far"] && styles["fas"] && !config.autoFetchSvg) {
12258
+ prefix = "fas";
12259
+ }
12260
+ return {
12261
+ prefix,
12262
+ iconName
12263
+ };
12264
+ }
12265
+ var newCanonicalFamilies = L.filter((familyId) => {
12266
+ return familyId !== s || familyId !== t;
12267
+ });
12268
+ var newCanonicalStyles = Object.keys(ga).filter((key) => key !== s).map((key) => Object.keys(ga[key])).flat();
12269
+ function getDefaultCanonicalPrefix(prefixOptions) {
12270
+ const {
12271
+ values,
12272
+ family,
12273
+ canonical,
12274
+ givenPrefix = "",
12275
+ styles: styles2 = {},
12276
+ config: config$$1 = {}
12277
+ } = prefixOptions;
12278
+ const isDuotoneFamily = family === t;
12279
+ const valuesHasDuotone = values.includes("fa-duotone") || values.includes("fad");
12280
+ const defaultFamilyIsDuotone = config$$1.familyDefault === "duotone";
12281
+ const canonicalPrefixIsDuotone = canonical.prefix === "fad" || canonical.prefix === "fa-duotone";
12282
+ if (!isDuotoneFamily && (valuesHasDuotone || defaultFamilyIsDuotone || canonicalPrefixIsDuotone)) {
12283
+ canonical.prefix = "fad";
12284
+ }
12285
+ if (values.includes("fa-brands") || values.includes("fab")) {
12286
+ canonical.prefix = "fab";
12287
+ }
12288
+ if (!canonical.prefix && newCanonicalFamilies.includes(family)) {
12289
+ const validPrefix = Object.keys(styles2).find((key) => newCanonicalStyles.includes(key));
12290
+ if (validPrefix || config$$1.autoFetchSvg) {
12291
+ const defaultPrefix = pt.get(family).defaultShortPrefixId;
12292
+ canonical.prefix = defaultPrefix;
12293
+ canonical.iconName = byAlias(canonical.prefix, canonical.iconName) || canonical.iconName;
12294
+ }
12295
+ }
12296
+ if (canonical.prefix === "fa" || givenPrefix === "fa") {
12297
+ canonical.prefix = getDefaultUsablePrefix() || "fas";
12298
+ }
12299
+ return canonical;
12300
+ }
12301
+ var Library = class {
12302
+ constructor() {
12303
+ this.definitions = {};
12304
+ }
12305
+ add() {
12306
+ for (var _len = arguments.length, definitions = new Array(_len), _key = 0; _key < _len; _key++) {
12307
+ definitions[_key] = arguments[_key];
12308
+ }
12309
+ const additions = definitions.reduce(this._pullDefinitions, {});
12310
+ Object.keys(additions).forEach((key) => {
12311
+ this.definitions[key] = _objectSpread2(_objectSpread2({}, this.definitions[key] || {}), additions[key]);
12312
+ defineIcons(key, additions[key]);
12313
+ const longPrefix = PREFIX_TO_LONG_STYLE[s][key];
12314
+ if (longPrefix) defineIcons(longPrefix, additions[key]);
12315
+ build();
12316
+ });
12317
+ }
12318
+ reset() {
12319
+ this.definitions = {};
12320
+ }
12321
+ _pullDefinitions(additions, definition) {
12322
+ const normalized = definition.prefix && definition.iconName && definition.icon ? {
12323
+ 0: definition
12324
+ } : definition;
12325
+ Object.keys(normalized).map((key) => {
12326
+ const {
12327
+ prefix,
12328
+ iconName,
12329
+ icon: icon2
12330
+ } = normalized[key];
12331
+ const aliases = icon2[2];
12332
+ if (!additions[prefix]) additions[prefix] = {};
12333
+ if (aliases.length > 0) {
12334
+ aliases.forEach((alias) => {
12335
+ if (typeof alias === "string") {
12336
+ additions[prefix][alias] = icon2;
12337
+ }
12338
+ });
12339
+ }
12340
+ additions[prefix][iconName] = icon2;
12341
+ });
12342
+ return additions;
12343
+ }
12344
+ };
12345
+ var _plugins = [];
12346
+ var _hooks = {};
12347
+ var providers = {};
12348
+ var defaultProviderKeys = Object.keys(providers);
12349
+ function registerPlugins(nextPlugins, _ref) {
12350
+ let {
12351
+ mixoutsTo: obj
12352
+ } = _ref;
12353
+ _plugins = nextPlugins;
12354
+ _hooks = {};
12355
+ Object.keys(providers).forEach((k) => {
12356
+ if (defaultProviderKeys.indexOf(k) === -1) {
12357
+ delete providers[k];
12358
+ }
12359
+ });
12360
+ _plugins.forEach((plugin) => {
12361
+ const mixout = plugin.mixout ? plugin.mixout() : {};
12362
+ Object.keys(mixout).forEach((tk) => {
12363
+ if (typeof mixout[tk] === "function") {
12364
+ obj[tk] = mixout[tk];
12365
+ }
12366
+ if (typeof mixout[tk] === "object") {
12367
+ Object.keys(mixout[tk]).forEach((sk) => {
12368
+ if (!obj[tk]) {
12369
+ obj[tk] = {};
12370
+ }
12371
+ obj[tk][sk] = mixout[tk][sk];
12372
+ });
12373
+ }
12374
+ });
12375
+ if (plugin.hooks) {
12376
+ const hooks = plugin.hooks();
12377
+ Object.keys(hooks).forEach((hook) => {
12378
+ if (!_hooks[hook]) {
12379
+ _hooks[hook] = [];
12380
+ }
12381
+ _hooks[hook].push(hooks[hook]);
12382
+ });
12383
+ }
12384
+ if (plugin.provides) {
12385
+ plugin.provides(providers);
12386
+ }
12387
+ });
12388
+ return obj;
12389
+ }
12390
+ function chainHooks(hook, accumulator) {
12391
+ for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
12392
+ args[_key - 2] = arguments[_key];
12393
+ }
12394
+ const hookFns = _hooks[hook] || [];
12395
+ hookFns.forEach((hookFn) => {
12396
+ accumulator = hookFn.apply(null, [accumulator, ...args]);
12397
+ });
12398
+ return accumulator;
12399
+ }
12400
+ function callHooks(hook) {
12401
+ for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
12402
+ args[_key2 - 1] = arguments[_key2];
12403
+ }
12404
+ const hookFns = _hooks[hook] || [];
12405
+ hookFns.forEach((hookFn) => {
12406
+ hookFn.apply(null, args);
12407
+ });
12408
+ return void 0;
12409
+ }
12410
+ function callProvided() {
12411
+ const hook = arguments[0];
12412
+ const args = Array.prototype.slice.call(arguments, 1);
12413
+ return providers[hook] ? providers[hook].apply(null, args) : void 0;
12414
+ }
12415
+ function findIconDefinition(iconLookup) {
12416
+ if (iconLookup.prefix === "fa") {
12417
+ iconLookup.prefix = "fas";
12418
+ }
12419
+ let {
12420
+ iconName
12421
+ } = iconLookup;
12422
+ const prefix = iconLookup.prefix || getDefaultUsablePrefix();
12423
+ if (!iconName) return;
12424
+ iconName = byAlias(prefix, iconName) || iconName;
12425
+ return iconFromMapping(library.definitions, prefix, iconName) || iconFromMapping(namespace.styles, prefix, iconName);
12426
+ }
12427
+ var library = new Library();
12428
+ var noAuto = () => {
12429
+ config.autoReplaceSvg = false;
12430
+ config.observeMutations = false;
12431
+ callHooks("noAuto");
12432
+ };
12433
+ var dom = {
12434
+ i2svg: function() {
12435
+ let params = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
12436
+ if (IS_DOM) {
12437
+ callHooks("beforeI2svg", params);
12438
+ callProvided("pseudoElements2svg", params);
12439
+ return callProvided("i2svg", params);
12440
+ } else {
12441
+ return Promise.reject(new Error("Operation requires a DOM of some kind."));
12442
+ }
12443
+ },
12444
+ watch: function() {
12445
+ let params = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
12446
+ const {
12447
+ autoReplaceSvgRoot
12448
+ } = params;
12449
+ if (config.autoReplaceSvg === false) {
12450
+ config.autoReplaceSvg = true;
12451
+ }
12452
+ config.observeMutations = true;
12453
+ domready(() => {
12454
+ autoReplace({
12455
+ autoReplaceSvgRoot
12456
+ });
12457
+ callHooks("watch", params);
12458
+ });
12459
+ }
12460
+ };
12461
+ var parse2 = {
12462
+ icon: (icon2) => {
12463
+ if (icon2 === null) {
12464
+ return null;
12465
+ }
12466
+ if (typeof icon2 === "object" && icon2.prefix && icon2.iconName) {
12467
+ return {
12468
+ prefix: icon2.prefix,
12469
+ iconName: byAlias(icon2.prefix, icon2.iconName) || icon2.iconName
12470
+ };
12471
+ }
12472
+ if (Array.isArray(icon2) && icon2.length === 2) {
12473
+ const iconName = icon2[1].indexOf("fa-") === 0 ? icon2[1].slice(3) : icon2[1];
12474
+ const prefix = getCanonicalPrefix(icon2[0]);
12475
+ return {
12476
+ prefix,
12477
+ iconName: byAlias(prefix, iconName) || iconName
12478
+ };
12479
+ }
12480
+ if (typeof icon2 === "string" && (icon2.indexOf("".concat(config.cssPrefix, "-")) > -1 || icon2.match(ICON_SELECTION_SYNTAX_PATTERN))) {
12481
+ const canonicalIcon = getCanonicalIcon(icon2.split(" "), {
12482
+ skipLookups: true
12483
+ });
12484
+ return {
12485
+ prefix: canonicalIcon.prefix || getDefaultUsablePrefix(),
12486
+ iconName: byAlias(canonicalIcon.prefix, canonicalIcon.iconName) || canonicalIcon.iconName
12487
+ };
12488
+ }
12489
+ if (typeof icon2 === "string") {
12490
+ const prefix = getDefaultUsablePrefix();
12491
+ return {
12492
+ prefix,
12493
+ iconName: byAlias(prefix, icon2) || icon2
12494
+ };
12495
+ }
12496
+ }
12497
+ };
12498
+ var api = {
12499
+ noAuto,
12500
+ config,
12501
+ dom,
12502
+ parse: parse2,
12503
+ library,
12504
+ findIconDefinition,
12505
+ toHtml
12506
+ };
12507
+ var autoReplace = function() {
12508
+ let params = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
12509
+ const {
12510
+ autoReplaceSvgRoot = DOCUMENT
12511
+ } = params;
12512
+ if ((Object.keys(namespace.styles).length > 0 || config.autoFetchSvg) && IS_DOM && config.autoReplaceSvg) api.dom.i2svg({
12513
+ node: autoReplaceSvgRoot
12514
+ });
12515
+ };
12516
+ function domVariants(val, abstractCreator) {
12517
+ Object.defineProperty(val, "abstract", {
12518
+ get: abstractCreator
12519
+ });
12520
+ Object.defineProperty(val, "html", {
12521
+ get: function() {
12522
+ return val.abstract.map((a) => toHtml(a));
12523
+ }
12524
+ });
12525
+ Object.defineProperty(val, "node", {
12526
+ get: function() {
12527
+ if (!IS_DOM) return;
12528
+ const container = DOCUMENT.createElement("div");
12529
+ container.innerHTML = val.html;
12530
+ return container.children;
12531
+ }
12532
+ });
12533
+ return val;
12534
+ }
12535
+ function asIcon(_ref) {
12536
+ let {
12537
+ children,
12538
+ main,
12539
+ mask,
12540
+ attributes,
12541
+ styles: styles2,
12542
+ transform
12543
+ } = _ref;
12544
+ if (transformIsMeaningful(transform) && main.found && !mask.found) {
12545
+ const {
12546
+ width,
12547
+ height
12548
+ } = main;
12549
+ const offset4 = {
12550
+ x: width / height / 2,
12551
+ y: 0.5
12552
+ };
12553
+ attributes["style"] = joinStyles(_objectSpread2(_objectSpread2({}, styles2), {}, {
12554
+ "transform-origin": "".concat(offset4.x + transform.x / 16, "em ").concat(offset4.y + transform.y / 16, "em")
12555
+ }));
12556
+ }
12557
+ return [{
12558
+ tag: "svg",
12559
+ attributes,
12560
+ children
12561
+ }];
12562
+ }
12563
+ function asSymbol(_ref) {
12564
+ let {
12565
+ prefix,
12566
+ iconName,
12567
+ children,
12568
+ attributes,
12569
+ symbol
12570
+ } = _ref;
12571
+ const id = symbol === true ? "".concat(prefix, "-").concat(config.cssPrefix, "-").concat(iconName) : symbol;
12572
+ return [{
12573
+ tag: "svg",
12574
+ attributes: {
12575
+ style: "display: none;"
12576
+ },
12577
+ children: [{
12578
+ tag: "symbol",
12579
+ attributes: _objectSpread2(_objectSpread2({}, attributes), {}, {
12580
+ id
12581
+ }),
12582
+ children
12583
+ }]
12584
+ }];
12585
+ }
12586
+ function makeInlineSvgAbstract(params) {
12587
+ const {
12588
+ icons: {
12589
+ main,
12590
+ mask
12591
+ },
12592
+ prefix,
12593
+ iconName,
12594
+ transform,
12595
+ symbol,
12596
+ title,
12597
+ maskId,
12598
+ titleId,
12599
+ extra,
12600
+ watchable = false
12601
+ } = params;
12602
+ const {
12603
+ width,
12604
+ height
12605
+ } = mask.found ? mask : main;
12606
+ const isUploadedIcon = Lt.includes(prefix);
12607
+ const attrClass = [config.replacementClass, iconName ? "".concat(config.cssPrefix, "-").concat(iconName) : ""].filter((c$$1) => extra.classes.indexOf(c$$1) === -1).filter((c$$1) => c$$1 !== "" || !!c$$1).concat(extra.classes).join(" ");
12608
+ let content = {
12609
+ children: [],
12610
+ attributes: _objectSpread2(_objectSpread2({}, extra.attributes), {}, {
12611
+ "data-prefix": prefix,
12612
+ "data-icon": iconName,
12613
+ "class": attrClass,
12614
+ "role": extra.attributes.role || "img",
12615
+ "xmlns": "http://www.w3.org/2000/svg",
12616
+ "viewBox": "0 0 ".concat(width, " ").concat(height)
12617
+ })
12618
+ };
12619
+ const uploadedIconWidthStyle = isUploadedIcon && !~extra.classes.indexOf("fa-fw") ? {
12620
+ width: "".concat(width / height * 16 * 0.0625, "em")
12621
+ } : {};
12622
+ if (watchable) {
12623
+ content.attributes[DATA_FA_I2SVG] = "";
12624
+ }
12625
+ if (title) {
12626
+ content.children.push({
12627
+ tag: "title",
12628
+ attributes: {
12629
+ id: content.attributes["aria-labelledby"] || "title-".concat(titleId || nextUniqueId())
12630
+ },
12631
+ children: [title]
12632
+ });
12633
+ delete content.attributes.title;
12634
+ }
12635
+ const args = _objectSpread2(_objectSpread2({}, content), {}, {
12636
+ prefix,
12637
+ iconName,
12638
+ main,
12639
+ mask,
12640
+ maskId,
12641
+ transform,
12642
+ symbol,
12643
+ styles: _objectSpread2(_objectSpread2({}, uploadedIconWidthStyle), extra.styles)
12644
+ });
12645
+ const {
12646
+ children,
12647
+ attributes
12648
+ } = mask.found && main.found ? callProvided("generateAbstractMask", args) || {
12649
+ children: [],
12650
+ attributes: {}
12651
+ } : callProvided("generateAbstractIcon", args) || {
12652
+ children: [],
12653
+ attributes: {}
12654
+ };
12655
+ args.children = children;
12656
+ args.attributes = attributes;
12657
+ if (symbol) {
12658
+ return asSymbol(args);
12659
+ } else {
12660
+ return asIcon(args);
12661
+ }
12662
+ }
12663
+ function makeLayersTextAbstract(params) {
12664
+ const {
12665
+ content,
12666
+ width,
12667
+ height,
12668
+ transform,
12669
+ title,
12670
+ extra,
12671
+ watchable = false
12672
+ } = params;
12673
+ const attributes = _objectSpread2(_objectSpread2(_objectSpread2({}, extra.attributes), title ? {
12674
+ "title": title
12675
+ } : {}), {}, {
12676
+ "class": extra.classes.join(" ")
12677
+ });
12678
+ if (watchable) {
12679
+ attributes[DATA_FA_I2SVG] = "";
12680
+ }
12681
+ const styles2 = _objectSpread2({}, extra.styles);
12682
+ if (transformIsMeaningful(transform)) {
12683
+ styles2["transform"] = transformForCss({
12684
+ transform,
12685
+ startCentered: true,
12686
+ width,
12687
+ height
12688
+ });
12689
+ styles2["-webkit-transform"] = styles2["transform"];
12690
+ }
12691
+ const styleString = joinStyles(styles2);
12692
+ if (styleString.length > 0) {
12693
+ attributes["style"] = styleString;
12694
+ }
12695
+ const val = [];
12696
+ val.push({
12697
+ tag: "span",
12698
+ attributes,
12699
+ children: [content]
12700
+ });
12701
+ if (title) {
12702
+ val.push({
12703
+ tag: "span",
12704
+ attributes: {
12705
+ class: "sr-only"
12706
+ },
12707
+ children: [title]
12708
+ });
12709
+ }
12710
+ return val;
12711
+ }
12712
+ function makeLayersCounterAbstract(params) {
12713
+ const {
12714
+ content,
12715
+ title,
12716
+ extra
12717
+ } = params;
12718
+ const attributes = _objectSpread2(_objectSpread2(_objectSpread2({}, extra.attributes), title ? {
12719
+ "title": title
12720
+ } : {}), {}, {
12721
+ "class": extra.classes.join(" ")
12722
+ });
12723
+ const styleString = joinStyles(extra.styles);
12724
+ if (styleString.length > 0) {
12725
+ attributes["style"] = styleString;
12726
+ }
12727
+ const val = [];
12728
+ val.push({
12729
+ tag: "span",
12730
+ attributes,
12731
+ children: [content]
12732
+ });
12733
+ if (title) {
12734
+ val.push({
12735
+ tag: "span",
12736
+ attributes: {
12737
+ class: "sr-only"
12738
+ },
12739
+ children: [title]
12740
+ });
12741
+ }
12742
+ return val;
12743
+ }
12744
+ var {
12745
+ styles: styles$1
12746
+ } = namespace;
12747
+ function asFoundIcon(icon2) {
12748
+ const width = icon2[0];
12749
+ const height = icon2[1];
12750
+ const [vectorData] = icon2.slice(4);
12751
+ let element = null;
12752
+ if (Array.isArray(vectorData)) {
12753
+ element = {
12754
+ tag: "g",
12755
+ attributes: {
12756
+ class: "".concat(config.cssPrefix, "-").concat(DUOTONE_CLASSES.GROUP)
12757
+ },
12758
+ children: [{
12759
+ tag: "path",
12760
+ attributes: {
12761
+ class: "".concat(config.cssPrefix, "-").concat(DUOTONE_CLASSES.SECONDARY),
12762
+ fill: "currentColor",
12763
+ d: vectorData[0]
12764
+ }
12765
+ }, {
12766
+ tag: "path",
12767
+ attributes: {
12768
+ class: "".concat(config.cssPrefix, "-").concat(DUOTONE_CLASSES.PRIMARY),
12769
+ fill: "currentColor",
12770
+ d: vectorData[1]
12771
+ }
12772
+ }]
12773
+ };
12774
+ } else {
12775
+ element = {
12776
+ tag: "path",
12777
+ attributes: {
12778
+ fill: "currentColor",
12779
+ d: vectorData
12780
+ }
12781
+ };
12782
+ }
12783
+ return {
12784
+ found: true,
12785
+ width,
12786
+ height,
12787
+ icon: element
12788
+ };
12789
+ }
12790
+ var missingIconResolutionMixin = {
12791
+ found: false,
12792
+ width: 512,
12793
+ height: 512
12794
+ };
12795
+ function maybeNotifyMissing(iconName, prefix) {
12796
+ if (!PRODUCTION && !config.showMissingIcons && iconName) {
12797
+ console.error('Icon with name "'.concat(iconName, '" and prefix "').concat(prefix, '" is missing.'));
12798
+ }
12799
+ }
12800
+ function findIcon(iconName, prefix) {
12801
+ let givenPrefix = prefix;
12802
+ if (prefix === "fa" && config.styleDefault !== null) {
12803
+ prefix = getDefaultUsablePrefix();
12804
+ }
12805
+ return new Promise((resolve, reject) => {
12806
+ if (givenPrefix === "fa") {
12807
+ const shim = byOldName(iconName) || {};
12808
+ iconName = shim.iconName || iconName;
12809
+ prefix = shim.prefix || prefix;
12810
+ }
12811
+ if (iconName && prefix && styles$1[prefix] && styles$1[prefix][iconName]) {
12812
+ const icon2 = styles$1[prefix][iconName];
12813
+ return resolve(asFoundIcon(icon2));
12814
+ }
12815
+ maybeNotifyMissing(iconName, prefix);
12816
+ resolve(_objectSpread2(_objectSpread2({}, missingIconResolutionMixin), {}, {
12817
+ icon: config.showMissingIcons && iconName ? callProvided("missingIconAbstract") || {} : {}
12818
+ }));
12819
+ });
12820
+ }
12821
+ var noop$1 = () => {
12822
+ };
12823
+ var p$2 = config.measurePerformance && PERFORMANCE && PERFORMANCE.mark && PERFORMANCE.measure ? PERFORMANCE : {
12824
+ mark: noop$1,
12825
+ measure: noop$1
12826
+ };
12827
+ var preamble = 'FA "6.7.2"';
12828
+ var begin = (name) => {
12829
+ p$2.mark("".concat(preamble, " ").concat(name, " begins"));
12830
+ return () => end(name);
12831
+ };
12832
+ var end = (name) => {
12833
+ p$2.mark("".concat(preamble, " ").concat(name, " ends"));
12834
+ p$2.measure("".concat(preamble, " ").concat(name), "".concat(preamble, " ").concat(name, " begins"), "".concat(preamble, " ").concat(name, " ends"));
12835
+ };
12836
+ var perf = {
12837
+ begin,
12838
+ end
12839
+ };
12840
+ var noop$2 = () => {
12841
+ };
12842
+ function isWatched(node) {
12843
+ const i2svg = node.getAttribute ? node.getAttribute(DATA_FA_I2SVG) : null;
12844
+ return typeof i2svg === "string";
12845
+ }
12846
+ function hasPrefixAndIcon(node) {
12847
+ const prefix = node.getAttribute ? node.getAttribute(DATA_PREFIX) : null;
12848
+ const icon2 = node.getAttribute ? node.getAttribute(DATA_ICON) : null;
12849
+ return prefix && icon2;
12850
+ }
12851
+ function hasBeenReplaced(node) {
12852
+ return node && node.classList && node.classList.contains && node.classList.contains(config.replacementClass);
12853
+ }
12854
+ function getMutator() {
12855
+ if (config.autoReplaceSvg === true) {
12856
+ return mutators.replace;
12857
+ }
12858
+ const mutator = mutators[config.autoReplaceSvg];
12859
+ return mutator || mutators.replace;
12860
+ }
12861
+ function createElementNS(tag) {
12862
+ return DOCUMENT.createElementNS("http://www.w3.org/2000/svg", tag);
12863
+ }
12864
+ function createElement16(tag) {
12865
+ return DOCUMENT.createElement(tag);
12866
+ }
12867
+ function convertSVG(abstractObj) {
12868
+ let params = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
12869
+ const {
12870
+ ceFn = abstractObj.tag === "svg" ? createElementNS : createElement16
12871
+ } = params;
12872
+ if (typeof abstractObj === "string") {
12873
+ return DOCUMENT.createTextNode(abstractObj);
12874
+ }
12875
+ const tag = ceFn(abstractObj.tag);
12876
+ Object.keys(abstractObj.attributes || []).forEach(function(key) {
12877
+ tag.setAttribute(key, abstractObj.attributes[key]);
12878
+ });
12879
+ const children = abstractObj.children || [];
12880
+ children.forEach(function(child) {
12881
+ tag.appendChild(convertSVG(child, {
12882
+ ceFn
12883
+ }));
12884
+ });
12885
+ return tag;
12886
+ }
12887
+ function nodeAsComment(node) {
12888
+ let comment = " ".concat(node.outerHTML, " ");
12889
+ comment = "".concat(comment, "Font Awesome fontawesome.com ");
12890
+ return comment;
12891
+ }
12892
+ var mutators = {
12893
+ replace: function(mutation) {
12894
+ const node = mutation[0];
12895
+ if (node.parentNode) {
12896
+ mutation[1].forEach((abstract) => {
12897
+ node.parentNode.insertBefore(convertSVG(abstract), node);
12898
+ });
12899
+ if (node.getAttribute(DATA_FA_I2SVG) === null && config.keepOriginalSource) {
12900
+ let comment = DOCUMENT.createComment(nodeAsComment(node));
12901
+ node.parentNode.replaceChild(comment, node);
12902
+ } else {
12903
+ node.remove();
12904
+ }
12905
+ }
12906
+ },
12907
+ nest: function(mutation) {
12908
+ const node = mutation[0];
12909
+ const abstract = mutation[1];
12910
+ if (~classArray(node).indexOf(config.replacementClass)) {
12911
+ return mutators.replace(mutation);
12912
+ }
12913
+ const forSvg = new RegExp("".concat(config.cssPrefix, "-.*"));
12914
+ delete abstract[0].attributes.id;
12915
+ if (abstract[0].attributes.class) {
12916
+ const splitClasses = abstract[0].attributes.class.split(" ").reduce((acc, cls) => {
12917
+ if (cls === config.replacementClass || cls.match(forSvg)) {
12918
+ acc.toSvg.push(cls);
12919
+ } else {
12920
+ acc.toNode.push(cls);
12921
+ }
12922
+ return acc;
12923
+ }, {
12924
+ toNode: [],
12925
+ toSvg: []
12926
+ });
12927
+ abstract[0].attributes.class = splitClasses.toSvg.join(" ");
12928
+ if (splitClasses.toNode.length === 0) {
12929
+ node.removeAttribute("class");
12930
+ } else {
12931
+ node.setAttribute("class", splitClasses.toNode.join(" "));
12932
+ }
12933
+ }
12934
+ const newInnerHTML = abstract.map((a) => toHtml(a)).join("\n");
12935
+ node.setAttribute(DATA_FA_I2SVG, "");
12936
+ node.innerHTML = newInnerHTML;
12937
+ }
12938
+ };
12939
+ function performOperationSync(op) {
12940
+ op();
12941
+ }
12942
+ function perform(mutations, callback) {
12943
+ const callbackFunction = typeof callback === "function" ? callback : noop$2;
12944
+ if (mutations.length === 0) {
12945
+ callbackFunction();
12946
+ } else {
12947
+ let frame = performOperationSync;
12948
+ if (config.mutateApproach === MUTATION_APPROACH_ASYNC) {
12949
+ frame = WINDOW.requestAnimationFrame || performOperationSync;
12950
+ }
12951
+ frame(() => {
12952
+ const mutator = getMutator();
12953
+ const mark = perf.begin("mutate");
12954
+ mutations.map(mutator);
12955
+ mark();
12956
+ callbackFunction();
12957
+ });
12958
+ }
12959
+ }
12960
+ var disabled = false;
12961
+ function disableObservation() {
12962
+ disabled = true;
12963
+ }
12964
+ function enableObservation() {
12965
+ disabled = false;
12966
+ }
12967
+ var mo = null;
12968
+ function observe(options) {
12969
+ if (!MUTATION_OBSERVER) {
12970
+ return;
12971
+ }
12972
+ if (!config.observeMutations) {
12973
+ return;
12974
+ }
12975
+ const {
12976
+ treeCallback = noop$2,
12977
+ nodeCallback = noop$2,
12978
+ pseudoElementsCallback = noop$2,
12979
+ observeMutationsRoot = DOCUMENT
12980
+ } = options;
12981
+ mo = new MUTATION_OBSERVER((objects) => {
12982
+ if (disabled) return;
12983
+ const defaultPrefix = getDefaultUsablePrefix();
12984
+ toArray(objects).forEach((mutationRecord) => {
12985
+ if (mutationRecord.type === "childList" && mutationRecord.addedNodes.length > 0 && !isWatched(mutationRecord.addedNodes[0])) {
12986
+ if (config.searchPseudoElements) {
12987
+ pseudoElementsCallback(mutationRecord.target);
12988
+ }
12989
+ treeCallback(mutationRecord.target);
12990
+ }
12991
+ if (mutationRecord.type === "attributes" && mutationRecord.target.parentNode && config.searchPseudoElements) {
12992
+ pseudoElementsCallback(mutationRecord.target.parentNode);
12993
+ }
12994
+ if (mutationRecord.type === "attributes" && isWatched(mutationRecord.target) && ~ATTRIBUTES_WATCHED_FOR_MUTATION.indexOf(mutationRecord.attributeName)) {
12995
+ if (mutationRecord.attributeName === "class" && hasPrefixAndIcon(mutationRecord.target)) {
12996
+ const {
12997
+ prefix,
12998
+ iconName
12999
+ } = getCanonicalIcon(classArray(mutationRecord.target));
13000
+ mutationRecord.target.setAttribute(DATA_PREFIX, prefix || defaultPrefix);
13001
+ if (iconName) mutationRecord.target.setAttribute(DATA_ICON, iconName);
13002
+ } else if (hasBeenReplaced(mutationRecord.target)) {
13003
+ nodeCallback(mutationRecord.target);
13004
+ }
13005
+ }
13006
+ });
13007
+ });
13008
+ if (!IS_DOM) return;
13009
+ mo.observe(observeMutationsRoot, {
13010
+ childList: true,
13011
+ attributes: true,
13012
+ characterData: true,
13013
+ subtree: true
13014
+ });
13015
+ }
13016
+ function disconnect() {
13017
+ if (!mo) return;
13018
+ mo.disconnect();
13019
+ }
13020
+ function styleParser(node) {
13021
+ const style = node.getAttribute("style");
13022
+ let val = [];
13023
+ if (style) {
13024
+ val = style.split(";").reduce((acc, style2) => {
13025
+ const styles2 = style2.split(":");
13026
+ const prop = styles2[0];
13027
+ const value = styles2.slice(1);
13028
+ if (prop && value.length > 0) {
13029
+ acc[prop] = value.join(":").trim();
13030
+ }
13031
+ return acc;
13032
+ }, {});
13033
+ }
13034
+ return val;
13035
+ }
13036
+ function classParser(node) {
13037
+ const existingPrefix = node.getAttribute("data-prefix");
13038
+ const existingIconName = node.getAttribute("data-icon");
13039
+ const innerText = node.innerText !== void 0 ? node.innerText.trim() : "";
13040
+ let val = getCanonicalIcon(classArray(node));
13041
+ if (!val.prefix) {
13042
+ val.prefix = getDefaultUsablePrefix();
13043
+ }
13044
+ if (existingPrefix && existingIconName) {
13045
+ val.prefix = existingPrefix;
13046
+ val.iconName = existingIconName;
13047
+ }
13048
+ if (val.iconName && val.prefix) {
13049
+ return val;
13050
+ }
13051
+ if (val.prefix && innerText.length > 0) {
13052
+ val.iconName = byLigature(val.prefix, node.innerText) || byUnicode(val.prefix, toHex(node.innerText));
13053
+ }
13054
+ if (!val.iconName && config.autoFetchSvg && node.firstChild && node.firstChild.nodeType === Node.TEXT_NODE) {
13055
+ val.iconName = node.firstChild.data;
13056
+ }
13057
+ return val;
13058
+ }
13059
+ function attributesParser(node) {
13060
+ const extraAttributes = toArray(node.attributes).reduce((acc, attr) => {
13061
+ if (acc.name !== "class" && acc.name !== "style") {
13062
+ acc[attr.name] = attr.value;
13063
+ }
13064
+ return acc;
13065
+ }, {});
13066
+ const title = node.getAttribute("title");
13067
+ const titleId = node.getAttribute("data-fa-title-id");
13068
+ if (config.autoA11y) {
13069
+ if (title) {
13070
+ extraAttributes["aria-labelledby"] = "".concat(config.replacementClass, "-title-").concat(titleId || nextUniqueId());
13071
+ } else {
13072
+ extraAttributes["aria-hidden"] = "true";
13073
+ extraAttributes["focusable"] = "false";
13074
+ }
13075
+ }
13076
+ return extraAttributes;
13077
+ }
13078
+ function blankMeta() {
13079
+ return {
13080
+ iconName: null,
13081
+ title: null,
13082
+ titleId: null,
13083
+ prefix: null,
13084
+ transform: meaninglessTransform,
13085
+ symbol: false,
13086
+ mask: {
13087
+ iconName: null,
13088
+ prefix: null,
13089
+ rest: []
13090
+ },
13091
+ maskId: null,
13092
+ extra: {
13093
+ classes: [],
13094
+ styles: {},
13095
+ attributes: {}
13096
+ }
13097
+ };
13098
+ }
13099
+ function parseMeta(node) {
13100
+ let parser = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {
13101
+ styleParser: true
13102
+ };
13103
+ const {
13104
+ iconName,
13105
+ prefix,
13106
+ rest: extraClasses
13107
+ } = classParser(node);
13108
+ const extraAttributes = attributesParser(node);
13109
+ const pluginMeta = chainHooks("parseNodeAttributes", {}, node);
13110
+ let extraStyles = parser.styleParser ? styleParser(node) : [];
13111
+ return _objectSpread2({
13112
+ iconName,
13113
+ title: node.getAttribute("title"),
13114
+ titleId: node.getAttribute("data-fa-title-id"),
13115
+ prefix,
13116
+ transform: meaninglessTransform,
13117
+ mask: {
13118
+ iconName: null,
13119
+ prefix: null,
13120
+ rest: []
13121
+ },
13122
+ maskId: null,
13123
+ symbol: false,
13124
+ extra: {
13125
+ classes: extraClasses,
13126
+ styles: extraStyles,
13127
+ attributes: extraAttributes
13128
+ }
13129
+ }, pluginMeta);
13130
+ }
13131
+ var {
13132
+ styles: styles$2
13133
+ } = namespace;
13134
+ function generateMutation(node) {
13135
+ const nodeMeta = config.autoReplaceSvg === "nest" ? parseMeta(node, {
13136
+ styleParser: false
13137
+ }) : parseMeta(node);
13138
+ if (~nodeMeta.extra.classes.indexOf(LAYERS_TEXT_CLASSNAME)) {
13139
+ return callProvided("generateLayersText", node, nodeMeta);
13140
+ } else {
13141
+ return callProvided("generateSvgReplacementMutation", node, nodeMeta);
13142
+ }
13143
+ }
13144
+ function getKnownPrefixes() {
13145
+ return [...Ft, ...Ia];
13146
+ }
13147
+ function onTree(root) {
13148
+ let callback = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
13149
+ if (!IS_DOM) return Promise.resolve();
13150
+ const htmlClassList = DOCUMENT.documentElement.classList;
13151
+ const hclAdd = (suffix) => htmlClassList.add("".concat(HTML_CLASS_I2SVG_BASE_CLASS, "-").concat(suffix));
13152
+ const hclRemove = (suffix) => htmlClassList.remove("".concat(HTML_CLASS_I2SVG_BASE_CLASS, "-").concat(suffix));
13153
+ const prefixes = config.autoFetchSvg ? getKnownPrefixes() : P.concat(Object.keys(styles$2));
13154
+ if (!prefixes.includes("fa")) {
13155
+ prefixes.push("fa");
13156
+ }
13157
+ const prefixesDomQuery = [".".concat(LAYERS_TEXT_CLASSNAME, ":not([").concat(DATA_FA_I2SVG, "])")].concat(prefixes.map((p$$1) => ".".concat(p$$1, ":not([").concat(DATA_FA_I2SVG, "])"))).join(", ");
13158
+ if (prefixesDomQuery.length === 0) {
13159
+ return Promise.resolve();
13160
+ }
13161
+ let candidates = [];
13162
+ try {
13163
+ candidates = toArray(root.querySelectorAll(prefixesDomQuery));
13164
+ } catch (e$$1) {
13165
+ }
13166
+ if (candidates.length > 0) {
13167
+ hclAdd("pending");
13168
+ hclRemove("complete");
13169
+ } else {
13170
+ return Promise.resolve();
13171
+ }
13172
+ const mark = perf.begin("onTree");
13173
+ const mutations = candidates.reduce((acc, node) => {
13174
+ try {
13175
+ const mutation = generateMutation(node);
13176
+ if (mutation) {
13177
+ acc.push(mutation);
13178
+ }
13179
+ } catch (e$$1) {
13180
+ if (!PRODUCTION) {
13181
+ if (e$$1.name === "MissingIcon") {
13182
+ console.error(e$$1);
13183
+ }
13184
+ }
13185
+ }
13186
+ return acc;
13187
+ }, []);
13188
+ return new Promise((resolve, reject) => {
13189
+ Promise.all(mutations).then((resolvedMutations) => {
13190
+ perform(resolvedMutations, () => {
13191
+ hclAdd("active");
13192
+ hclAdd("complete");
13193
+ hclRemove("pending");
13194
+ if (typeof callback === "function") callback();
13195
+ mark();
13196
+ resolve();
13197
+ });
13198
+ }).catch((e$$1) => {
13199
+ mark();
13200
+ reject(e$$1);
13201
+ });
13202
+ });
13203
+ }
13204
+ function onNode(node) {
13205
+ let callback = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
13206
+ generateMutation(node).then((mutation) => {
13207
+ if (mutation) {
13208
+ perform([mutation], callback);
13209
+ }
13210
+ });
13211
+ }
13212
+ function resolveIcons(next) {
13213
+ return function(maybeIconDefinition) {
13214
+ let params = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
13215
+ const iconDefinition = (maybeIconDefinition || {}).icon ? maybeIconDefinition : findIconDefinition(maybeIconDefinition || {});
13216
+ let {
13217
+ mask
13218
+ } = params;
13219
+ if (mask) {
13220
+ mask = (mask || {}).icon ? mask : findIconDefinition(mask || {});
13221
+ }
13222
+ return next(iconDefinition, _objectSpread2(_objectSpread2({}, params), {}, {
13223
+ mask
13224
+ }));
13225
+ };
13226
+ }
13227
+ var render = function(iconDefinition) {
13228
+ let params = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
13229
+ const {
13230
+ transform = meaninglessTransform,
13231
+ symbol = false,
13232
+ mask = null,
13233
+ maskId = null,
13234
+ title = null,
13235
+ titleId = null,
13236
+ classes = [],
13237
+ attributes = {},
13238
+ styles: styles2 = {}
13239
+ } = params;
13240
+ if (!iconDefinition) return;
13241
+ const {
13242
+ prefix,
13243
+ iconName,
13244
+ icon: icon2
13245
+ } = iconDefinition;
13246
+ return domVariants(_objectSpread2({
13247
+ type: "icon"
13248
+ }, iconDefinition), () => {
13249
+ callHooks("beforeDOMElementCreation", {
13250
+ iconDefinition,
13251
+ params
13252
+ });
13253
+ if (config.autoA11y) {
13254
+ if (title) {
13255
+ attributes["aria-labelledby"] = "".concat(config.replacementClass, "-title-").concat(titleId || nextUniqueId());
13256
+ } else {
13257
+ attributes["aria-hidden"] = "true";
13258
+ attributes["focusable"] = "false";
13259
+ }
13260
+ }
13261
+ return makeInlineSvgAbstract({
13262
+ icons: {
13263
+ main: asFoundIcon(icon2),
13264
+ mask: mask ? asFoundIcon(mask.icon) : {
13265
+ found: false,
13266
+ width: null,
13267
+ height: null,
13268
+ icon: {}
13269
+ }
13270
+ },
13271
+ prefix,
13272
+ iconName,
13273
+ transform: _objectSpread2(_objectSpread2({}, meaninglessTransform), transform),
13274
+ symbol,
13275
+ title,
13276
+ maskId,
13277
+ titleId,
13278
+ extra: {
13279
+ attributes,
13280
+ styles: styles2,
13281
+ classes
13282
+ }
13283
+ });
13284
+ });
13285
+ };
13286
+ var ReplaceElements = {
13287
+ mixout() {
13288
+ return {
13289
+ icon: resolveIcons(render)
13290
+ };
13291
+ },
13292
+ hooks() {
13293
+ return {
13294
+ mutationObserverCallbacks(accumulator) {
13295
+ accumulator.treeCallback = onTree;
13296
+ accumulator.nodeCallback = onNode;
13297
+ return accumulator;
13298
+ }
13299
+ };
13300
+ },
13301
+ provides(providers$$1) {
13302
+ providers$$1.i2svg = function(params) {
13303
+ const {
13304
+ node = DOCUMENT,
13305
+ callback = () => {
13306
+ }
13307
+ } = params;
13308
+ return onTree(node, callback);
13309
+ };
13310
+ providers$$1.generateSvgReplacementMutation = function(node, nodeMeta) {
13311
+ const {
13312
+ iconName,
13313
+ title,
13314
+ titleId,
13315
+ prefix,
13316
+ transform,
13317
+ symbol,
13318
+ mask,
13319
+ maskId,
13320
+ extra
13321
+ } = nodeMeta;
13322
+ return new Promise((resolve, reject) => {
13323
+ Promise.all([findIcon(iconName, prefix), mask.iconName ? findIcon(mask.iconName, mask.prefix) : Promise.resolve({
13324
+ found: false,
13325
+ width: 512,
13326
+ height: 512,
13327
+ icon: {}
13328
+ })]).then((_ref) => {
13329
+ let [main, mask2] = _ref;
13330
+ resolve([node, makeInlineSvgAbstract({
13331
+ icons: {
13332
+ main,
13333
+ mask: mask2
13334
+ },
13335
+ prefix,
13336
+ iconName,
13337
+ transform,
13338
+ symbol,
13339
+ maskId,
13340
+ title,
13341
+ titleId,
13342
+ extra,
13343
+ watchable: true
13344
+ })]);
13345
+ }).catch(reject);
13346
+ });
13347
+ };
13348
+ providers$$1.generateAbstractIcon = function(_ref2) {
13349
+ let {
13350
+ children,
13351
+ attributes,
13352
+ main,
13353
+ transform,
13354
+ styles: styles2
13355
+ } = _ref2;
13356
+ const styleString = joinStyles(styles2);
13357
+ if (styleString.length > 0) {
13358
+ attributes["style"] = styleString;
13359
+ }
13360
+ let nextChild;
13361
+ if (transformIsMeaningful(transform)) {
13362
+ nextChild = callProvided("generateAbstractTransformGrouping", {
13363
+ main,
13364
+ transform,
13365
+ containerWidth: main.width,
13366
+ iconWidth: main.width
13367
+ });
13368
+ }
13369
+ children.push(nextChild || main.icon);
13370
+ return {
13371
+ children,
13372
+ attributes
13373
+ };
13374
+ };
13375
+ }
13376
+ };
13377
+ var Layers = {
13378
+ mixout() {
13379
+ return {
13380
+ layer(assembler) {
13381
+ let params = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
13382
+ const {
13383
+ classes = []
13384
+ } = params;
13385
+ return domVariants({
13386
+ type: "layer"
13387
+ }, () => {
13388
+ callHooks("beforeDOMElementCreation", {
13389
+ assembler,
13390
+ params
13391
+ });
13392
+ let children = [];
13393
+ assembler((args) => {
13394
+ Array.isArray(args) ? args.map((a) => {
13395
+ children = children.concat(a.abstract);
13396
+ }) : children = children.concat(args.abstract);
13397
+ });
13398
+ return [{
13399
+ tag: "span",
13400
+ attributes: {
13401
+ class: ["".concat(config.cssPrefix, "-layers"), ...classes].join(" ")
13402
+ },
13403
+ children
13404
+ }];
13405
+ });
13406
+ }
13407
+ };
13408
+ }
13409
+ };
13410
+ var LayersCounter = {
13411
+ mixout() {
13412
+ return {
13413
+ counter(content) {
13414
+ let params = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
13415
+ const {
13416
+ title = null,
13417
+ classes = [],
13418
+ attributes = {},
13419
+ styles: styles2 = {}
13420
+ } = params;
13421
+ return domVariants({
13422
+ type: "counter",
13423
+ content
13424
+ }, () => {
13425
+ callHooks("beforeDOMElementCreation", {
13426
+ content,
13427
+ params
13428
+ });
13429
+ return makeLayersCounterAbstract({
13430
+ content: content.toString(),
13431
+ title,
13432
+ extra: {
13433
+ attributes,
13434
+ styles: styles2,
13435
+ classes: ["".concat(config.cssPrefix, "-layers-counter"), ...classes]
13436
+ }
13437
+ });
13438
+ });
13439
+ }
13440
+ };
13441
+ }
13442
+ };
13443
+ var LayersText = {
13444
+ mixout() {
13445
+ return {
13446
+ text(content) {
13447
+ let params = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
13448
+ const {
13449
+ transform = meaninglessTransform,
13450
+ title = null,
13451
+ classes = [],
13452
+ attributes = {},
13453
+ styles: styles2 = {}
13454
+ } = params;
13455
+ return domVariants({
13456
+ type: "text",
13457
+ content
13458
+ }, () => {
13459
+ callHooks("beforeDOMElementCreation", {
13460
+ content,
13461
+ params
13462
+ });
13463
+ return makeLayersTextAbstract({
13464
+ content,
13465
+ transform: _objectSpread2(_objectSpread2({}, meaninglessTransform), transform),
13466
+ title,
13467
+ extra: {
13468
+ attributes,
13469
+ styles: styles2,
13470
+ classes: ["".concat(config.cssPrefix, "-layers-text"), ...classes]
13471
+ }
13472
+ });
13473
+ });
13474
+ }
13475
+ };
13476
+ },
13477
+ provides(providers$$1) {
13478
+ providers$$1.generateLayersText = function(node, nodeMeta) {
13479
+ const {
13480
+ title,
13481
+ transform,
13482
+ extra
13483
+ } = nodeMeta;
13484
+ let width = null;
13485
+ let height = null;
13486
+ if (IS_IE) {
13487
+ const computedFontSize = parseInt(getComputedStyle(node).fontSize, 10);
13488
+ const boundingClientRect = node.getBoundingClientRect();
13489
+ width = boundingClientRect.width / computedFontSize;
13490
+ height = boundingClientRect.height / computedFontSize;
13491
+ }
13492
+ if (config.autoA11y && !title) {
13493
+ extra.attributes["aria-hidden"] = "true";
13494
+ }
13495
+ return Promise.resolve([node, makeLayersTextAbstract({
13496
+ content: node.innerHTML,
13497
+ width,
13498
+ height,
13499
+ transform,
13500
+ title,
13501
+ extra,
13502
+ watchable: true
13503
+ })]);
13504
+ };
13505
+ }
13506
+ };
13507
+ var CLEAN_CONTENT_PATTERN = new RegExp('"', "ug");
13508
+ var SECONDARY_UNICODE_RANGE = [1105920, 1112319];
13509
+ var _FONT_FAMILY_WEIGHT_TO_PREFIX = _objectSpread2(_objectSpread2(_objectSpread2(_objectSpread2({}, {
13510
+ FontAwesome: {
13511
+ normal: "fas",
13512
+ 400: "fas"
13513
+ }
13514
+ }), lt), wa), Yt);
13515
+ var FONT_FAMILY_WEIGHT_TO_PREFIX = Object.keys(_FONT_FAMILY_WEIGHT_TO_PREFIX).reduce((acc, key) => {
13516
+ acc[key.toLowerCase()] = _FONT_FAMILY_WEIGHT_TO_PREFIX[key];
13517
+ return acc;
13518
+ }, {});
13519
+ var FONT_FAMILY_WEIGHT_FALLBACK = Object.keys(FONT_FAMILY_WEIGHT_TO_PREFIX).reduce((acc, fontFamily) => {
13520
+ const weights = FONT_FAMILY_WEIGHT_TO_PREFIX[fontFamily];
13521
+ acc[fontFamily] = weights[900] || [...Object.entries(weights)][0][1];
13522
+ return acc;
13523
+ }, {});
13524
+ function hexValueFromContent(content) {
13525
+ const cleaned = content.replace(CLEAN_CONTENT_PATTERN, "");
13526
+ const codePoint = codePointAt(cleaned, 0);
13527
+ const isPrependTen = codePoint >= SECONDARY_UNICODE_RANGE[0] && codePoint <= SECONDARY_UNICODE_RANGE[1];
13528
+ const isDoubled = cleaned.length === 2 ? cleaned[0] === cleaned[1] : false;
13529
+ return {
13530
+ value: isDoubled ? toHex(cleaned[0]) : toHex(cleaned),
13531
+ isSecondary: isPrependTen || isDoubled
13532
+ };
13533
+ }
13534
+ function getPrefix(fontFamily, fontWeight) {
13535
+ const fontFamilySanitized = fontFamily.replace(/^['"]|['"]$/g, "").toLowerCase();
13536
+ const fontWeightInteger = parseInt(fontWeight);
13537
+ const fontWeightSanitized = isNaN(fontWeightInteger) ? "normal" : fontWeightInteger;
13538
+ return (FONT_FAMILY_WEIGHT_TO_PREFIX[fontFamilySanitized] || {})[fontWeightSanitized] || FONT_FAMILY_WEIGHT_FALLBACK[fontFamilySanitized];
13539
+ }
13540
+ function replaceForPosition(node, position) {
13541
+ const pendingAttribute = "".concat(DATA_FA_PSEUDO_ELEMENT_PENDING).concat(position.replace(":", "-"));
13542
+ return new Promise((resolve, reject) => {
13543
+ if (node.getAttribute(pendingAttribute) !== null) {
13544
+ return resolve();
13545
+ }
13546
+ const children = toArray(node.children);
13547
+ const alreadyProcessedPseudoElement = children.filter((c$$1) => c$$1.getAttribute(DATA_FA_PSEUDO_ELEMENT) === position)[0];
13548
+ const styles2 = WINDOW.getComputedStyle(node, position);
13549
+ const fontFamily = styles2.getPropertyValue("font-family");
13550
+ const fontFamilyMatch = fontFamily.match(FONT_FAMILY_PATTERN);
13551
+ const fontWeight = styles2.getPropertyValue("font-weight");
13552
+ const content = styles2.getPropertyValue("content");
13553
+ if (alreadyProcessedPseudoElement && !fontFamilyMatch) {
13554
+ node.removeChild(alreadyProcessedPseudoElement);
13555
+ return resolve();
13556
+ } else if (fontFamilyMatch && content !== "none" && content !== "") {
13557
+ const content2 = styles2.getPropertyValue("content");
13558
+ let prefix = getPrefix(fontFamily, fontWeight);
13559
+ const {
13560
+ value: hexValue,
13561
+ isSecondary
13562
+ } = hexValueFromContent(content2);
13563
+ const isV4 = fontFamilyMatch[0].startsWith("FontAwesome");
13564
+ let iconName = byUnicode(prefix, hexValue);
13565
+ let iconIdentifier = iconName;
13566
+ if (isV4) {
13567
+ const iconName4 = byOldUnicode(hexValue);
13568
+ if (iconName4.iconName && iconName4.prefix) {
13569
+ iconName = iconName4.iconName;
13570
+ prefix = iconName4.prefix;
13571
+ }
13572
+ }
13573
+ if (iconName && !isSecondary && (!alreadyProcessedPseudoElement || alreadyProcessedPseudoElement.getAttribute(DATA_PREFIX) !== prefix || alreadyProcessedPseudoElement.getAttribute(DATA_ICON) !== iconIdentifier)) {
13574
+ node.setAttribute(pendingAttribute, iconIdentifier);
13575
+ if (alreadyProcessedPseudoElement) {
13576
+ node.removeChild(alreadyProcessedPseudoElement);
13577
+ }
13578
+ const meta = blankMeta();
13579
+ const {
13580
+ extra
13581
+ } = meta;
13582
+ extra.attributes[DATA_FA_PSEUDO_ELEMENT] = position;
13583
+ findIcon(iconName, prefix).then((main) => {
13584
+ const abstract = makeInlineSvgAbstract(_objectSpread2(_objectSpread2({}, meta), {}, {
13585
+ icons: {
13586
+ main,
13587
+ mask: emptyCanonicalIcon()
13588
+ },
13589
+ prefix,
13590
+ iconName: iconIdentifier,
13591
+ extra,
13592
+ watchable: true
13593
+ }));
13594
+ const element = DOCUMENT.createElementNS("http://www.w3.org/2000/svg", "svg");
13595
+ if (position === "::before") {
13596
+ node.insertBefore(element, node.firstChild);
13597
+ } else {
13598
+ node.appendChild(element);
13599
+ }
13600
+ element.outerHTML = abstract.map((a$$1) => toHtml(a$$1)).join("\n");
13601
+ node.removeAttribute(pendingAttribute);
13602
+ resolve();
13603
+ }).catch(reject);
13604
+ } else {
13605
+ resolve();
13606
+ }
13607
+ } else {
13608
+ resolve();
13609
+ }
13610
+ });
13611
+ }
13612
+ function replace(node) {
13613
+ return Promise.all([replaceForPosition(node, "::before"), replaceForPosition(node, "::after")]);
13614
+ }
13615
+ function processable(node) {
13616
+ return node.parentNode !== document.head && !~TAGNAMES_TO_SKIP_FOR_PSEUDOELEMENTS.indexOf(node.tagName.toUpperCase()) && !node.getAttribute(DATA_FA_PSEUDO_ELEMENT) && (!node.parentNode || node.parentNode.tagName !== "svg");
13617
+ }
13618
+ function searchPseudoElements(root) {
13619
+ if (!IS_DOM) return;
13620
+ return new Promise((resolve, reject) => {
13621
+ const operations = toArray(root.querySelectorAll("*")).filter(processable).map(replace);
13622
+ const end2 = perf.begin("searchPseudoElements");
13623
+ disableObservation();
13624
+ Promise.all(operations).then(() => {
13625
+ end2();
13626
+ enableObservation();
13627
+ resolve();
13628
+ }).catch(() => {
13629
+ end2();
13630
+ enableObservation();
13631
+ reject();
13632
+ });
13633
+ });
13634
+ }
13635
+ var PseudoElements = {
13636
+ hooks() {
13637
+ return {
13638
+ mutationObserverCallbacks(accumulator) {
13639
+ accumulator.pseudoElementsCallback = searchPseudoElements;
13640
+ return accumulator;
13641
+ }
13642
+ };
13643
+ },
13644
+ provides(providers2) {
13645
+ providers2.pseudoElements2svg = function(params) {
13646
+ const {
13647
+ node = DOCUMENT
13648
+ } = params;
13649
+ if (config.searchPseudoElements) {
13650
+ searchPseudoElements(node);
13651
+ }
13652
+ };
13653
+ }
13654
+ };
13655
+ var _unwatched = false;
13656
+ var MutationObserver$1 = {
13657
+ mixout() {
13658
+ return {
13659
+ dom: {
13660
+ unwatch() {
13661
+ disableObservation();
13662
+ _unwatched = true;
13663
+ }
13664
+ }
13665
+ };
13666
+ },
13667
+ hooks() {
13668
+ return {
13669
+ bootstrap() {
13670
+ observe(chainHooks("mutationObserverCallbacks", {}));
13671
+ },
13672
+ noAuto() {
13673
+ disconnect();
13674
+ },
13675
+ watch(params) {
13676
+ const {
13677
+ observeMutationsRoot
13678
+ } = params;
13679
+ if (_unwatched) {
13680
+ enableObservation();
13681
+ } else {
13682
+ observe(chainHooks("mutationObserverCallbacks", {
13683
+ observeMutationsRoot
13684
+ }));
13685
+ }
13686
+ }
13687
+ };
13688
+ }
13689
+ };
13690
+ var parseTransformString = (transformString) => {
13691
+ let transform = {
13692
+ size: 16,
13693
+ x: 0,
13694
+ y: 0,
13695
+ flipX: false,
13696
+ flipY: false,
13697
+ rotate: 0
13698
+ };
13699
+ return transformString.toLowerCase().split(" ").reduce((acc, n) => {
13700
+ const parts = n.toLowerCase().split("-");
13701
+ const first = parts[0];
13702
+ let rest = parts.slice(1).join("-");
13703
+ if (first && rest === "h") {
13704
+ acc.flipX = true;
13705
+ return acc;
13706
+ }
13707
+ if (first && rest === "v") {
13708
+ acc.flipY = true;
13709
+ return acc;
13710
+ }
13711
+ rest = parseFloat(rest);
13712
+ if (isNaN(rest)) {
13713
+ return acc;
13714
+ }
13715
+ switch (first) {
13716
+ case "grow":
13717
+ acc.size = acc.size + rest;
13718
+ break;
13719
+ case "shrink":
13720
+ acc.size = acc.size - rest;
13721
+ break;
13722
+ case "left":
13723
+ acc.x = acc.x - rest;
13724
+ break;
13725
+ case "right":
13726
+ acc.x = acc.x + rest;
13727
+ break;
13728
+ case "up":
13729
+ acc.y = acc.y - rest;
13730
+ break;
13731
+ case "down":
13732
+ acc.y = acc.y + rest;
13733
+ break;
13734
+ case "rotate":
13735
+ acc.rotate = acc.rotate + rest;
13736
+ break;
13737
+ }
13738
+ return acc;
13739
+ }, transform);
13740
+ };
13741
+ var PowerTransforms = {
13742
+ mixout() {
13743
+ return {
13744
+ parse: {
13745
+ transform: (transformString) => {
13746
+ return parseTransformString(transformString);
13747
+ }
13748
+ }
13749
+ };
13750
+ },
13751
+ hooks() {
13752
+ return {
13753
+ parseNodeAttributes(accumulator, node) {
13754
+ const transformString = node.getAttribute("data-fa-transform");
13755
+ if (transformString) {
13756
+ accumulator.transform = parseTransformString(transformString);
13757
+ }
13758
+ return accumulator;
13759
+ }
13760
+ };
13761
+ },
13762
+ provides(providers2) {
13763
+ providers2.generateAbstractTransformGrouping = function(_ref) {
13764
+ let {
13765
+ main,
13766
+ transform,
13767
+ containerWidth,
13768
+ iconWidth
13769
+ } = _ref;
13770
+ const outer = {
13771
+ transform: "translate(".concat(containerWidth / 2, " 256)")
13772
+ };
13773
+ const innerTranslate = "translate(".concat(transform.x * 32, ", ").concat(transform.y * 32, ") ");
13774
+ const innerScale = "scale(".concat(transform.size / 16 * (transform.flipX ? -1 : 1), ", ").concat(transform.size / 16 * (transform.flipY ? -1 : 1), ") ");
13775
+ const innerRotate = "rotate(".concat(transform.rotate, " 0 0)");
13776
+ const inner = {
13777
+ transform: "".concat(innerTranslate, " ").concat(innerScale, " ").concat(innerRotate)
13778
+ };
13779
+ const path = {
13780
+ transform: "translate(".concat(iconWidth / 2 * -1, " -256)")
13781
+ };
13782
+ const operations = {
13783
+ outer,
13784
+ inner,
13785
+ path
13786
+ };
13787
+ return {
13788
+ tag: "g",
13789
+ attributes: _objectSpread2({}, operations.outer),
13790
+ children: [{
13791
+ tag: "g",
13792
+ attributes: _objectSpread2({}, operations.inner),
13793
+ children: [{
13794
+ tag: main.icon.tag,
13795
+ children: main.icon.children,
13796
+ attributes: _objectSpread2(_objectSpread2({}, main.icon.attributes), operations.path)
13797
+ }]
13798
+ }]
13799
+ };
13800
+ };
13801
+ }
13802
+ };
13803
+ var ALL_SPACE = {
13804
+ x: 0,
13805
+ y: 0,
13806
+ width: "100%",
13807
+ height: "100%"
13808
+ };
13809
+ function fillBlack(abstract) {
13810
+ let force = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : true;
13811
+ if (abstract.attributes && (abstract.attributes.fill || force)) {
13812
+ abstract.attributes.fill = "black";
13813
+ }
13814
+ return abstract;
13815
+ }
13816
+ function deGroup(abstract) {
13817
+ if (abstract.tag === "g") {
13818
+ return abstract.children;
13819
+ } else {
13820
+ return [abstract];
13821
+ }
13822
+ }
13823
+ var Masks = {
13824
+ hooks() {
13825
+ return {
13826
+ parseNodeAttributes(accumulator, node) {
13827
+ const maskData = node.getAttribute("data-fa-mask");
13828
+ const mask = !maskData ? emptyCanonicalIcon() : getCanonicalIcon(maskData.split(" ").map((i) => i.trim()));
13829
+ if (!mask.prefix) {
13830
+ mask.prefix = getDefaultUsablePrefix();
13831
+ }
13832
+ accumulator.mask = mask;
13833
+ accumulator.maskId = node.getAttribute("data-fa-mask-id");
13834
+ return accumulator;
13835
+ }
13836
+ };
13837
+ },
13838
+ provides(providers2) {
13839
+ providers2.generateAbstractMask = function(_ref) {
13840
+ let {
13841
+ children,
13842
+ attributes,
13843
+ main,
13844
+ mask,
13845
+ maskId: explicitMaskId,
13846
+ transform
13847
+ } = _ref;
13848
+ const {
13849
+ width: mainWidth,
13850
+ icon: mainPath
13851
+ } = main;
13852
+ const {
13853
+ width: maskWidth,
13854
+ icon: maskPath
13855
+ } = mask;
13856
+ const trans = transformForSvg({
13857
+ transform,
13858
+ containerWidth: maskWidth,
13859
+ iconWidth: mainWidth
13860
+ });
13861
+ const maskRect = {
13862
+ tag: "rect",
13863
+ attributes: _objectSpread2(_objectSpread2({}, ALL_SPACE), {}, {
13864
+ fill: "white"
13865
+ })
13866
+ };
13867
+ const maskInnerGroupChildrenMixin = mainPath.children ? {
13868
+ children: mainPath.children.map(fillBlack)
13869
+ } : {};
13870
+ const maskInnerGroup = {
13871
+ tag: "g",
13872
+ attributes: _objectSpread2({}, trans.inner),
13873
+ children: [fillBlack(_objectSpread2({
13874
+ tag: mainPath.tag,
13875
+ attributes: _objectSpread2(_objectSpread2({}, mainPath.attributes), trans.path)
13876
+ }, maskInnerGroupChildrenMixin))]
13877
+ };
13878
+ const maskOuterGroup = {
13879
+ tag: "g",
13880
+ attributes: _objectSpread2({}, trans.outer),
13881
+ children: [maskInnerGroup]
13882
+ };
13883
+ const maskId = "mask-".concat(explicitMaskId || nextUniqueId());
13884
+ const clipId = "clip-".concat(explicitMaskId || nextUniqueId());
13885
+ const maskTag = {
13886
+ tag: "mask",
13887
+ attributes: _objectSpread2(_objectSpread2({}, ALL_SPACE), {}, {
13888
+ id: maskId,
13889
+ maskUnits: "userSpaceOnUse",
13890
+ maskContentUnits: "userSpaceOnUse"
13891
+ }),
13892
+ children: [maskRect, maskOuterGroup]
13893
+ };
13894
+ const defs = {
13895
+ tag: "defs",
13896
+ children: [{
13897
+ tag: "clipPath",
13898
+ attributes: {
13899
+ id: clipId
13900
+ },
13901
+ children: deGroup(maskPath)
13902
+ }, maskTag]
13903
+ };
13904
+ children.push(defs, {
13905
+ tag: "rect",
13906
+ attributes: _objectSpread2({
13907
+ fill: "currentColor",
13908
+ "clip-path": "url(#".concat(clipId, ")"),
13909
+ mask: "url(#".concat(maskId, ")")
13910
+ }, ALL_SPACE)
13911
+ });
13912
+ return {
13913
+ children,
13914
+ attributes
13915
+ };
13916
+ };
13917
+ }
13918
+ };
13919
+ var MissingIconIndicator = {
13920
+ provides(providers2) {
13921
+ let reduceMotion = false;
13922
+ if (WINDOW.matchMedia) {
13923
+ reduceMotion = WINDOW.matchMedia("(prefers-reduced-motion: reduce)").matches;
13924
+ }
13925
+ providers2.missingIconAbstract = function() {
13926
+ const gChildren = [];
13927
+ const FILL = {
13928
+ fill: "currentColor"
13929
+ };
13930
+ const ANIMATION_BASE = {
13931
+ attributeType: "XML",
13932
+ repeatCount: "indefinite",
13933
+ dur: "2s"
13934
+ };
13935
+ gChildren.push({
13936
+ tag: "path",
13937
+ attributes: _objectSpread2(_objectSpread2({}, FILL), {}, {
13938
+ d: "M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z"
13939
+ })
13940
+ });
13941
+ const OPACITY_ANIMATE = _objectSpread2(_objectSpread2({}, ANIMATION_BASE), {}, {
13942
+ attributeName: "opacity"
13943
+ });
13944
+ const dot = {
13945
+ tag: "circle",
13946
+ attributes: _objectSpread2(_objectSpread2({}, FILL), {}, {
13947
+ cx: "256",
13948
+ cy: "364",
13949
+ r: "28"
13950
+ }),
13951
+ children: []
13952
+ };
13953
+ if (!reduceMotion) {
13954
+ dot.children.push({
13955
+ tag: "animate",
13956
+ attributes: _objectSpread2(_objectSpread2({}, ANIMATION_BASE), {}, {
13957
+ attributeName: "r",
13958
+ values: "28;14;28;28;14;28;"
13959
+ })
13960
+ }, {
13961
+ tag: "animate",
13962
+ attributes: _objectSpread2(_objectSpread2({}, OPACITY_ANIMATE), {}, {
13963
+ values: "1;0;1;1;0;1;"
13964
+ })
13965
+ });
13966
+ }
13967
+ gChildren.push(dot);
13968
+ gChildren.push({
13969
+ tag: "path",
13970
+ attributes: _objectSpread2(_objectSpread2({}, FILL), {}, {
13971
+ opacity: "1",
13972
+ d: "M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z"
13973
+ }),
13974
+ children: reduceMotion ? [] : [{
13975
+ tag: "animate",
13976
+ attributes: _objectSpread2(_objectSpread2({}, OPACITY_ANIMATE), {}, {
13977
+ values: "1;0;0;0;0;1;"
13978
+ })
13979
+ }]
13980
+ });
13981
+ if (!reduceMotion) {
13982
+ gChildren.push({
13983
+ tag: "path",
13984
+ attributes: _objectSpread2(_objectSpread2({}, FILL), {}, {
13985
+ opacity: "0",
13986
+ d: "M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z"
13987
+ }),
13988
+ children: [{
13989
+ tag: "animate",
13990
+ attributes: _objectSpread2(_objectSpread2({}, OPACITY_ANIMATE), {}, {
13991
+ values: "0;0;1;1;0;0;"
13992
+ })
13993
+ }]
13994
+ });
13995
+ }
13996
+ return {
13997
+ tag: "g",
13998
+ attributes: {
13999
+ "class": "missing"
14000
+ },
14001
+ children: gChildren
14002
+ };
14003
+ };
14004
+ }
14005
+ };
14006
+ var SvgSymbols = {
14007
+ hooks() {
14008
+ return {
14009
+ parseNodeAttributes(accumulator, node) {
14010
+ const symbolData = node.getAttribute("data-fa-symbol");
14011
+ const symbol = symbolData === null ? false : symbolData === "" ? true : symbolData;
14012
+ accumulator["symbol"] = symbol;
14013
+ return accumulator;
14014
+ }
14015
+ };
14016
+ }
14017
+ };
14018
+ var plugins = [InjectCSS, ReplaceElements, Layers, LayersCounter, LayersText, PseudoElements, MutationObserver$1, PowerTransforms, Masks, MissingIconIndicator, SvgSymbols];
14019
+ registerPlugins(plugins, {
14020
+ mixoutsTo: api
14021
+ });
14022
+ api.noAuto;
14023
+ api.config;
14024
+ api.library;
14025
+ api.dom;
14026
+ var parse$1 = api.parse;
14027
+ api.findIconDefinition;
14028
+ api.toHtml;
14029
+ var icon = api.icon;
14030
+ api.layer;
14031
+ api.text;
14032
+ api.counter;
14033
+ function _arrayLikeToArray(r3, a) {
14034
+ (null == a || a > r3.length) && (a = r3.length);
14035
+ for (var e = 0, n = Array(a); e < a; e++) n[e] = r3[e];
14036
+ return n;
14037
+ }
14038
+ function _arrayWithHoles(r3) {
14039
+ if (Array.isArray(r3)) return r3;
14040
+ }
14041
+ function _arrayWithoutHoles(r3) {
14042
+ if (Array.isArray(r3)) return _arrayLikeToArray(r3);
14043
+ }
14044
+ function _defineProperty2(e, r3, t2) {
14045
+ return (r3 = _toPropertyKey2(r3)) in e ? Object.defineProperty(e, r3, {
14046
+ value: t2,
14047
+ enumerable: true,
14048
+ configurable: true,
14049
+ writable: true
14050
+ }) : e[r3] = t2, e;
14051
+ }
14052
+ function _iterableToArray(r3) {
14053
+ if ("undefined" != typeof Symbol && null != r3[Symbol.iterator] || null != r3["@@iterator"]) return Array.from(r3);
14054
+ }
14055
+ function _iterableToArrayLimit(r3, l) {
14056
+ var t2 = null == r3 ? null : "undefined" != typeof Symbol && r3[Symbol.iterator] || r3["@@iterator"];
14057
+ if (null != t2) {
14058
+ var e, n, i, u, a = [], f = true, o2 = false;
14059
+ try {
14060
+ if (i = (t2 = t2.call(r3)).next, 0 === l) ; else for (; !(f = (e = i.call(t2)).done) && (a.push(e.value), a.length !== l); f = true) ;
14061
+ } catch (r4) {
14062
+ o2 = true, n = r4;
14063
+ } finally {
14064
+ try {
14065
+ if (!f && null != t2.return && (u = t2.return(), Object(u) !== u)) return;
14066
+ } finally {
14067
+ if (o2) throw n;
14068
+ }
14069
+ }
14070
+ return a;
14071
+ }
14072
+ }
14073
+ function _nonIterableRest() {
14074
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
14075
+ }
14076
+ function _nonIterableSpread() {
14077
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
14078
+ }
14079
+ function ownKeys2(e, r3) {
14080
+ var t2 = Object.keys(e);
14081
+ if (Object.getOwnPropertySymbols) {
14082
+ var o2 = Object.getOwnPropertySymbols(e);
14083
+ r3 && (o2 = o2.filter(function(r4) {
14084
+ return Object.getOwnPropertyDescriptor(e, r4).enumerable;
14085
+ })), t2.push.apply(t2, o2);
14086
+ }
14087
+ return t2;
14088
+ }
14089
+ function _objectSpread22(e) {
14090
+ for (var r3 = 1; r3 < arguments.length; r3++) {
14091
+ var t2 = null != arguments[r3] ? arguments[r3] : {};
14092
+ r3 % 2 ? ownKeys2(Object(t2), true).forEach(function(r4) {
14093
+ _defineProperty2(e, r4, t2[r4]);
14094
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t2)) : ownKeys2(Object(t2)).forEach(function(r4) {
14095
+ Object.defineProperty(e, r4, Object.getOwnPropertyDescriptor(t2, r4));
14096
+ });
14097
+ }
14098
+ return e;
14099
+ }
14100
+ function _objectWithoutProperties(e, t2) {
14101
+ if (null == e) return {};
14102
+ var o2, r3, i = _objectWithoutPropertiesLoose(e, t2);
14103
+ if (Object.getOwnPropertySymbols) {
14104
+ var n = Object.getOwnPropertySymbols(e);
14105
+ for (r3 = 0; r3 < n.length; r3++) o2 = n[r3], -1 === t2.indexOf(o2) && {}.propertyIsEnumerable.call(e, o2) && (i[o2] = e[o2]);
14106
+ }
14107
+ return i;
14108
+ }
14109
+ function _objectWithoutPropertiesLoose(r3, e) {
14110
+ if (null == r3) return {};
14111
+ var t2 = {};
14112
+ for (var n in r3) if ({}.hasOwnProperty.call(r3, n)) {
14113
+ if (-1 !== e.indexOf(n)) continue;
14114
+ t2[n] = r3[n];
14115
+ }
14116
+ return t2;
14117
+ }
14118
+ function _slicedToArray(r3, e) {
14119
+ return _arrayWithHoles(r3) || _iterableToArrayLimit(r3, e) || _unsupportedIterableToArray(r3, e) || _nonIterableRest();
14120
+ }
14121
+ function _toConsumableArray(r3) {
14122
+ return _arrayWithoutHoles(r3) || _iterableToArray(r3) || _unsupportedIterableToArray(r3) || _nonIterableSpread();
14123
+ }
14124
+ function _toPrimitive2(t2, r3) {
14125
+ if ("object" != typeof t2 || !t2) return t2;
14126
+ var e = t2[Symbol.toPrimitive];
14127
+ if (void 0 !== e) {
14128
+ var i = e.call(t2, r3);
14129
+ if ("object" != typeof i) return i;
14130
+ throw new TypeError("@@toPrimitive must return a primitive value.");
14131
+ }
14132
+ return ("string" === r3 ? String : Number)(t2);
14133
+ }
14134
+ function _toPropertyKey2(t2) {
14135
+ var i = _toPrimitive2(t2, "string");
14136
+ return "symbol" == typeof i ? i : i + "";
14137
+ }
14138
+ function _typeof(o2) {
14139
+ "@babel/helpers - typeof";
14140
+ return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o3) {
14141
+ return typeof o3;
14142
+ } : function(o3) {
14143
+ return o3 && "function" == typeof Symbol && o3.constructor === Symbol && o3 !== Symbol.prototype ? "symbol" : typeof o3;
14144
+ }, _typeof(o2);
14145
+ }
14146
+ function _unsupportedIterableToArray(r3, a) {
14147
+ if (r3) {
14148
+ if ("string" == typeof r3) return _arrayLikeToArray(r3, a);
14149
+ var t2 = {}.toString.call(r3).slice(8, -1);
14150
+ return "Object" === t2 && r3.constructor && (t2 = r3.constructor.name), "Map" === t2 || "Set" === t2 ? Array.from(r3) : "Arguments" === t2 || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t2) ? _arrayLikeToArray(r3, a) : void 0;
14151
+ }
14152
+ }
14153
+ var ICON_PACKS_STARTING_VERSION = "7.0.0";
14154
+ var SVG_CORE_VERSION;
14155
+ try {
14156
+ svgCorePackageJson = require_package();
14157
+ SVG_CORE_VERSION = svgCorePackageJson.version;
14158
+ } catch (e) {
14159
+ SVG_CORE_VERSION = typeof process !== "undefined" && process.env.FA_VERSION || "7.0.0";
14160
+ }
14161
+ var svgCorePackageJson;
14162
+ function classList(props) {
14163
+ var beat = props.beat, fade = props.fade, beatFade = props.beatFade, bounce = props.bounce, shake = props.shake, flash = props.flash, spin = props.spin, spinPulse = props.spinPulse, spinReverse = props.spinReverse, pulse = props.pulse, fixedWidth = props.fixedWidth, inverse = props.inverse, border = props.border, listItem = props.listItem, flip4 = props.flip, size4 = props.size, rotation = props.rotation, pull = props.pull, swapOpacity = props.swapOpacity, rotateBy = props.rotateBy, widthAuto = props.widthAuto;
14164
+ var isVersion7OrLater = versionCheckGte(SVG_CORE_VERSION, ICON_PACKS_STARTING_VERSION);
14165
+ var classes = _defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2({
14166
+ "fa-beat": beat,
14167
+ "fa-fade": fade,
14168
+ "fa-beat-fade": beatFade,
14169
+ "fa-bounce": bounce,
14170
+ "fa-shake": shake,
14171
+ "fa-flash": flash,
14172
+ "fa-spin": spin,
14173
+ "fa-spin-reverse": spinReverse,
14174
+ "fa-spin-pulse": spinPulse,
14175
+ "fa-pulse": pulse,
14176
+ "fa-fw": fixedWidth,
14177
+ "fa-inverse": inverse,
14178
+ "fa-border": border,
14179
+ "fa-li": listItem,
14180
+ "fa-flip": flip4 === true,
14181
+ "fa-flip-horizontal": flip4 === "horizontal" || flip4 === "both",
14182
+ "fa-flip-vertical": flip4 === "vertical" || flip4 === "both"
14183
+ }, "fa-".concat(size4), typeof size4 !== "undefined" && size4 !== null), "fa-rotate-".concat(rotation), typeof rotation !== "undefined" && rotation !== null && rotation !== 0), "fa-pull-".concat(pull), typeof pull !== "undefined" && pull !== null), "fa-swap-opacity", swapOpacity), "fa-rotate-by", isVersion7OrLater && rotateBy), "fa-width-auto", isVersion7OrLater && widthAuto);
14184
+ return Object.keys(classes).map(function(key) {
14185
+ return classes[key] ? key : null;
14186
+ }).filter(function(key) {
14187
+ return key;
14188
+ });
14189
+ }
14190
+ function versionCheckGte(version1, version2) {
14191
+ var _version1$split = version1.split("-"), _version1$split2 = _slicedToArray(_version1$split, 2), v1Base = _version1$split2[0], v1PreRelease = _version1$split2[1];
14192
+ var _version2$split = version2.split("-"), _version2$split2 = _slicedToArray(_version2$split, 2), v2Base = _version2$split2[0], v2PreRelease = _version2$split2[1];
14193
+ var v1Parts = v1Base.split(".");
14194
+ var v2Parts = v2Base.split(".");
14195
+ for (var i = 0; i < Math.max(v1Parts.length, v2Parts.length); i++) {
14196
+ var v1Part = v1Parts[i] || "0";
14197
+ var v2Part = v2Parts[i] || "0";
14198
+ var v1Num = parseInt(v1Part, 10);
14199
+ var v2Num = parseInt(v2Part, 10);
14200
+ if (v1Num !== v2Num) {
14201
+ return v1Num > v2Num;
14202
+ }
14203
+ }
14204
+ for (var _i = 0; _i < Math.max(v1Parts.length, v2Parts.length); _i++) {
14205
+ var _v1Part = v1Parts[_i] || "0";
14206
+ var _v2Part = v2Parts[_i] || "0";
14207
+ if (_v1Part !== _v2Part) {
14208
+ if (_v1Part.length !== _v2Part.length) {
14209
+ return _v1Part.length < _v2Part.length;
14210
+ }
14211
+ }
14212
+ }
14213
+ if (v1PreRelease && !v2PreRelease) return false;
14214
+ if (!v1PreRelease && v2PreRelease) return true;
14215
+ return true;
14216
+ }
14217
+ function _isNumerical(obj) {
14218
+ obj = obj - 0;
14219
+ return obj === obj;
14220
+ }
14221
+ function camelize(string) {
14222
+ if (_isNumerical(string)) {
14223
+ return string;
14224
+ }
14225
+ string = string.replace(/[\-_\s]+(.)?/g, function(match, chr) {
14226
+ return chr ? chr.toUpperCase() : "";
14227
+ });
14228
+ return string.substr(0, 1).toLowerCase() + string.substr(1);
14229
+ }
14230
+ var _excluded = ["style"];
14231
+ function capitalize(val) {
14232
+ return val.charAt(0).toUpperCase() + val.slice(1);
14233
+ }
14234
+ function styleToObject(style) {
14235
+ return style.split(";").map(function(s2) {
14236
+ return s2.trim();
14237
+ }).filter(function(s2) {
14238
+ return s2;
14239
+ }).reduce(function(acc, pair) {
14240
+ var i = pair.indexOf(":");
14241
+ var prop = camelize(pair.slice(0, i));
14242
+ var value = pair.slice(i + 1).trim();
14243
+ prop.startsWith("webkit") ? acc[capitalize(prop)] = value : acc[prop] = value;
14244
+ return acc;
14245
+ }, {});
14246
+ }
14247
+ function convert(createElement17, element) {
14248
+ var extraProps = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
14249
+ if (typeof element === "string") {
14250
+ return element;
14251
+ }
14252
+ var children = (element.children || []).map(function(child) {
14253
+ return convert(createElement17, child);
14254
+ });
14255
+ var mixins = Object.keys(element.attributes || {}).reduce(function(acc, key) {
14256
+ var val = element.attributes[key];
14257
+ switch (key) {
14258
+ case "class":
14259
+ acc.attrs["className"] = val;
14260
+ delete element.attributes["class"];
14261
+ break;
14262
+ case "style":
14263
+ acc.attrs["style"] = styleToObject(val);
14264
+ break;
14265
+ default:
14266
+ if (key.indexOf("aria-") === 0 || key.indexOf("data-") === 0) {
14267
+ acc.attrs[key.toLowerCase()] = val;
14268
+ } else {
14269
+ acc.attrs[camelize(key)] = val;
14270
+ }
14271
+ }
14272
+ return acc;
14273
+ }, {
14274
+ attrs: {}
14275
+ });
14276
+ var _extraProps$style = extraProps.style, existingStyle = _extraProps$style === void 0 ? {} : _extraProps$style, remaining = _objectWithoutProperties(extraProps, _excluded);
14277
+ mixins.attrs["style"] = _objectSpread22(_objectSpread22({}, mixins.attrs["style"]), existingStyle);
14278
+ return createElement17.apply(void 0, [element.tag, _objectSpread22(_objectSpread22({}, mixins.attrs), remaining)].concat(_toConsumableArray(children)));
14279
+ }
14280
+ var PRODUCTION2 = false;
14281
+ try {
14282
+ PRODUCTION2 = process.env.NODE_ENV === "production";
14283
+ } catch (e) {
14284
+ }
14285
+ function log() {
14286
+ if (!PRODUCTION2 && console && typeof console.error === "function") {
14287
+ var _console;
14288
+ (_console = console).error.apply(_console, arguments);
14289
+ }
14290
+ }
14291
+ function normalizeIconArgs(icon2) {
14292
+ if (icon2 && _typeof(icon2) === "object" && icon2.prefix && icon2.iconName && icon2.icon) {
14293
+ return icon2;
14294
+ }
14295
+ if (parse$1.icon) {
14296
+ return parse$1.icon(icon2);
14297
+ }
14298
+ if (icon2 === null) {
14299
+ return null;
14300
+ }
14301
+ if (icon2 && _typeof(icon2) === "object" && icon2.prefix && icon2.iconName) {
14302
+ return icon2;
14303
+ }
14304
+ if (Array.isArray(icon2) && icon2.length === 2) {
14305
+ return {
14306
+ prefix: icon2[0],
14307
+ iconName: icon2[1]
14308
+ };
14309
+ }
14310
+ if (typeof icon2 === "string") {
14311
+ return {
14312
+ prefix: "fas",
14313
+ iconName: icon2
14314
+ };
14315
+ }
14316
+ }
14317
+ function objectWithKey(key, value) {
14318
+ return Array.isArray(value) && value.length > 0 || !Array.isArray(value) && value ? _defineProperty2({}, key, value) : {};
14319
+ }
14320
+ var defaultProps = {
14321
+ border: false,
14322
+ className: "",
14323
+ mask: null,
14324
+ maskId: null,
14325
+ // the fixedWidth property has been deprecated as of version 7
14326
+ fixedWidth: false,
14327
+ inverse: false,
14328
+ flip: false,
14329
+ icon: null,
14330
+ listItem: false,
14331
+ pull: null,
14332
+ pulse: false,
14333
+ rotation: null,
14334
+ rotateBy: false,
14335
+ size: null,
14336
+ spin: false,
14337
+ spinPulse: false,
14338
+ spinReverse: false,
14339
+ beat: false,
14340
+ fade: false,
14341
+ beatFade: false,
14342
+ bounce: false,
14343
+ shake: false,
14344
+ symbol: false,
14345
+ title: "",
14346
+ titleId: null,
14347
+ transform: null,
14348
+ swapOpacity: false,
14349
+ widthAuto: false
14350
+ };
14351
+ var FontAwesomeIcon = /* @__PURE__ */ React45__namespace.default.forwardRef(function(props, ref) {
14352
+ var allProps = _objectSpread22(_objectSpread22({}, defaultProps), props);
14353
+ var iconArgs = allProps.icon, maskArgs = allProps.mask, symbol = allProps.symbol, className = allProps.className, title = allProps.title, titleId = allProps.titleId, maskId = allProps.maskId;
14354
+ var iconLookup = normalizeIconArgs(iconArgs);
14355
+ var classes = objectWithKey("classes", [].concat(_toConsumableArray(classList(allProps)), _toConsumableArray((className || "").split(" "))));
14356
+ var transform = objectWithKey("transform", typeof allProps.transform === "string" ? parse$1.transform(allProps.transform) : allProps.transform);
14357
+ var mask = objectWithKey("mask", normalizeIconArgs(maskArgs));
14358
+ var renderedIcon = icon(iconLookup, _objectSpread22(_objectSpread22(_objectSpread22(_objectSpread22({}, classes), transform), mask), {}, {
14359
+ symbol,
14360
+ title,
14361
+ titleId,
14362
+ maskId
14363
+ }));
14364
+ if (!renderedIcon) {
14365
+ log("Could not find icon", iconLookup);
14366
+ return null;
14367
+ }
14368
+ var abstract = renderedIcon.abstract;
14369
+ var extraProps = {
14370
+ ref
14371
+ };
14372
+ Object.keys(allProps).forEach(function(key) {
14373
+ if (!defaultProps.hasOwnProperty(key)) {
14374
+ extraProps[key] = allProps[key];
14375
+ }
14376
+ });
14377
+ return convertCurry(abstract[0], extraProps);
14378
+ });
14379
+ FontAwesomeIcon.displayName = "FontAwesomeIcon";
14380
+ FontAwesomeIcon.propTypes = {
14381
+ beat: PropTypes__default.default.bool,
14382
+ border: PropTypes__default.default.bool,
14383
+ beatFade: PropTypes__default.default.bool,
14384
+ bounce: PropTypes__default.default.bool,
14385
+ className: PropTypes__default.default.string,
14386
+ fade: PropTypes__default.default.bool,
14387
+ flash: PropTypes__default.default.bool,
14388
+ mask: PropTypes__default.default.oneOfType([PropTypes__default.default.object, PropTypes__default.default.array, PropTypes__default.default.string]),
14389
+ maskId: PropTypes__default.default.string,
14390
+ // the fixedWidth property has been deprecated as of version 7
14391
+ fixedWidth: PropTypes__default.default.bool,
14392
+ inverse: PropTypes__default.default.bool,
14393
+ flip: PropTypes__default.default.oneOf([true, false, "horizontal", "vertical", "both"]),
14394
+ icon: PropTypes__default.default.oneOfType([PropTypes__default.default.object, PropTypes__default.default.array, PropTypes__default.default.string]),
14395
+ listItem: PropTypes__default.default.bool,
14396
+ pull: PropTypes__default.default.oneOf(["right", "left"]),
14397
+ pulse: PropTypes__default.default.bool,
14398
+ rotation: PropTypes__default.default.oneOf([0, 90, 180, 270]),
14399
+ rotateBy: PropTypes__default.default.bool,
14400
+ shake: PropTypes__default.default.bool,
14401
+ size: PropTypes__default.default.oneOf(["2xs", "xs", "sm", "lg", "xl", "2xl", "1x", "2x", "3x", "4x", "5x", "6x", "7x", "8x", "9x", "10x"]),
14402
+ spin: PropTypes__default.default.bool,
14403
+ spinPulse: PropTypes__default.default.bool,
14404
+ spinReverse: PropTypes__default.default.bool,
14405
+ symbol: PropTypes__default.default.oneOfType([PropTypes__default.default.bool, PropTypes__default.default.string]),
14406
+ title: PropTypes__default.default.string,
14407
+ titleId: PropTypes__default.default.string,
14408
+ transform: PropTypes__default.default.oneOfType([PropTypes__default.default.string, PropTypes__default.default.object]),
14409
+ swapOpacity: PropTypes__default.default.bool,
14410
+ widthAuto: PropTypes__default.default.bool
14411
+ };
14412
+ var convertCurry = convert.bind(null, React45__namespace.default.createElement);
14413
+
14414
+ // ../../node_modules/.pnpm/@fortawesome+pro-solid-svg-icons@6.7.2/node_modules/@fortawesome/pro-solid-svg-icons/index.mjs
14415
+ var faGripVertical = {
14416
+ prefix: "fas",
14417
+ iconName: "grip-vertical",
14418
+ icon: [320, 512, [], "f58e", "M40 352l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40zm192 0l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40zM40 320c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0zM232 192l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40zM40 160c-22.1 0-40-17.9-40-40L0 72C0 49.9 17.9 32 40 32l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0zM232 32l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40z"]
14419
+ };
14420
+ var faCircleXmark = {
14421
+ prefix: "fas",
14422
+ iconName: "circle-xmark",
14423
+ icon: [512, 512, [61532, "times-circle", "xmark-circle"], "f057", "M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM175 175c9.4-9.4 24.6-9.4 33.9 0l47 47 47-47c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9l-47 47 47 47c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0l-47-47-47 47c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l47-47-47-47c-9.4-9.4-9.4-24.6 0-33.9z"]
14424
+ };
14425
+
14426
+ // src/components/slots/SlotDelete.tsx
14427
+ var SlotDelete = (props) => {
14428
+ const { slotId, onDelete } = props;
14429
+ return /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement(Button, { variant: "ghost", size: "iconSm", onClick: onDelete }, /* @__PURE__ */ React.createElement(FontAwesomeIcon, { icon: faCircleXmark, className: "uii:text-red-500" })));
14430
+ };
14431
+
14432
+ // src/components/slots/SlotDragHandle.tsx
14433
+ var SlotDragHandle = (props) => {
14434
+ const { slotId } = props;
14435
+ return /* @__PURE__ */ React.createElement("div", { className: "uii:cursor-grab" }, /* @__PURE__ */ React.createElement(FontAwesomeIcon, { icon: faGripVertical }));
14436
+ };
14437
+ /*! Bundled license information:
14438
+
14439
+ lucide-react/dist/esm/shared/src/utils.js:
14440
+ lucide-react/dist/esm/defaultAttributes.js:
14441
+ lucide-react/dist/esm/Icon.js:
14442
+ lucide-react/dist/esm/createLucideIcon.js:
14443
+ lucide-react/dist/esm/icons/check.js:
14444
+ lucide-react/dist/esm/icons/chevron-down.js:
14445
+ lucide-react/dist/esm/icons/chevron-right.js:
14446
+ lucide-react/dist/esm/icons/chevron-up.js:
14447
+ lucide-react/dist/esm/icons/circle.js:
14448
+ lucide-react/dist/esm/lucide-react.js:
14449
+ (**
14450
+ * @license lucide-react v0.476.0 - ISC
14451
+ *
14452
+ * This source code is licensed under the ISC license.
14453
+ * See the LICENSE file in the root directory of this source tree.
14454
+ *)
14455
+
14456
+ @fortawesome/fontawesome-svg-core/index.mjs:
14457
+ (*!
14458
+ * Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
14459
+ * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
14460
+ * Copyright 2024 Fonticons, Inc.
14461
+ *)
14462
+
14463
+ @fortawesome/pro-solid-svg-icons/index.mjs:
14464
+ (*!
14465
+ * Font Awesome Pro 6.7.2 by @fontawesome - https://fontawesome.com
14466
+ * License - https://fontawesome.com/license (Commercial License)
14467
+ * Copyright 2024 Fonticons, Inc.
10969
14468
  *)
10970
14469
  */
10971
14470