@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.js CHANGED
@@ -3,12 +3,97 @@ import React45__default, { forwardRef, createElement, createContext, useLayoutEf
3
3
  import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
4
4
  import * as ReactDOM4 from 'react-dom';
5
5
  import ReactDOM4__default from 'react-dom';
6
+ import PropTypes from 'prop-types';
6
7
 
7
8
  var __defProp = Object.defineProperty;
9
+ var __getOwnPropNames = Object.getOwnPropertyNames;
10
+ var __commonJS = (cb, mod) => function __require() {
11
+ return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
12
+ };
8
13
  var __export = (target, all) => {
9
14
  for (var name in all)
10
15
  __defProp(target, name, { get: all[name], enumerable: true });
11
16
  };
17
+
18
+ // ../../node_modules/.pnpm/@fortawesome+fontawesome-svg-core@6.7.2/node_modules/@fortawesome/fontawesome-svg-core/package.json
19
+ var require_package = __commonJS({
20
+ "../../node_modules/.pnpm/@fortawesome+fontawesome-svg-core@6.7.2/node_modules/@fortawesome/fontawesome-svg-core/package.json"(exports$1, module) {
21
+ module.exports = {
22
+ description: "The iconic font, CSS, and SVG framework",
23
+ keywords: [
24
+ "font",
25
+ "awesome",
26
+ "fontawesome",
27
+ "icon",
28
+ "svg",
29
+ "bootstrap"
30
+ ],
31
+ homepage: "https://fontawesome.com",
32
+ bugs: {
33
+ url: "https://github.com/FortAwesome/Font-Awesome/issues"
34
+ },
35
+ author: "The Font Awesome Team (https://github.com/orgs/FortAwesome/people)",
36
+ repository: {
37
+ type: "git",
38
+ url: "https://github.com/FortAwesome/Font-Awesome"
39
+ },
40
+ engines: {
41
+ node: ">=6"
42
+ },
43
+ dependencies: {
44
+ "@fortawesome/fontawesome-common-types": "6.7.2"
45
+ },
46
+ version: "6.7.2",
47
+ name: "@fortawesome/fontawesome-svg-core",
48
+ main: "index.js",
49
+ module: "index.mjs",
50
+ "jsnext:main": "index.mjs",
51
+ style: "styles.css",
52
+ license: "MIT",
53
+ types: "./index.d.ts",
54
+ exports: {
55
+ ".": {
56
+ types: "./index.d.ts",
57
+ module: "./index.mjs",
58
+ import: "./index.mjs",
59
+ require: "./index.js",
60
+ style: "./styles.css",
61
+ default: "./index.js"
62
+ },
63
+ "./index": {
64
+ types: "./index.d.ts",
65
+ module: "./index.mjs",
66
+ import: "./index.mjs",
67
+ require: "./index.js",
68
+ default: "./index.js"
69
+ },
70
+ "./index.js": {
71
+ types: "./index.d.ts",
72
+ module: "./index.mjs",
73
+ import: "./index.mjs",
74
+ require: "./index.js",
75
+ default: "./index.js"
76
+ },
77
+ "./plugins": {
78
+ types: "./index.d.ts",
79
+ module: "./plugins.mjs",
80
+ import: "./plugins.mjs",
81
+ default: "./plugins.mjs"
82
+ },
83
+ "./import.macro": "./import.macro.js",
84
+ "./import.macro.js": "./import.macro.js",
85
+ "./styles": "./styles.css",
86
+ "./styles.css": "./styles.css",
87
+ "./package.json": "./package.json"
88
+ },
89
+ sideEffects: [
90
+ "./index.js",
91
+ "./index.mjs",
92
+ "./styles.css"
93
+ ]
94
+ };
95
+ }
96
+ });
12
97
  function setRef(ref, value) {
13
98
  if (typeof ref === "function") {
14
99
  return ref(value);
@@ -143,26 +228,26 @@ function getElementRef(element) {
143
228
 
144
229
  // ../../node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.mjs
145
230
  function r(e) {
146
- var t, f, n = "";
231
+ var t2, f, n = "";
147
232
  if ("string" == typeof e || "number" == typeof e) n += e;
148
233
  else if ("object" == typeof e) if (Array.isArray(e)) {
149
- var o = e.length;
150
- for (t = 0; t < o; t++) e[t] && (f = r(e[t])) && (n && (n += " "), n += f);
234
+ var o2 = e.length;
235
+ for (t2 = 0; t2 < o2; t2++) e[t2] && (f = r(e[t2])) && (n && (n += " "), n += f);
151
236
  } else for (f in e) e[f] && (n && (n += " "), n += f);
152
237
  return n;
153
238
  }
154
239
  function clsx() {
155
- for (var e, t, f = 0, n = "", o = arguments.length; f < o; f++) (e = arguments[f]) && (t = r(e)) && (n && (n += " "), n += t);
240
+ for (var e, t2, f = 0, n = "", o2 = arguments.length; f < o2; f++) (e = arguments[f]) && (t2 = r(e)) && (n && (n += " "), n += t2);
156
241
  return n;
157
242
  }
158
243
 
159
244
  // ../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.mjs
160
245
  var falsyToString = (value) => typeof value === "boolean" ? `${value}` : value === 0 ? "0" : value;
161
246
  var cx = clsx;
162
- var cva = (base, config) => (props) => {
247
+ var cva = (base, config2) => (props) => {
163
248
  var _config_compoundVariants;
164
- 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);
165
- const { variants, defaultVariants } = config;
249
+ 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);
250
+ const { variants, defaultVariants } = config2;
166
251
  const getVariantClassNames = Object.keys(variants).map((variant) => {
167
252
  const variantProp = props === null || props === void 0 ? void 0 : props[variant];
168
253
  const defaultVariantProp = defaultVariants === null || defaultVariants === void 0 ? void 0 : defaultVariants[variant];
@@ -178,7 +263,7 @@ var cva = (base, config) => (props) => {
178
263
  acc[key] = value;
179
264
  return acc;
180
265
  }, {});
181
- 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) => {
266
+ 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) => {
182
267
  let { class: cvClass, className: cvClassName, ...compoundVariantOptions } = param;
183
268
  return Object.entries(compoundVariantOptions).every((param2) => {
184
269
  let [key, value] = param2;
@@ -221,12 +306,12 @@ var createClassPartObject = (nextPart = /* @__PURE__ */ new Map(), validators =
221
306
  var CLASS_PART_SEPARATOR = "-";
222
307
  var EMPTY_CONFLICTS = [];
223
308
  var ARBITRARY_PROPERTY_PREFIX = "arbitrary..";
224
- var createClassGroupUtils = (config) => {
225
- const classMap = createClassMap(config);
309
+ var createClassGroupUtils = (config2) => {
310
+ const classMap = createClassMap(config2);
226
311
  const {
227
312
  conflictingClassGroups,
228
313
  conflictingClassGroupModifiers
229
- } = config;
314
+ } = config2;
230
315
  const getClassGroupId = (className) => {
231
316
  if (className.startsWith("[") && className.endsWith("]")) {
232
317
  return getGroupIdForArbitraryProperty(className);
@@ -285,11 +370,11 @@ var getGroupIdForArbitraryProperty = (className) => className.slice(1, -1).index
285
370
  const property = content.slice(0, colonIndex);
286
371
  return property ? ARBITRARY_PROPERTY_PREFIX + property : void 0;
287
372
  })();
288
- var createClassMap = (config) => {
373
+ var createClassMap = (config2) => {
289
374
  const {
290
375
  theme,
291
376
  classGroups
292
- } = config;
377
+ } = config2;
293
378
  return processClassGroups(classGroups, theme);
294
379
  };
295
380
  var processClassGroups = (classGroups, theme) => {
@@ -406,11 +491,11 @@ var createResultObject = (modifiers, hasImportantModifier, baseClassName, maybeP
406
491
  maybePostfixModifierPosition,
407
492
  isExternal
408
493
  });
409
- var createParseClassName = (config) => {
494
+ var createParseClassName = (config2) => {
410
495
  const {
411
496
  prefix,
412
497
  experimentalParseClassName
413
- } = config;
498
+ } = config2;
414
499
  let parseClassName = (className) => {
415
500
  const modifiers = [];
416
501
  let bracketDepth = 0;
@@ -469,9 +554,9 @@ var createParseClassName = (config) => {
469
554
  }
470
555
  return parseClassName;
471
556
  };
472
- var createSortModifiers = (config) => {
557
+ var createSortModifiers = (config2) => {
473
558
  const modifierWeights = /* @__PURE__ */ new Map();
474
- config.orderSensitiveModifiers.forEach((mod, index2) => {
559
+ config2.orderSensitiveModifiers.forEach((mod, index2) => {
475
560
  modifierWeights.set(mod, 1e6 + index2);
476
561
  });
477
562
  return (modifiers) => {
@@ -499,14 +584,14 @@ var createSortModifiers = (config) => {
499
584
  return result;
500
585
  };
501
586
  };
502
- var createConfigUtils = (config) => ({
503
- cache: createLruCache(config.cacheSize),
504
- parseClassName: createParseClassName(config),
505
- sortModifiers: createSortModifiers(config),
506
- ...createClassGroupUtils(config)
587
+ var createConfigUtils = (config2) => ({
588
+ cache: createLruCache(config2.cacheSize),
589
+ parseClassName: createParseClassName(config2),
590
+ sortModifiers: createSortModifiers(config2),
591
+ ...createClassGroupUtils(config2)
507
592
  });
508
593
  var SPLIT_CLASSES_REGEX = /\s+/;
509
- var mergeClassList = (classList, configUtils) => {
594
+ var mergeClassList = (classList2, configUtils) => {
510
595
  const {
511
596
  parseClassName,
512
597
  getClassGroupId,
@@ -514,7 +599,7 @@ var mergeClassList = (classList, configUtils) => {
514
599
  sortModifiers
515
600
  } = configUtils;
516
601
  const classGroupsInConflict = [];
517
- const classNames = classList.trim().split(SPLIT_CLASSES_REGEX);
602
+ const classNames = classList2.trim().split(SPLIT_CLASSES_REGEX);
518
603
  let result = "";
519
604
  for (let index2 = classNames.length - 1; index2 >= 0; index2 -= 1) {
520
605
  const originalClassName = classNames[index2];
@@ -595,21 +680,21 @@ var createTailwindMerge = (createConfigFirst, ...createConfigRest) => {
595
680
  let cacheGet;
596
681
  let cacheSet;
597
682
  let functionToCall;
598
- const initTailwindMerge = (classList) => {
599
- const config = createConfigRest.reduce((previousConfig, createConfigCurrent) => createConfigCurrent(previousConfig), createConfigFirst());
600
- configUtils = createConfigUtils(config);
683
+ const initTailwindMerge = (classList2) => {
684
+ const config2 = createConfigRest.reduce((previousConfig, createConfigCurrent) => createConfigCurrent(previousConfig), createConfigFirst());
685
+ configUtils = createConfigUtils(config2);
601
686
  cacheGet = configUtils.cache.get;
602
687
  cacheSet = configUtils.cache.set;
603
688
  functionToCall = tailwindMerge;
604
- return tailwindMerge(classList);
689
+ return tailwindMerge(classList2);
605
690
  };
606
- const tailwindMerge = (classList) => {
607
- const cachedResult = cacheGet(classList);
691
+ const tailwindMerge = (classList2) => {
692
+ const cachedResult = cacheGet(classList2);
608
693
  if (cachedResult) {
609
694
  return cachedResult;
610
695
  }
611
- const result = mergeClassList(classList, configUtils);
612
- cacheSet(classList, result);
696
+ const result = mergeClassList(classList2, configUtils);
697
+ cacheSet(classList2, result);
613
698
  return result;
614
699
  };
615
700
  functionToCall = initTailwindMerge;
@@ -3271,13 +3356,13 @@ var useInsertionEffect = React45[" useInsertionEffect ".trim().toString()] || us
3271
3356
  function useControllableState({
3272
3357
  prop,
3273
3358
  defaultProp,
3274
- onChange = () => {
3359
+ onChange: onChange2 = () => {
3275
3360
  },
3276
3361
  caller
3277
3362
  }) {
3278
3363
  const [uncontrolledProp, setUncontrolledProp, onChangeRef] = useUncontrolledState({
3279
3364
  defaultProp,
3280
- onChange
3365
+ onChange: onChange2
3281
3366
  });
3282
3367
  const isControlled = prop !== void 0;
3283
3368
  const value = isControlled ? prop : uncontrolledProp;
@@ -3312,14 +3397,14 @@ function useControllableState({
3312
3397
  }
3313
3398
  function useUncontrolledState({
3314
3399
  defaultProp,
3315
- onChange
3400
+ onChange: onChange2
3316
3401
  }) {
3317
3402
  const [value, setValue] = React45.useState(defaultProp);
3318
3403
  const prevValueRef = React45.useRef(value);
3319
- const onChangeRef = React45.useRef(onChange);
3404
+ const onChangeRef = React45.useRef(onChange2);
3320
3405
  useInsertionEffect(() => {
3321
- onChangeRef.current = onChange;
3322
- }, [onChange]);
3406
+ onChangeRef.current = onChange2;
3407
+ }, [onChange2]);
3323
3408
  React45.useEffect(() => {
3324
3409
  if (prevValueRef.current !== value) {
3325
3410
  onChangeRef.current?.(value);
@@ -4127,8 +4212,8 @@ var oppositeAlignmentMap = {
4127
4212
  start: "end",
4128
4213
  end: "start"
4129
4214
  };
4130
- function clamp(start, value, end) {
4131
- return max(start, min(value, end));
4215
+ function clamp(start, value, end2) {
4216
+ return max(start, min(value, end2));
4132
4217
  }
4133
4218
  function evaluate(value, param) {
4134
4219
  return typeof value === "function" ? value(param) : value;
@@ -4222,7 +4307,7 @@ function getPaddingObject(padding) {
4222
4307
  }
4223
4308
  function rectToClientRect(rect) {
4224
4309
  const {
4225
- x,
4310
+ x: x2,
4226
4311
  y,
4227
4312
  width,
4228
4313
  height
@@ -4231,10 +4316,10 @@ function rectToClientRect(rect) {
4231
4316
  width,
4232
4317
  height,
4233
4318
  top: y,
4234
- left: x,
4235
- right: x + width,
4319
+ left: x2,
4320
+ right: x2 + width,
4236
4321
  bottom: y + height,
4237
- x,
4322
+ x: x2,
4238
4323
  y
4239
4324
  };
4240
4325
  }
@@ -4295,13 +4380,13 @@ function computeCoordsFromPlacement(_ref, placement, rtl) {
4295
4380
  }
4296
4381
  return coords;
4297
4382
  }
4298
- var computePosition = async (reference, floating, config) => {
4383
+ var computePosition = async (reference, floating, config2) => {
4299
4384
  const {
4300
4385
  placement = "bottom",
4301
4386
  strategy = "absolute",
4302
4387
  middleware = [],
4303
4388
  platform: platform2
4304
- } = config;
4389
+ } = config2;
4305
4390
  const validMiddleware = middleware.filter(Boolean);
4306
4391
  const rtl = await (platform2.isRTL == null ? void 0 : platform2.isRTL(floating));
4307
4392
  let rects = await platform2.getElementRects({
@@ -4310,7 +4395,7 @@ var computePosition = async (reference, floating, config) => {
4310
4395
  strategy
4311
4396
  });
4312
4397
  let {
4313
- x,
4398
+ x: x2,
4314
4399
  y
4315
4400
  } = computeCoordsFromPlacement(rects, placement, rtl);
4316
4401
  let statefulPlacement = placement;
@@ -4327,7 +4412,7 @@ var computePosition = async (reference, floating, config) => {
4327
4412
  data,
4328
4413
  reset
4329
4414
  } = await fn({
4330
- x,
4415
+ x: x2,
4331
4416
  y,
4332
4417
  initialPlacement: placement,
4333
4418
  placement: statefulPlacement,
@@ -4340,7 +4425,7 @@ var computePosition = async (reference, floating, config) => {
4340
4425
  floating
4341
4426
  }
4342
4427
  });
4343
- x = nextX != null ? nextX : x;
4428
+ x2 = nextX != null ? nextX : x2;
4344
4429
  y = nextY != null ? nextY : y;
4345
4430
  middlewareData = {
4346
4431
  ...middlewareData,
@@ -4363,7 +4448,7 @@ var computePosition = async (reference, floating, config) => {
4363
4448
  }) : reset.rects;
4364
4449
  }
4365
4450
  ({
4366
- x,
4451
+ x: x2,
4367
4452
  y
4368
4453
  } = computeCoordsFromPlacement(rects, statefulPlacement, rtl));
4369
4454
  }
@@ -4371,7 +4456,7 @@ var computePosition = async (reference, floating, config) => {
4371
4456
  }
4372
4457
  }
4373
4458
  return {
4374
- x,
4459
+ x: x2,
4375
4460
  y,
4376
4461
  placement: statefulPlacement,
4377
4462
  strategy,
@@ -4384,7 +4469,7 @@ async function detectOverflow(state, options) {
4384
4469
  options = {};
4385
4470
  }
4386
4471
  const {
4387
- x,
4472
+ x: x2,
4388
4473
  y,
4389
4474
  platform: platform2,
4390
4475
  rects,
@@ -4408,7 +4493,7 @@ async function detectOverflow(state, options) {
4408
4493
  strategy
4409
4494
  }));
4410
4495
  const rect = elementContext === "floating" ? {
4411
- x,
4496
+ x: x2,
4412
4497
  y,
4413
4498
  width: rects.floating.width,
4414
4499
  height: rects.floating.height
@@ -4439,7 +4524,7 @@ var arrow = (options) => ({
4439
4524
  options,
4440
4525
  async fn(state) {
4441
4526
  const {
4442
- x,
4527
+ x: x2,
4443
4528
  y,
4444
4529
  placement,
4445
4530
  rects,
@@ -4456,7 +4541,7 @@ var arrow = (options) => ({
4456
4541
  }
4457
4542
  const paddingObject = getPaddingObject(padding);
4458
4543
  const coords = {
4459
- x,
4544
+ x: x2,
4460
4545
  y
4461
4546
  };
4462
4547
  const axis = getAlignmentAxis(placement);
@@ -4713,7 +4798,7 @@ var offset = function(options) {
4713
4798
  async fn(state) {
4714
4799
  var _middlewareData$offse, _middlewareData$arrow;
4715
4800
  const {
4716
- x,
4801
+ x: x2,
4717
4802
  y,
4718
4803
  placement,
4719
4804
  middlewareData
@@ -4723,7 +4808,7 @@ var offset = function(options) {
4723
4808
  return {};
4724
4809
  }
4725
4810
  return {
4726
- x: x + diffCoords.x,
4811
+ x: x2 + diffCoords.x,
4727
4812
  y: y + diffCoords.y,
4728
4813
  data: {
4729
4814
  ...diffCoords,
@@ -4742,7 +4827,7 @@ var shift = function(options) {
4742
4827
  options,
4743
4828
  async fn(state) {
4744
4829
  const {
4745
- x,
4830
+ x: x2,
4746
4831
  y,
4747
4832
  placement
4748
4833
  } = state;
@@ -4752,11 +4837,11 @@ var shift = function(options) {
4752
4837
  limiter = {
4753
4838
  fn: (_ref) => {
4754
4839
  let {
4755
- x: x2,
4840
+ x: x3,
4756
4841
  y: y2
4757
4842
  } = _ref;
4758
4843
  return {
4759
- x: x2,
4844
+ x: x3,
4760
4845
  y: y2
4761
4846
  };
4762
4847
  }
@@ -4764,7 +4849,7 @@ var shift = function(options) {
4764
4849
  ...detectOverflowOptions
4765
4850
  } = evaluate(options, state);
4766
4851
  const coords = {
4767
- x,
4852
+ x: x2,
4768
4853
  y
4769
4854
  };
4770
4855
  const overflow = await detectOverflow(state, detectOverflowOptions);
@@ -4794,7 +4879,7 @@ var shift = function(options) {
4794
4879
  return {
4795
4880
  ...limitedCoords,
4796
4881
  data: {
4797
- x: limitedCoords.x - x,
4882
+ x: limitedCoords.x - x2,
4798
4883
  y: limitedCoords.y - y,
4799
4884
  enabled: {
4800
4885
  [mainAxis]: checkMainAxis,
@@ -4813,7 +4898,7 @@ var limitShift = function(options) {
4813
4898
  options,
4814
4899
  fn(state) {
4815
4900
  const {
4816
- x,
4901
+ x: x2,
4817
4902
  y,
4818
4903
  placement,
4819
4904
  rects,
@@ -4825,7 +4910,7 @@ var limitShift = function(options) {
4825
4910
  crossAxis: checkCrossAxis = true
4826
4911
  } = evaluate(options, state);
4827
4912
  const coords = {
4828
- x,
4913
+ x: x2,
4829
4914
  y
4830
4915
  };
4831
4916
  const crossAxis = getSideAxis(placement);
@@ -5020,8 +5105,8 @@ var willChangeValues = ["transform", "translate", "scale", "rotate", "perspectiv
5020
5105
  var containValues = ["paint", "layout", "strict", "content"];
5021
5106
  function isContainingBlock(elementOrCss) {
5022
5107
  const webkit = isWebKit();
5023
- const css = isElement(elementOrCss) ? getComputedStyle2(elementOrCss) : elementOrCss;
5024
- 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));
5108
+ const css2 = isElement(elementOrCss) ? getComputedStyle2(elementOrCss) : elementOrCss;
5109
+ 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));
5025
5110
  }
5026
5111
  function getContainingBlock(element) {
5027
5112
  let currentNode = getParentNode(element);
@@ -5104,9 +5189,9 @@ function getFrameElement(win) {
5104
5189
 
5105
5190
  // ../../node_modules/.pnpm/@floating-ui+dom@1.7.4/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs
5106
5191
  function getCssDimensions(element) {
5107
- const css = getComputedStyle2(element);
5108
- let width = parseFloat(css.width) || 0;
5109
- let height = parseFloat(css.height) || 0;
5192
+ const css2 = getComputedStyle2(element);
5193
+ let width = parseFloat(css2.width) || 0;
5194
+ let height = parseFloat(css2.height) || 0;
5110
5195
  const hasOffset = isHTMLElement(element);
5111
5196
  const offsetWidth = hasOffset ? element.offsetWidth : width;
5112
5197
  const offsetHeight = hasOffset ? element.offsetHeight : height;
@@ -5135,16 +5220,16 @@ function getScale(element) {
5135
5220
  height,
5136
5221
  $
5137
5222
  } = getCssDimensions(domElement);
5138
- let x = ($ ? round(rect.width) : rect.width) / width;
5223
+ let x2 = ($ ? round(rect.width) : rect.width) / width;
5139
5224
  let y = ($ ? round(rect.height) : rect.height) / height;
5140
- if (!x || !Number.isFinite(x)) {
5141
- x = 1;
5225
+ if (!x2 || !Number.isFinite(x2)) {
5226
+ x2 = 1;
5142
5227
  }
5143
5228
  if (!y || !Number.isFinite(y)) {
5144
5229
  y = 1;
5145
5230
  }
5146
5231
  return {
5147
- x,
5232
+ x: x2,
5148
5233
  y
5149
5234
  };
5150
5235
  }
@@ -5188,7 +5273,7 @@ function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetPar
5188
5273
  }
5189
5274
  }
5190
5275
  const visualOffsets = shouldAddVisualOffsets(domElement, isFixedStrategy, offsetParent) ? getVisualOffsets(domElement) : createCoords(0);
5191
- let x = (clientRect.left + visualOffsets.x) / scale.x;
5276
+ let x2 = (clientRect.left + visualOffsets.x) / scale.x;
5192
5277
  let y = (clientRect.top + visualOffsets.y) / scale.y;
5193
5278
  let width = clientRect.width / scale.x;
5194
5279
  let height = clientRect.height / scale.y;
@@ -5200,14 +5285,14 @@ function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetPar
5200
5285
  while (currentIFrame && offsetParent && offsetWin !== currentWin) {
5201
5286
  const iframeScale = getScale(currentIFrame);
5202
5287
  const iframeRect = currentIFrame.getBoundingClientRect();
5203
- const css = getComputedStyle2(currentIFrame);
5204
- const left = iframeRect.left + (currentIFrame.clientLeft + parseFloat(css.paddingLeft)) * iframeScale.x;
5205
- const top = iframeRect.top + (currentIFrame.clientTop + parseFloat(css.paddingTop)) * iframeScale.y;
5206
- x *= iframeScale.x;
5288
+ const css2 = getComputedStyle2(currentIFrame);
5289
+ const left = iframeRect.left + (currentIFrame.clientLeft + parseFloat(css2.paddingLeft)) * iframeScale.x;
5290
+ const top = iframeRect.top + (currentIFrame.clientTop + parseFloat(css2.paddingTop)) * iframeScale.y;
5291
+ x2 *= iframeScale.x;
5207
5292
  y *= iframeScale.y;
5208
5293
  width *= iframeScale.x;
5209
5294
  height *= iframeScale.y;
5210
- x += left;
5295
+ x2 += left;
5211
5296
  y += top;
5212
5297
  currentWin = getWindow(currentIFrame);
5213
5298
  currentIFrame = getFrameElement(currentWin);
@@ -5216,7 +5301,7 @@ function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetPar
5216
5301
  return rectToClientRect({
5217
5302
  width,
5218
5303
  height,
5219
- x,
5304
+ x: x2,
5220
5305
  y
5221
5306
  });
5222
5307
  }
@@ -5229,10 +5314,10 @@ function getWindowScrollBarX(element, rect) {
5229
5314
  }
5230
5315
  function getHTMLOffset(documentElement, scroll) {
5231
5316
  const htmlRect = documentElement.getBoundingClientRect();
5232
- const x = htmlRect.left + scroll.scrollLeft - getWindowScrollBarX(documentElement, htmlRect);
5317
+ const x2 = htmlRect.left + scroll.scrollLeft - getWindowScrollBarX(documentElement, htmlRect);
5233
5318
  const y = htmlRect.top + scroll.scrollTop;
5234
5319
  return {
5235
- x,
5320
+ x: x2,
5236
5321
  y
5237
5322
  };
5238
5323
  }
@@ -5284,15 +5369,15 @@ function getDocumentRect(element) {
5284
5369
  const body = element.ownerDocument.body;
5285
5370
  const width = max(html.scrollWidth, html.clientWidth, body.scrollWidth, body.clientWidth);
5286
5371
  const height = max(html.scrollHeight, html.clientHeight, body.scrollHeight, body.clientHeight);
5287
- let x = -scroll.scrollLeft + getWindowScrollBarX(element);
5372
+ let x2 = -scroll.scrollLeft + getWindowScrollBarX(element);
5288
5373
  const y = -scroll.scrollTop;
5289
5374
  if (getComputedStyle2(body).direction === "rtl") {
5290
- x += max(html.clientWidth, body.clientWidth) - width;
5375
+ x2 += max(html.clientWidth, body.clientWidth) - width;
5291
5376
  }
5292
5377
  return {
5293
5378
  width,
5294
5379
  height,
5295
- x,
5380
+ x: x2,
5296
5381
  y
5297
5382
  };
5298
5383
  }
@@ -5303,14 +5388,14 @@ function getViewportRect(element, strategy) {
5303
5388
  const visualViewport = win.visualViewport;
5304
5389
  let width = html.clientWidth;
5305
5390
  let height = html.clientHeight;
5306
- let x = 0;
5391
+ let x2 = 0;
5307
5392
  let y = 0;
5308
5393
  if (visualViewport) {
5309
5394
  width = visualViewport.width;
5310
5395
  height = visualViewport.height;
5311
5396
  const visualViewportBased = isWebKit();
5312
5397
  if (!visualViewportBased || visualViewportBased && strategy === "fixed") {
5313
- x = visualViewport.offsetLeft;
5398
+ x2 = visualViewport.offsetLeft;
5314
5399
  y = visualViewport.offsetTop;
5315
5400
  }
5316
5401
  }
@@ -5330,7 +5415,7 @@ function getViewportRect(element, strategy) {
5330
5415
  return {
5331
5416
  width,
5332
5417
  height,
5333
- x,
5418
+ x: x2,
5334
5419
  y
5335
5420
  };
5336
5421
  }
@@ -5342,12 +5427,12 @@ function getInnerBoundingClientRect(element, strategy) {
5342
5427
  const scale = isHTMLElement(element) ? getScale(element) : createCoords(1);
5343
5428
  const width = element.clientWidth * scale.x;
5344
5429
  const height = element.clientHeight * scale.y;
5345
- const x = left * scale.x;
5430
+ const x2 = left * scale.x;
5346
5431
  const y = top * scale.y;
5347
5432
  return {
5348
5433
  width,
5349
5434
  height,
5350
- x,
5435
+ x: x2,
5351
5436
  y
5352
5437
  };
5353
5438
  }
@@ -5467,10 +5552,10 @@ function getRectRelativeToOffsetParent(element, offsetParent, strategy) {
5467
5552
  setLeftRTLScrollbarOffset();
5468
5553
  }
5469
5554
  const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll) : createCoords(0);
5470
- const x = rect.left + scroll.scrollLeft - offsets.x - htmlOffset.x;
5555
+ const x2 = rect.left + scroll.scrollLeft - offsets.x - htmlOffset.x;
5471
5556
  const y = rect.top + scroll.scrollTop - offsets.y - htmlOffset.y;
5472
5557
  return {
5473
- x,
5558
+ x: x2,
5474
5559
  y,
5475
5560
  width: rect.width,
5476
5561
  height: rect.height
@@ -5837,15 +5922,15 @@ function useFloating(options) {
5837
5922
  if (!referenceRef.current || !floatingRef.current) {
5838
5923
  return;
5839
5924
  }
5840
- const config = {
5925
+ const config2 = {
5841
5926
  placement,
5842
5927
  strategy,
5843
5928
  middleware: latestMiddleware
5844
5929
  };
5845
5930
  if (platformRef.current) {
5846
- config.platform = platformRef.current;
5931
+ config2.platform = platformRef.current;
5847
5932
  }
5848
- computePosition2(referenceRef.current, floatingRef.current, config).then((data2) => {
5933
+ computePosition2(referenceRef.current, floatingRef.current, config2).then((data2) => {
5849
5934
  const fullData = {
5850
5935
  ...data2,
5851
5936
  // The floating element's position may be recomputed while it's closed
@@ -5907,12 +5992,12 @@ function useFloating(options) {
5907
5992
  if (!elements.floating) {
5908
5993
  return initialStyles;
5909
5994
  }
5910
- const x = roundByDPR(elements.floating, data.x);
5995
+ const x2 = roundByDPR(elements.floating, data.x);
5911
5996
  const y = roundByDPR(elements.floating, data.y);
5912
5997
  if (transform) {
5913
5998
  return {
5914
5999
  ...initialStyles,
5915
- transform: "translate(" + x + "px, " + y + "px)",
6000
+ transform: "translate(" + x2 + "px, " + y + "px)",
5916
6001
  ...getDPR(elements.floating) >= 1.5 && {
5917
6002
  willChange: "transform"
5918
6003
  }
@@ -5920,7 +6005,7 @@ function useFloating(options) {
5920
6005
  }
5921
6006
  return {
5922
6007
  position: strategy,
5923
- left: x,
6008
+ left: x2,
5924
6009
  top: y
5925
6010
  };
5926
6011
  }, [strategy, transform, elements.floating, data.x, data.y]);
@@ -6286,22 +6371,22 @@ var transformOrigin = (options) => ({
6286
6371
  const noArrowAlign = { start: "0%", center: "50%", end: "100%" }[placedAlign];
6287
6372
  const arrowXCenter = (middlewareData.arrow?.x ?? 0) + arrowWidth / 2;
6288
6373
  const arrowYCenter = (middlewareData.arrow?.y ?? 0) + arrowHeight / 2;
6289
- let x = "";
6374
+ let x2 = "";
6290
6375
  let y = "";
6291
6376
  if (placedSide === "bottom") {
6292
- x = isArrowHidden ? noArrowAlign : `${arrowXCenter}px`;
6377
+ x2 = isArrowHidden ? noArrowAlign : `${arrowXCenter}px`;
6293
6378
  y = `${-arrowHeight}px`;
6294
6379
  } else if (placedSide === "top") {
6295
- x = isArrowHidden ? noArrowAlign : `${arrowXCenter}px`;
6380
+ x2 = isArrowHidden ? noArrowAlign : `${arrowXCenter}px`;
6296
6381
  y = `${rects.floating.height + arrowHeight}px`;
6297
6382
  } else if (placedSide === "right") {
6298
- x = `${-arrowHeight}px`;
6383
+ x2 = `${-arrowHeight}px`;
6299
6384
  y = isArrowHidden ? noArrowAlign : `${arrowYCenter}px`;
6300
6385
  } else if (placedSide === "left") {
6301
- x = `${rects.floating.width + arrowHeight}px`;
6386
+ x2 = `${rects.floating.width + arrowHeight}px`;
6302
6387
  y = isArrowHidden ? noArrowAlign : `${arrowYCenter}px`;
6303
6388
  }
6304
- return { data: { x, y } };
6389
+ return { data: { x: x2, y } };
6305
6390
  }
6306
6391
  });
6307
6392
  function getSideAndAlignFromPlacement(placement) {
@@ -6360,15 +6445,15 @@ function usePresence(present) {
6360
6445
  prevAnimationNameRef.current = state === "mounted" ? currentAnimationName : "none";
6361
6446
  }, [state]);
6362
6447
  useLayoutEffect2(() => {
6363
- const styles = stylesRef.current;
6448
+ const styles2 = stylesRef.current;
6364
6449
  const wasPresent = prevPresentRef.current;
6365
6450
  const hasPresentChanged = wasPresent !== present;
6366
6451
  if (hasPresentChanged) {
6367
6452
  const prevAnimationName = prevAnimationNameRef.current;
6368
- const currentAnimationName = getAnimationName(styles);
6453
+ const currentAnimationName = getAnimationName(styles2);
6369
6454
  if (present) {
6370
6455
  send("MOUNT");
6371
- } else if (currentAnimationName === "none" || styles?.display === "none") {
6456
+ } else if (currentAnimationName === "none" || styles2?.display === "none") {
6372
6457
  send("UNMOUNT");
6373
6458
  } else {
6374
6459
  const isAnimating = prevAnimationName !== currentAnimationName;
@@ -6427,8 +6512,8 @@ function usePresence(present) {
6427
6512
  }, [])
6428
6513
  };
6429
6514
  }
6430
- function getAnimationName(styles) {
6431
- return styles?.animationName || "none";
6515
+ function getAnimationName(styles2) {
6516
+ return styles2?.animationName || "none";
6432
6517
  }
6433
6518
  function getElementRef3(element) {
6434
6519
  let getter = Object.getOwnPropertyDescriptor(element.props, "ref")?.get;
@@ -6679,8 +6764,8 @@ var correctTargets = function(parent, targets) {
6679
6764
  }
6680
6765
  console.error("aria-hidden", target, "in not contained inside", parent, ". Doing nothing");
6681
6766
  return null;
6682
- }).filter(function(x) {
6683
- return Boolean(x);
6767
+ }).filter(function(x2) {
6768
+ return Boolean(x2);
6684
6769
  });
6685
6770
  };
6686
6771
  var applyAttributeToOthers = function(originalTarget, parentNode, markerName, controlAttribute) {
@@ -6776,25 +6861,25 @@ var hideOthers = function(originalTarget, parentNode, markerName) {
6776
6861
 
6777
6862
  // ../../node_modules/.pnpm/tslib@2.8.1/node_modules/tslib/tslib.es6.mjs
6778
6863
  var __assign = function() {
6779
- __assign = Object.assign || function __assign2(t) {
6780
- for (var s, i = 1, n = arguments.length; i < n; i++) {
6781
- s = arguments[i];
6782
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
6864
+ __assign = Object.assign || function __assign2(t2) {
6865
+ for (var s2, i = 1, n = arguments.length; i < n; i++) {
6866
+ s2 = arguments[i];
6867
+ for (var p2 in s2) if (Object.prototype.hasOwnProperty.call(s2, p2)) t2[p2] = s2[p2];
6783
6868
  }
6784
- return t;
6869
+ return t2;
6785
6870
  };
6786
6871
  return __assign.apply(this, arguments);
6787
6872
  };
6788
- function __rest(s, e) {
6789
- var t = {};
6790
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
6791
- t[p] = s[p];
6792
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
6793
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
6794
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
6795
- t[p[i]] = s[p[i]];
6873
+ function __rest(s2, e) {
6874
+ var t2 = {};
6875
+ for (var p2 in s2) if (Object.prototype.hasOwnProperty.call(s2, p2) && e.indexOf(p2) < 0)
6876
+ t2[p2] = s2[p2];
6877
+ if (s2 != null && typeof Object.getOwnPropertySymbols === "function")
6878
+ for (var i = 0, p2 = Object.getOwnPropertySymbols(s2); i < p2.length; i++) {
6879
+ if (e.indexOf(p2[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s2, p2[i]))
6880
+ t2[p2[i]] = s2[p2[i]];
6796
6881
  }
6797
- return t;
6882
+ return t2;
6798
6883
  }
6799
6884
  function __spreadArray(to, from, pack) {
6800
6885
  for (var i = 0, l = from.length, ar; i < l; i++) {
@@ -6900,8 +6985,8 @@ function innerCreateMedium(defaults, middleware) {
6900
6985
  var item = middleware(data, assigned);
6901
6986
  buffer.push(item);
6902
6987
  return function() {
6903
- buffer = buffer.filter(function(x) {
6904
- return x !== item;
6988
+ buffer = buffer.filter(function(x2) {
6989
+ return x2 !== item;
6905
6990
  });
6906
6991
  };
6907
6992
  },
@@ -6913,8 +6998,8 @@ function innerCreateMedium(defaults, middleware) {
6913
6998
  cbs.forEach(cb);
6914
6999
  }
6915
7000
  buffer = {
6916
- push: function(x) {
6917
- return cb(x);
7001
+ push: function(x2) {
7002
+ return cb(x2);
6918
7003
  },
6919
7004
  filter: function() {
6920
7005
  return buffer;
@@ -6940,8 +7025,8 @@ function innerCreateMedium(defaults, middleware) {
6940
7025
  };
6941
7026
  cycle();
6942
7027
  buffer = {
6943
- push: function(x) {
6944
- pendingQueue.push(x);
7028
+ push: function(x2) {
7029
+ pendingQueue.push(x2);
6945
7030
  cycle();
6946
7031
  },
6947
7032
  filter: function(filter) {
@@ -7031,11 +7116,11 @@ function makeStyleTag() {
7031
7116
  }
7032
7117
  return tag;
7033
7118
  }
7034
- function injectStyles(tag, css) {
7119
+ function injectStyles(tag, css2) {
7035
7120
  if (tag.styleSheet) {
7036
- tag.styleSheet.cssText = css;
7121
+ tag.styleSheet.cssText = css2;
7037
7122
  } else {
7038
- tag.appendChild(document.createTextNode(css));
7123
+ tag.appendChild(document.createTextNode(css2));
7039
7124
  }
7040
7125
  }
7041
7126
  function insertStyleTag(tag) {
@@ -7043,21 +7128,21 @@ function insertStyleTag(tag) {
7043
7128
  head.appendChild(tag);
7044
7129
  }
7045
7130
  var stylesheetSingleton = function() {
7046
- var counter = 0;
7131
+ var counter2 = 0;
7047
7132
  var stylesheet = null;
7048
7133
  return {
7049
7134
  add: function(style) {
7050
- if (counter == 0) {
7135
+ if (counter2 == 0) {
7051
7136
  if (stylesheet = makeStyleTag()) {
7052
7137
  injectStyles(stylesheet, style);
7053
7138
  insertStyleTag(stylesheet);
7054
7139
  }
7055
7140
  }
7056
- counter++;
7141
+ counter2++;
7057
7142
  },
7058
7143
  remove: function() {
7059
- counter--;
7060
- if (!counter && stylesheet) {
7144
+ counter2--;
7145
+ if (!counter2 && stylesheet) {
7061
7146
  stylesheet.parentNode && stylesheet.parentNode.removeChild(stylesheet);
7062
7147
  stylesheet = null;
7063
7148
  }
@@ -7068,13 +7153,13 @@ var stylesheetSingleton = function() {
7068
7153
  // ../../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
7069
7154
  var styleHookSingleton = function() {
7070
7155
  var sheet = stylesheetSingleton();
7071
- return function(styles, isDynamic) {
7156
+ return function(styles2, isDynamic) {
7072
7157
  React45.useEffect(function() {
7073
- sheet.add(styles);
7158
+ sheet.add(styles2);
7074
7159
  return function() {
7075
7160
  sheet.remove();
7076
7161
  };
7077
- }, [styles && isDynamic]);
7162
+ }, [styles2 && isDynamic]);
7078
7163
  };
7079
7164
  };
7080
7165
 
@@ -7082,8 +7167,8 @@ var styleHookSingleton = function() {
7082
7167
  var styleSingleton = function() {
7083
7168
  var useStyle = styleHookSingleton();
7084
7169
  var Sheet = function(_a) {
7085
- var styles = _a.styles, dynamic = _a.dynamic;
7086
- useStyle(styles, dynamic);
7170
+ var styles2 = _a.styles, dynamic = _a.dynamic;
7171
+ useStyle(styles2, dynamic);
7087
7172
  return null;
7088
7173
  };
7089
7174
  return Sheet;
@@ -7096,8 +7181,8 @@ var zeroGap = {
7096
7181
  right: 0,
7097
7182
  gap: 0
7098
7183
  };
7099
- var parse = function(x) {
7100
- return parseInt(x || "", 10) || 0;
7184
+ var parse = function(x2) {
7185
+ return parseInt(x2 || "", 10) || 0;
7101
7186
  };
7102
7187
  var getOffset = function(gapMode) {
7103
7188
  var cs = window.getComputedStyle(document.body);
@@ -7139,8 +7224,8 @@ var getStyles = function(_a, allowRelative, gapMode, important) {
7139
7224
  ].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");
7140
7225
  };
7141
7226
  var getCurrentUseCounter = function() {
7142
- var counter = parseInt(document.body.getAttribute(lockAttribute) || "0", 10);
7143
- return isFinite(counter) ? counter : 0;
7227
+ var counter2 = parseInt(document.body.getAttribute(lockAttribute) || "0", 10);
7228
+ return isFinite(counter2) ? counter2 : 0;
7144
7229
  };
7145
7230
  var useLockAttribute = function() {
7146
7231
  React45.useEffect(function() {
@@ -7191,11 +7276,11 @@ var elementCanBeScrolled = function(node, overflow) {
7191
7276
  if (!(node instanceof Element)) {
7192
7277
  return false;
7193
7278
  }
7194
- var styles = window.getComputedStyle(node);
7279
+ var styles2 = window.getComputedStyle(node);
7195
7280
  return (
7196
7281
  // not-not-scrollable
7197
- styles[overflow] !== "hidden" && // contains scroll inside self
7198
- !(styles.overflowY === styles.overflowX && !alwaysContainsScroll(node) && styles[overflow] === "visible")
7282
+ styles2[overflow] !== "hidden" && // contains scroll inside self
7283
+ !(styles2.overflowY === styles2.overflowX && !alwaysContainsScroll(node) && styles2[overflow] === "visible")
7199
7284
  );
7200
7285
  };
7201
7286
  var elementCouldBeVScrolled = function(node) {
@@ -7293,8 +7378,8 @@ var getDeltaXY = function(event) {
7293
7378
  var extractRef = function(ref) {
7294
7379
  return ref && "current" in ref ? ref.current : ref;
7295
7380
  };
7296
- var deltaCompare = function(x, y) {
7297
- return x[0] === y[0] && x[1] === y[1];
7381
+ var deltaCompare = function(x2, y) {
7382
+ return x2[0] === y[0] && x2[1] === y[1];
7298
7383
  };
7299
7384
  var generateStyle = function(id) {
7300
7385
  return "\n .block-interactivity-".concat(id, " {pointer-events: none;}\n .allow-interactivity-").concat(id, " {pointer-events: all;}\n");
@@ -7799,7 +7884,7 @@ var ITEM_NAME2 = "MenuItem";
7799
7884
  var ITEM_SELECT = "menu.itemSelect";
7800
7885
  var MenuItem = React45.forwardRef(
7801
7886
  (props, forwardedRef) => {
7802
- const { disabled = false, onSelect, ...itemProps } = props;
7887
+ const { disabled: disabled2 = false, onSelect, ...itemProps } = props;
7803
7888
  const ref = React45.useRef(null);
7804
7889
  const rootContext = useMenuRootContext(ITEM_NAME2, props.__scopeMenu);
7805
7890
  const contentContext = useMenuContentContext(ITEM_NAME2, props.__scopeMenu);
@@ -7807,7 +7892,7 @@ var MenuItem = React45.forwardRef(
7807
7892
  const isPointerDownRef = React45.useRef(false);
7808
7893
  const handleSelect = () => {
7809
7894
  const menuItem = ref.current;
7810
- if (!disabled && menuItem) {
7895
+ if (!disabled2 && menuItem) {
7811
7896
  const itemSelectEvent = new CustomEvent(ITEM_SELECT, { bubbles: true, cancelable: true });
7812
7897
  menuItem.addEventListener(ITEM_SELECT, (event) => onSelect?.(event), { once: true });
7813
7898
  dispatchDiscreteCustomEvent(menuItem, itemSelectEvent);
@@ -7823,7 +7908,7 @@ var MenuItem = React45.forwardRef(
7823
7908
  {
7824
7909
  ...itemProps,
7825
7910
  ref: composedRefs,
7826
- disabled,
7911
+ disabled: disabled2,
7827
7912
  onClick: composeEventHandlers(props.onClick, handleSelect),
7828
7913
  onPointerDown: (event) => {
7829
7914
  props.onPointerDown?.(event);
@@ -7834,7 +7919,7 @@ var MenuItem = React45.forwardRef(
7834
7919
  }),
7835
7920
  onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {
7836
7921
  const isTypingAhead = contentContext.searchRef.current !== "";
7837
- if (disabled || isTypingAhead && event.key === " ") return;
7922
+ if (disabled2 || isTypingAhead && event.key === " ") return;
7838
7923
  if (SELECTION_KEYS.includes(event.key)) {
7839
7924
  event.currentTarget.click();
7840
7925
  event.preventDefault();
@@ -7847,7 +7932,7 @@ var MenuItem = React45.forwardRef(
7847
7932
  MenuItem.displayName = ITEM_NAME2;
7848
7933
  var MenuItemImpl = React45.forwardRef(
7849
7934
  (props, forwardedRef) => {
7850
- const { __scopeMenu, disabled = false, textValue, ...itemProps } = props;
7935
+ const { __scopeMenu, disabled: disabled2 = false, textValue, ...itemProps } = props;
7851
7936
  const contentContext = useMenuContentContext(ITEM_NAME2, __scopeMenu);
7852
7937
  const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeMenu);
7853
7938
  const ref = React45.useRef(null);
@@ -7864,21 +7949,21 @@ var MenuItemImpl = React45.forwardRef(
7864
7949
  Collection2.ItemSlot,
7865
7950
  {
7866
7951
  scope: __scopeMenu,
7867
- disabled,
7952
+ disabled: disabled2,
7868
7953
  textValue: textValue ?? textContent,
7869
- children: /* @__PURE__ */ jsx(Item, { asChild: true, ...rovingFocusGroupScope, focusable: !disabled, children: /* @__PURE__ */ jsx(
7954
+ children: /* @__PURE__ */ jsx(Item, { asChild: true, ...rovingFocusGroupScope, focusable: !disabled2, children: /* @__PURE__ */ jsx(
7870
7955
  Primitive.div,
7871
7956
  {
7872
7957
  role: "menuitem",
7873
7958
  "data-highlighted": isFocused ? "" : void 0,
7874
- "aria-disabled": disabled || void 0,
7875
- "data-disabled": disabled ? "" : void 0,
7959
+ "aria-disabled": disabled2 || void 0,
7960
+ "data-disabled": disabled2 ? "" : void 0,
7876
7961
  ...itemProps,
7877
7962
  ref: composedRefs,
7878
7963
  onPointerMove: composeEventHandlers(
7879
7964
  props.onPointerMove,
7880
7965
  whenMouse((event) => {
7881
- if (disabled) {
7966
+ if (disabled2) {
7882
7967
  contentContext.onItemLeave(event);
7883
7968
  } else {
7884
7969
  contentContext.onItemEnter(event);
@@ -8230,7 +8315,7 @@ function getNextMatch(values, search, currentMatch) {
8230
8315
  return nextMatch !== currentMatch ? nextMatch : void 0;
8231
8316
  }
8232
8317
  function isPointInPolygon(point, polygon) {
8233
- const { x, y } = point;
8318
+ const { x: x2, y } = point;
8234
8319
  let inside = false;
8235
8320
  for (let i = 0, j = polygon.length - 1; i < polygon.length; j = i++) {
8236
8321
  const ii = polygon[i];
@@ -8239,7 +8324,7 @@ function isPointInPolygon(point, polygon) {
8239
8324
  const yi = ii.y;
8240
8325
  const xj = jj.x;
8241
8326
  const yj = jj.y;
8242
- const intersect = yi > y !== yj > y && x < (xj - xi) * (y - yi) / (yj - yi) + xi;
8327
+ const intersect = yi > y !== yj > y && x2 < (xj - xi) * (y - yi) / (yj - yi) + xi;
8243
8328
  if (intersect) inside = !inside;
8244
8329
  }
8245
8330
  return inside;
@@ -8312,7 +8397,7 @@ DropdownMenu.displayName = DROPDOWN_MENU_NAME;
8312
8397
  var TRIGGER_NAME = "DropdownMenuTrigger";
8313
8398
  var DropdownMenuTrigger = React45.forwardRef(
8314
8399
  (props, forwardedRef) => {
8315
- const { __scopeDropdownMenu, disabled = false, ...triggerProps } = props;
8400
+ const { __scopeDropdownMenu, disabled: disabled2 = false, ...triggerProps } = props;
8316
8401
  const context = useDropdownMenuContext(TRIGGER_NAME, __scopeDropdownMenu);
8317
8402
  const menuScope = useMenuScope(__scopeDropdownMenu);
8318
8403
  return /* @__PURE__ */ jsx(Anchor2, { asChild: true, ...menuScope, children: /* @__PURE__ */ jsx(
@@ -8324,18 +8409,18 @@ var DropdownMenuTrigger = React45.forwardRef(
8324
8409
  "aria-expanded": context.open,
8325
8410
  "aria-controls": context.open ? context.contentId : void 0,
8326
8411
  "data-state": context.open ? "open" : "closed",
8327
- "data-disabled": disabled ? "" : void 0,
8328
- disabled,
8412
+ "data-disabled": disabled2 ? "" : void 0,
8413
+ disabled: disabled2,
8329
8414
  ...triggerProps,
8330
8415
  ref: composeRefs(forwardedRef, context.triggerRef),
8331
8416
  onPointerDown: composeEventHandlers(props.onPointerDown, (event) => {
8332
- if (!disabled && event.button === 0 && event.ctrlKey === false) {
8417
+ if (!disabled2 && event.button === 0 && event.ctrlKey === false) {
8333
8418
  context.onOpenToggle();
8334
8419
  if (!context.open) event.preventDefault();
8335
8420
  }
8336
8421
  }),
8337
8422
  onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {
8338
- if (disabled) return;
8423
+ if (disabled2) return;
8339
8424
  if (["Enter", " "].includes(event.key)) context.onOpenToggle();
8340
8425
  if (event.key === "ArrowDown") context.onOpenChange(true);
8341
8426
  if (["Enter", " ", "ArrowDown"].includes(event.key)) event.preventDefault();
@@ -8897,11 +8982,11 @@ function useResolvedExpectedType(expectedType, devCtx) {
8897
8982
  const content = match[1]?.trim() || "";
8898
8983
  if (content.startsWith("[") && content.endsWith("]")) {
8899
8984
  const arrayContent = content.slice(1, -1);
8900
- const fieldNames = arrayContent.split(",").map((s) => s.trim().replace(/^["']|["']$/g, "")).filter(Boolean);
8985
+ const fieldNames = arrayContent.split(",").map((s2) => s2.trim().replace(/^["']|["']$/g, "")).filter(Boolean);
8901
8986
  if (!inferredTypes) {
8902
8987
  return `Subscribing to: ${fieldNames.join(", ")}`;
8903
8988
  }
8904
- const types = fieldNames.map((name) => inferredTypes[name]).filter((t) => !!t && t.length > 0);
8989
+ const types = fieldNames.map((name) => inferredTypes[name]).filter((t2) => !!t2 && t2.length > 0);
8905
8990
  if (types.length === 0) {
8906
8991
  return `Waiting for: ${fieldNames.join(", ")}`;
8907
8992
  }
@@ -8921,8 +9006,8 @@ function Input({
8921
9006
  fieldName,
8922
9007
  label,
8923
9008
  value,
8924
- onChange,
8925
- disabled = false,
9009
+ onChange: onChange2,
9010
+ disabled: disabled2 = false,
8926
9011
  placeholder,
8927
9012
  expectedType = "string",
8928
9013
  required = false,
@@ -8945,8 +9030,8 @@ function Input({
8945
9030
  return value != null && typeof value === "object" && "expression" in value;
8946
9031
  }, [value]);
8947
9032
  const handleChange = React45.useCallback(
8948
- (e) => onChange(e.target.value),
8949
- [onChange]
9033
+ (e) => onChange2(e.target.value),
9034
+ [onChange2]
8950
9035
  );
8951
9036
  const showError = hasRequiredError || required && !displayValue;
8952
9037
  const isWaiting = resolvedExpectedType.startsWith("Waiting for:") || resolvedExpectedType.startsWith("Subscribing to:");
@@ -8988,7 +9073,7 @@ function Input({
8988
9073
  type: "text",
8989
9074
  value: displayValue,
8990
9075
  onChange: handleChange,
8991
- disabled,
9076
+ disabled: disabled2,
8992
9077
  placeholder: placeholder || "Enter value or {{ expression }}...",
8993
9078
  className: cn(
8994
9079
  "uii:w-full uii:h-9 uii:px-3 uii:rounded-sm uii:border uii:bg-background uii:text-sm",
@@ -8996,7 +9081,7 @@ function Input({
8996
9081
  "focus:uii:border-ring focus:uii:ring-ring/50 focus:uii:ring-[3px]",
8997
9082
  showError ? "uii:border-red-500 hover:uii:border-red-600" : "uii:border-input hover:uii:border-ring/50",
8998
9083
  isExpression && "uii:font-mono uii:text-amber-600",
8999
- disabled && "uii:opacity-50 uii:cursor-not-allowed",
9084
+ disabled2 && "uii:opacity-50 uii:cursor-not-allowed",
9000
9085
  editorClassName
9001
9086
  )
9002
9087
  }
@@ -9068,7 +9153,7 @@ var Select = (props) => {
9068
9153
  dir,
9069
9154
  name,
9070
9155
  autoComplete,
9071
- disabled,
9156
+ disabled: disabled2,
9072
9157
  required,
9073
9158
  form
9074
9159
  } = props;
@@ -9111,7 +9196,7 @@ var Select = (props) => {
9111
9196
  onOpenChange: setOpen,
9112
9197
  dir: direction,
9113
9198
  triggerPointerDownPosRef,
9114
- disabled,
9199
+ disabled: disabled2,
9115
9200
  children: [
9116
9201
  /* @__PURE__ */ jsx(Collection3.Provider, { scope: __scopeSelect, children: /* @__PURE__ */ jsx(
9117
9202
  SelectNativeOptionsProvider,
@@ -9140,7 +9225,7 @@ var Select = (props) => {
9140
9225
  autoComplete,
9141
9226
  value,
9142
9227
  onChange: (event) => setValue(event.target.value),
9143
- disabled,
9228
+ disabled: disabled2,
9144
9229
  form,
9145
9230
  children: [
9146
9231
  value === void 0 ? /* @__PURE__ */ jsx("option", { value: "" }) : null,
@@ -9157,10 +9242,10 @@ Select.displayName = SELECT_NAME;
9157
9242
  var TRIGGER_NAME2 = "SelectTrigger";
9158
9243
  var SelectTrigger = React45.forwardRef(
9159
9244
  (props, forwardedRef) => {
9160
- const { __scopeSelect, disabled = false, ...triggerProps } = props;
9245
+ const { __scopeSelect, disabled: disabled2 = false, ...triggerProps } = props;
9161
9246
  const popperScope = usePopperScope2(__scopeSelect);
9162
9247
  const context = useSelectContext(TRIGGER_NAME2, __scopeSelect);
9163
- const isDisabled = context.disabled || disabled;
9248
+ const isDisabled = context.disabled || disabled2;
9164
9249
  const composedRefs = useComposedRefs(forwardedRef, context.onTriggerChange);
9165
9250
  const getItems = useCollection3(__scopeSelect);
9166
9251
  const pointerTypeRef = React45.useRef("touch");
@@ -9403,8 +9488,8 @@ var SelectContentImpl = React45.forwardRef(
9403
9488
  }
9404
9489
  });
9405
9490
  const itemRefCallback = React45.useCallback(
9406
- (node, value, disabled) => {
9407
- const isFirstValidItem = !firstValidItemFoundRef.current && !disabled;
9491
+ (node, value, disabled2) => {
9492
+ const isFirstValidItem = !firstValidItemFoundRef.current && !disabled2;
9408
9493
  const isSelectedItem = context.value !== void 0 && context.value === value;
9409
9494
  if (isSelectedItem || isFirstValidItem) {
9410
9495
  setSelectedItem(node);
@@ -9415,8 +9500,8 @@ var SelectContentImpl = React45.forwardRef(
9415
9500
  );
9416
9501
  const handleItemLeave = React45.useCallback(() => content?.focus(), [content]);
9417
9502
  const itemTextRefCallback = React45.useCallback(
9418
- (node, value, disabled) => {
9419
- const isFirstValidItem = !firstValidItemFoundRef.current && !disabled;
9503
+ (node, value, disabled2) => {
9504
+ const isFirstValidItem = !firstValidItemFoundRef.current && !disabled2;
9420
9505
  const isSelectedItem = context.value !== void 0 && context.value === value;
9421
9506
  if (isSelectedItem || isFirstValidItem) {
9422
9507
  setSelectedItemText(node);
@@ -9817,7 +9902,7 @@ var SelectItem = React45.forwardRef(
9817
9902
  const {
9818
9903
  __scopeSelect,
9819
9904
  value,
9820
- disabled = false,
9905
+ disabled: disabled2 = false,
9821
9906
  textValue: textValueProp,
9822
9907
  ...itemProps
9823
9908
  } = props;
@@ -9828,12 +9913,12 @@ var SelectItem = React45.forwardRef(
9828
9913
  const [isFocused, setIsFocused] = React45.useState(false);
9829
9914
  const composedRefs = useComposedRefs(
9830
9915
  forwardedRef,
9831
- (node) => contentContext.itemRefCallback?.(node, value, disabled)
9916
+ (node) => contentContext.itemRefCallback?.(node, value, disabled2)
9832
9917
  );
9833
9918
  const textId = useId();
9834
9919
  const pointerTypeRef = React45.useRef("touch");
9835
9920
  const handleSelect = () => {
9836
- if (!disabled) {
9921
+ if (!disabled2) {
9837
9922
  context.onValueChange(value);
9838
9923
  context.onOpenChange(false);
9839
9924
  }
@@ -9848,7 +9933,7 @@ var SelectItem = React45.forwardRef(
9848
9933
  {
9849
9934
  scope: __scopeSelect,
9850
9935
  value,
9851
- disabled,
9936
+ disabled: disabled2,
9852
9937
  textId,
9853
9938
  isSelected,
9854
9939
  onItemTextChange: React45.useCallback((node) => {
@@ -9859,7 +9944,7 @@ var SelectItem = React45.forwardRef(
9859
9944
  {
9860
9945
  scope: __scopeSelect,
9861
9946
  value,
9862
- disabled,
9947
+ disabled: disabled2,
9863
9948
  textValue,
9864
9949
  children: /* @__PURE__ */ jsx(
9865
9950
  Primitive.div,
@@ -9869,9 +9954,9 @@ var SelectItem = React45.forwardRef(
9869
9954
  "data-highlighted": isFocused ? "" : void 0,
9870
9955
  "aria-selected": isSelected && isFocused,
9871
9956
  "data-state": isSelected ? "checked" : "unchecked",
9872
- "aria-disabled": disabled || void 0,
9873
- "data-disabled": disabled ? "" : void 0,
9874
- tabIndex: disabled ? void 0 : -1,
9957
+ "aria-disabled": disabled2 || void 0,
9958
+ "data-disabled": disabled2 ? "" : void 0,
9959
+ tabIndex: disabled2 ? void 0 : -1,
9875
9960
  ...itemProps,
9876
9961
  ref: composedRefs,
9877
9962
  onFocus: composeEventHandlers(itemProps.onFocus, () => setIsFocused(true)),
@@ -9887,7 +9972,7 @@ var SelectItem = React45.forwardRef(
9887
9972
  }),
9888
9973
  onPointerMove: composeEventHandlers(itemProps.onPointerMove, (event) => {
9889
9974
  pointerTypeRef.current = event.pointerType;
9890
- if (disabled) {
9975
+ if (disabled2) {
9891
9976
  contentContext.onItemLeave?.();
9892
9977
  } else if (pointerTypeRef.current === "mouse") {
9893
9978
  event.currentTarget.focus({ preventScroll: true });
@@ -10305,11 +10390,11 @@ function useResolvedExpectedType2(expectedType, devCtx) {
10305
10390
  const content = match[1]?.trim() || "";
10306
10391
  if (content.startsWith("[") && content.endsWith("]")) {
10307
10392
  const arrayContent = content.slice(1, -1);
10308
- const fieldNames = arrayContent.split(",").map((s) => s.trim().replace(/^["']|["']$/g, "")).filter(Boolean);
10393
+ const fieldNames = arrayContent.split(",").map((s2) => s2.trim().replace(/^["']|["']$/g, "")).filter(Boolean);
10309
10394
  if (!inferredTypes) {
10310
10395
  return `Subscribing to: ${fieldNames.join(", ")}`;
10311
10396
  }
10312
- const types = fieldNames.map((name) => inferredTypes[name]).filter((t) => !!t && t.length > 0);
10397
+ const types = fieldNames.map((name) => inferredTypes[name]).filter((t2) => !!t2 && t2.length > 0);
10313
10398
  if (types.length === 0) {
10314
10399
  return `Waiting for: ${fieldNames.join(", ")}`;
10315
10400
  }
@@ -10329,9 +10414,9 @@ function Select3({
10329
10414
  fieldName,
10330
10415
  label,
10331
10416
  value,
10332
- onChange,
10417
+ onChange: onChange2,
10333
10418
  options: rawOptions,
10334
- disabled = false,
10419
+ disabled: disabled2 = false,
10335
10420
  placeholder,
10336
10421
  expectedType = "string",
10337
10422
  hideTypeBadge = false,
@@ -10369,21 +10454,21 @@ function Select3({
10369
10454
  setIsExpressionMode(true);
10370
10455
  return;
10371
10456
  }
10372
- onChange(newValue);
10373
- }, [onChange]);
10457
+ onChange2(newValue);
10458
+ }, [onChange2]);
10374
10459
  const handleExpressionChange = React45.useCallback(
10375
10460
  (e) => {
10376
10461
  const newValue = e.target.value;
10377
10462
  setExpressionValue(newValue);
10378
- onChange(newValue);
10463
+ onChange2(newValue);
10379
10464
  },
10380
- [onChange]
10465
+ [onChange2]
10381
10466
  );
10382
10467
  const handleSwitchToValue = React45.useCallback(() => {
10383
10468
  setIsExpressionMode(false);
10384
10469
  setExpressionValue("");
10385
- onChange("");
10386
- }, [onChange]);
10470
+ onChange2("");
10471
+ }, [onChange2]);
10387
10472
  const showError = hasRequiredError || required && !displayValue;
10388
10473
  const renderProps = {
10389
10474
  value: displayValue,
@@ -10439,12 +10524,12 @@ function Select3({
10439
10524
  type: "text",
10440
10525
  value: expressionValue,
10441
10526
  onChange: handleExpressionChange,
10442
- disabled,
10527
+ disabled: disabled2,
10443
10528
  placeholder: "Enter expression...",
10444
10529
  className: cn(
10445
10530
  "uii:flex-1 uii:h-full uii:px-3 uii:bg-transparent uii:text-sm uii:font-mono uii:text-amber-600",
10446
10531
  "uii:outline-none uii:border-none",
10447
- disabled && "uii:opacity-50 uii:cursor-not-allowed"
10532
+ disabled2 && "uii:opacity-50 uii:cursor-not-allowed"
10448
10533
  )
10449
10534
  }
10450
10535
  ), /* @__PURE__ */ React45.createElement(
@@ -10494,7 +10579,7 @@ function Select3({
10494
10579
  {
10495
10580
  value: displayValue,
10496
10581
  onValueChange: (e) => handleSelectChange(e),
10497
- disabled: disabled ?? disabled
10582
+ disabled: disabled2 ?? disabled2
10498
10583
  },
10499
10584
  /* @__PURE__ */ React45.createElement(
10500
10585
  SelectTrigger2,
@@ -10522,30 +10607,30 @@ function parseInferredTypes(typeStr) {
10522
10607
  result.rawTypes = ["any"];
10523
10608
  return result;
10524
10609
  }
10525
- const types = typeStr.split("|").map((t) => t.trim()).filter(Boolean);
10610
+ const types = typeStr.split("|").map((t2) => t2.trim()).filter(Boolean);
10526
10611
  const baseTypesSet = /* @__PURE__ */ new Set();
10527
10612
  const rawTypesSet = /* @__PURE__ */ new Set();
10528
- for (const t of types) {
10529
- rawTypesSet.add(t);
10530
- const stringLiteralMatch = t.match(/^["'](.*)["']$/);
10613
+ for (const t2 of types) {
10614
+ rawTypesSet.add(t2);
10615
+ const stringLiteralMatch = t2.match(/^["'](.*)["']$/);
10531
10616
  if (stringLiteralMatch && stringLiteralMatch[1] !== void 0) {
10532
10617
  result.stringConstants.push(stringLiteralMatch[1]);
10533
10618
  baseTypesSet.add("string");
10534
10619
  result.hasConstants = true;
10535
10620
  continue;
10536
10621
  }
10537
- if (/^-?\d+(\.\d+)?$/.test(t)) {
10538
- result.numberConstants.push(parseFloat(t));
10622
+ if (/^-?\d+(\.\d+)?$/.test(t2)) {
10623
+ result.numberConstants.push(parseFloat(t2));
10539
10624
  baseTypesSet.add("number");
10540
10625
  result.hasConstants = true;
10541
10626
  continue;
10542
10627
  }
10543
- if (t === "true" || t === "false") {
10628
+ if (t2 === "true" || t2 === "false") {
10544
10629
  baseTypesSet.add("boolean");
10545
10630
  result.hasConstants = true;
10546
10631
  continue;
10547
10632
  }
10548
- baseTypesSet.add(t);
10633
+ baseTypesSet.add(t2);
10549
10634
  }
10550
10635
  result.baseTypes = Array.from(baseTypesSet);
10551
10636
  result.rawTypes = Array.from(rawTypesSet);
@@ -10557,18 +10642,18 @@ function computeExtendedType(inferredType, opDef) {
10557
10642
  }
10558
10643
  const parsed = parseInferredTypes(inferredType);
10559
10644
  const matchingLiterals = [];
10560
- for (const t of parsed.rawTypes) {
10645
+ for (const t2 of parsed.rawTypes) {
10561
10646
  if (opDef.narrowsTo === "string") {
10562
- if (t === "string") ; else if (/^["'].*["']$/.test(t)) {
10563
- matchingLiterals.push(t);
10647
+ if (t2 === "string") ; else if (/^["'].*["']$/.test(t2)) {
10648
+ matchingLiterals.push(t2);
10564
10649
  }
10565
10650
  } else if (opDef.narrowsTo === "number") {
10566
- if (t === "number") ; else if (/^-?\d+(\.\d+)?$/.test(t)) {
10567
- matchingLiterals.push(t);
10651
+ if (t2 === "number") ; else if (/^-?\d+(\.\d+)?$/.test(t2)) {
10652
+ matchingLiterals.push(t2);
10568
10653
  }
10569
10654
  } else if (opDef.narrowsTo === "boolean") {
10570
- if (t === "boolean") ; else if (t === "true" || t === "false") {
10571
- matchingLiterals.push(t);
10655
+ if (t2 === "boolean") ; else if (t2 === "true" || t2 === "false") {
10656
+ matchingLiterals.push(t2);
10572
10657
  }
10573
10658
  }
10574
10659
  }
@@ -10585,7 +10670,7 @@ function filterOperatorsByType(operators, inferredType) {
10585
10670
  const { baseTypes } = parsed;
10586
10671
  return operators.filter((op) => {
10587
10672
  if (op.types.includes("any")) return true;
10588
- return op.types.some((t) => baseTypes.includes(t) || baseTypes.includes("any"));
10673
+ return op.types.some((t2) => baseTypes.includes(t2) || baseTypes.includes("any"));
10589
10674
  });
10590
10675
  }
10591
10676
  function getStringConstants(inferredType) {
@@ -10660,7 +10745,7 @@ function InferredTypesProvider({ children }) {
10660
10745
  return /* @__PURE__ */ React45__default.createElement(React45__default.Fragment, null, children);
10661
10746
  }
10662
10747
  function intersectTypes(types) {
10663
- const validTypes = types.filter((t) => !!t && t.length > 0);
10748
+ const validTypes = types.filter((t2) => !!t2 && t2.length > 0);
10664
10749
  if (validTypes.length === 0) return "any";
10665
10750
  if (validTypes.length === 1) return validTypes[0];
10666
10751
  return validTypes[0];
@@ -10680,7 +10765,7 @@ function parseInferSyntax(expectedType) {
10680
10765
  subscribeToField: content
10681
10766
  };
10682
10767
  }
10683
- const allowedTypes = content.split("|").map((t) => t.trim()).filter(Boolean);
10768
+ const allowedTypes = content.split("|").map((t2) => t2.trim()).filter(Boolean);
10684
10769
  return {
10685
10770
  mode: "publish",
10686
10771
  allowedTypes
@@ -10914,7 +10999,10 @@ function useFieldValidation() {
10914
10999
  var slots_exports = {};
10915
11000
  __export(slots_exports, {
10916
11001
  ExportManager: () => ExportManager,
10917
- SlotElements: () => SlotElements
11002
+ SlotDelete: () => SlotDelete,
11003
+ SlotDragHandle: () => SlotDragHandle,
11004
+ SlotElements: () => SlotElements,
11005
+ SlotEnable: () => SlotEnable
10918
11006
  });
10919
11007
 
10920
11008
  // src/components/slots/SlotElements.tsx
@@ -10928,23 +11016,3431 @@ var ExportManager = (props) => {
10928
11016
  const { slotId } = props;
10929
11017
  return /* @__PURE__ */ React.createElement(Button, { variant: "outline", size: "sm" }, "Manage Exports");
10930
11018
  };
10931
- /*! Bundled license information:
11019
+ var SWITCH_NAME = "Switch";
11020
+ var [createSwitchContext] = createContextScope(SWITCH_NAME);
11021
+ var [SwitchProvider, useSwitchContext] = createSwitchContext(SWITCH_NAME);
11022
+ var Switch = React45.forwardRef(
11023
+ (props, forwardedRef) => {
11024
+ const {
11025
+ __scopeSwitch,
11026
+ name,
11027
+ checked: checkedProp,
11028
+ defaultChecked,
11029
+ required,
11030
+ disabled: disabled2,
11031
+ value = "on",
11032
+ onCheckedChange,
11033
+ form,
11034
+ ...switchProps
11035
+ } = props;
11036
+ const [button, setButton] = React45.useState(null);
11037
+ const composedRefs = useComposedRefs(forwardedRef, (node) => setButton(node));
11038
+ const hasConsumerStoppedPropagationRef = React45.useRef(false);
11039
+ const isFormControl = button ? form || !!button.closest("form") : true;
11040
+ const [checked, setChecked] = useControllableState({
11041
+ prop: checkedProp,
11042
+ defaultProp: defaultChecked ?? false,
11043
+ onChange: onCheckedChange,
11044
+ caller: SWITCH_NAME
11045
+ });
11046
+ return /* @__PURE__ */ jsxs(SwitchProvider, { scope: __scopeSwitch, checked, disabled: disabled2, children: [
11047
+ /* @__PURE__ */ jsx(
11048
+ Primitive.button,
11049
+ {
11050
+ type: "button",
11051
+ role: "switch",
11052
+ "aria-checked": checked,
11053
+ "aria-required": required,
11054
+ "data-state": getState(checked),
11055
+ "data-disabled": disabled2 ? "" : void 0,
11056
+ disabled: disabled2,
11057
+ value,
11058
+ ...switchProps,
11059
+ ref: composedRefs,
11060
+ onClick: composeEventHandlers(props.onClick, (event) => {
11061
+ setChecked((prevChecked) => !prevChecked);
11062
+ if (isFormControl) {
11063
+ hasConsumerStoppedPropagationRef.current = event.isPropagationStopped();
11064
+ if (!hasConsumerStoppedPropagationRef.current) event.stopPropagation();
11065
+ }
11066
+ })
11067
+ }
11068
+ ),
11069
+ isFormControl && /* @__PURE__ */ jsx(
11070
+ SwitchBubbleInput,
11071
+ {
11072
+ control: button,
11073
+ bubbles: !hasConsumerStoppedPropagationRef.current,
11074
+ name,
11075
+ value,
11076
+ checked,
11077
+ required,
11078
+ disabled: disabled2,
11079
+ form,
11080
+ style: { transform: "translateX(-100%)" }
11081
+ }
11082
+ )
11083
+ ] });
11084
+ }
11085
+ );
11086
+ Switch.displayName = SWITCH_NAME;
11087
+ var THUMB_NAME = "SwitchThumb";
11088
+ var SwitchThumb = React45.forwardRef(
11089
+ (props, forwardedRef) => {
11090
+ const { __scopeSwitch, ...thumbProps } = props;
11091
+ const context = useSwitchContext(THUMB_NAME, __scopeSwitch);
11092
+ return /* @__PURE__ */ jsx(
11093
+ Primitive.span,
11094
+ {
11095
+ "data-state": getState(context.checked),
11096
+ "data-disabled": context.disabled ? "" : void 0,
11097
+ ...thumbProps,
11098
+ ref: forwardedRef
11099
+ }
11100
+ );
11101
+ }
11102
+ );
11103
+ SwitchThumb.displayName = THUMB_NAME;
11104
+ var BUBBLE_INPUT_NAME2 = "SwitchBubbleInput";
11105
+ var SwitchBubbleInput = React45.forwardRef(
11106
+ ({
11107
+ __scopeSwitch,
11108
+ control,
11109
+ checked,
11110
+ bubbles = true,
11111
+ ...props
11112
+ }, forwardedRef) => {
11113
+ const ref = React45.useRef(null);
11114
+ const composedRefs = useComposedRefs(ref, forwardedRef);
11115
+ const prevChecked = usePrevious(checked);
11116
+ const controlSize = useSize(control);
11117
+ React45.useEffect(() => {
11118
+ const input = ref.current;
11119
+ if (!input) return;
11120
+ const inputProto = window.HTMLInputElement.prototype;
11121
+ const descriptor = Object.getOwnPropertyDescriptor(
11122
+ inputProto,
11123
+ "checked"
11124
+ );
11125
+ const setChecked = descriptor.set;
11126
+ if (prevChecked !== checked && setChecked) {
11127
+ const event = new Event("click", { bubbles });
11128
+ setChecked.call(input, checked);
11129
+ input.dispatchEvent(event);
11130
+ }
11131
+ }, [prevChecked, checked, bubbles]);
11132
+ return /* @__PURE__ */ jsx(
11133
+ "input",
11134
+ {
11135
+ type: "checkbox",
11136
+ "aria-hidden": true,
11137
+ defaultChecked: checked,
11138
+ ...props,
11139
+ tabIndex: -1,
11140
+ ref: composedRefs,
11141
+ style: {
11142
+ ...props.style,
11143
+ ...controlSize,
11144
+ position: "absolute",
11145
+ pointerEvents: "none",
11146
+ opacity: 0,
11147
+ margin: 0
11148
+ }
11149
+ }
11150
+ );
11151
+ }
11152
+ );
11153
+ SwitchBubbleInput.displayName = BUBBLE_INPUT_NAME2;
11154
+ function getState(checked) {
11155
+ return checked ? "checked" : "unchecked";
11156
+ }
11157
+ var Root4 = Switch;
11158
+ var Thumb = SwitchThumb;
10932
11159
 
10933
- lucide-react/dist/esm/shared/src/utils.js:
10934
- lucide-react/dist/esm/defaultAttributes.js:
10935
- lucide-react/dist/esm/Icon.js:
10936
- lucide-react/dist/esm/createLucideIcon.js:
10937
- lucide-react/dist/esm/icons/check.js:
10938
- lucide-react/dist/esm/icons/chevron-down.js:
10939
- lucide-react/dist/esm/icons/chevron-right.js:
10940
- lucide-react/dist/esm/icons/chevron-up.js:
10941
- lucide-react/dist/esm/icons/circle.js:
10942
- lucide-react/dist/esm/lucide-react.js:
10943
- (**
10944
- * @license lucide-react v0.476.0 - ISC
10945
- *
10946
- * This source code is licensed under the ISC license.
10947
- * See the LICENSE file in the root directory of this source tree.
11160
+ // src/components/ui/switch.tsx
11161
+ var switchRootVariants = cva(
11162
+ "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",
11163
+ {
11164
+ variants: {
11165
+ size: {
11166
+ xs: "uii:h-3 uii:w-6",
11167
+ // tiny track
11168
+ sm: "uii:h-4 uii:w-7",
11169
+ // small track
11170
+ md: "uii:h-5 uii:w-9",
11171
+ // current default
11172
+ lg: "uii:h-7 uii:w-14",
11173
+ // larger track
11174
+ xl: "uii:h-9 uii:w-20"
11175
+ // extra large track
11176
+ }
11177
+ },
11178
+ defaultVariants: { size: "md" }
11179
+ }
11180
+ );
11181
+ var switchThumbVariants = cva(
11182
+ "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",
11183
+ {
11184
+ variants: {
11185
+ size: {
11186
+ xs: "uii:size-2 uii:data-[state=checked]:translate-x-3",
11187
+ sm: "uii:size-3 uii:data-[state=checked]:translate-x-3",
11188
+ md: "uii:size-4 uii:data-[state=checked]:translate-x-4",
11189
+ // current default
11190
+ lg: "uii:size-6 uii:data-[state=checked]:translate-x-6",
11191
+ xl: "uii:size-8 uii:data-[state=checked]:translate-x-8"
11192
+ }
11193
+ },
11194
+ defaultVariants: { size: "md" }
11195
+ }
11196
+ );
11197
+ function Switch2({ className, size: size4, ...props }) {
11198
+ return /* @__PURE__ */ React45.createElement(
11199
+ Root4,
11200
+ {
11201
+ "data-slot": "switch",
11202
+ className: cn(switchRootVariants({ size: size4 }), className),
11203
+ ...props
11204
+ },
11205
+ /* @__PURE__ */ React45.createElement(
11206
+ Thumb,
11207
+ {
11208
+ "data-slot": "switch-thumb",
11209
+ className: cn(switchThumbVariants({ size: size4 }))
11210
+ }
11211
+ )
11212
+ );
11213
+ }
11214
+
11215
+ // src/components/slots/SlotEnable.tsx
11216
+ var SlotEnable = (props) => {
11217
+ const { slotId } = props;
11218
+ 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: () => {
11219
+ } }));
11220
+ };
11221
+
11222
+ // ../../node_modules/.pnpm/@fortawesome+fontawesome-svg-core@6.7.2/node_modules/@fortawesome/fontawesome-svg-core/index.mjs
11223
+ function _defineProperty(e, r3, t2) {
11224
+ return (r3 = _toPropertyKey(r3)) in e ? Object.defineProperty(e, r3, {
11225
+ value: t2,
11226
+ enumerable: true,
11227
+ configurable: true,
11228
+ writable: true
11229
+ }) : e[r3] = t2, e;
11230
+ }
11231
+ function ownKeys(e, r3) {
11232
+ var t2 = Object.keys(e);
11233
+ if (Object.getOwnPropertySymbols) {
11234
+ var o2 = Object.getOwnPropertySymbols(e);
11235
+ r3 && (o2 = o2.filter(function(r4) {
11236
+ return Object.getOwnPropertyDescriptor(e, r4).enumerable;
11237
+ })), t2.push.apply(t2, o2);
11238
+ }
11239
+ return t2;
11240
+ }
11241
+ function _objectSpread2(e) {
11242
+ for (var r3 = 1; r3 < arguments.length; r3++) {
11243
+ var t2 = null != arguments[r3] ? arguments[r3] : {};
11244
+ r3 % 2 ? ownKeys(Object(t2), true).forEach(function(r4) {
11245
+ _defineProperty(e, r4, t2[r4]);
11246
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t2)) : ownKeys(Object(t2)).forEach(function(r4) {
11247
+ Object.defineProperty(e, r4, Object.getOwnPropertyDescriptor(t2, r4));
11248
+ });
11249
+ }
11250
+ return e;
11251
+ }
11252
+ function _toPrimitive(t2, r3) {
11253
+ if ("object" != typeof t2 || !t2) return t2;
11254
+ var e = t2[Symbol.toPrimitive];
11255
+ if (void 0 !== e) {
11256
+ var i = e.call(t2, r3);
11257
+ if ("object" != typeof i) return i;
11258
+ throw new TypeError("@@toPrimitive must return a primitive value.");
11259
+ }
11260
+ return ("string" === r3 ? String : Number)(t2);
11261
+ }
11262
+ function _toPropertyKey(t2) {
11263
+ var i = _toPrimitive(t2, "string");
11264
+ return "symbol" == typeof i ? i : i + "";
11265
+ }
11266
+ var noop3 = () => {
11267
+ };
11268
+ var _WINDOW = {};
11269
+ var _DOCUMENT = {};
11270
+ var _MUTATION_OBSERVER = null;
11271
+ var _PERFORMANCE = {
11272
+ mark: noop3,
11273
+ measure: noop3
11274
+ };
11275
+ try {
11276
+ if (typeof window !== "undefined") _WINDOW = window;
11277
+ if (typeof document !== "undefined") _DOCUMENT = document;
11278
+ if (typeof MutationObserver !== "undefined") _MUTATION_OBSERVER = MutationObserver;
11279
+ if (typeof performance !== "undefined") _PERFORMANCE = performance;
11280
+ } catch (e) {
11281
+ }
11282
+ var {
11283
+ userAgent = ""
11284
+ } = _WINDOW.navigator || {};
11285
+ var WINDOW = _WINDOW;
11286
+ var DOCUMENT = _DOCUMENT;
11287
+ var MUTATION_OBSERVER = _MUTATION_OBSERVER;
11288
+ var PERFORMANCE = _PERFORMANCE;
11289
+ !!WINDOW.document;
11290
+ var IS_DOM = !!DOCUMENT.documentElement && !!DOCUMENT.head && typeof DOCUMENT.addEventListener === "function" && typeof DOCUMENT.createElement === "function";
11291
+ var IS_IE = ~userAgent.indexOf("MSIE") || ~userAgent.indexOf("Trident/");
11292
+ var p = /fa(s|r|l|t|d|dr|dl|dt|b|k|kd|ss|sr|sl|st|sds|sdr|sdl|sdt)?[\-\ ]/;
11293
+ var g = /Font ?Awesome ?([56 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit)?.*/i;
11294
+ var S = {
11295
+ classic: {
11296
+ fa: "solid",
11297
+ fas: "solid",
11298
+ "fa-solid": "solid",
11299
+ far: "regular",
11300
+ "fa-regular": "regular",
11301
+ fal: "light",
11302
+ "fa-light": "light",
11303
+ fat: "thin",
11304
+ "fa-thin": "thin",
11305
+ fab: "brands",
11306
+ "fa-brands": "brands"
11307
+ },
11308
+ duotone: {
11309
+ fa: "solid",
11310
+ fad: "solid",
11311
+ "fa-solid": "solid",
11312
+ "fa-duotone": "solid",
11313
+ fadr: "regular",
11314
+ "fa-regular": "regular",
11315
+ fadl: "light",
11316
+ "fa-light": "light",
11317
+ fadt: "thin",
11318
+ "fa-thin": "thin"
11319
+ },
11320
+ sharp: {
11321
+ fa: "solid",
11322
+ fass: "solid",
11323
+ "fa-solid": "solid",
11324
+ fasr: "regular",
11325
+ "fa-regular": "regular",
11326
+ fasl: "light",
11327
+ "fa-light": "light",
11328
+ fast: "thin",
11329
+ "fa-thin": "thin"
11330
+ },
11331
+ "sharp-duotone": {
11332
+ fa: "solid",
11333
+ fasds: "solid",
11334
+ "fa-solid": "solid",
11335
+ fasdr: "regular",
11336
+ "fa-regular": "regular",
11337
+ fasdl: "light",
11338
+ "fa-light": "light",
11339
+ fasdt: "thin",
11340
+ "fa-thin": "thin"
11341
+ }
11342
+ };
11343
+ var A = {
11344
+ GROUP: "duotone-group",
11345
+ PRIMARY: "primary",
11346
+ SECONDARY: "secondary"
11347
+ };
11348
+ var P = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"];
11349
+ var s = "classic";
11350
+ var t = "duotone";
11351
+ var r2 = "sharp";
11352
+ var o = "sharp-duotone";
11353
+ var L = [s, t, r2, o];
11354
+ var G = {
11355
+ classic: {
11356
+ 900: "fas",
11357
+ 400: "far",
11358
+ normal: "far",
11359
+ 300: "fal",
11360
+ 100: "fat"
11361
+ },
11362
+ duotone: {
11363
+ 900: "fad",
11364
+ 400: "fadr",
11365
+ 300: "fadl",
11366
+ 100: "fadt"
11367
+ },
11368
+ sharp: {
11369
+ 900: "fass",
11370
+ 400: "fasr",
11371
+ 300: "fasl",
11372
+ 100: "fast"
11373
+ },
11374
+ "sharp-duotone": {
11375
+ 900: "fasds",
11376
+ 400: "fasdr",
11377
+ 300: "fasdl",
11378
+ 100: "fasdt"
11379
+ }
11380
+ };
11381
+ var lt = {
11382
+ "Font Awesome 6 Free": {
11383
+ 900: "fas",
11384
+ 400: "far"
11385
+ },
11386
+ "Font Awesome 6 Pro": {
11387
+ 900: "fas",
11388
+ 400: "far",
11389
+ normal: "far",
11390
+ 300: "fal",
11391
+ 100: "fat"
11392
+ },
11393
+ "Font Awesome 6 Brands": {
11394
+ 400: "fab",
11395
+ normal: "fab"
11396
+ },
11397
+ "Font Awesome 6 Duotone": {
11398
+ 900: "fad",
11399
+ 400: "fadr",
11400
+ normal: "fadr",
11401
+ 300: "fadl",
11402
+ 100: "fadt"
11403
+ },
11404
+ "Font Awesome 6 Sharp": {
11405
+ 900: "fass",
11406
+ 400: "fasr",
11407
+ normal: "fasr",
11408
+ 300: "fasl",
11409
+ 100: "fast"
11410
+ },
11411
+ "Font Awesome 6 Sharp Duotone": {
11412
+ 900: "fasds",
11413
+ 400: "fasdr",
11414
+ normal: "fasdr",
11415
+ 300: "fasdl",
11416
+ 100: "fasdt"
11417
+ }
11418
+ };
11419
+ var pt = /* @__PURE__ */ new Map([["classic", {
11420
+ defaultShortPrefixId: "fas",
11421
+ defaultStyleId: "solid",
11422
+ styleIds: ["solid", "regular", "light", "thin", "brands"],
11423
+ futureStyleIds: [],
11424
+ defaultFontWeight: 900
11425
+ }], ["sharp", {
11426
+ defaultShortPrefixId: "fass",
11427
+ defaultStyleId: "solid",
11428
+ styleIds: ["solid", "regular", "light", "thin"],
11429
+ futureStyleIds: [],
11430
+ defaultFontWeight: 900
11431
+ }], ["duotone", {
11432
+ defaultShortPrefixId: "fad",
11433
+ defaultStyleId: "solid",
11434
+ styleIds: ["solid", "regular", "light", "thin"],
11435
+ futureStyleIds: [],
11436
+ defaultFontWeight: 900
11437
+ }], ["sharp-duotone", {
11438
+ defaultShortPrefixId: "fasds",
11439
+ defaultStyleId: "solid",
11440
+ styleIds: ["solid", "regular", "light", "thin"],
11441
+ futureStyleIds: [],
11442
+ defaultFontWeight: 900
11443
+ }]]);
11444
+ var xt = {
11445
+ classic: {
11446
+ solid: "fas",
11447
+ regular: "far",
11448
+ light: "fal",
11449
+ thin: "fat",
11450
+ brands: "fab"
11451
+ },
11452
+ duotone: {
11453
+ solid: "fad",
11454
+ regular: "fadr",
11455
+ light: "fadl",
11456
+ thin: "fadt"
11457
+ },
11458
+ sharp: {
11459
+ solid: "fass",
11460
+ regular: "fasr",
11461
+ light: "fasl",
11462
+ thin: "fast"
11463
+ },
11464
+ "sharp-duotone": {
11465
+ solid: "fasds",
11466
+ regular: "fasdr",
11467
+ light: "fasdl",
11468
+ thin: "fasdt"
11469
+ }
11470
+ };
11471
+ var Ft = ["fak", "fa-kit", "fakd", "fa-kit-duotone"];
11472
+ var St = {
11473
+ kit: {
11474
+ fak: "kit",
11475
+ "fa-kit": "kit"
11476
+ },
11477
+ "kit-duotone": {
11478
+ fakd: "kit-duotone",
11479
+ "fa-kit-duotone": "kit-duotone"
11480
+ }
11481
+ };
11482
+ var At = ["kit"];
11483
+ var Ct = {
11484
+ kit: {
11485
+ "fa-kit": "fak"
11486
+ }};
11487
+ var Lt = ["fak", "fakd"];
11488
+ var Wt = {
11489
+ kit: {
11490
+ fak: "fa-kit"
11491
+ }};
11492
+ var Et = {
11493
+ kit: {
11494
+ kit: "fak"
11495
+ },
11496
+ "kit-duotone": {
11497
+ "kit-duotone": "fakd"
11498
+ }
11499
+ };
11500
+ var t$1 = {
11501
+ GROUP: "duotone-group",
11502
+ SWAP_OPACITY: "swap-opacity",
11503
+ PRIMARY: "primary",
11504
+ SECONDARY: "secondary"
11505
+ };
11506
+ var r$1 = ["fa-classic", "fa-duotone", "fa-sharp", "fa-sharp-duotone"];
11507
+ var bt$1 = ["fak", "fa-kit", "fakd", "fa-kit-duotone"];
11508
+ var Yt = {
11509
+ "Font Awesome Kit": {
11510
+ 400: "fak",
11511
+ normal: "fak"
11512
+ },
11513
+ "Font Awesome Kit Duotone": {
11514
+ 400: "fakd",
11515
+ normal: "fakd"
11516
+ }
11517
+ };
11518
+ var ua = {
11519
+ classic: {
11520
+ "fa-brands": "fab",
11521
+ "fa-duotone": "fad",
11522
+ "fa-light": "fal",
11523
+ "fa-regular": "far",
11524
+ "fa-solid": "fas",
11525
+ "fa-thin": "fat"
11526
+ },
11527
+ duotone: {
11528
+ "fa-regular": "fadr",
11529
+ "fa-light": "fadl",
11530
+ "fa-thin": "fadt"
11531
+ },
11532
+ sharp: {
11533
+ "fa-solid": "fass",
11534
+ "fa-regular": "fasr",
11535
+ "fa-light": "fasl",
11536
+ "fa-thin": "fast"
11537
+ },
11538
+ "sharp-duotone": {
11539
+ "fa-solid": "fasds",
11540
+ "fa-regular": "fasdr",
11541
+ "fa-light": "fasdl",
11542
+ "fa-thin": "fasdt"
11543
+ }
11544
+ };
11545
+ var I$1 = {
11546
+ classic: ["fas", "far", "fal", "fat", "fad"],
11547
+ duotone: ["fadr", "fadl", "fadt"],
11548
+ sharp: ["fass", "fasr", "fasl", "fast"],
11549
+ "sharp-duotone": ["fasds", "fasdr", "fasdl", "fasdt"]
11550
+ };
11551
+ var ga = {
11552
+ classic: {
11553
+ fab: "fa-brands",
11554
+ fad: "fa-duotone",
11555
+ fal: "fa-light",
11556
+ far: "fa-regular",
11557
+ fas: "fa-solid",
11558
+ fat: "fa-thin"
11559
+ },
11560
+ duotone: {
11561
+ fadr: "fa-regular",
11562
+ fadl: "fa-light",
11563
+ fadt: "fa-thin"
11564
+ },
11565
+ sharp: {
11566
+ fass: "fa-solid",
11567
+ fasr: "fa-regular",
11568
+ fasl: "fa-light",
11569
+ fast: "fa-thin"
11570
+ },
11571
+ "sharp-duotone": {
11572
+ fasds: "fa-solid",
11573
+ fasdr: "fa-regular",
11574
+ fasdl: "fa-light",
11575
+ fasdt: "fa-thin"
11576
+ }
11577
+ };
11578
+ var x = ["fa-solid", "fa-regular", "fa-light", "fa-thin", "fa-duotone", "fa-brands"];
11579
+ var Ia = ["fa", "fas", "far", "fal", "fat", "fad", "fadr", "fadl", "fadt", "fab", "fass", "fasr", "fasl", "fast", "fasds", "fasdr", "fasdl", "fasdt", ...r$1, ...x];
11580
+ var m$1 = ["solid", "regular", "light", "thin", "duotone", "brands"];
11581
+ var c$1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
11582
+ var F$1 = c$1.concat([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]);
11583
+ 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)));
11584
+ var wa = {
11585
+ "Font Awesome 5 Free": {
11586
+ 900: "fas",
11587
+ 400: "far"
11588
+ },
11589
+ "Font Awesome 5 Pro": {
11590
+ 900: "fas",
11591
+ 400: "far",
11592
+ normal: "far",
11593
+ 300: "fal"
11594
+ },
11595
+ "Font Awesome 5 Brands": {
11596
+ 400: "fab",
11597
+ normal: "fab"
11598
+ },
11599
+ "Font Awesome 5 Duotone": {
11600
+ 900: "fad"
11601
+ }
11602
+ };
11603
+ var NAMESPACE_IDENTIFIER = "___FONT_AWESOME___";
11604
+ var UNITS_IN_GRID = 16;
11605
+ var DEFAULT_CSS_PREFIX = "fa";
11606
+ var DEFAULT_REPLACEMENT_CLASS = "svg-inline--fa";
11607
+ var DATA_FA_I2SVG = "data-fa-i2svg";
11608
+ var DATA_FA_PSEUDO_ELEMENT = "data-fa-pseudo-element";
11609
+ var DATA_FA_PSEUDO_ELEMENT_PENDING = "data-fa-pseudo-element-pending";
11610
+ var DATA_PREFIX = "data-prefix";
11611
+ var DATA_ICON = "data-icon";
11612
+ var HTML_CLASS_I2SVG_BASE_CLASS = "fontawesome-i2svg";
11613
+ var MUTATION_APPROACH_ASYNC = "async";
11614
+ var TAGNAMES_TO_SKIP_FOR_PSEUDOELEMENTS = ["HTML", "HEAD", "STYLE", "SCRIPT"];
11615
+ var PRODUCTION = (() => {
11616
+ try {
11617
+ return process.env.NODE_ENV === "production";
11618
+ } catch (e$$1) {
11619
+ return false;
11620
+ }
11621
+ })();
11622
+ function familyProxy(obj) {
11623
+ return new Proxy(obj, {
11624
+ get(target, prop) {
11625
+ return prop in target ? target[prop] : target[s];
11626
+ }
11627
+ });
11628
+ }
11629
+ var _PREFIX_TO_STYLE = _objectSpread2({}, S);
11630
+ _PREFIX_TO_STYLE[s] = _objectSpread2(_objectSpread2(_objectSpread2(_objectSpread2({}, {
11631
+ "fa-duotone": "duotone"
11632
+ }), S[s]), St["kit"]), St["kit-duotone"]);
11633
+ var PREFIX_TO_STYLE = familyProxy(_PREFIX_TO_STYLE);
11634
+ var _STYLE_TO_PREFIX = _objectSpread2({}, xt);
11635
+ _STYLE_TO_PREFIX[s] = _objectSpread2(_objectSpread2(_objectSpread2(_objectSpread2({}, {
11636
+ duotone: "fad"
11637
+ }), _STYLE_TO_PREFIX[s]), Et["kit"]), Et["kit-duotone"]);
11638
+ var STYLE_TO_PREFIX = familyProxy(_STYLE_TO_PREFIX);
11639
+ var _PREFIX_TO_LONG_STYLE = _objectSpread2({}, ga);
11640
+ _PREFIX_TO_LONG_STYLE[s] = _objectSpread2(_objectSpread2({}, _PREFIX_TO_LONG_STYLE[s]), Wt["kit"]);
11641
+ var PREFIX_TO_LONG_STYLE = familyProxy(_PREFIX_TO_LONG_STYLE);
11642
+ var _LONG_STYLE_TO_PREFIX = _objectSpread2({}, ua);
11643
+ _LONG_STYLE_TO_PREFIX[s] = _objectSpread2(_objectSpread2({}, _LONG_STYLE_TO_PREFIX[s]), Ct["kit"]);
11644
+ familyProxy(_LONG_STYLE_TO_PREFIX);
11645
+ var ICON_SELECTION_SYNTAX_PATTERN = p;
11646
+ var LAYERS_TEXT_CLASSNAME = "fa-layers-text";
11647
+ var FONT_FAMILY_PATTERN = g;
11648
+ var _FONT_WEIGHT_TO_PREFIX = _objectSpread2({}, G);
11649
+ familyProxy(_FONT_WEIGHT_TO_PREFIX);
11650
+ var ATTRIBUTES_WATCHED_FOR_MUTATION = ["class", "data-prefix", "data-icon", "data-fa-transform", "data-fa-mask"];
11651
+ var DUOTONE_CLASSES = A;
11652
+ var RESERVED_CLASSES = [...At, ...ma];
11653
+ var initial = WINDOW.FontAwesomeConfig || {};
11654
+ function getAttrConfig(attr) {
11655
+ var element = DOCUMENT.querySelector("script[" + attr + "]");
11656
+ if (element) {
11657
+ return element.getAttribute(attr);
11658
+ }
11659
+ }
11660
+ function coerce(val) {
11661
+ if (val === "") return true;
11662
+ if (val === "false") return false;
11663
+ if (val === "true") return true;
11664
+ return val;
11665
+ }
11666
+ if (DOCUMENT && typeof DOCUMENT.querySelector === "function") {
11667
+ 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"]];
11668
+ attrs.forEach((_ref) => {
11669
+ let [attr, key] = _ref;
11670
+ const val = coerce(getAttrConfig(attr));
11671
+ if (val !== void 0 && val !== null) {
11672
+ initial[key] = val;
11673
+ }
11674
+ });
11675
+ }
11676
+ var _default = {
11677
+ styleDefault: "solid",
11678
+ familyDefault: s,
11679
+ cssPrefix: DEFAULT_CSS_PREFIX,
11680
+ replacementClass: DEFAULT_REPLACEMENT_CLASS,
11681
+ autoReplaceSvg: true,
11682
+ autoAddCss: true,
11683
+ autoA11y: true,
11684
+ searchPseudoElements: false,
11685
+ observeMutations: true,
11686
+ mutateApproach: "async",
11687
+ keepOriginalSource: true,
11688
+ measurePerformance: false,
11689
+ showMissingIcons: true
11690
+ };
11691
+ if (initial.familyPrefix) {
11692
+ initial.cssPrefix = initial.familyPrefix;
11693
+ }
11694
+ var _config = _objectSpread2(_objectSpread2({}, _default), initial);
11695
+ if (!_config.autoReplaceSvg) _config.observeMutations = false;
11696
+ var config = {};
11697
+ Object.keys(_default).forEach((key) => {
11698
+ Object.defineProperty(config, key, {
11699
+ enumerable: true,
11700
+ set: function(val) {
11701
+ _config[key] = val;
11702
+ _onChangeCb.forEach((cb) => cb(config));
11703
+ },
11704
+ get: function() {
11705
+ return _config[key];
11706
+ }
11707
+ });
11708
+ });
11709
+ Object.defineProperty(config, "familyPrefix", {
11710
+ enumerable: true,
11711
+ set: function(val) {
11712
+ _config.cssPrefix = val;
11713
+ _onChangeCb.forEach((cb) => cb(config));
11714
+ },
11715
+ get: function() {
11716
+ return _config.cssPrefix;
11717
+ }
11718
+ });
11719
+ WINDOW.FontAwesomeConfig = config;
11720
+ var _onChangeCb = [];
11721
+ function onChange(cb) {
11722
+ _onChangeCb.push(cb);
11723
+ return () => {
11724
+ _onChangeCb.splice(_onChangeCb.indexOf(cb), 1);
11725
+ };
11726
+ }
11727
+ var d$2 = UNITS_IN_GRID;
11728
+ var meaninglessTransform = {
11729
+ size: 16,
11730
+ x: 0,
11731
+ y: 0,
11732
+ rotate: 0,
11733
+ flipX: false,
11734
+ flipY: false
11735
+ };
11736
+ function insertCss(css2) {
11737
+ if (!css2 || !IS_DOM) {
11738
+ return;
11739
+ }
11740
+ const style = DOCUMENT.createElement("style");
11741
+ style.setAttribute("type", "text/css");
11742
+ style.innerHTML = css2;
11743
+ const headChildren = DOCUMENT.head.childNodes;
11744
+ let beforeChild = null;
11745
+ for (let i = headChildren.length - 1; i > -1; i--) {
11746
+ const child = headChildren[i];
11747
+ const tagName = (child.tagName || "").toUpperCase();
11748
+ if (["STYLE", "LINK"].indexOf(tagName) > -1) {
11749
+ beforeChild = child;
11750
+ }
11751
+ }
11752
+ DOCUMENT.head.insertBefore(style, beforeChild);
11753
+ return css2;
11754
+ }
11755
+ var idPool = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
11756
+ function nextUniqueId() {
11757
+ let size4 = 12;
11758
+ let id = "";
11759
+ while (size4-- > 0) {
11760
+ id += idPool[Math.random() * 62 | 0];
11761
+ }
11762
+ return id;
11763
+ }
11764
+ function toArray(obj) {
11765
+ const array = [];
11766
+ for (let i = (obj || []).length >>> 0; i--; ) {
11767
+ array[i] = obj[i];
11768
+ }
11769
+ return array;
11770
+ }
11771
+ function classArray(node) {
11772
+ if (node.classList) {
11773
+ return toArray(node.classList);
11774
+ } else {
11775
+ return (node.getAttribute("class") || "").split(" ").filter((i) => i);
11776
+ }
11777
+ }
11778
+ function htmlEscape(str) {
11779
+ return "".concat(str).replace(/&/g, "&amp;").replace(/"/g, "&quot;").replace(/'/g, "&#39;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
11780
+ }
11781
+ function joinAttributes(attributes) {
11782
+ return Object.keys(attributes || {}).reduce((acc, attributeName) => {
11783
+ return acc + "".concat(attributeName, '="').concat(htmlEscape(attributes[attributeName]), '" ');
11784
+ }, "").trim();
11785
+ }
11786
+ function joinStyles(styles2) {
11787
+ return Object.keys(styles2 || {}).reduce((acc, styleName) => {
11788
+ return acc + "".concat(styleName, ": ").concat(styles2[styleName].trim(), ";");
11789
+ }, "");
11790
+ }
11791
+ function transformIsMeaningful(transform) {
11792
+ return transform.size !== meaninglessTransform.size || transform.x !== meaninglessTransform.x || transform.y !== meaninglessTransform.y || transform.rotate !== meaninglessTransform.rotate || transform.flipX || transform.flipY;
11793
+ }
11794
+ function transformForSvg(_ref) {
11795
+ let {
11796
+ transform,
11797
+ containerWidth,
11798
+ iconWidth
11799
+ } = _ref;
11800
+ const outer = {
11801
+ transform: "translate(".concat(containerWidth / 2, " 256)")
11802
+ };
11803
+ const innerTranslate = "translate(".concat(transform.x * 32, ", ").concat(transform.y * 32, ") ");
11804
+ const innerScale = "scale(".concat(transform.size / 16 * (transform.flipX ? -1 : 1), ", ").concat(transform.size / 16 * (transform.flipY ? -1 : 1), ") ");
11805
+ const innerRotate = "rotate(".concat(transform.rotate, " 0 0)");
11806
+ const inner = {
11807
+ transform: "".concat(innerTranslate, " ").concat(innerScale, " ").concat(innerRotate)
11808
+ };
11809
+ const path = {
11810
+ transform: "translate(".concat(iconWidth / 2 * -1, " -256)")
11811
+ };
11812
+ return {
11813
+ outer,
11814
+ inner,
11815
+ path
11816
+ };
11817
+ }
11818
+ function transformForCss(_ref2) {
11819
+ let {
11820
+ transform,
11821
+ width = UNITS_IN_GRID,
11822
+ height = UNITS_IN_GRID,
11823
+ startCentered = false
11824
+ } = _ref2;
11825
+ let val = "";
11826
+ if (startCentered && IS_IE) {
11827
+ val += "translate(".concat(transform.x / d$2 - width / 2, "em, ").concat(transform.y / d$2 - height / 2, "em) ");
11828
+ } else if (startCentered) {
11829
+ val += "translate(calc(-50% + ".concat(transform.x / d$2, "em), calc(-50% + ").concat(transform.y / d$2, "em)) ");
11830
+ } else {
11831
+ val += "translate(".concat(transform.x / d$2, "em, ").concat(transform.y / d$2, "em) ");
11832
+ }
11833
+ val += "scale(".concat(transform.size / d$2 * (transform.flipX ? -1 : 1), ", ").concat(transform.size / d$2 * (transform.flipY ? -1 : 1), ") ");
11834
+ val += "rotate(".concat(transform.rotate, "deg) ");
11835
+ return val;
11836
+ }
11837
+ 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}';
11838
+ function css() {
11839
+ const dcp = DEFAULT_CSS_PREFIX;
11840
+ const drc = DEFAULT_REPLACEMENT_CLASS;
11841
+ const fp = config.cssPrefix;
11842
+ const rc = config.replacementClass;
11843
+ let s2 = baseStyles;
11844
+ if (fp !== dcp || rc !== drc) {
11845
+ const dPatt = new RegExp("\\.".concat(dcp, "\\-"), "g");
11846
+ const customPropPatt = new RegExp("\\--".concat(dcp, "\\-"), "g");
11847
+ const rPatt = new RegExp("\\.".concat(drc), "g");
11848
+ s2 = s2.replace(dPatt, ".".concat(fp, "-")).replace(customPropPatt, "--".concat(fp, "-")).replace(rPatt, ".".concat(rc));
11849
+ }
11850
+ return s2;
11851
+ }
11852
+ var _cssInserted = false;
11853
+ function ensureCss() {
11854
+ if (config.autoAddCss && !_cssInserted) {
11855
+ insertCss(css());
11856
+ _cssInserted = true;
11857
+ }
11858
+ }
11859
+ var InjectCSS = {
11860
+ mixout() {
11861
+ return {
11862
+ dom: {
11863
+ css,
11864
+ insertCss: ensureCss
11865
+ }
11866
+ };
11867
+ },
11868
+ hooks() {
11869
+ return {
11870
+ beforeDOMElementCreation() {
11871
+ ensureCss();
11872
+ },
11873
+ beforeI2svg() {
11874
+ ensureCss();
11875
+ }
11876
+ };
11877
+ }
11878
+ };
11879
+ var w = WINDOW || {};
11880
+ if (!w[NAMESPACE_IDENTIFIER]) w[NAMESPACE_IDENTIFIER] = {};
11881
+ if (!w[NAMESPACE_IDENTIFIER].styles) w[NAMESPACE_IDENTIFIER].styles = {};
11882
+ if (!w[NAMESPACE_IDENTIFIER].hooks) w[NAMESPACE_IDENTIFIER].hooks = {};
11883
+ if (!w[NAMESPACE_IDENTIFIER].shims) w[NAMESPACE_IDENTIFIER].shims = [];
11884
+ var namespace = w[NAMESPACE_IDENTIFIER];
11885
+ var functions = [];
11886
+ var listener = function() {
11887
+ DOCUMENT.removeEventListener("DOMContentLoaded", listener);
11888
+ loaded = 1;
11889
+ functions.map((fn) => fn());
11890
+ };
11891
+ var loaded = false;
11892
+ if (IS_DOM) {
11893
+ loaded = (DOCUMENT.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(DOCUMENT.readyState);
11894
+ if (!loaded) DOCUMENT.addEventListener("DOMContentLoaded", listener);
11895
+ }
11896
+ function domready(fn) {
11897
+ if (!IS_DOM) return;
11898
+ loaded ? setTimeout(fn, 0) : functions.push(fn);
11899
+ }
11900
+ function toHtml(abstractNodes) {
11901
+ const {
11902
+ tag,
11903
+ attributes = {},
11904
+ children = []
11905
+ } = abstractNodes;
11906
+ if (typeof abstractNodes === "string") {
11907
+ return htmlEscape(abstractNodes);
11908
+ } else {
11909
+ return "<".concat(tag, " ").concat(joinAttributes(attributes), ">").concat(children.map(toHtml).join(""), "</").concat(tag, ">");
11910
+ }
11911
+ }
11912
+ function iconFromMapping(mapping, prefix, iconName) {
11913
+ if (mapping && mapping[prefix] && mapping[prefix][iconName]) {
11914
+ return {
11915
+ prefix,
11916
+ iconName,
11917
+ icon: mapping[prefix][iconName]
11918
+ };
11919
+ }
11920
+ }
11921
+ var reduce = function fastReduceObject(subject, fn, initialValue, thisContext) {
11922
+ var keys = Object.keys(subject), length = keys.length, iterator = fn, i, key, result;
11923
+ if (initialValue === void 0) {
11924
+ i = 1;
11925
+ result = subject[keys[0]];
11926
+ } else {
11927
+ i = 0;
11928
+ result = initialValue;
11929
+ }
11930
+ for (; i < length; i++) {
11931
+ key = keys[i];
11932
+ result = iterator(result, subject[key], key, subject);
11933
+ }
11934
+ return result;
11935
+ };
11936
+ function ucs2decode(string) {
11937
+ const output = [];
11938
+ let counter2 = 0;
11939
+ const length = string.length;
11940
+ while (counter2 < length) {
11941
+ const value = string.charCodeAt(counter2++);
11942
+ if (value >= 55296 && value <= 56319 && counter2 < length) {
11943
+ const extra = string.charCodeAt(counter2++);
11944
+ if ((extra & 64512) == 56320) {
11945
+ output.push(((value & 1023) << 10) + (extra & 1023) + 65536);
11946
+ } else {
11947
+ output.push(value);
11948
+ counter2--;
11949
+ }
11950
+ } else {
11951
+ output.push(value);
11952
+ }
11953
+ }
11954
+ return output;
11955
+ }
11956
+ function toHex(unicode) {
11957
+ const decoded = ucs2decode(unicode);
11958
+ return decoded.length === 1 ? decoded[0].toString(16) : null;
11959
+ }
11960
+ function codePointAt(string, index2) {
11961
+ const size4 = string.length;
11962
+ let first = string.charCodeAt(index2);
11963
+ let second;
11964
+ if (first >= 55296 && first <= 56319 && size4 > index2 + 1) {
11965
+ second = string.charCodeAt(index2 + 1);
11966
+ if (second >= 56320 && second <= 57343) {
11967
+ return (first - 55296) * 1024 + second - 56320 + 65536;
11968
+ }
11969
+ }
11970
+ return first;
11971
+ }
11972
+ function normalizeIcons(icons) {
11973
+ return Object.keys(icons).reduce((acc, iconName) => {
11974
+ const icon2 = icons[iconName];
11975
+ const expanded = !!icon2.icon;
11976
+ if (expanded) {
11977
+ acc[icon2.iconName] = icon2.icon;
11978
+ } else {
11979
+ acc[iconName] = icon2;
11980
+ }
11981
+ return acc;
11982
+ }, {});
11983
+ }
11984
+ function defineIcons(prefix, icons) {
11985
+ let params = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
11986
+ const {
11987
+ skipHooks = false
11988
+ } = params;
11989
+ const normalized = normalizeIcons(icons);
11990
+ if (typeof namespace.hooks.addPack === "function" && !skipHooks) {
11991
+ namespace.hooks.addPack(prefix, normalizeIcons(icons));
11992
+ } else {
11993
+ namespace.styles[prefix] = _objectSpread2(_objectSpread2({}, namespace.styles[prefix] || {}), normalized);
11994
+ }
11995
+ if (prefix === "fas") {
11996
+ defineIcons("fa", icons);
11997
+ }
11998
+ }
11999
+ var {
12000
+ styles,
12001
+ shims
12002
+ } = namespace;
12003
+ var FAMILY_NAMES = Object.keys(PREFIX_TO_LONG_STYLE);
12004
+ var PREFIXES_FOR_FAMILY = FAMILY_NAMES.reduce((acc, familyId) => {
12005
+ acc[familyId] = Object.keys(PREFIX_TO_LONG_STYLE[familyId]);
12006
+ return acc;
12007
+ }, {});
12008
+ var _defaultUsablePrefix = null;
12009
+ var _byUnicode = {};
12010
+ var _byLigature = {};
12011
+ var _byOldName = {};
12012
+ var _byOldUnicode = {};
12013
+ var _byAlias = {};
12014
+ function isReserved(name) {
12015
+ return ~RESERVED_CLASSES.indexOf(name);
12016
+ }
12017
+ function getIconName(cssPrefix, cls) {
12018
+ const parts = cls.split("-");
12019
+ const prefix = parts[0];
12020
+ const iconName = parts.slice(1).join("-");
12021
+ if (prefix === cssPrefix && iconName !== "" && !isReserved(iconName)) {
12022
+ return iconName;
12023
+ } else {
12024
+ return null;
12025
+ }
12026
+ }
12027
+ var build = () => {
12028
+ const lookup = (reducer) => {
12029
+ return reduce(styles, (o$$1, style, prefix) => {
12030
+ o$$1[prefix] = reduce(style, reducer, {});
12031
+ return o$$1;
12032
+ }, {});
12033
+ };
12034
+ _byUnicode = lookup((acc, icon2, iconName) => {
12035
+ if (icon2[3]) {
12036
+ acc[icon2[3]] = iconName;
12037
+ }
12038
+ if (icon2[2]) {
12039
+ const aliases = icon2[2].filter((a$$1) => {
12040
+ return typeof a$$1 === "number";
12041
+ });
12042
+ aliases.forEach((alias) => {
12043
+ acc[alias.toString(16)] = iconName;
12044
+ });
12045
+ }
12046
+ return acc;
12047
+ });
12048
+ _byLigature = lookup((acc, icon2, iconName) => {
12049
+ acc[iconName] = iconName;
12050
+ if (icon2[2]) {
12051
+ const aliases = icon2[2].filter((a$$1) => {
12052
+ return typeof a$$1 === "string";
12053
+ });
12054
+ aliases.forEach((alias) => {
12055
+ acc[alias] = iconName;
12056
+ });
12057
+ }
12058
+ return acc;
12059
+ });
12060
+ _byAlias = lookup((acc, icon2, iconName) => {
12061
+ const aliases = icon2[2];
12062
+ acc[iconName] = iconName;
12063
+ aliases.forEach((alias) => {
12064
+ acc[alias] = iconName;
12065
+ });
12066
+ return acc;
12067
+ });
12068
+ const hasRegular = "far" in styles || config.autoFetchSvg;
12069
+ const shimLookups = reduce(shims, (acc, shim) => {
12070
+ const maybeNameMaybeUnicode = shim[0];
12071
+ let prefix = shim[1];
12072
+ const iconName = shim[2];
12073
+ if (prefix === "far" && !hasRegular) {
12074
+ prefix = "fas";
12075
+ }
12076
+ if (typeof maybeNameMaybeUnicode === "string") {
12077
+ acc.names[maybeNameMaybeUnicode] = {
12078
+ prefix,
12079
+ iconName
12080
+ };
12081
+ }
12082
+ if (typeof maybeNameMaybeUnicode === "number") {
12083
+ acc.unicodes[maybeNameMaybeUnicode.toString(16)] = {
12084
+ prefix,
12085
+ iconName
12086
+ };
12087
+ }
12088
+ return acc;
12089
+ }, {
12090
+ names: {},
12091
+ unicodes: {}
12092
+ });
12093
+ _byOldName = shimLookups.names;
12094
+ _byOldUnicode = shimLookups.unicodes;
12095
+ _defaultUsablePrefix = getCanonicalPrefix(config.styleDefault, {
12096
+ family: config.familyDefault
12097
+ });
12098
+ };
12099
+ onChange((c$$1) => {
12100
+ _defaultUsablePrefix = getCanonicalPrefix(c$$1.styleDefault, {
12101
+ family: config.familyDefault
12102
+ });
12103
+ });
12104
+ build();
12105
+ function byUnicode(prefix, unicode) {
12106
+ return (_byUnicode[prefix] || {})[unicode];
12107
+ }
12108
+ function byLigature(prefix, ligature) {
12109
+ return (_byLigature[prefix] || {})[ligature];
12110
+ }
12111
+ function byAlias(prefix, alias) {
12112
+ return (_byAlias[prefix] || {})[alias];
12113
+ }
12114
+ function byOldName(name) {
12115
+ return _byOldName[name] || {
12116
+ prefix: null,
12117
+ iconName: null
12118
+ };
12119
+ }
12120
+ function byOldUnicode(unicode) {
12121
+ const oldUnicode = _byOldUnicode[unicode];
12122
+ const newUnicode = byUnicode("fas", unicode);
12123
+ return oldUnicode || (newUnicode ? {
12124
+ prefix: "fas",
12125
+ iconName: newUnicode
12126
+ } : null) || {
12127
+ prefix: null,
12128
+ iconName: null
12129
+ };
12130
+ }
12131
+ function getDefaultUsablePrefix() {
12132
+ return _defaultUsablePrefix;
12133
+ }
12134
+ var emptyCanonicalIcon = () => {
12135
+ return {
12136
+ prefix: null,
12137
+ iconName: null,
12138
+ rest: []
12139
+ };
12140
+ };
12141
+ function getFamilyId(values) {
12142
+ let family = s;
12143
+ const famProps = FAMILY_NAMES.reduce((acc, familyId) => {
12144
+ acc[familyId] = "".concat(config.cssPrefix, "-").concat(familyId);
12145
+ return acc;
12146
+ }, {});
12147
+ L.forEach((familyId) => {
12148
+ if (values.includes(famProps[familyId]) || values.some((v$$1) => PREFIXES_FOR_FAMILY[familyId].includes(v$$1))) {
12149
+ family = familyId;
12150
+ }
12151
+ });
12152
+ return family;
12153
+ }
12154
+ function getCanonicalPrefix(styleOrPrefix) {
12155
+ let params = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
12156
+ const {
12157
+ family = s
12158
+ } = params;
12159
+ const style = PREFIX_TO_STYLE[family][styleOrPrefix];
12160
+ if (family === t && !styleOrPrefix) {
12161
+ return "fad";
12162
+ }
12163
+ const prefix = STYLE_TO_PREFIX[family][styleOrPrefix] || STYLE_TO_PREFIX[family][style];
12164
+ const defined = styleOrPrefix in namespace.styles ? styleOrPrefix : null;
12165
+ const result = prefix || defined || null;
12166
+ return result;
12167
+ }
12168
+ function moveNonFaClassesToRest(classNames) {
12169
+ let rest = [];
12170
+ let iconName = null;
12171
+ classNames.forEach((cls) => {
12172
+ const result = getIconName(config.cssPrefix, cls);
12173
+ if (result) {
12174
+ iconName = result;
12175
+ } else if (cls) {
12176
+ rest.push(cls);
12177
+ }
12178
+ });
12179
+ return {
12180
+ iconName,
12181
+ rest
12182
+ };
12183
+ }
12184
+ function sortedUniqueValues(arr) {
12185
+ return arr.sort().filter((value, index2, arr2) => {
12186
+ return arr2.indexOf(value) === index2;
12187
+ });
12188
+ }
12189
+ function getCanonicalIcon(values) {
12190
+ let params = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
12191
+ const {
12192
+ skipLookups = false
12193
+ } = params;
12194
+ let givenPrefix = null;
12195
+ const faCombinedClasses = Ia.concat(bt$1);
12196
+ const faStyleOrFamilyClasses = sortedUniqueValues(values.filter((cls) => faCombinedClasses.includes(cls)));
12197
+ const nonStyleOrFamilyClasses = sortedUniqueValues(values.filter((cls) => !Ia.includes(cls)));
12198
+ const faStyles = faStyleOrFamilyClasses.filter((cls) => {
12199
+ givenPrefix = cls;
12200
+ return !P.includes(cls);
12201
+ });
12202
+ const [styleFromValues = null] = faStyles;
12203
+ const family = getFamilyId(faStyleOrFamilyClasses);
12204
+ const canonical = _objectSpread2(_objectSpread2({}, moveNonFaClassesToRest(nonStyleOrFamilyClasses)), {}, {
12205
+ prefix: getCanonicalPrefix(styleFromValues, {
12206
+ family
12207
+ })
12208
+ });
12209
+ return _objectSpread2(_objectSpread2(_objectSpread2({}, canonical), getDefaultCanonicalPrefix({
12210
+ values,
12211
+ family,
12212
+ styles,
12213
+ config,
12214
+ canonical,
12215
+ givenPrefix
12216
+ })), applyShimAndAlias(skipLookups, givenPrefix, canonical));
12217
+ }
12218
+ function applyShimAndAlias(skipLookups, givenPrefix, canonical) {
12219
+ let {
12220
+ prefix,
12221
+ iconName
12222
+ } = canonical;
12223
+ if (skipLookups || !prefix || !iconName) {
12224
+ return {
12225
+ prefix,
12226
+ iconName
12227
+ };
12228
+ }
12229
+ const shim = givenPrefix === "fa" ? byOldName(iconName) : {};
12230
+ const aliasIconName = byAlias(prefix, iconName);
12231
+ iconName = shim.iconName || aliasIconName || iconName;
12232
+ prefix = shim.prefix || prefix;
12233
+ if (prefix === "far" && !styles["far"] && styles["fas"] && !config.autoFetchSvg) {
12234
+ prefix = "fas";
12235
+ }
12236
+ return {
12237
+ prefix,
12238
+ iconName
12239
+ };
12240
+ }
12241
+ var newCanonicalFamilies = L.filter((familyId) => {
12242
+ return familyId !== s || familyId !== t;
12243
+ });
12244
+ var newCanonicalStyles = Object.keys(ga).filter((key) => key !== s).map((key) => Object.keys(ga[key])).flat();
12245
+ function getDefaultCanonicalPrefix(prefixOptions) {
12246
+ const {
12247
+ values,
12248
+ family,
12249
+ canonical,
12250
+ givenPrefix = "",
12251
+ styles: styles2 = {},
12252
+ config: config$$1 = {}
12253
+ } = prefixOptions;
12254
+ const isDuotoneFamily = family === t;
12255
+ const valuesHasDuotone = values.includes("fa-duotone") || values.includes("fad");
12256
+ const defaultFamilyIsDuotone = config$$1.familyDefault === "duotone";
12257
+ const canonicalPrefixIsDuotone = canonical.prefix === "fad" || canonical.prefix === "fa-duotone";
12258
+ if (!isDuotoneFamily && (valuesHasDuotone || defaultFamilyIsDuotone || canonicalPrefixIsDuotone)) {
12259
+ canonical.prefix = "fad";
12260
+ }
12261
+ if (values.includes("fa-brands") || values.includes("fab")) {
12262
+ canonical.prefix = "fab";
12263
+ }
12264
+ if (!canonical.prefix && newCanonicalFamilies.includes(family)) {
12265
+ const validPrefix = Object.keys(styles2).find((key) => newCanonicalStyles.includes(key));
12266
+ if (validPrefix || config$$1.autoFetchSvg) {
12267
+ const defaultPrefix = pt.get(family).defaultShortPrefixId;
12268
+ canonical.prefix = defaultPrefix;
12269
+ canonical.iconName = byAlias(canonical.prefix, canonical.iconName) || canonical.iconName;
12270
+ }
12271
+ }
12272
+ if (canonical.prefix === "fa" || givenPrefix === "fa") {
12273
+ canonical.prefix = getDefaultUsablePrefix() || "fas";
12274
+ }
12275
+ return canonical;
12276
+ }
12277
+ var Library = class {
12278
+ constructor() {
12279
+ this.definitions = {};
12280
+ }
12281
+ add() {
12282
+ for (var _len = arguments.length, definitions = new Array(_len), _key = 0; _key < _len; _key++) {
12283
+ definitions[_key] = arguments[_key];
12284
+ }
12285
+ const additions = definitions.reduce(this._pullDefinitions, {});
12286
+ Object.keys(additions).forEach((key) => {
12287
+ this.definitions[key] = _objectSpread2(_objectSpread2({}, this.definitions[key] || {}), additions[key]);
12288
+ defineIcons(key, additions[key]);
12289
+ const longPrefix = PREFIX_TO_LONG_STYLE[s][key];
12290
+ if (longPrefix) defineIcons(longPrefix, additions[key]);
12291
+ build();
12292
+ });
12293
+ }
12294
+ reset() {
12295
+ this.definitions = {};
12296
+ }
12297
+ _pullDefinitions(additions, definition) {
12298
+ const normalized = definition.prefix && definition.iconName && definition.icon ? {
12299
+ 0: definition
12300
+ } : definition;
12301
+ Object.keys(normalized).map((key) => {
12302
+ const {
12303
+ prefix,
12304
+ iconName,
12305
+ icon: icon2
12306
+ } = normalized[key];
12307
+ const aliases = icon2[2];
12308
+ if (!additions[prefix]) additions[prefix] = {};
12309
+ if (aliases.length > 0) {
12310
+ aliases.forEach((alias) => {
12311
+ if (typeof alias === "string") {
12312
+ additions[prefix][alias] = icon2;
12313
+ }
12314
+ });
12315
+ }
12316
+ additions[prefix][iconName] = icon2;
12317
+ });
12318
+ return additions;
12319
+ }
12320
+ };
12321
+ var _plugins = [];
12322
+ var _hooks = {};
12323
+ var providers = {};
12324
+ var defaultProviderKeys = Object.keys(providers);
12325
+ function registerPlugins(nextPlugins, _ref) {
12326
+ let {
12327
+ mixoutsTo: obj
12328
+ } = _ref;
12329
+ _plugins = nextPlugins;
12330
+ _hooks = {};
12331
+ Object.keys(providers).forEach((k) => {
12332
+ if (defaultProviderKeys.indexOf(k) === -1) {
12333
+ delete providers[k];
12334
+ }
12335
+ });
12336
+ _plugins.forEach((plugin) => {
12337
+ const mixout = plugin.mixout ? plugin.mixout() : {};
12338
+ Object.keys(mixout).forEach((tk) => {
12339
+ if (typeof mixout[tk] === "function") {
12340
+ obj[tk] = mixout[tk];
12341
+ }
12342
+ if (typeof mixout[tk] === "object") {
12343
+ Object.keys(mixout[tk]).forEach((sk) => {
12344
+ if (!obj[tk]) {
12345
+ obj[tk] = {};
12346
+ }
12347
+ obj[tk][sk] = mixout[tk][sk];
12348
+ });
12349
+ }
12350
+ });
12351
+ if (plugin.hooks) {
12352
+ const hooks = plugin.hooks();
12353
+ Object.keys(hooks).forEach((hook) => {
12354
+ if (!_hooks[hook]) {
12355
+ _hooks[hook] = [];
12356
+ }
12357
+ _hooks[hook].push(hooks[hook]);
12358
+ });
12359
+ }
12360
+ if (plugin.provides) {
12361
+ plugin.provides(providers);
12362
+ }
12363
+ });
12364
+ return obj;
12365
+ }
12366
+ function chainHooks(hook, accumulator) {
12367
+ for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
12368
+ args[_key - 2] = arguments[_key];
12369
+ }
12370
+ const hookFns = _hooks[hook] || [];
12371
+ hookFns.forEach((hookFn) => {
12372
+ accumulator = hookFn.apply(null, [accumulator, ...args]);
12373
+ });
12374
+ return accumulator;
12375
+ }
12376
+ function callHooks(hook) {
12377
+ for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
12378
+ args[_key2 - 1] = arguments[_key2];
12379
+ }
12380
+ const hookFns = _hooks[hook] || [];
12381
+ hookFns.forEach((hookFn) => {
12382
+ hookFn.apply(null, args);
12383
+ });
12384
+ return void 0;
12385
+ }
12386
+ function callProvided() {
12387
+ const hook = arguments[0];
12388
+ const args = Array.prototype.slice.call(arguments, 1);
12389
+ return providers[hook] ? providers[hook].apply(null, args) : void 0;
12390
+ }
12391
+ function findIconDefinition(iconLookup) {
12392
+ if (iconLookup.prefix === "fa") {
12393
+ iconLookup.prefix = "fas";
12394
+ }
12395
+ let {
12396
+ iconName
12397
+ } = iconLookup;
12398
+ const prefix = iconLookup.prefix || getDefaultUsablePrefix();
12399
+ if (!iconName) return;
12400
+ iconName = byAlias(prefix, iconName) || iconName;
12401
+ return iconFromMapping(library.definitions, prefix, iconName) || iconFromMapping(namespace.styles, prefix, iconName);
12402
+ }
12403
+ var library = new Library();
12404
+ var noAuto = () => {
12405
+ config.autoReplaceSvg = false;
12406
+ config.observeMutations = false;
12407
+ callHooks("noAuto");
12408
+ };
12409
+ var dom = {
12410
+ i2svg: function() {
12411
+ let params = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
12412
+ if (IS_DOM) {
12413
+ callHooks("beforeI2svg", params);
12414
+ callProvided("pseudoElements2svg", params);
12415
+ return callProvided("i2svg", params);
12416
+ } else {
12417
+ return Promise.reject(new Error("Operation requires a DOM of some kind."));
12418
+ }
12419
+ },
12420
+ watch: function() {
12421
+ let params = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
12422
+ const {
12423
+ autoReplaceSvgRoot
12424
+ } = params;
12425
+ if (config.autoReplaceSvg === false) {
12426
+ config.autoReplaceSvg = true;
12427
+ }
12428
+ config.observeMutations = true;
12429
+ domready(() => {
12430
+ autoReplace({
12431
+ autoReplaceSvgRoot
12432
+ });
12433
+ callHooks("watch", params);
12434
+ });
12435
+ }
12436
+ };
12437
+ var parse2 = {
12438
+ icon: (icon2) => {
12439
+ if (icon2 === null) {
12440
+ return null;
12441
+ }
12442
+ if (typeof icon2 === "object" && icon2.prefix && icon2.iconName) {
12443
+ return {
12444
+ prefix: icon2.prefix,
12445
+ iconName: byAlias(icon2.prefix, icon2.iconName) || icon2.iconName
12446
+ };
12447
+ }
12448
+ if (Array.isArray(icon2) && icon2.length === 2) {
12449
+ const iconName = icon2[1].indexOf("fa-") === 0 ? icon2[1].slice(3) : icon2[1];
12450
+ const prefix = getCanonicalPrefix(icon2[0]);
12451
+ return {
12452
+ prefix,
12453
+ iconName: byAlias(prefix, iconName) || iconName
12454
+ };
12455
+ }
12456
+ if (typeof icon2 === "string" && (icon2.indexOf("".concat(config.cssPrefix, "-")) > -1 || icon2.match(ICON_SELECTION_SYNTAX_PATTERN))) {
12457
+ const canonicalIcon = getCanonicalIcon(icon2.split(" "), {
12458
+ skipLookups: true
12459
+ });
12460
+ return {
12461
+ prefix: canonicalIcon.prefix || getDefaultUsablePrefix(),
12462
+ iconName: byAlias(canonicalIcon.prefix, canonicalIcon.iconName) || canonicalIcon.iconName
12463
+ };
12464
+ }
12465
+ if (typeof icon2 === "string") {
12466
+ const prefix = getDefaultUsablePrefix();
12467
+ return {
12468
+ prefix,
12469
+ iconName: byAlias(prefix, icon2) || icon2
12470
+ };
12471
+ }
12472
+ }
12473
+ };
12474
+ var api = {
12475
+ noAuto,
12476
+ config,
12477
+ dom,
12478
+ parse: parse2,
12479
+ library,
12480
+ findIconDefinition,
12481
+ toHtml
12482
+ };
12483
+ var autoReplace = function() {
12484
+ let params = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
12485
+ const {
12486
+ autoReplaceSvgRoot = DOCUMENT
12487
+ } = params;
12488
+ if ((Object.keys(namespace.styles).length > 0 || config.autoFetchSvg) && IS_DOM && config.autoReplaceSvg) api.dom.i2svg({
12489
+ node: autoReplaceSvgRoot
12490
+ });
12491
+ };
12492
+ function domVariants(val, abstractCreator) {
12493
+ Object.defineProperty(val, "abstract", {
12494
+ get: abstractCreator
12495
+ });
12496
+ Object.defineProperty(val, "html", {
12497
+ get: function() {
12498
+ return val.abstract.map((a) => toHtml(a));
12499
+ }
12500
+ });
12501
+ Object.defineProperty(val, "node", {
12502
+ get: function() {
12503
+ if (!IS_DOM) return;
12504
+ const container = DOCUMENT.createElement("div");
12505
+ container.innerHTML = val.html;
12506
+ return container.children;
12507
+ }
12508
+ });
12509
+ return val;
12510
+ }
12511
+ function asIcon(_ref) {
12512
+ let {
12513
+ children,
12514
+ main,
12515
+ mask,
12516
+ attributes,
12517
+ styles: styles2,
12518
+ transform
12519
+ } = _ref;
12520
+ if (transformIsMeaningful(transform) && main.found && !mask.found) {
12521
+ const {
12522
+ width,
12523
+ height
12524
+ } = main;
12525
+ const offset4 = {
12526
+ x: width / height / 2,
12527
+ y: 0.5
12528
+ };
12529
+ attributes["style"] = joinStyles(_objectSpread2(_objectSpread2({}, styles2), {}, {
12530
+ "transform-origin": "".concat(offset4.x + transform.x / 16, "em ").concat(offset4.y + transform.y / 16, "em")
12531
+ }));
12532
+ }
12533
+ return [{
12534
+ tag: "svg",
12535
+ attributes,
12536
+ children
12537
+ }];
12538
+ }
12539
+ function asSymbol(_ref) {
12540
+ let {
12541
+ prefix,
12542
+ iconName,
12543
+ children,
12544
+ attributes,
12545
+ symbol
12546
+ } = _ref;
12547
+ const id = symbol === true ? "".concat(prefix, "-").concat(config.cssPrefix, "-").concat(iconName) : symbol;
12548
+ return [{
12549
+ tag: "svg",
12550
+ attributes: {
12551
+ style: "display: none;"
12552
+ },
12553
+ children: [{
12554
+ tag: "symbol",
12555
+ attributes: _objectSpread2(_objectSpread2({}, attributes), {}, {
12556
+ id
12557
+ }),
12558
+ children
12559
+ }]
12560
+ }];
12561
+ }
12562
+ function makeInlineSvgAbstract(params) {
12563
+ const {
12564
+ icons: {
12565
+ main,
12566
+ mask
12567
+ },
12568
+ prefix,
12569
+ iconName,
12570
+ transform,
12571
+ symbol,
12572
+ title,
12573
+ maskId,
12574
+ titleId,
12575
+ extra,
12576
+ watchable = false
12577
+ } = params;
12578
+ const {
12579
+ width,
12580
+ height
12581
+ } = mask.found ? mask : main;
12582
+ const isUploadedIcon = Lt.includes(prefix);
12583
+ 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(" ");
12584
+ let content = {
12585
+ children: [],
12586
+ attributes: _objectSpread2(_objectSpread2({}, extra.attributes), {}, {
12587
+ "data-prefix": prefix,
12588
+ "data-icon": iconName,
12589
+ "class": attrClass,
12590
+ "role": extra.attributes.role || "img",
12591
+ "xmlns": "http://www.w3.org/2000/svg",
12592
+ "viewBox": "0 0 ".concat(width, " ").concat(height)
12593
+ })
12594
+ };
12595
+ const uploadedIconWidthStyle = isUploadedIcon && !~extra.classes.indexOf("fa-fw") ? {
12596
+ width: "".concat(width / height * 16 * 0.0625, "em")
12597
+ } : {};
12598
+ if (watchable) {
12599
+ content.attributes[DATA_FA_I2SVG] = "";
12600
+ }
12601
+ if (title) {
12602
+ content.children.push({
12603
+ tag: "title",
12604
+ attributes: {
12605
+ id: content.attributes["aria-labelledby"] || "title-".concat(titleId || nextUniqueId())
12606
+ },
12607
+ children: [title]
12608
+ });
12609
+ delete content.attributes.title;
12610
+ }
12611
+ const args = _objectSpread2(_objectSpread2({}, content), {}, {
12612
+ prefix,
12613
+ iconName,
12614
+ main,
12615
+ mask,
12616
+ maskId,
12617
+ transform,
12618
+ symbol,
12619
+ styles: _objectSpread2(_objectSpread2({}, uploadedIconWidthStyle), extra.styles)
12620
+ });
12621
+ const {
12622
+ children,
12623
+ attributes
12624
+ } = mask.found && main.found ? callProvided("generateAbstractMask", args) || {
12625
+ children: [],
12626
+ attributes: {}
12627
+ } : callProvided("generateAbstractIcon", args) || {
12628
+ children: [],
12629
+ attributes: {}
12630
+ };
12631
+ args.children = children;
12632
+ args.attributes = attributes;
12633
+ if (symbol) {
12634
+ return asSymbol(args);
12635
+ } else {
12636
+ return asIcon(args);
12637
+ }
12638
+ }
12639
+ function makeLayersTextAbstract(params) {
12640
+ const {
12641
+ content,
12642
+ width,
12643
+ height,
12644
+ transform,
12645
+ title,
12646
+ extra,
12647
+ watchable = false
12648
+ } = params;
12649
+ const attributes = _objectSpread2(_objectSpread2(_objectSpread2({}, extra.attributes), title ? {
12650
+ "title": title
12651
+ } : {}), {}, {
12652
+ "class": extra.classes.join(" ")
12653
+ });
12654
+ if (watchable) {
12655
+ attributes[DATA_FA_I2SVG] = "";
12656
+ }
12657
+ const styles2 = _objectSpread2({}, extra.styles);
12658
+ if (transformIsMeaningful(transform)) {
12659
+ styles2["transform"] = transformForCss({
12660
+ transform,
12661
+ startCentered: true,
12662
+ width,
12663
+ height
12664
+ });
12665
+ styles2["-webkit-transform"] = styles2["transform"];
12666
+ }
12667
+ const styleString = joinStyles(styles2);
12668
+ if (styleString.length > 0) {
12669
+ attributes["style"] = styleString;
12670
+ }
12671
+ const val = [];
12672
+ val.push({
12673
+ tag: "span",
12674
+ attributes,
12675
+ children: [content]
12676
+ });
12677
+ if (title) {
12678
+ val.push({
12679
+ tag: "span",
12680
+ attributes: {
12681
+ class: "sr-only"
12682
+ },
12683
+ children: [title]
12684
+ });
12685
+ }
12686
+ return val;
12687
+ }
12688
+ function makeLayersCounterAbstract(params) {
12689
+ const {
12690
+ content,
12691
+ title,
12692
+ extra
12693
+ } = params;
12694
+ const attributes = _objectSpread2(_objectSpread2(_objectSpread2({}, extra.attributes), title ? {
12695
+ "title": title
12696
+ } : {}), {}, {
12697
+ "class": extra.classes.join(" ")
12698
+ });
12699
+ const styleString = joinStyles(extra.styles);
12700
+ if (styleString.length > 0) {
12701
+ attributes["style"] = styleString;
12702
+ }
12703
+ const val = [];
12704
+ val.push({
12705
+ tag: "span",
12706
+ attributes,
12707
+ children: [content]
12708
+ });
12709
+ if (title) {
12710
+ val.push({
12711
+ tag: "span",
12712
+ attributes: {
12713
+ class: "sr-only"
12714
+ },
12715
+ children: [title]
12716
+ });
12717
+ }
12718
+ return val;
12719
+ }
12720
+ var {
12721
+ styles: styles$1
12722
+ } = namespace;
12723
+ function asFoundIcon(icon2) {
12724
+ const width = icon2[0];
12725
+ const height = icon2[1];
12726
+ const [vectorData] = icon2.slice(4);
12727
+ let element = null;
12728
+ if (Array.isArray(vectorData)) {
12729
+ element = {
12730
+ tag: "g",
12731
+ attributes: {
12732
+ class: "".concat(config.cssPrefix, "-").concat(DUOTONE_CLASSES.GROUP)
12733
+ },
12734
+ children: [{
12735
+ tag: "path",
12736
+ attributes: {
12737
+ class: "".concat(config.cssPrefix, "-").concat(DUOTONE_CLASSES.SECONDARY),
12738
+ fill: "currentColor",
12739
+ d: vectorData[0]
12740
+ }
12741
+ }, {
12742
+ tag: "path",
12743
+ attributes: {
12744
+ class: "".concat(config.cssPrefix, "-").concat(DUOTONE_CLASSES.PRIMARY),
12745
+ fill: "currentColor",
12746
+ d: vectorData[1]
12747
+ }
12748
+ }]
12749
+ };
12750
+ } else {
12751
+ element = {
12752
+ tag: "path",
12753
+ attributes: {
12754
+ fill: "currentColor",
12755
+ d: vectorData
12756
+ }
12757
+ };
12758
+ }
12759
+ return {
12760
+ found: true,
12761
+ width,
12762
+ height,
12763
+ icon: element
12764
+ };
12765
+ }
12766
+ var missingIconResolutionMixin = {
12767
+ found: false,
12768
+ width: 512,
12769
+ height: 512
12770
+ };
12771
+ function maybeNotifyMissing(iconName, prefix) {
12772
+ if (!PRODUCTION && !config.showMissingIcons && iconName) {
12773
+ console.error('Icon with name "'.concat(iconName, '" and prefix "').concat(prefix, '" is missing.'));
12774
+ }
12775
+ }
12776
+ function findIcon(iconName, prefix) {
12777
+ let givenPrefix = prefix;
12778
+ if (prefix === "fa" && config.styleDefault !== null) {
12779
+ prefix = getDefaultUsablePrefix();
12780
+ }
12781
+ return new Promise((resolve, reject) => {
12782
+ if (givenPrefix === "fa") {
12783
+ const shim = byOldName(iconName) || {};
12784
+ iconName = shim.iconName || iconName;
12785
+ prefix = shim.prefix || prefix;
12786
+ }
12787
+ if (iconName && prefix && styles$1[prefix] && styles$1[prefix][iconName]) {
12788
+ const icon2 = styles$1[prefix][iconName];
12789
+ return resolve(asFoundIcon(icon2));
12790
+ }
12791
+ maybeNotifyMissing(iconName, prefix);
12792
+ resolve(_objectSpread2(_objectSpread2({}, missingIconResolutionMixin), {}, {
12793
+ icon: config.showMissingIcons && iconName ? callProvided("missingIconAbstract") || {} : {}
12794
+ }));
12795
+ });
12796
+ }
12797
+ var noop$1 = () => {
12798
+ };
12799
+ var p$2 = config.measurePerformance && PERFORMANCE && PERFORMANCE.mark && PERFORMANCE.measure ? PERFORMANCE : {
12800
+ mark: noop$1,
12801
+ measure: noop$1
12802
+ };
12803
+ var preamble = 'FA "6.7.2"';
12804
+ var begin = (name) => {
12805
+ p$2.mark("".concat(preamble, " ").concat(name, " begins"));
12806
+ return () => end(name);
12807
+ };
12808
+ var end = (name) => {
12809
+ p$2.mark("".concat(preamble, " ").concat(name, " ends"));
12810
+ p$2.measure("".concat(preamble, " ").concat(name), "".concat(preamble, " ").concat(name, " begins"), "".concat(preamble, " ").concat(name, " ends"));
12811
+ };
12812
+ var perf = {
12813
+ begin,
12814
+ end
12815
+ };
12816
+ var noop$2 = () => {
12817
+ };
12818
+ function isWatched(node) {
12819
+ const i2svg = node.getAttribute ? node.getAttribute(DATA_FA_I2SVG) : null;
12820
+ return typeof i2svg === "string";
12821
+ }
12822
+ function hasPrefixAndIcon(node) {
12823
+ const prefix = node.getAttribute ? node.getAttribute(DATA_PREFIX) : null;
12824
+ const icon2 = node.getAttribute ? node.getAttribute(DATA_ICON) : null;
12825
+ return prefix && icon2;
12826
+ }
12827
+ function hasBeenReplaced(node) {
12828
+ return node && node.classList && node.classList.contains && node.classList.contains(config.replacementClass);
12829
+ }
12830
+ function getMutator() {
12831
+ if (config.autoReplaceSvg === true) {
12832
+ return mutators.replace;
12833
+ }
12834
+ const mutator = mutators[config.autoReplaceSvg];
12835
+ return mutator || mutators.replace;
12836
+ }
12837
+ function createElementNS(tag) {
12838
+ return DOCUMENT.createElementNS("http://www.w3.org/2000/svg", tag);
12839
+ }
12840
+ function createElement16(tag) {
12841
+ return DOCUMENT.createElement(tag);
12842
+ }
12843
+ function convertSVG(abstractObj) {
12844
+ let params = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
12845
+ const {
12846
+ ceFn = abstractObj.tag === "svg" ? createElementNS : createElement16
12847
+ } = params;
12848
+ if (typeof abstractObj === "string") {
12849
+ return DOCUMENT.createTextNode(abstractObj);
12850
+ }
12851
+ const tag = ceFn(abstractObj.tag);
12852
+ Object.keys(abstractObj.attributes || []).forEach(function(key) {
12853
+ tag.setAttribute(key, abstractObj.attributes[key]);
12854
+ });
12855
+ const children = abstractObj.children || [];
12856
+ children.forEach(function(child) {
12857
+ tag.appendChild(convertSVG(child, {
12858
+ ceFn
12859
+ }));
12860
+ });
12861
+ return tag;
12862
+ }
12863
+ function nodeAsComment(node) {
12864
+ let comment = " ".concat(node.outerHTML, " ");
12865
+ comment = "".concat(comment, "Font Awesome fontawesome.com ");
12866
+ return comment;
12867
+ }
12868
+ var mutators = {
12869
+ replace: function(mutation) {
12870
+ const node = mutation[0];
12871
+ if (node.parentNode) {
12872
+ mutation[1].forEach((abstract) => {
12873
+ node.parentNode.insertBefore(convertSVG(abstract), node);
12874
+ });
12875
+ if (node.getAttribute(DATA_FA_I2SVG) === null && config.keepOriginalSource) {
12876
+ let comment = DOCUMENT.createComment(nodeAsComment(node));
12877
+ node.parentNode.replaceChild(comment, node);
12878
+ } else {
12879
+ node.remove();
12880
+ }
12881
+ }
12882
+ },
12883
+ nest: function(mutation) {
12884
+ const node = mutation[0];
12885
+ const abstract = mutation[1];
12886
+ if (~classArray(node).indexOf(config.replacementClass)) {
12887
+ return mutators.replace(mutation);
12888
+ }
12889
+ const forSvg = new RegExp("".concat(config.cssPrefix, "-.*"));
12890
+ delete abstract[0].attributes.id;
12891
+ if (abstract[0].attributes.class) {
12892
+ const splitClasses = abstract[0].attributes.class.split(" ").reduce((acc, cls) => {
12893
+ if (cls === config.replacementClass || cls.match(forSvg)) {
12894
+ acc.toSvg.push(cls);
12895
+ } else {
12896
+ acc.toNode.push(cls);
12897
+ }
12898
+ return acc;
12899
+ }, {
12900
+ toNode: [],
12901
+ toSvg: []
12902
+ });
12903
+ abstract[0].attributes.class = splitClasses.toSvg.join(" ");
12904
+ if (splitClasses.toNode.length === 0) {
12905
+ node.removeAttribute("class");
12906
+ } else {
12907
+ node.setAttribute("class", splitClasses.toNode.join(" "));
12908
+ }
12909
+ }
12910
+ const newInnerHTML = abstract.map((a) => toHtml(a)).join("\n");
12911
+ node.setAttribute(DATA_FA_I2SVG, "");
12912
+ node.innerHTML = newInnerHTML;
12913
+ }
12914
+ };
12915
+ function performOperationSync(op) {
12916
+ op();
12917
+ }
12918
+ function perform(mutations, callback) {
12919
+ const callbackFunction = typeof callback === "function" ? callback : noop$2;
12920
+ if (mutations.length === 0) {
12921
+ callbackFunction();
12922
+ } else {
12923
+ let frame = performOperationSync;
12924
+ if (config.mutateApproach === MUTATION_APPROACH_ASYNC) {
12925
+ frame = WINDOW.requestAnimationFrame || performOperationSync;
12926
+ }
12927
+ frame(() => {
12928
+ const mutator = getMutator();
12929
+ const mark = perf.begin("mutate");
12930
+ mutations.map(mutator);
12931
+ mark();
12932
+ callbackFunction();
12933
+ });
12934
+ }
12935
+ }
12936
+ var disabled = false;
12937
+ function disableObservation() {
12938
+ disabled = true;
12939
+ }
12940
+ function enableObservation() {
12941
+ disabled = false;
12942
+ }
12943
+ var mo = null;
12944
+ function observe(options) {
12945
+ if (!MUTATION_OBSERVER) {
12946
+ return;
12947
+ }
12948
+ if (!config.observeMutations) {
12949
+ return;
12950
+ }
12951
+ const {
12952
+ treeCallback = noop$2,
12953
+ nodeCallback = noop$2,
12954
+ pseudoElementsCallback = noop$2,
12955
+ observeMutationsRoot = DOCUMENT
12956
+ } = options;
12957
+ mo = new MUTATION_OBSERVER((objects) => {
12958
+ if (disabled) return;
12959
+ const defaultPrefix = getDefaultUsablePrefix();
12960
+ toArray(objects).forEach((mutationRecord) => {
12961
+ if (mutationRecord.type === "childList" && mutationRecord.addedNodes.length > 0 && !isWatched(mutationRecord.addedNodes[0])) {
12962
+ if (config.searchPseudoElements) {
12963
+ pseudoElementsCallback(mutationRecord.target);
12964
+ }
12965
+ treeCallback(mutationRecord.target);
12966
+ }
12967
+ if (mutationRecord.type === "attributes" && mutationRecord.target.parentNode && config.searchPseudoElements) {
12968
+ pseudoElementsCallback(mutationRecord.target.parentNode);
12969
+ }
12970
+ if (mutationRecord.type === "attributes" && isWatched(mutationRecord.target) && ~ATTRIBUTES_WATCHED_FOR_MUTATION.indexOf(mutationRecord.attributeName)) {
12971
+ if (mutationRecord.attributeName === "class" && hasPrefixAndIcon(mutationRecord.target)) {
12972
+ const {
12973
+ prefix,
12974
+ iconName
12975
+ } = getCanonicalIcon(classArray(mutationRecord.target));
12976
+ mutationRecord.target.setAttribute(DATA_PREFIX, prefix || defaultPrefix);
12977
+ if (iconName) mutationRecord.target.setAttribute(DATA_ICON, iconName);
12978
+ } else if (hasBeenReplaced(mutationRecord.target)) {
12979
+ nodeCallback(mutationRecord.target);
12980
+ }
12981
+ }
12982
+ });
12983
+ });
12984
+ if (!IS_DOM) return;
12985
+ mo.observe(observeMutationsRoot, {
12986
+ childList: true,
12987
+ attributes: true,
12988
+ characterData: true,
12989
+ subtree: true
12990
+ });
12991
+ }
12992
+ function disconnect() {
12993
+ if (!mo) return;
12994
+ mo.disconnect();
12995
+ }
12996
+ function styleParser(node) {
12997
+ const style = node.getAttribute("style");
12998
+ let val = [];
12999
+ if (style) {
13000
+ val = style.split(";").reduce((acc, style2) => {
13001
+ const styles2 = style2.split(":");
13002
+ const prop = styles2[0];
13003
+ const value = styles2.slice(1);
13004
+ if (prop && value.length > 0) {
13005
+ acc[prop] = value.join(":").trim();
13006
+ }
13007
+ return acc;
13008
+ }, {});
13009
+ }
13010
+ return val;
13011
+ }
13012
+ function classParser(node) {
13013
+ const existingPrefix = node.getAttribute("data-prefix");
13014
+ const existingIconName = node.getAttribute("data-icon");
13015
+ const innerText = node.innerText !== void 0 ? node.innerText.trim() : "";
13016
+ let val = getCanonicalIcon(classArray(node));
13017
+ if (!val.prefix) {
13018
+ val.prefix = getDefaultUsablePrefix();
13019
+ }
13020
+ if (existingPrefix && existingIconName) {
13021
+ val.prefix = existingPrefix;
13022
+ val.iconName = existingIconName;
13023
+ }
13024
+ if (val.iconName && val.prefix) {
13025
+ return val;
13026
+ }
13027
+ if (val.prefix && innerText.length > 0) {
13028
+ val.iconName = byLigature(val.prefix, node.innerText) || byUnicode(val.prefix, toHex(node.innerText));
13029
+ }
13030
+ if (!val.iconName && config.autoFetchSvg && node.firstChild && node.firstChild.nodeType === Node.TEXT_NODE) {
13031
+ val.iconName = node.firstChild.data;
13032
+ }
13033
+ return val;
13034
+ }
13035
+ function attributesParser(node) {
13036
+ const extraAttributes = toArray(node.attributes).reduce((acc, attr) => {
13037
+ if (acc.name !== "class" && acc.name !== "style") {
13038
+ acc[attr.name] = attr.value;
13039
+ }
13040
+ return acc;
13041
+ }, {});
13042
+ const title = node.getAttribute("title");
13043
+ const titleId = node.getAttribute("data-fa-title-id");
13044
+ if (config.autoA11y) {
13045
+ if (title) {
13046
+ extraAttributes["aria-labelledby"] = "".concat(config.replacementClass, "-title-").concat(titleId || nextUniqueId());
13047
+ } else {
13048
+ extraAttributes["aria-hidden"] = "true";
13049
+ extraAttributes["focusable"] = "false";
13050
+ }
13051
+ }
13052
+ return extraAttributes;
13053
+ }
13054
+ function blankMeta() {
13055
+ return {
13056
+ iconName: null,
13057
+ title: null,
13058
+ titleId: null,
13059
+ prefix: null,
13060
+ transform: meaninglessTransform,
13061
+ symbol: false,
13062
+ mask: {
13063
+ iconName: null,
13064
+ prefix: null,
13065
+ rest: []
13066
+ },
13067
+ maskId: null,
13068
+ extra: {
13069
+ classes: [],
13070
+ styles: {},
13071
+ attributes: {}
13072
+ }
13073
+ };
13074
+ }
13075
+ function parseMeta(node) {
13076
+ let parser = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {
13077
+ styleParser: true
13078
+ };
13079
+ const {
13080
+ iconName,
13081
+ prefix,
13082
+ rest: extraClasses
13083
+ } = classParser(node);
13084
+ const extraAttributes = attributesParser(node);
13085
+ const pluginMeta = chainHooks("parseNodeAttributes", {}, node);
13086
+ let extraStyles = parser.styleParser ? styleParser(node) : [];
13087
+ return _objectSpread2({
13088
+ iconName,
13089
+ title: node.getAttribute("title"),
13090
+ titleId: node.getAttribute("data-fa-title-id"),
13091
+ prefix,
13092
+ transform: meaninglessTransform,
13093
+ mask: {
13094
+ iconName: null,
13095
+ prefix: null,
13096
+ rest: []
13097
+ },
13098
+ maskId: null,
13099
+ symbol: false,
13100
+ extra: {
13101
+ classes: extraClasses,
13102
+ styles: extraStyles,
13103
+ attributes: extraAttributes
13104
+ }
13105
+ }, pluginMeta);
13106
+ }
13107
+ var {
13108
+ styles: styles$2
13109
+ } = namespace;
13110
+ function generateMutation(node) {
13111
+ const nodeMeta = config.autoReplaceSvg === "nest" ? parseMeta(node, {
13112
+ styleParser: false
13113
+ }) : parseMeta(node);
13114
+ if (~nodeMeta.extra.classes.indexOf(LAYERS_TEXT_CLASSNAME)) {
13115
+ return callProvided("generateLayersText", node, nodeMeta);
13116
+ } else {
13117
+ return callProvided("generateSvgReplacementMutation", node, nodeMeta);
13118
+ }
13119
+ }
13120
+ function getKnownPrefixes() {
13121
+ return [...Ft, ...Ia];
13122
+ }
13123
+ function onTree(root) {
13124
+ let callback = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
13125
+ if (!IS_DOM) return Promise.resolve();
13126
+ const htmlClassList = DOCUMENT.documentElement.classList;
13127
+ const hclAdd = (suffix) => htmlClassList.add("".concat(HTML_CLASS_I2SVG_BASE_CLASS, "-").concat(suffix));
13128
+ const hclRemove = (suffix) => htmlClassList.remove("".concat(HTML_CLASS_I2SVG_BASE_CLASS, "-").concat(suffix));
13129
+ const prefixes = config.autoFetchSvg ? getKnownPrefixes() : P.concat(Object.keys(styles$2));
13130
+ if (!prefixes.includes("fa")) {
13131
+ prefixes.push("fa");
13132
+ }
13133
+ 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(", ");
13134
+ if (prefixesDomQuery.length === 0) {
13135
+ return Promise.resolve();
13136
+ }
13137
+ let candidates = [];
13138
+ try {
13139
+ candidates = toArray(root.querySelectorAll(prefixesDomQuery));
13140
+ } catch (e$$1) {
13141
+ }
13142
+ if (candidates.length > 0) {
13143
+ hclAdd("pending");
13144
+ hclRemove("complete");
13145
+ } else {
13146
+ return Promise.resolve();
13147
+ }
13148
+ const mark = perf.begin("onTree");
13149
+ const mutations = candidates.reduce((acc, node) => {
13150
+ try {
13151
+ const mutation = generateMutation(node);
13152
+ if (mutation) {
13153
+ acc.push(mutation);
13154
+ }
13155
+ } catch (e$$1) {
13156
+ if (!PRODUCTION) {
13157
+ if (e$$1.name === "MissingIcon") {
13158
+ console.error(e$$1);
13159
+ }
13160
+ }
13161
+ }
13162
+ return acc;
13163
+ }, []);
13164
+ return new Promise((resolve, reject) => {
13165
+ Promise.all(mutations).then((resolvedMutations) => {
13166
+ perform(resolvedMutations, () => {
13167
+ hclAdd("active");
13168
+ hclAdd("complete");
13169
+ hclRemove("pending");
13170
+ if (typeof callback === "function") callback();
13171
+ mark();
13172
+ resolve();
13173
+ });
13174
+ }).catch((e$$1) => {
13175
+ mark();
13176
+ reject(e$$1);
13177
+ });
13178
+ });
13179
+ }
13180
+ function onNode(node) {
13181
+ let callback = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
13182
+ generateMutation(node).then((mutation) => {
13183
+ if (mutation) {
13184
+ perform([mutation], callback);
13185
+ }
13186
+ });
13187
+ }
13188
+ function resolveIcons(next) {
13189
+ return function(maybeIconDefinition) {
13190
+ let params = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
13191
+ const iconDefinition = (maybeIconDefinition || {}).icon ? maybeIconDefinition : findIconDefinition(maybeIconDefinition || {});
13192
+ let {
13193
+ mask
13194
+ } = params;
13195
+ if (mask) {
13196
+ mask = (mask || {}).icon ? mask : findIconDefinition(mask || {});
13197
+ }
13198
+ return next(iconDefinition, _objectSpread2(_objectSpread2({}, params), {}, {
13199
+ mask
13200
+ }));
13201
+ };
13202
+ }
13203
+ var render = function(iconDefinition) {
13204
+ let params = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
13205
+ const {
13206
+ transform = meaninglessTransform,
13207
+ symbol = false,
13208
+ mask = null,
13209
+ maskId = null,
13210
+ title = null,
13211
+ titleId = null,
13212
+ classes = [],
13213
+ attributes = {},
13214
+ styles: styles2 = {}
13215
+ } = params;
13216
+ if (!iconDefinition) return;
13217
+ const {
13218
+ prefix,
13219
+ iconName,
13220
+ icon: icon2
13221
+ } = iconDefinition;
13222
+ return domVariants(_objectSpread2({
13223
+ type: "icon"
13224
+ }, iconDefinition), () => {
13225
+ callHooks("beforeDOMElementCreation", {
13226
+ iconDefinition,
13227
+ params
13228
+ });
13229
+ if (config.autoA11y) {
13230
+ if (title) {
13231
+ attributes["aria-labelledby"] = "".concat(config.replacementClass, "-title-").concat(titleId || nextUniqueId());
13232
+ } else {
13233
+ attributes["aria-hidden"] = "true";
13234
+ attributes["focusable"] = "false";
13235
+ }
13236
+ }
13237
+ return makeInlineSvgAbstract({
13238
+ icons: {
13239
+ main: asFoundIcon(icon2),
13240
+ mask: mask ? asFoundIcon(mask.icon) : {
13241
+ found: false,
13242
+ width: null,
13243
+ height: null,
13244
+ icon: {}
13245
+ }
13246
+ },
13247
+ prefix,
13248
+ iconName,
13249
+ transform: _objectSpread2(_objectSpread2({}, meaninglessTransform), transform),
13250
+ symbol,
13251
+ title,
13252
+ maskId,
13253
+ titleId,
13254
+ extra: {
13255
+ attributes,
13256
+ styles: styles2,
13257
+ classes
13258
+ }
13259
+ });
13260
+ });
13261
+ };
13262
+ var ReplaceElements = {
13263
+ mixout() {
13264
+ return {
13265
+ icon: resolveIcons(render)
13266
+ };
13267
+ },
13268
+ hooks() {
13269
+ return {
13270
+ mutationObserverCallbacks(accumulator) {
13271
+ accumulator.treeCallback = onTree;
13272
+ accumulator.nodeCallback = onNode;
13273
+ return accumulator;
13274
+ }
13275
+ };
13276
+ },
13277
+ provides(providers$$1) {
13278
+ providers$$1.i2svg = function(params) {
13279
+ const {
13280
+ node = DOCUMENT,
13281
+ callback = () => {
13282
+ }
13283
+ } = params;
13284
+ return onTree(node, callback);
13285
+ };
13286
+ providers$$1.generateSvgReplacementMutation = function(node, nodeMeta) {
13287
+ const {
13288
+ iconName,
13289
+ title,
13290
+ titleId,
13291
+ prefix,
13292
+ transform,
13293
+ symbol,
13294
+ mask,
13295
+ maskId,
13296
+ extra
13297
+ } = nodeMeta;
13298
+ return new Promise((resolve, reject) => {
13299
+ Promise.all([findIcon(iconName, prefix), mask.iconName ? findIcon(mask.iconName, mask.prefix) : Promise.resolve({
13300
+ found: false,
13301
+ width: 512,
13302
+ height: 512,
13303
+ icon: {}
13304
+ })]).then((_ref) => {
13305
+ let [main, mask2] = _ref;
13306
+ resolve([node, makeInlineSvgAbstract({
13307
+ icons: {
13308
+ main,
13309
+ mask: mask2
13310
+ },
13311
+ prefix,
13312
+ iconName,
13313
+ transform,
13314
+ symbol,
13315
+ maskId,
13316
+ title,
13317
+ titleId,
13318
+ extra,
13319
+ watchable: true
13320
+ })]);
13321
+ }).catch(reject);
13322
+ });
13323
+ };
13324
+ providers$$1.generateAbstractIcon = function(_ref2) {
13325
+ let {
13326
+ children,
13327
+ attributes,
13328
+ main,
13329
+ transform,
13330
+ styles: styles2
13331
+ } = _ref2;
13332
+ const styleString = joinStyles(styles2);
13333
+ if (styleString.length > 0) {
13334
+ attributes["style"] = styleString;
13335
+ }
13336
+ let nextChild;
13337
+ if (transformIsMeaningful(transform)) {
13338
+ nextChild = callProvided("generateAbstractTransformGrouping", {
13339
+ main,
13340
+ transform,
13341
+ containerWidth: main.width,
13342
+ iconWidth: main.width
13343
+ });
13344
+ }
13345
+ children.push(nextChild || main.icon);
13346
+ return {
13347
+ children,
13348
+ attributes
13349
+ };
13350
+ };
13351
+ }
13352
+ };
13353
+ var Layers = {
13354
+ mixout() {
13355
+ return {
13356
+ layer(assembler) {
13357
+ let params = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
13358
+ const {
13359
+ classes = []
13360
+ } = params;
13361
+ return domVariants({
13362
+ type: "layer"
13363
+ }, () => {
13364
+ callHooks("beforeDOMElementCreation", {
13365
+ assembler,
13366
+ params
13367
+ });
13368
+ let children = [];
13369
+ assembler((args) => {
13370
+ Array.isArray(args) ? args.map((a) => {
13371
+ children = children.concat(a.abstract);
13372
+ }) : children = children.concat(args.abstract);
13373
+ });
13374
+ return [{
13375
+ tag: "span",
13376
+ attributes: {
13377
+ class: ["".concat(config.cssPrefix, "-layers"), ...classes].join(" ")
13378
+ },
13379
+ children
13380
+ }];
13381
+ });
13382
+ }
13383
+ };
13384
+ }
13385
+ };
13386
+ var LayersCounter = {
13387
+ mixout() {
13388
+ return {
13389
+ counter(content) {
13390
+ let params = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
13391
+ const {
13392
+ title = null,
13393
+ classes = [],
13394
+ attributes = {},
13395
+ styles: styles2 = {}
13396
+ } = params;
13397
+ return domVariants({
13398
+ type: "counter",
13399
+ content
13400
+ }, () => {
13401
+ callHooks("beforeDOMElementCreation", {
13402
+ content,
13403
+ params
13404
+ });
13405
+ return makeLayersCounterAbstract({
13406
+ content: content.toString(),
13407
+ title,
13408
+ extra: {
13409
+ attributes,
13410
+ styles: styles2,
13411
+ classes: ["".concat(config.cssPrefix, "-layers-counter"), ...classes]
13412
+ }
13413
+ });
13414
+ });
13415
+ }
13416
+ };
13417
+ }
13418
+ };
13419
+ var LayersText = {
13420
+ mixout() {
13421
+ return {
13422
+ text(content) {
13423
+ let params = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
13424
+ const {
13425
+ transform = meaninglessTransform,
13426
+ title = null,
13427
+ classes = [],
13428
+ attributes = {},
13429
+ styles: styles2 = {}
13430
+ } = params;
13431
+ return domVariants({
13432
+ type: "text",
13433
+ content
13434
+ }, () => {
13435
+ callHooks("beforeDOMElementCreation", {
13436
+ content,
13437
+ params
13438
+ });
13439
+ return makeLayersTextAbstract({
13440
+ content,
13441
+ transform: _objectSpread2(_objectSpread2({}, meaninglessTransform), transform),
13442
+ title,
13443
+ extra: {
13444
+ attributes,
13445
+ styles: styles2,
13446
+ classes: ["".concat(config.cssPrefix, "-layers-text"), ...classes]
13447
+ }
13448
+ });
13449
+ });
13450
+ }
13451
+ };
13452
+ },
13453
+ provides(providers$$1) {
13454
+ providers$$1.generateLayersText = function(node, nodeMeta) {
13455
+ const {
13456
+ title,
13457
+ transform,
13458
+ extra
13459
+ } = nodeMeta;
13460
+ let width = null;
13461
+ let height = null;
13462
+ if (IS_IE) {
13463
+ const computedFontSize = parseInt(getComputedStyle(node).fontSize, 10);
13464
+ const boundingClientRect = node.getBoundingClientRect();
13465
+ width = boundingClientRect.width / computedFontSize;
13466
+ height = boundingClientRect.height / computedFontSize;
13467
+ }
13468
+ if (config.autoA11y && !title) {
13469
+ extra.attributes["aria-hidden"] = "true";
13470
+ }
13471
+ return Promise.resolve([node, makeLayersTextAbstract({
13472
+ content: node.innerHTML,
13473
+ width,
13474
+ height,
13475
+ transform,
13476
+ title,
13477
+ extra,
13478
+ watchable: true
13479
+ })]);
13480
+ };
13481
+ }
13482
+ };
13483
+ var CLEAN_CONTENT_PATTERN = new RegExp('"', "ug");
13484
+ var SECONDARY_UNICODE_RANGE = [1105920, 1112319];
13485
+ var _FONT_FAMILY_WEIGHT_TO_PREFIX = _objectSpread2(_objectSpread2(_objectSpread2(_objectSpread2({}, {
13486
+ FontAwesome: {
13487
+ normal: "fas",
13488
+ 400: "fas"
13489
+ }
13490
+ }), lt), wa), Yt);
13491
+ var FONT_FAMILY_WEIGHT_TO_PREFIX = Object.keys(_FONT_FAMILY_WEIGHT_TO_PREFIX).reduce((acc, key) => {
13492
+ acc[key.toLowerCase()] = _FONT_FAMILY_WEIGHT_TO_PREFIX[key];
13493
+ return acc;
13494
+ }, {});
13495
+ var FONT_FAMILY_WEIGHT_FALLBACK = Object.keys(FONT_FAMILY_WEIGHT_TO_PREFIX).reduce((acc, fontFamily) => {
13496
+ const weights = FONT_FAMILY_WEIGHT_TO_PREFIX[fontFamily];
13497
+ acc[fontFamily] = weights[900] || [...Object.entries(weights)][0][1];
13498
+ return acc;
13499
+ }, {});
13500
+ function hexValueFromContent(content) {
13501
+ const cleaned = content.replace(CLEAN_CONTENT_PATTERN, "");
13502
+ const codePoint = codePointAt(cleaned, 0);
13503
+ const isPrependTen = codePoint >= SECONDARY_UNICODE_RANGE[0] && codePoint <= SECONDARY_UNICODE_RANGE[1];
13504
+ const isDoubled = cleaned.length === 2 ? cleaned[0] === cleaned[1] : false;
13505
+ return {
13506
+ value: isDoubled ? toHex(cleaned[0]) : toHex(cleaned),
13507
+ isSecondary: isPrependTen || isDoubled
13508
+ };
13509
+ }
13510
+ function getPrefix(fontFamily, fontWeight) {
13511
+ const fontFamilySanitized = fontFamily.replace(/^['"]|['"]$/g, "").toLowerCase();
13512
+ const fontWeightInteger = parseInt(fontWeight);
13513
+ const fontWeightSanitized = isNaN(fontWeightInteger) ? "normal" : fontWeightInteger;
13514
+ return (FONT_FAMILY_WEIGHT_TO_PREFIX[fontFamilySanitized] || {})[fontWeightSanitized] || FONT_FAMILY_WEIGHT_FALLBACK[fontFamilySanitized];
13515
+ }
13516
+ function replaceForPosition(node, position) {
13517
+ const pendingAttribute = "".concat(DATA_FA_PSEUDO_ELEMENT_PENDING).concat(position.replace(":", "-"));
13518
+ return new Promise((resolve, reject) => {
13519
+ if (node.getAttribute(pendingAttribute) !== null) {
13520
+ return resolve();
13521
+ }
13522
+ const children = toArray(node.children);
13523
+ const alreadyProcessedPseudoElement = children.filter((c$$1) => c$$1.getAttribute(DATA_FA_PSEUDO_ELEMENT) === position)[0];
13524
+ const styles2 = WINDOW.getComputedStyle(node, position);
13525
+ const fontFamily = styles2.getPropertyValue("font-family");
13526
+ const fontFamilyMatch = fontFamily.match(FONT_FAMILY_PATTERN);
13527
+ const fontWeight = styles2.getPropertyValue("font-weight");
13528
+ const content = styles2.getPropertyValue("content");
13529
+ if (alreadyProcessedPseudoElement && !fontFamilyMatch) {
13530
+ node.removeChild(alreadyProcessedPseudoElement);
13531
+ return resolve();
13532
+ } else if (fontFamilyMatch && content !== "none" && content !== "") {
13533
+ const content2 = styles2.getPropertyValue("content");
13534
+ let prefix = getPrefix(fontFamily, fontWeight);
13535
+ const {
13536
+ value: hexValue,
13537
+ isSecondary
13538
+ } = hexValueFromContent(content2);
13539
+ const isV4 = fontFamilyMatch[0].startsWith("FontAwesome");
13540
+ let iconName = byUnicode(prefix, hexValue);
13541
+ let iconIdentifier = iconName;
13542
+ if (isV4) {
13543
+ const iconName4 = byOldUnicode(hexValue);
13544
+ if (iconName4.iconName && iconName4.prefix) {
13545
+ iconName = iconName4.iconName;
13546
+ prefix = iconName4.prefix;
13547
+ }
13548
+ }
13549
+ if (iconName && !isSecondary && (!alreadyProcessedPseudoElement || alreadyProcessedPseudoElement.getAttribute(DATA_PREFIX) !== prefix || alreadyProcessedPseudoElement.getAttribute(DATA_ICON) !== iconIdentifier)) {
13550
+ node.setAttribute(pendingAttribute, iconIdentifier);
13551
+ if (alreadyProcessedPseudoElement) {
13552
+ node.removeChild(alreadyProcessedPseudoElement);
13553
+ }
13554
+ const meta = blankMeta();
13555
+ const {
13556
+ extra
13557
+ } = meta;
13558
+ extra.attributes[DATA_FA_PSEUDO_ELEMENT] = position;
13559
+ findIcon(iconName, prefix).then((main) => {
13560
+ const abstract = makeInlineSvgAbstract(_objectSpread2(_objectSpread2({}, meta), {}, {
13561
+ icons: {
13562
+ main,
13563
+ mask: emptyCanonicalIcon()
13564
+ },
13565
+ prefix,
13566
+ iconName: iconIdentifier,
13567
+ extra,
13568
+ watchable: true
13569
+ }));
13570
+ const element = DOCUMENT.createElementNS("http://www.w3.org/2000/svg", "svg");
13571
+ if (position === "::before") {
13572
+ node.insertBefore(element, node.firstChild);
13573
+ } else {
13574
+ node.appendChild(element);
13575
+ }
13576
+ element.outerHTML = abstract.map((a$$1) => toHtml(a$$1)).join("\n");
13577
+ node.removeAttribute(pendingAttribute);
13578
+ resolve();
13579
+ }).catch(reject);
13580
+ } else {
13581
+ resolve();
13582
+ }
13583
+ } else {
13584
+ resolve();
13585
+ }
13586
+ });
13587
+ }
13588
+ function replace(node) {
13589
+ return Promise.all([replaceForPosition(node, "::before"), replaceForPosition(node, "::after")]);
13590
+ }
13591
+ function processable(node) {
13592
+ 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");
13593
+ }
13594
+ function searchPseudoElements(root) {
13595
+ if (!IS_DOM) return;
13596
+ return new Promise((resolve, reject) => {
13597
+ const operations = toArray(root.querySelectorAll("*")).filter(processable).map(replace);
13598
+ const end2 = perf.begin("searchPseudoElements");
13599
+ disableObservation();
13600
+ Promise.all(operations).then(() => {
13601
+ end2();
13602
+ enableObservation();
13603
+ resolve();
13604
+ }).catch(() => {
13605
+ end2();
13606
+ enableObservation();
13607
+ reject();
13608
+ });
13609
+ });
13610
+ }
13611
+ var PseudoElements = {
13612
+ hooks() {
13613
+ return {
13614
+ mutationObserverCallbacks(accumulator) {
13615
+ accumulator.pseudoElementsCallback = searchPseudoElements;
13616
+ return accumulator;
13617
+ }
13618
+ };
13619
+ },
13620
+ provides(providers2) {
13621
+ providers2.pseudoElements2svg = function(params) {
13622
+ const {
13623
+ node = DOCUMENT
13624
+ } = params;
13625
+ if (config.searchPseudoElements) {
13626
+ searchPseudoElements(node);
13627
+ }
13628
+ };
13629
+ }
13630
+ };
13631
+ var _unwatched = false;
13632
+ var MutationObserver$1 = {
13633
+ mixout() {
13634
+ return {
13635
+ dom: {
13636
+ unwatch() {
13637
+ disableObservation();
13638
+ _unwatched = true;
13639
+ }
13640
+ }
13641
+ };
13642
+ },
13643
+ hooks() {
13644
+ return {
13645
+ bootstrap() {
13646
+ observe(chainHooks("mutationObserverCallbacks", {}));
13647
+ },
13648
+ noAuto() {
13649
+ disconnect();
13650
+ },
13651
+ watch(params) {
13652
+ const {
13653
+ observeMutationsRoot
13654
+ } = params;
13655
+ if (_unwatched) {
13656
+ enableObservation();
13657
+ } else {
13658
+ observe(chainHooks("mutationObserverCallbacks", {
13659
+ observeMutationsRoot
13660
+ }));
13661
+ }
13662
+ }
13663
+ };
13664
+ }
13665
+ };
13666
+ var parseTransformString = (transformString) => {
13667
+ let transform = {
13668
+ size: 16,
13669
+ x: 0,
13670
+ y: 0,
13671
+ flipX: false,
13672
+ flipY: false,
13673
+ rotate: 0
13674
+ };
13675
+ return transformString.toLowerCase().split(" ").reduce((acc, n) => {
13676
+ const parts = n.toLowerCase().split("-");
13677
+ const first = parts[0];
13678
+ let rest = parts.slice(1).join("-");
13679
+ if (first && rest === "h") {
13680
+ acc.flipX = true;
13681
+ return acc;
13682
+ }
13683
+ if (first && rest === "v") {
13684
+ acc.flipY = true;
13685
+ return acc;
13686
+ }
13687
+ rest = parseFloat(rest);
13688
+ if (isNaN(rest)) {
13689
+ return acc;
13690
+ }
13691
+ switch (first) {
13692
+ case "grow":
13693
+ acc.size = acc.size + rest;
13694
+ break;
13695
+ case "shrink":
13696
+ acc.size = acc.size - rest;
13697
+ break;
13698
+ case "left":
13699
+ acc.x = acc.x - rest;
13700
+ break;
13701
+ case "right":
13702
+ acc.x = acc.x + rest;
13703
+ break;
13704
+ case "up":
13705
+ acc.y = acc.y - rest;
13706
+ break;
13707
+ case "down":
13708
+ acc.y = acc.y + rest;
13709
+ break;
13710
+ case "rotate":
13711
+ acc.rotate = acc.rotate + rest;
13712
+ break;
13713
+ }
13714
+ return acc;
13715
+ }, transform);
13716
+ };
13717
+ var PowerTransforms = {
13718
+ mixout() {
13719
+ return {
13720
+ parse: {
13721
+ transform: (transformString) => {
13722
+ return parseTransformString(transformString);
13723
+ }
13724
+ }
13725
+ };
13726
+ },
13727
+ hooks() {
13728
+ return {
13729
+ parseNodeAttributes(accumulator, node) {
13730
+ const transformString = node.getAttribute("data-fa-transform");
13731
+ if (transformString) {
13732
+ accumulator.transform = parseTransformString(transformString);
13733
+ }
13734
+ return accumulator;
13735
+ }
13736
+ };
13737
+ },
13738
+ provides(providers2) {
13739
+ providers2.generateAbstractTransformGrouping = function(_ref) {
13740
+ let {
13741
+ main,
13742
+ transform,
13743
+ containerWidth,
13744
+ iconWidth
13745
+ } = _ref;
13746
+ const outer = {
13747
+ transform: "translate(".concat(containerWidth / 2, " 256)")
13748
+ };
13749
+ const innerTranslate = "translate(".concat(transform.x * 32, ", ").concat(transform.y * 32, ") ");
13750
+ const innerScale = "scale(".concat(transform.size / 16 * (transform.flipX ? -1 : 1), ", ").concat(transform.size / 16 * (transform.flipY ? -1 : 1), ") ");
13751
+ const innerRotate = "rotate(".concat(transform.rotate, " 0 0)");
13752
+ const inner = {
13753
+ transform: "".concat(innerTranslate, " ").concat(innerScale, " ").concat(innerRotate)
13754
+ };
13755
+ const path = {
13756
+ transform: "translate(".concat(iconWidth / 2 * -1, " -256)")
13757
+ };
13758
+ const operations = {
13759
+ outer,
13760
+ inner,
13761
+ path
13762
+ };
13763
+ return {
13764
+ tag: "g",
13765
+ attributes: _objectSpread2({}, operations.outer),
13766
+ children: [{
13767
+ tag: "g",
13768
+ attributes: _objectSpread2({}, operations.inner),
13769
+ children: [{
13770
+ tag: main.icon.tag,
13771
+ children: main.icon.children,
13772
+ attributes: _objectSpread2(_objectSpread2({}, main.icon.attributes), operations.path)
13773
+ }]
13774
+ }]
13775
+ };
13776
+ };
13777
+ }
13778
+ };
13779
+ var ALL_SPACE = {
13780
+ x: 0,
13781
+ y: 0,
13782
+ width: "100%",
13783
+ height: "100%"
13784
+ };
13785
+ function fillBlack(abstract) {
13786
+ let force = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : true;
13787
+ if (abstract.attributes && (abstract.attributes.fill || force)) {
13788
+ abstract.attributes.fill = "black";
13789
+ }
13790
+ return abstract;
13791
+ }
13792
+ function deGroup(abstract) {
13793
+ if (abstract.tag === "g") {
13794
+ return abstract.children;
13795
+ } else {
13796
+ return [abstract];
13797
+ }
13798
+ }
13799
+ var Masks = {
13800
+ hooks() {
13801
+ return {
13802
+ parseNodeAttributes(accumulator, node) {
13803
+ const maskData = node.getAttribute("data-fa-mask");
13804
+ const mask = !maskData ? emptyCanonicalIcon() : getCanonicalIcon(maskData.split(" ").map((i) => i.trim()));
13805
+ if (!mask.prefix) {
13806
+ mask.prefix = getDefaultUsablePrefix();
13807
+ }
13808
+ accumulator.mask = mask;
13809
+ accumulator.maskId = node.getAttribute("data-fa-mask-id");
13810
+ return accumulator;
13811
+ }
13812
+ };
13813
+ },
13814
+ provides(providers2) {
13815
+ providers2.generateAbstractMask = function(_ref) {
13816
+ let {
13817
+ children,
13818
+ attributes,
13819
+ main,
13820
+ mask,
13821
+ maskId: explicitMaskId,
13822
+ transform
13823
+ } = _ref;
13824
+ const {
13825
+ width: mainWidth,
13826
+ icon: mainPath
13827
+ } = main;
13828
+ const {
13829
+ width: maskWidth,
13830
+ icon: maskPath
13831
+ } = mask;
13832
+ const trans = transformForSvg({
13833
+ transform,
13834
+ containerWidth: maskWidth,
13835
+ iconWidth: mainWidth
13836
+ });
13837
+ const maskRect = {
13838
+ tag: "rect",
13839
+ attributes: _objectSpread2(_objectSpread2({}, ALL_SPACE), {}, {
13840
+ fill: "white"
13841
+ })
13842
+ };
13843
+ const maskInnerGroupChildrenMixin = mainPath.children ? {
13844
+ children: mainPath.children.map(fillBlack)
13845
+ } : {};
13846
+ const maskInnerGroup = {
13847
+ tag: "g",
13848
+ attributes: _objectSpread2({}, trans.inner),
13849
+ children: [fillBlack(_objectSpread2({
13850
+ tag: mainPath.tag,
13851
+ attributes: _objectSpread2(_objectSpread2({}, mainPath.attributes), trans.path)
13852
+ }, maskInnerGroupChildrenMixin))]
13853
+ };
13854
+ const maskOuterGroup = {
13855
+ tag: "g",
13856
+ attributes: _objectSpread2({}, trans.outer),
13857
+ children: [maskInnerGroup]
13858
+ };
13859
+ const maskId = "mask-".concat(explicitMaskId || nextUniqueId());
13860
+ const clipId = "clip-".concat(explicitMaskId || nextUniqueId());
13861
+ const maskTag = {
13862
+ tag: "mask",
13863
+ attributes: _objectSpread2(_objectSpread2({}, ALL_SPACE), {}, {
13864
+ id: maskId,
13865
+ maskUnits: "userSpaceOnUse",
13866
+ maskContentUnits: "userSpaceOnUse"
13867
+ }),
13868
+ children: [maskRect, maskOuterGroup]
13869
+ };
13870
+ const defs = {
13871
+ tag: "defs",
13872
+ children: [{
13873
+ tag: "clipPath",
13874
+ attributes: {
13875
+ id: clipId
13876
+ },
13877
+ children: deGroup(maskPath)
13878
+ }, maskTag]
13879
+ };
13880
+ children.push(defs, {
13881
+ tag: "rect",
13882
+ attributes: _objectSpread2({
13883
+ fill: "currentColor",
13884
+ "clip-path": "url(#".concat(clipId, ")"),
13885
+ mask: "url(#".concat(maskId, ")")
13886
+ }, ALL_SPACE)
13887
+ });
13888
+ return {
13889
+ children,
13890
+ attributes
13891
+ };
13892
+ };
13893
+ }
13894
+ };
13895
+ var MissingIconIndicator = {
13896
+ provides(providers2) {
13897
+ let reduceMotion = false;
13898
+ if (WINDOW.matchMedia) {
13899
+ reduceMotion = WINDOW.matchMedia("(prefers-reduced-motion: reduce)").matches;
13900
+ }
13901
+ providers2.missingIconAbstract = function() {
13902
+ const gChildren = [];
13903
+ const FILL = {
13904
+ fill: "currentColor"
13905
+ };
13906
+ const ANIMATION_BASE = {
13907
+ attributeType: "XML",
13908
+ repeatCount: "indefinite",
13909
+ dur: "2s"
13910
+ };
13911
+ gChildren.push({
13912
+ tag: "path",
13913
+ attributes: _objectSpread2(_objectSpread2({}, FILL), {}, {
13914
+ 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"
13915
+ })
13916
+ });
13917
+ const OPACITY_ANIMATE = _objectSpread2(_objectSpread2({}, ANIMATION_BASE), {}, {
13918
+ attributeName: "opacity"
13919
+ });
13920
+ const dot = {
13921
+ tag: "circle",
13922
+ attributes: _objectSpread2(_objectSpread2({}, FILL), {}, {
13923
+ cx: "256",
13924
+ cy: "364",
13925
+ r: "28"
13926
+ }),
13927
+ children: []
13928
+ };
13929
+ if (!reduceMotion) {
13930
+ dot.children.push({
13931
+ tag: "animate",
13932
+ attributes: _objectSpread2(_objectSpread2({}, ANIMATION_BASE), {}, {
13933
+ attributeName: "r",
13934
+ values: "28;14;28;28;14;28;"
13935
+ })
13936
+ }, {
13937
+ tag: "animate",
13938
+ attributes: _objectSpread2(_objectSpread2({}, OPACITY_ANIMATE), {}, {
13939
+ values: "1;0;1;1;0;1;"
13940
+ })
13941
+ });
13942
+ }
13943
+ gChildren.push(dot);
13944
+ gChildren.push({
13945
+ tag: "path",
13946
+ attributes: _objectSpread2(_objectSpread2({}, FILL), {}, {
13947
+ opacity: "1",
13948
+ 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"
13949
+ }),
13950
+ children: reduceMotion ? [] : [{
13951
+ tag: "animate",
13952
+ attributes: _objectSpread2(_objectSpread2({}, OPACITY_ANIMATE), {}, {
13953
+ values: "1;0;0;0;0;1;"
13954
+ })
13955
+ }]
13956
+ });
13957
+ if (!reduceMotion) {
13958
+ gChildren.push({
13959
+ tag: "path",
13960
+ attributes: _objectSpread2(_objectSpread2({}, FILL), {}, {
13961
+ opacity: "0",
13962
+ 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"
13963
+ }),
13964
+ children: [{
13965
+ tag: "animate",
13966
+ attributes: _objectSpread2(_objectSpread2({}, OPACITY_ANIMATE), {}, {
13967
+ values: "0;0;1;1;0;0;"
13968
+ })
13969
+ }]
13970
+ });
13971
+ }
13972
+ return {
13973
+ tag: "g",
13974
+ attributes: {
13975
+ "class": "missing"
13976
+ },
13977
+ children: gChildren
13978
+ };
13979
+ };
13980
+ }
13981
+ };
13982
+ var SvgSymbols = {
13983
+ hooks() {
13984
+ return {
13985
+ parseNodeAttributes(accumulator, node) {
13986
+ const symbolData = node.getAttribute("data-fa-symbol");
13987
+ const symbol = symbolData === null ? false : symbolData === "" ? true : symbolData;
13988
+ accumulator["symbol"] = symbol;
13989
+ return accumulator;
13990
+ }
13991
+ };
13992
+ }
13993
+ };
13994
+ var plugins = [InjectCSS, ReplaceElements, Layers, LayersCounter, LayersText, PseudoElements, MutationObserver$1, PowerTransforms, Masks, MissingIconIndicator, SvgSymbols];
13995
+ registerPlugins(plugins, {
13996
+ mixoutsTo: api
13997
+ });
13998
+ api.noAuto;
13999
+ api.config;
14000
+ api.library;
14001
+ api.dom;
14002
+ var parse$1 = api.parse;
14003
+ api.findIconDefinition;
14004
+ api.toHtml;
14005
+ var icon = api.icon;
14006
+ api.layer;
14007
+ api.text;
14008
+ api.counter;
14009
+ function _arrayLikeToArray(r3, a) {
14010
+ (null == a || a > r3.length) && (a = r3.length);
14011
+ for (var e = 0, n = Array(a); e < a; e++) n[e] = r3[e];
14012
+ return n;
14013
+ }
14014
+ function _arrayWithHoles(r3) {
14015
+ if (Array.isArray(r3)) return r3;
14016
+ }
14017
+ function _arrayWithoutHoles(r3) {
14018
+ if (Array.isArray(r3)) return _arrayLikeToArray(r3);
14019
+ }
14020
+ function _defineProperty2(e, r3, t2) {
14021
+ return (r3 = _toPropertyKey2(r3)) in e ? Object.defineProperty(e, r3, {
14022
+ value: t2,
14023
+ enumerable: true,
14024
+ configurable: true,
14025
+ writable: true
14026
+ }) : e[r3] = t2, e;
14027
+ }
14028
+ function _iterableToArray(r3) {
14029
+ if ("undefined" != typeof Symbol && null != r3[Symbol.iterator] || null != r3["@@iterator"]) return Array.from(r3);
14030
+ }
14031
+ function _iterableToArrayLimit(r3, l) {
14032
+ var t2 = null == r3 ? null : "undefined" != typeof Symbol && r3[Symbol.iterator] || r3["@@iterator"];
14033
+ if (null != t2) {
14034
+ var e, n, i, u, a = [], f = true, o2 = false;
14035
+ try {
14036
+ 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) ;
14037
+ } catch (r4) {
14038
+ o2 = true, n = r4;
14039
+ } finally {
14040
+ try {
14041
+ if (!f && null != t2.return && (u = t2.return(), Object(u) !== u)) return;
14042
+ } finally {
14043
+ if (o2) throw n;
14044
+ }
14045
+ }
14046
+ return a;
14047
+ }
14048
+ }
14049
+ function _nonIterableRest() {
14050
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
14051
+ }
14052
+ function _nonIterableSpread() {
14053
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
14054
+ }
14055
+ function ownKeys2(e, r3) {
14056
+ var t2 = Object.keys(e);
14057
+ if (Object.getOwnPropertySymbols) {
14058
+ var o2 = Object.getOwnPropertySymbols(e);
14059
+ r3 && (o2 = o2.filter(function(r4) {
14060
+ return Object.getOwnPropertyDescriptor(e, r4).enumerable;
14061
+ })), t2.push.apply(t2, o2);
14062
+ }
14063
+ return t2;
14064
+ }
14065
+ function _objectSpread22(e) {
14066
+ for (var r3 = 1; r3 < arguments.length; r3++) {
14067
+ var t2 = null != arguments[r3] ? arguments[r3] : {};
14068
+ r3 % 2 ? ownKeys2(Object(t2), true).forEach(function(r4) {
14069
+ _defineProperty2(e, r4, t2[r4]);
14070
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t2)) : ownKeys2(Object(t2)).forEach(function(r4) {
14071
+ Object.defineProperty(e, r4, Object.getOwnPropertyDescriptor(t2, r4));
14072
+ });
14073
+ }
14074
+ return e;
14075
+ }
14076
+ function _objectWithoutProperties(e, t2) {
14077
+ if (null == e) return {};
14078
+ var o2, r3, i = _objectWithoutPropertiesLoose(e, t2);
14079
+ if (Object.getOwnPropertySymbols) {
14080
+ var n = Object.getOwnPropertySymbols(e);
14081
+ for (r3 = 0; r3 < n.length; r3++) o2 = n[r3], -1 === t2.indexOf(o2) && {}.propertyIsEnumerable.call(e, o2) && (i[o2] = e[o2]);
14082
+ }
14083
+ return i;
14084
+ }
14085
+ function _objectWithoutPropertiesLoose(r3, e) {
14086
+ if (null == r3) return {};
14087
+ var t2 = {};
14088
+ for (var n in r3) if ({}.hasOwnProperty.call(r3, n)) {
14089
+ if (-1 !== e.indexOf(n)) continue;
14090
+ t2[n] = r3[n];
14091
+ }
14092
+ return t2;
14093
+ }
14094
+ function _slicedToArray(r3, e) {
14095
+ return _arrayWithHoles(r3) || _iterableToArrayLimit(r3, e) || _unsupportedIterableToArray(r3, e) || _nonIterableRest();
14096
+ }
14097
+ function _toConsumableArray(r3) {
14098
+ return _arrayWithoutHoles(r3) || _iterableToArray(r3) || _unsupportedIterableToArray(r3) || _nonIterableSpread();
14099
+ }
14100
+ function _toPrimitive2(t2, r3) {
14101
+ if ("object" != typeof t2 || !t2) return t2;
14102
+ var e = t2[Symbol.toPrimitive];
14103
+ if (void 0 !== e) {
14104
+ var i = e.call(t2, r3);
14105
+ if ("object" != typeof i) return i;
14106
+ throw new TypeError("@@toPrimitive must return a primitive value.");
14107
+ }
14108
+ return ("string" === r3 ? String : Number)(t2);
14109
+ }
14110
+ function _toPropertyKey2(t2) {
14111
+ var i = _toPrimitive2(t2, "string");
14112
+ return "symbol" == typeof i ? i : i + "";
14113
+ }
14114
+ function _typeof(o2) {
14115
+ "@babel/helpers - typeof";
14116
+ return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o3) {
14117
+ return typeof o3;
14118
+ } : function(o3) {
14119
+ return o3 && "function" == typeof Symbol && o3.constructor === Symbol && o3 !== Symbol.prototype ? "symbol" : typeof o3;
14120
+ }, _typeof(o2);
14121
+ }
14122
+ function _unsupportedIterableToArray(r3, a) {
14123
+ if (r3) {
14124
+ if ("string" == typeof r3) return _arrayLikeToArray(r3, a);
14125
+ var t2 = {}.toString.call(r3).slice(8, -1);
14126
+ 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;
14127
+ }
14128
+ }
14129
+ var ICON_PACKS_STARTING_VERSION = "7.0.0";
14130
+ var SVG_CORE_VERSION;
14131
+ try {
14132
+ svgCorePackageJson = require_package();
14133
+ SVG_CORE_VERSION = svgCorePackageJson.version;
14134
+ } catch (e) {
14135
+ SVG_CORE_VERSION = typeof process !== "undefined" && process.env.FA_VERSION || "7.0.0";
14136
+ }
14137
+ var svgCorePackageJson;
14138
+ function classList(props) {
14139
+ 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;
14140
+ var isVersion7OrLater = versionCheckGte(SVG_CORE_VERSION, ICON_PACKS_STARTING_VERSION);
14141
+ var classes = _defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2(_defineProperty2({
14142
+ "fa-beat": beat,
14143
+ "fa-fade": fade,
14144
+ "fa-beat-fade": beatFade,
14145
+ "fa-bounce": bounce,
14146
+ "fa-shake": shake,
14147
+ "fa-flash": flash,
14148
+ "fa-spin": spin,
14149
+ "fa-spin-reverse": spinReverse,
14150
+ "fa-spin-pulse": spinPulse,
14151
+ "fa-pulse": pulse,
14152
+ "fa-fw": fixedWidth,
14153
+ "fa-inverse": inverse,
14154
+ "fa-border": border,
14155
+ "fa-li": listItem,
14156
+ "fa-flip": flip4 === true,
14157
+ "fa-flip-horizontal": flip4 === "horizontal" || flip4 === "both",
14158
+ "fa-flip-vertical": flip4 === "vertical" || flip4 === "both"
14159
+ }, "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);
14160
+ return Object.keys(classes).map(function(key) {
14161
+ return classes[key] ? key : null;
14162
+ }).filter(function(key) {
14163
+ return key;
14164
+ });
14165
+ }
14166
+ function versionCheckGte(version1, version2) {
14167
+ var _version1$split = version1.split("-"), _version1$split2 = _slicedToArray(_version1$split, 2), v1Base = _version1$split2[0], v1PreRelease = _version1$split2[1];
14168
+ var _version2$split = version2.split("-"), _version2$split2 = _slicedToArray(_version2$split, 2), v2Base = _version2$split2[0], v2PreRelease = _version2$split2[1];
14169
+ var v1Parts = v1Base.split(".");
14170
+ var v2Parts = v2Base.split(".");
14171
+ for (var i = 0; i < Math.max(v1Parts.length, v2Parts.length); i++) {
14172
+ var v1Part = v1Parts[i] || "0";
14173
+ var v2Part = v2Parts[i] || "0";
14174
+ var v1Num = parseInt(v1Part, 10);
14175
+ var v2Num = parseInt(v2Part, 10);
14176
+ if (v1Num !== v2Num) {
14177
+ return v1Num > v2Num;
14178
+ }
14179
+ }
14180
+ for (var _i = 0; _i < Math.max(v1Parts.length, v2Parts.length); _i++) {
14181
+ var _v1Part = v1Parts[_i] || "0";
14182
+ var _v2Part = v2Parts[_i] || "0";
14183
+ if (_v1Part !== _v2Part) {
14184
+ if (_v1Part.length !== _v2Part.length) {
14185
+ return _v1Part.length < _v2Part.length;
14186
+ }
14187
+ }
14188
+ }
14189
+ if (v1PreRelease && !v2PreRelease) return false;
14190
+ if (!v1PreRelease && v2PreRelease) return true;
14191
+ return true;
14192
+ }
14193
+ function _isNumerical(obj) {
14194
+ obj = obj - 0;
14195
+ return obj === obj;
14196
+ }
14197
+ function camelize(string) {
14198
+ if (_isNumerical(string)) {
14199
+ return string;
14200
+ }
14201
+ string = string.replace(/[\-_\s]+(.)?/g, function(match, chr) {
14202
+ return chr ? chr.toUpperCase() : "";
14203
+ });
14204
+ return string.substr(0, 1).toLowerCase() + string.substr(1);
14205
+ }
14206
+ var _excluded = ["style"];
14207
+ function capitalize(val) {
14208
+ return val.charAt(0).toUpperCase() + val.slice(1);
14209
+ }
14210
+ function styleToObject(style) {
14211
+ return style.split(";").map(function(s2) {
14212
+ return s2.trim();
14213
+ }).filter(function(s2) {
14214
+ return s2;
14215
+ }).reduce(function(acc, pair) {
14216
+ var i = pair.indexOf(":");
14217
+ var prop = camelize(pair.slice(0, i));
14218
+ var value = pair.slice(i + 1).trim();
14219
+ prop.startsWith("webkit") ? acc[capitalize(prop)] = value : acc[prop] = value;
14220
+ return acc;
14221
+ }, {});
14222
+ }
14223
+ function convert(createElement17, element) {
14224
+ var extraProps = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
14225
+ if (typeof element === "string") {
14226
+ return element;
14227
+ }
14228
+ var children = (element.children || []).map(function(child) {
14229
+ return convert(createElement17, child);
14230
+ });
14231
+ var mixins = Object.keys(element.attributes || {}).reduce(function(acc, key) {
14232
+ var val = element.attributes[key];
14233
+ switch (key) {
14234
+ case "class":
14235
+ acc.attrs["className"] = val;
14236
+ delete element.attributes["class"];
14237
+ break;
14238
+ case "style":
14239
+ acc.attrs["style"] = styleToObject(val);
14240
+ break;
14241
+ default:
14242
+ if (key.indexOf("aria-") === 0 || key.indexOf("data-") === 0) {
14243
+ acc.attrs[key.toLowerCase()] = val;
14244
+ } else {
14245
+ acc.attrs[camelize(key)] = val;
14246
+ }
14247
+ }
14248
+ return acc;
14249
+ }, {
14250
+ attrs: {}
14251
+ });
14252
+ var _extraProps$style = extraProps.style, existingStyle = _extraProps$style === void 0 ? {} : _extraProps$style, remaining = _objectWithoutProperties(extraProps, _excluded);
14253
+ mixins.attrs["style"] = _objectSpread22(_objectSpread22({}, mixins.attrs["style"]), existingStyle);
14254
+ return createElement17.apply(void 0, [element.tag, _objectSpread22(_objectSpread22({}, mixins.attrs), remaining)].concat(_toConsumableArray(children)));
14255
+ }
14256
+ var PRODUCTION2 = false;
14257
+ try {
14258
+ PRODUCTION2 = process.env.NODE_ENV === "production";
14259
+ } catch (e) {
14260
+ }
14261
+ function log() {
14262
+ if (!PRODUCTION2 && console && typeof console.error === "function") {
14263
+ var _console;
14264
+ (_console = console).error.apply(_console, arguments);
14265
+ }
14266
+ }
14267
+ function normalizeIconArgs(icon2) {
14268
+ if (icon2 && _typeof(icon2) === "object" && icon2.prefix && icon2.iconName && icon2.icon) {
14269
+ return icon2;
14270
+ }
14271
+ if (parse$1.icon) {
14272
+ return parse$1.icon(icon2);
14273
+ }
14274
+ if (icon2 === null) {
14275
+ return null;
14276
+ }
14277
+ if (icon2 && _typeof(icon2) === "object" && icon2.prefix && icon2.iconName) {
14278
+ return icon2;
14279
+ }
14280
+ if (Array.isArray(icon2) && icon2.length === 2) {
14281
+ return {
14282
+ prefix: icon2[0],
14283
+ iconName: icon2[1]
14284
+ };
14285
+ }
14286
+ if (typeof icon2 === "string") {
14287
+ return {
14288
+ prefix: "fas",
14289
+ iconName: icon2
14290
+ };
14291
+ }
14292
+ }
14293
+ function objectWithKey(key, value) {
14294
+ return Array.isArray(value) && value.length > 0 || !Array.isArray(value) && value ? _defineProperty2({}, key, value) : {};
14295
+ }
14296
+ var defaultProps = {
14297
+ border: false,
14298
+ className: "",
14299
+ mask: null,
14300
+ maskId: null,
14301
+ // the fixedWidth property has been deprecated as of version 7
14302
+ fixedWidth: false,
14303
+ inverse: false,
14304
+ flip: false,
14305
+ icon: null,
14306
+ listItem: false,
14307
+ pull: null,
14308
+ pulse: false,
14309
+ rotation: null,
14310
+ rotateBy: false,
14311
+ size: null,
14312
+ spin: false,
14313
+ spinPulse: false,
14314
+ spinReverse: false,
14315
+ beat: false,
14316
+ fade: false,
14317
+ beatFade: false,
14318
+ bounce: false,
14319
+ shake: false,
14320
+ symbol: false,
14321
+ title: "",
14322
+ titleId: null,
14323
+ transform: null,
14324
+ swapOpacity: false,
14325
+ widthAuto: false
14326
+ };
14327
+ var FontAwesomeIcon = /* @__PURE__ */ React45__default.forwardRef(function(props, ref) {
14328
+ var allProps = _objectSpread22(_objectSpread22({}, defaultProps), props);
14329
+ var iconArgs = allProps.icon, maskArgs = allProps.mask, symbol = allProps.symbol, className = allProps.className, title = allProps.title, titleId = allProps.titleId, maskId = allProps.maskId;
14330
+ var iconLookup = normalizeIconArgs(iconArgs);
14331
+ var classes = objectWithKey("classes", [].concat(_toConsumableArray(classList(allProps)), _toConsumableArray((className || "").split(" "))));
14332
+ var transform = objectWithKey("transform", typeof allProps.transform === "string" ? parse$1.transform(allProps.transform) : allProps.transform);
14333
+ var mask = objectWithKey("mask", normalizeIconArgs(maskArgs));
14334
+ var renderedIcon = icon(iconLookup, _objectSpread22(_objectSpread22(_objectSpread22(_objectSpread22({}, classes), transform), mask), {}, {
14335
+ symbol,
14336
+ title,
14337
+ titleId,
14338
+ maskId
14339
+ }));
14340
+ if (!renderedIcon) {
14341
+ log("Could not find icon", iconLookup);
14342
+ return null;
14343
+ }
14344
+ var abstract = renderedIcon.abstract;
14345
+ var extraProps = {
14346
+ ref
14347
+ };
14348
+ Object.keys(allProps).forEach(function(key) {
14349
+ if (!defaultProps.hasOwnProperty(key)) {
14350
+ extraProps[key] = allProps[key];
14351
+ }
14352
+ });
14353
+ return convertCurry(abstract[0], extraProps);
14354
+ });
14355
+ FontAwesomeIcon.displayName = "FontAwesomeIcon";
14356
+ FontAwesomeIcon.propTypes = {
14357
+ beat: PropTypes.bool,
14358
+ border: PropTypes.bool,
14359
+ beatFade: PropTypes.bool,
14360
+ bounce: PropTypes.bool,
14361
+ className: PropTypes.string,
14362
+ fade: PropTypes.bool,
14363
+ flash: PropTypes.bool,
14364
+ mask: PropTypes.oneOfType([PropTypes.object, PropTypes.array, PropTypes.string]),
14365
+ maskId: PropTypes.string,
14366
+ // the fixedWidth property has been deprecated as of version 7
14367
+ fixedWidth: PropTypes.bool,
14368
+ inverse: PropTypes.bool,
14369
+ flip: PropTypes.oneOf([true, false, "horizontal", "vertical", "both"]),
14370
+ icon: PropTypes.oneOfType([PropTypes.object, PropTypes.array, PropTypes.string]),
14371
+ listItem: PropTypes.bool,
14372
+ pull: PropTypes.oneOf(["right", "left"]),
14373
+ pulse: PropTypes.bool,
14374
+ rotation: PropTypes.oneOf([0, 90, 180, 270]),
14375
+ rotateBy: PropTypes.bool,
14376
+ shake: PropTypes.bool,
14377
+ size: PropTypes.oneOf(["2xs", "xs", "sm", "lg", "xl", "2xl", "1x", "2x", "3x", "4x", "5x", "6x", "7x", "8x", "9x", "10x"]),
14378
+ spin: PropTypes.bool,
14379
+ spinPulse: PropTypes.bool,
14380
+ spinReverse: PropTypes.bool,
14381
+ symbol: PropTypes.oneOfType([PropTypes.bool, PropTypes.string]),
14382
+ title: PropTypes.string,
14383
+ titleId: PropTypes.string,
14384
+ transform: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),
14385
+ swapOpacity: PropTypes.bool,
14386
+ widthAuto: PropTypes.bool
14387
+ };
14388
+ var convertCurry = convert.bind(null, React45__default.createElement);
14389
+
14390
+ // ../../node_modules/.pnpm/@fortawesome+pro-solid-svg-icons@6.7.2/node_modules/@fortawesome/pro-solid-svg-icons/index.mjs
14391
+ var faGripVertical = {
14392
+ prefix: "fas",
14393
+ iconName: "grip-vertical",
14394
+ 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"]
14395
+ };
14396
+ var faCircleXmark = {
14397
+ prefix: "fas",
14398
+ iconName: "circle-xmark",
14399
+ 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"]
14400
+ };
14401
+
14402
+ // src/components/slots/SlotDelete.tsx
14403
+ var SlotDelete = (props) => {
14404
+ const { slotId, onDelete } = props;
14405
+ 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" })));
14406
+ };
14407
+
14408
+ // src/components/slots/SlotDragHandle.tsx
14409
+ var SlotDragHandle = (props) => {
14410
+ const { slotId } = props;
14411
+ return /* @__PURE__ */ React.createElement("div", { className: "uii:cursor-grab" }, /* @__PURE__ */ React.createElement(FontAwesomeIcon, { icon: faGripVertical }));
14412
+ };
14413
+ /*! Bundled license information:
14414
+
14415
+ lucide-react/dist/esm/shared/src/utils.js:
14416
+ lucide-react/dist/esm/defaultAttributes.js:
14417
+ lucide-react/dist/esm/Icon.js:
14418
+ lucide-react/dist/esm/createLucideIcon.js:
14419
+ lucide-react/dist/esm/icons/check.js:
14420
+ lucide-react/dist/esm/icons/chevron-down.js:
14421
+ lucide-react/dist/esm/icons/chevron-right.js:
14422
+ lucide-react/dist/esm/icons/chevron-up.js:
14423
+ lucide-react/dist/esm/icons/circle.js:
14424
+ lucide-react/dist/esm/lucide-react.js:
14425
+ (**
14426
+ * @license lucide-react v0.476.0 - ISC
14427
+ *
14428
+ * This source code is licensed under the ISC license.
14429
+ * See the LICENSE file in the root directory of this source tree.
14430
+ *)
14431
+
14432
+ @fortawesome/fontawesome-svg-core/index.mjs:
14433
+ (*!
14434
+ * Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
14435
+ * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
14436
+ * Copyright 2024 Fonticons, Inc.
14437
+ *)
14438
+
14439
+ @fortawesome/pro-solid-svg-icons/index.mjs:
14440
+ (*!
14441
+ * Font Awesome Pro 6.7.2 by @fontawesome - https://fontawesome.com
14442
+ * License - https://fontawesome.com/license (Commercial License)
14443
+ * Copyright 2024 Fonticons, Inc.
10948
14444
  *)
10949
14445
  */
10950
14446