@nethesis/phone-island 1.0.9 → 1.0.10
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/App.js +1 -1
- package/dist/App.js.map +1 -1
- package/dist/_virtual/index6.js +1 -1
- package/dist/_virtual/index8.js +1 -1
- package/dist/components/SideView/hooks/useSideViewLogic.js +1 -1
- package/dist/components/SideView/hooks/useSideViewLogic.js.map +1 -1
- package/dist/components/Socket.js +1 -1
- package/dist/components/Socket.js.map +1 -1
- package/dist/components/TranscriptionView/TranscriptionView.js.map +1 -1
- package/dist/lib/devices/devices.js +1 -1
- package/dist/node_modules/@fortawesome/fontawesome-svg-core/index.mjs.js +7 -1
- package/dist/node_modules/@fortawesome/fontawesome-svg-core/index.mjs.js.map +1 -1
- package/dist/node_modules/@fortawesome/free-solid-svg-icons/index.mjs.js +1 -1
- package/dist/node_modules/@fortawesome/free-solid-svg-icons/index.mjs.js.map +1 -1
- package/dist/node_modules/@fortawesome/react-fontawesome/index.es.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/animation/hooks/animation-controls.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/animation/hooks/animation-controls.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/animation/hooks/use-animation.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/animation/hooks/use-animation.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/components/AnimatePresence/PopChild.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/components/AnimatePresence/PopChild.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/components/AnimatePresence/PresenceChild.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/components/AnimatePresence/PresenceChild.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/components/AnimatePresence/index.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/components/AnimatePresence/index.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/components/AnimatePresence/use-presence.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/components/AnimatePresence/utils.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/context/LayoutGroupContext.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/context/LazyContext.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/context/MotionConfigContext.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/context/MotionContext/create.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/context/MotionContext/index.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/context/MotionContext/utils.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/context/MotionContext/utils.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/context/PresenceContext.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/context/SwitchLayoutGroupContext.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/events/add-pointer-event.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/events/add-pointer-event.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/events/event-info.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/gestures/drag/VisualElementDragControls.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/gestures/drag/VisualElementDragControls.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/gestures/drag/index.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/gestures/drag/index.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/gestures/drag/use-drag-controls.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/gestures/drag/use-drag-controls.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/gestures/drag/utils/constraints.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/gestures/drag/utils/constraints.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/gestures/focus.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/gestures/focus.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/gestures/hover.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/gestures/hover.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/gestures/pan/PanSession.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/gestures/pan/PanSession.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/gestures/pan/index.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/gestures/pan/index.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/gestures/press.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/gestures/press.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/features/animation/exit.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/features/animation/exit.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/features/animation/index.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/features/animation/index.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/features/animations.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/features/definitions.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/features/definitions.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/features/drag.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/features/drag.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/features/gestures.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/features/layout/MeasureLayout.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/features/layout/MeasureLayout.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/features/layout.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/features/layout.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/features/load-features.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/features/load-features.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/features/viewport/index.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/features/viewport/index.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/features/viewport/observers.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/index.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/index.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/utils/symbol.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/utils/use-motion-ref.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/utils/use-motion-ref.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/utils/use-visual-element.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/utils/use-visual-element.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/utils/use-visual-state.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/utils/use-visual-state.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/utils/valid-prop.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/motion/utils/valid-prop.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/render/components/create-proxy.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/render/components/create-proxy.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/render/components/motion/feature-bundle.mjs.js +2 -0
- package/dist/node_modules/framer-motion/dist/es/render/components/motion/feature-bundle.mjs.js.map +1 -0
- package/dist/node_modules/framer-motion/dist/es/render/components/motion/proxy.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/render/components/motion/proxy.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/render/dom/create-visual-element.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/render/dom/create-visual-element.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/render/dom/use-render.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/render/dom/use-render.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/render/dom/utils/filter-props.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/render/dom/utils/filter-props.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/render/dom/utils/is-svg-component.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/render/html/use-html-visual-state.mjs.js +2 -0
- package/dist/node_modules/framer-motion/dist/es/render/html/use-html-visual-state.mjs.js.map +1 -0
- package/dist/node_modules/framer-motion/dist/es/render/html/use-props.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/render/html/use-props.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/render/html/utils/create-render-state.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/render/svg/lowercase-elements.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/render/svg/use-props.mjs.js +1 -1
- package/dist/node_modules/framer-motion/dist/es/render/svg/use-props.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/render/svg/use-svg-visual-state.mjs.js +2 -0
- package/dist/node_modules/framer-motion/dist/es/render/svg/use-svg-visual-state.mjs.js.map +1 -0
- package/dist/node_modules/framer-motion/dist/es/render/svg/utils/create-render-state.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/utils/distance.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/utils/get-context-window.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/utils/is-browser.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/utils/is-ref-object.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/utils/use-composed-ref.mjs.js +2 -0
- package/dist/node_modules/framer-motion/dist/es/utils/use-composed-ref.mjs.js.map +1 -0
- package/dist/node_modules/framer-motion/dist/es/utils/use-constant.mjs.js.map +1 -1
- package/dist/node_modules/framer-motion/dist/es/utils/use-isomorphic-effect.mjs.js.map +1 -1
- package/dist/node_modules/i18next-browser-languagedetector/dist/esm/i18nextBrowserLanguageDetector.js +1 -1
- package/dist/node_modules/i18next-browser-languagedetector/dist/esm/i18nextBrowserLanguageDetector.js.map +1 -1
- package/dist/node_modules/mic-check/lib/index.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/AsyncMotionValueAnimation.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/AsyncMotionValueAnimation.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/JSAnimation.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/JSAnimation.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/NativeAnimation.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/NativeAnimation.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/NativeAnimationExtended.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/NativeAnimationExtended.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/animate/single-value.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/animation/animate/single-value.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/animation/drivers/frame.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/animation/drivers/frame.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/animation/generators/inertia.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/generators/inertia.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/generators/keyframes.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/generators/spring.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/animation/generators/spring.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/animation/generators/utils/calc-duration.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/generators/utils/create-generator-easing.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/generators/utils/is-generator.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/generators/utils/velocity.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/generators/utils/velocity.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/interfaces/motion-value.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/animation/interfaces/motion-value.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/animation/interfaces/visual-element-target.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/animation/interfaces/visual-element-target.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/animation/interfaces/visual-element-variant.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/animation/interfaces/visual-element-variant.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/animation/interfaces/visual-element.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/DOMKeyframesResolver.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/DOMKeyframesResolver.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/KeyframesResolver.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/KeyframesResolver.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/get-final.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/offsets/default.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/offsets/fill.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/offsets/time.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/utils/fill-wildcards.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/utils/is-none.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/utils/make-none-animatable.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/utils/unit-conversion.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/keyframes/utils/unit-conversion.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/optimized-appear/data-id.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/animation/optimized-appear/get-appear-id.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/animation/utils/WithPromise.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/utils/WithPromise.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/utils/calc-child-stagger.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/animation/utils/calc-child-stagger.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/animation/utils/can-animate.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/utils/can-animate.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/utils/css-variables-conversion.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/utils/css-variables-conversion.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/utils/default-transitions.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/animation/utils/default-transitions.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/animation/utils/get-value-transition.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/utils/get-value-transition.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/utils/is-animatable.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/utils/is-css-variable.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/utils/is-css-variable.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/utils/is-transition-defined.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/animation/utils/is-transition-defined.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/animation/utils/make-animation-instant.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/animation/utils/make-animation-instant.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/animation/utils/replace-transition-type.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/utils/replace-transition-type.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/utils/resolve-transition.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/animation/utils/resolve-transition.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/easing/cubic-bezier.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/easing/map-easing.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/easing/supported.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/start-waapi-animation.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/supports/waapi.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/supports/waapi.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/utils/accelerated-values.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/utils/accelerated-values.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/utils/apply-generator.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/utils/is-browser-color.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/utils/is-browser-color.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/utils/linear.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/utils/linear.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/animation/waapi/utils/unsupported-easing.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/events/add-dom-event.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/frameloop/batcher.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/frameloop/batcher.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/frameloop/frame.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/frameloop/microtask.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/frameloop/order.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/frameloop/render-step.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/frameloop/render-step.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/frameloop/sync-time.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/gestures/drag/state/is-active.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/gestures/drag/state/set-active.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/gestures/hover.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/gestures/hover.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/gestures/press/index.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/gestures/press/index.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/gestures/press/utils/is-keyboard-accessible.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/gestures/press/utils/is-keyboard-accessible.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/gestures/press/utils/keyboard.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/gestures/press/utils/state.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/gestures/utils/is-node-or-child.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/gestures/utils/is-primary-pointer.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/gestures/utils/setup.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/projection/animation/mix-values.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/projection/animation/mix-values.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/projection/geometry/conversion.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/projection/geometry/copy.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/projection/geometry/delta-apply.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/projection/geometry/delta-apply.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/projection/geometry/delta-calc.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/projection/geometry/delta-calc.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/projection/geometry/delta-remove.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/projection/geometry/delta-remove.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/projection/geometry/models.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/projection/geometry/utils.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/projection/node/DocumentProjectionNode.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/projection/node/DocumentProjectionNode.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/projection/node/HTMLProjectionNode.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/projection/node/create-projection-node.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/projection/node/create-projection-node.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/projection/node/state.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/projection/shared/stack.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/projection/shared/stack.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/projection/styles/scale-border-radius.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/projection/styles/scale-border-radius.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/projection/styles/scale-box-shadow.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/projection/styles/scale-box-shadow.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/projection/styles/scale-correction.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/projection/styles/scale-correction.mjs.js.map +1 -0
- package/dist/node_modules/{framer-motion → motion-dom}/dist/es/projection/styles/transform.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/projection/styles/transform.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/projection/utils/compare-by-depth.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/projection/utils/each-axis.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/projection/utils/flat-tree.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/projection/utils/has-transform.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/projection/utils/measure.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/Feature.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/VisualElement.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/render/VisualElement.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/dom/DOMVisualElement.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/render/dom/DOMVisualElement.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/dom/is-css-var.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/render/dom/parse-transform.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/render/dom/parse-transform.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/render/dom/style-set.mjs.js.map +1 -1
- package/dist/node_modules/{framer-motion → motion-dom}/dist/es/render/dom/utils/camel-to-dash.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/render/dom/utils/camel-to-dash.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/html/HTMLVisualElement.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/render/html/HTMLVisualElement.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/html/utils/build-styles.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/render/html/utils/build-styles.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/html/utils/build-transform.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/render/html/utils/build-transform.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/html/utils/render.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/render/html/utils/render.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/html/utils/scrape-motion-values.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/render/html/utils/scrape-motion-values.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/store.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/svg/SVGVisualElement.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/render/svg/SVGVisualElement.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/svg/utils/build-attrs.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/render/svg/utils/build-attrs.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/svg/utils/camel-case-attrs.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/svg/utils/is-svg-tag.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/svg/utils/path.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/render/svg/utils/path.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/svg/utils/render.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/svg/utils/scrape-motion-values.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/render/svg/utils/scrape-motion-values.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/utils/animation-state.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/render/utils/animation-state.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/utils/get-variant-context.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/utils/is-animation-controls.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/utils/is-controlling-variants.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/render/utils/is-controlling-variants.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/utils/is-forced-motion-value.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/render/utils/is-forced-motion-value.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/utils/is-keyframes-target.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/utils/is-variant-label.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/utils/keys-position.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/render/utils/keys-transform.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/render/utils/keys-transform.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/render/utils/motion-values.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/render/utils/motion-values.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/utils/reduced-motion/index.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/render/utils/reduced-motion/index.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/utils/reduced-motion/state.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/utils/resolve-dynamic-variants.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/utils/resolve-variants.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/utils/setters.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/render/utils/setters.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/utils/shallow-compare.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/render/utils/variant-props.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/resize/handle-element.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/resize/handle-element.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/resize/handle-window.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/resize/handle-window.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/resize/index.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/resize/index.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/stats/buffer.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/utils/delay.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/utils/delay.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/utils/interpolate.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/utils/interpolate.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/utils/is-html-element.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/utils/is-html-element.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/utils/is-svg-element.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/utils/is-svg-element.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/utils/is-svg-svg-element.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/utils/is-svg-svg-element.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/utils/mix/color.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/utils/mix/color.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/utils/mix/complex.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/utils/mix/complex.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/utils/mix/immediate.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/utils/mix/index.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/utils/mix/number.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/utils/mix/visibility.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/utils/resolve-elements.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/utils/resolve-elements.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/utils/supports/flags.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/utils/supports/linear-easing.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/utils/supports/memo.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/utils/supports/scroll-timeline.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/utils/supports/scroll-timeline.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/index.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/index.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/auto.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/color/hex.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/color/hsla-to-rgba.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/color/hsla.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/color/index.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/color/index.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/color/rgba.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/color/utils.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/complex/filter.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/complex/index.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/complex/index.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/complex/mask.mjs.js +2 -0
- package/dist/node_modules/motion-dom/dist/es/value/types/complex/mask.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/value/types/dimensions.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/int.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/maps/defaults.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/maps/defaults.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/maps/number.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/maps/number.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/maps/transform.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/maps/transform.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/numbers/index.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/numbers/units.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/test.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/utils/animatable-none.mjs.js +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/utils/animatable-none.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/utils/color-regex.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/utils/find.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/utils/float-regex.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/utils/get-as-type.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/utils/is-nullish.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/utils/sanitize.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/types/utils/single-color-regex.mjs.js.map +1 -1
- package/dist/node_modules/motion-dom/dist/es/value/utils/is-motion-value.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/value/utils/resolve-motion-value.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/value/will-change/add-will-change.mjs.js.map +1 -0
- package/dist/node_modules/motion-dom/dist/es/value/will-change/is.mjs.js.map +1 -0
- package/dist/node_modules/motion-utils/dist/es/array.mjs.js.map +1 -1
- package/dist/node_modules/motion-utils/dist/es/clamp.mjs.js.map +1 -1
- package/dist/node_modules/motion-utils/dist/es/easing/anticipate.mjs.js +1 -1
- package/dist/node_modules/motion-utils/dist/es/easing/anticipate.mjs.js.map +1 -1
- package/dist/node_modules/motion-utils/dist/es/easing/back.mjs.js.map +1 -1
- package/dist/node_modules/motion-utils/dist/es/easing/circ.mjs.js.map +1 -1
- package/dist/node_modules/motion-utils/dist/es/easing/cubic-bezier.mjs.js.map +1 -1
- package/dist/node_modules/motion-utils/dist/es/easing/ease.mjs.js.map +1 -1
- package/dist/node_modules/motion-utils/dist/es/easing/modifiers/mirror.mjs.js.map +1 -1
- package/dist/node_modules/motion-utils/dist/es/easing/modifiers/reverse.mjs.js.map +1 -1
- package/dist/node_modules/motion-utils/dist/es/easing/utils/is-bezier-definition.mjs.js.map +1 -1
- package/dist/node_modules/motion-utils/dist/es/easing/utils/is-easing-array.mjs.js.map +1 -1
- package/dist/node_modules/motion-utils/dist/es/easing/utils/map.mjs.js +1 -1
- package/dist/node_modules/motion-utils/dist/es/easing/utils/map.mjs.js.map +1 -1
- package/dist/node_modules/motion-utils/dist/es/errors.mjs.js +1 -1
- package/dist/node_modules/motion-utils/dist/es/errors.mjs.js.map +1 -1
- package/dist/node_modules/motion-utils/dist/es/format-error-message.mjs.js +2 -0
- package/dist/node_modules/motion-utils/dist/es/format-error-message.mjs.js.map +1 -0
- package/dist/node_modules/motion-utils/dist/es/global-config.mjs.js.map +1 -1
- package/dist/node_modules/motion-utils/dist/es/is-numerical-string.mjs.js.map +1 -1
- package/dist/node_modules/motion-utils/dist/es/is-object.mjs.js +2 -0
- package/dist/node_modules/motion-utils/dist/es/is-object.mjs.js.map +1 -0
- package/dist/node_modules/motion-utils/dist/es/is-zero-value-string.mjs.js.map +1 -1
- package/dist/node_modules/motion-utils/dist/es/memo.mjs.js.map +1 -1
- package/dist/node_modules/motion-utils/dist/es/noop.mjs.js.map +1 -1
- package/dist/node_modules/motion-utils/dist/es/pipe.mjs.js +1 -1
- package/dist/node_modules/motion-utils/dist/es/pipe.mjs.js.map +1 -1
- package/dist/node_modules/motion-utils/dist/es/progress.mjs.js +1 -1
- package/dist/node_modules/motion-utils/dist/es/progress.mjs.js.map +1 -1
- package/dist/node_modules/motion-utils/dist/es/subscription-manager.mjs.js.map +1 -1
- package/dist/node_modules/motion-utils/dist/es/time-conversion.mjs.js.map +1 -1
- package/dist/node_modules/motion-utils/dist/es/velocity-per-second.mjs.js +1 -1
- package/dist/node_modules/motion-utils/dist/es/velocity-per-second.mjs.js.map +1 -1
- package/dist/node_modules/motion-utils/dist/es/warn-once.mjs.js +1 -1
- package/dist/node_modules/motion-utils/dist/es/warn-once.mjs.js.map +1 -1
- package/dist/node_modules/prop-types/index.js +1 -1
- package/dist/node_modules/prop-types/node_modules/react-is/index.js +1 -1
- package/dist/node_modules/react/cjs/react-jsx-runtime.development.js +1 -1
- package/dist/node_modules/react/cjs/react-jsx-runtime.development.js.map +1 -1
- package/dist/package.json.js +1 -1
- package/dist/services/user.js +1 -1
- package/dist/services/user.js.map +1 -1
- package/dist/utils/genericFunctions/summaryEvents.js +2 -0
- package/dist/utils/genericFunctions/summaryEvents.js.map +1 -0
- package/package.json +4 -4
- package/dist/node_modules/framer-motion/dist/es/animation/animate/single-value.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/animation/animate/single-value.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/animation/animators/waapi/utils/get-final-keyframe.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/animation/animators/waapi/utils/get-final-keyframe.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/animation/interfaces/motion-value.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/animation/interfaces/motion-value.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/animation/interfaces/visual-element-target.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/animation/interfaces/visual-element-target.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/animation/interfaces/visual-element-variant.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/animation/interfaces/visual-element-variant.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/animation/interfaces/visual-element.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/animation/optimized-appear/data-id.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/animation/optimized-appear/get-appear-id.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/animation/utils/default-transitions.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/animation/utils/default-transitions.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/animation/utils/is-animation-controls.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/animation/utils/is-keyframes-target.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/animation/utils/is-transition-defined.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/animation/utils/is-transition-defined.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/events/add-dom-event.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/motion/features/Feature.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/motion/utils/is-forced-motion-value.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/motion/utils/is-forced-motion-value.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/projection/animation/mix-values.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/projection/animation/mix-values.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/projection/geometry/conversion.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/projection/geometry/copy.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/projection/geometry/delta-apply.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/projection/geometry/delta-apply.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/projection/geometry/delta-calc.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/projection/geometry/delta-calc.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/projection/geometry/delta-remove.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/projection/geometry/delta-remove.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/projection/geometry/models.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/projection/geometry/utils.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/projection/node/DocumentProjectionNode.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/projection/node/DocumentProjectionNode.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/projection/node/HTMLProjectionNode.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/projection/node/create-projection-node.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/projection/node/create-projection-node.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/projection/node/state.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/projection/shared/stack.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/projection/shared/stack.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/projection/styles/scale-border-radius.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/projection/styles/scale-border-radius.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/projection/styles/scale-box-shadow.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/projection/styles/scale-box-shadow.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/projection/styles/scale-correction.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/projection/styles/scale-correction.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/projection/styles/transform.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/projection/utils/each-axis.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/projection/utils/has-transform.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/projection/utils/measure.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/VisualElement.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/render/VisualElement.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/components/create-factory.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/render/components/create-factory.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/components/motion/create.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/render/components/motion/create.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/dom/DOMVisualElement.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/render/dom/DOMVisualElement.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/dom/utils/camel-to-dash.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/dom/utils/is-svg-element.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/render/dom/utils/is-svg-element.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/html/HTMLVisualElement.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/render/html/HTMLVisualElement.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/html/config-motion.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/render/html/config-motion.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/html/utils/build-styles.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/render/html/utils/build-styles.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/html/utils/build-transform.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/render/html/utils/build-transform.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/html/utils/render.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/render/html/utils/render.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/html/utils/scrape-motion-values.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/render/html/utils/scrape-motion-values.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/store.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/svg/SVGVisualElement.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/render/svg/SVGVisualElement.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/svg/config-motion.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/render/svg/config-motion.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/svg/utils/build-attrs.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/render/svg/utils/build-attrs.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/svg/utils/camel-case-attrs.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/svg/utils/is-svg-tag.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/svg/utils/path.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/render/svg/utils/path.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/svg/utils/render.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/svg/utils/scrape-motion-values.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/render/svg/utils/scrape-motion-values.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/utils/animation-state.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/render/utils/animation-state.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/utils/compare-by-depth.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/utils/flat-tree.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/utils/get-variant-context.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/utils/is-controlling-variants.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/render/utils/is-controlling-variants.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/utils/is-variant-label.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/utils/motion-values.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/render/utils/motion-values.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/utils/resolve-dynamic-variants.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/utils/resolve-variants.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/utils/setters.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/render/utils/setters.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/render/utils/variant-props.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/utils/delay.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/utils/delay.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/utils/reduced-motion/index.mjs.js +0 -2
- package/dist/node_modules/framer-motion/dist/es/utils/reduced-motion/index.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/utils/reduced-motion/state.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/utils/shallow-compare.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/value/use-will-change/add-will-change.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/value/use-will-change/is.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/value/utils/is-motion-value.mjs.js.map +0 -1
- package/dist/node_modules/framer-motion/dist/es/value/utils/resolve-motion-value.mjs.js.map +0 -1
- package/dist/node_modules/motion-dom/dist/es/animation/drivers/driver-frameloop.mjs.js +0 -2
- package/dist/node_modules/motion-dom/dist/es/animation/drivers/driver-frameloop.mjs.js.map +0 -1
- package/dist/node_modules/motion-dom/dist/es/animation/generators/spring/defaults.mjs.js +0 -2
- package/dist/node_modules/motion-dom/dist/es/animation/generators/spring/defaults.mjs.js.map +0 -1
- package/dist/node_modules/motion-dom/dist/es/animation/generators/spring/find.mjs.js +0 -2
- package/dist/node_modules/motion-dom/dist/es/animation/generators/spring/find.mjs.js.map +0 -1
- package/dist/node_modules/motion-dom/dist/es/animation/generators/spring/index.mjs.js +0 -2
- package/dist/node_modules/motion-dom/dist/es/animation/generators/spring/index.mjs.js.map +0 -1
- /package/dist/node_modules/{framer-motion → motion-dom}/dist/es/animation/interfaces/visual-element.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion → motion-dom}/dist/es/animation/optimized-appear/data-id.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion → motion-dom}/dist/es/animation/optimized-appear/get-appear-id.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion → motion-dom}/dist/es/events/add-dom-event.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion → motion-dom}/dist/es/projection/geometry/conversion.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion → motion-dom}/dist/es/projection/geometry/copy.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion → motion-dom}/dist/es/projection/geometry/models.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion → motion-dom}/dist/es/projection/geometry/utils.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion → motion-dom}/dist/es/projection/node/HTMLProjectionNode.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion → motion-dom}/dist/es/projection/node/state.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion/dist/es/render → motion-dom/dist/es/projection}/utils/compare-by-depth.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion → motion-dom}/dist/es/projection/utils/each-axis.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion/dist/es/render → motion-dom/dist/es/projection}/utils/flat-tree.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion → motion-dom}/dist/es/projection/utils/has-transform.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion → motion-dom}/dist/es/projection/utils/measure.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion/dist/es/motion/features → motion-dom/dist/es/render}/Feature.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion → motion-dom}/dist/es/render/store.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion → motion-dom}/dist/es/render/svg/utils/camel-case-attrs.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion → motion-dom}/dist/es/render/svg/utils/is-svg-tag.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion → motion-dom}/dist/es/render/svg/utils/render.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion → motion-dom}/dist/es/render/utils/get-variant-context.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion/dist/es/animation → motion-dom/dist/es/render}/utils/is-animation-controls.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion/dist/es/animation → motion-dom/dist/es/render}/utils/is-keyframes-target.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion → motion-dom}/dist/es/render/utils/is-variant-label.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion/dist/es → motion-dom/dist/es/render}/utils/reduced-motion/state.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion → motion-dom}/dist/es/render/utils/resolve-dynamic-variants.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion → motion-dom}/dist/es/render/utils/resolve-variants.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion/dist/es → motion-dom/dist/es/render}/utils/shallow-compare.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion → motion-dom}/dist/es/render/utils/variant-props.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion → motion-dom}/dist/es/value/utils/is-motion-value.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion → motion-dom}/dist/es/value/utils/resolve-motion-value.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion/dist/es/value/use-will-change → motion-dom/dist/es/value/will-change}/add-will-change.mjs.js +0 -0
- /package/dist/node_modules/{framer-motion/dist/es/value/use-will-change → motion-dom/dist/es/value/will-change}/is.mjs.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs.js","sources":["../../../../node_modules/@fortawesome/fontawesome-svg-core/index.mjs"],"sourcesContent":["function ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n enumerableOnly && (symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n })), keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = null != arguments[i] ? arguments[i] : {};\n i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n\n return target;\n}\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}\n\nfunction _wrapRegExp() {\n _wrapRegExp = function (re, groups) {\n return new BabelRegExp(re, void 0, groups);\n };\n\n var _super = RegExp.prototype,\n _groups = new WeakMap();\n\n function BabelRegExp(re, flags, groups) {\n var _this = new RegExp(re, flags);\n\n return _groups.set(_this, groups || _groups.get(re)), _setPrototypeOf(_this, BabelRegExp.prototype);\n }\n\n function buildGroups(result, re) {\n var g = _groups.get(re);\n\n return Object.keys(g).reduce(function (groups, name) {\n return groups[name] = result[g[name]], groups;\n }, Object.create(null));\n }\n\n return _inherits(BabelRegExp, RegExp), BabelRegExp.prototype.exec = function (str) {\n var result = _super.exec.call(this, str);\n\n return result && (result.groups = buildGroups(result, this)), result;\n }, BabelRegExp.prototype[Symbol.replace] = function (str, substitution) {\n if (\"string\" == typeof substitution) {\n var groups = _groups.get(this);\n\n return _super[Symbol.replace].call(this, str, substitution.replace(/\\$<([^>]+)>/g, function (_, name) {\n return \"$\" + groups[name];\n }));\n }\n\n if (\"function\" == typeof substitution) {\n var _this = this;\n\n return _super[Symbol.replace].call(this, str, function () {\n var args = arguments;\n return \"object\" != typeof args[args.length - 1] && (args = [].slice.call(args)).push(buildGroups(args, _this)), substitution.apply(this, args);\n });\n }\n\n return _super[Symbol.replace].call(this, str, substitution);\n }, _wrapRegExp.apply(this, arguments);\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n}\n\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nfunction _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}\n\nfunction _iterableToArrayLimit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n\n var _s, _e;\n\n try {\n for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nvar noop = function noop() {};\n\nvar _WINDOW = {};\nvar _DOCUMENT = {};\nvar _MUTATION_OBSERVER = null;\nvar _PERFORMANCE = {\n mark: noop,\n measure: noop\n};\n\ntry {\n if (typeof window !== 'undefined') _WINDOW = window;\n if (typeof document !== 'undefined') _DOCUMENT = document;\n if (typeof MutationObserver !== 'undefined') _MUTATION_OBSERVER = MutationObserver;\n if (typeof performance !== 'undefined') _PERFORMANCE = performance;\n} catch (e) {}\n\nvar _ref = _WINDOW.navigator || {},\n _ref$userAgent = _ref.userAgent,\n userAgent = _ref$userAgent === void 0 ? '' : _ref$userAgent;\nvar WINDOW = _WINDOW;\nvar DOCUMENT = _DOCUMENT;\nvar MUTATION_OBSERVER = _MUTATION_OBSERVER;\nvar PERFORMANCE = _PERFORMANCE;\nvar IS_BROWSER = !!WINDOW.document;\nvar IS_DOM = !!DOCUMENT.documentElement && !!DOCUMENT.head && typeof DOCUMENT.addEventListener === 'function' && typeof DOCUMENT.createElement === 'function';\nvar IS_IE = ~userAgent.indexOf('MSIE') || ~userAgent.indexOf('Trident/');\n\nvar _familyProxy, _familyProxy2, _familyProxy3, _familyProxy4, _familyProxy5;\n\nvar NAMESPACE_IDENTIFIER = '___FONT_AWESOME___';\nvar UNITS_IN_GRID = 16;\nvar DEFAULT_CSS_PREFIX = 'fa';\nvar DEFAULT_REPLACEMENT_CLASS = 'svg-inline--fa';\nvar DATA_FA_I2SVG = 'data-fa-i2svg';\nvar DATA_FA_PSEUDO_ELEMENT = 'data-fa-pseudo-element';\nvar DATA_FA_PSEUDO_ELEMENT_PENDING = 'data-fa-pseudo-element-pending';\nvar DATA_PREFIX = 'data-prefix';\nvar DATA_ICON = 'data-icon';\nvar HTML_CLASS_I2SVG_BASE_CLASS = 'fontawesome-i2svg';\nvar MUTATION_APPROACH_ASYNC = 'async';\nvar TAGNAMES_TO_SKIP_FOR_PSEUDOELEMENTS = ['HTML', 'HEAD', 'STYLE', 'SCRIPT'];\nvar PRODUCTION = function () {\n try {\n return process.env.NODE_ENV === 'production';\n } catch (e) {\n return false;\n }\n}();\nvar FAMILY_CLASSIC = 'classic';\nvar FAMILY_SHARP = 'sharp';\nvar FAMILIES = [FAMILY_CLASSIC, FAMILY_SHARP];\n\nfunction familyProxy(obj) {\n // Defaults to the classic family if family is not available\n return new Proxy(obj, {\n get: function get(target, prop) {\n return prop in target ? target[prop] : target[FAMILY_CLASSIC];\n }\n });\n}\nvar PREFIX_TO_STYLE = familyProxy((_familyProxy = {}, _defineProperty(_familyProxy, FAMILY_CLASSIC, {\n 'fa': 'solid',\n 'fas': 'solid',\n 'fa-solid': 'solid',\n 'far': 'regular',\n 'fa-regular': 'regular',\n 'fal': 'light',\n 'fa-light': 'light',\n 'fat': 'thin',\n 'fa-thin': 'thin',\n 'fad': 'duotone',\n 'fa-duotone': 'duotone',\n 'fab': 'brands',\n 'fa-brands': 'brands',\n 'fak': 'kit',\n 'fa-kit': 'kit'\n}), _defineProperty(_familyProxy, FAMILY_SHARP, {\n 'fa': 'solid',\n 'fass': 'solid',\n 'fa-solid': 'solid'\n}), _familyProxy));\nvar STYLE_TO_PREFIX = familyProxy((_familyProxy2 = {}, _defineProperty(_familyProxy2, FAMILY_CLASSIC, {\n 'solid': 'fas',\n 'regular': 'far',\n 'light': 'fal',\n 'thin': 'fat',\n 'duotone': 'fad',\n 'brands': 'fab',\n 'kit': 'fak'\n}), _defineProperty(_familyProxy2, FAMILY_SHARP, {\n 'solid': 'fass'\n}), _familyProxy2));\nvar PREFIX_TO_LONG_STYLE = familyProxy((_familyProxy3 = {}, _defineProperty(_familyProxy3, FAMILY_CLASSIC, {\n 'fab': 'fa-brands',\n 'fad': 'fa-duotone',\n 'fak': 'fa-kit',\n 'fal': 'fa-light',\n 'far': 'fa-regular',\n 'fas': 'fa-solid',\n 'fat': 'fa-thin'\n}), _defineProperty(_familyProxy3, FAMILY_SHARP, {\n 'fass': 'fa-solid'\n}), _familyProxy3));\nvar LONG_STYLE_TO_PREFIX = familyProxy((_familyProxy4 = {}, _defineProperty(_familyProxy4, FAMILY_CLASSIC, {\n 'fa-brands': 'fab',\n 'fa-duotone': 'fad',\n 'fa-kit': 'fak',\n 'fa-light': 'fal',\n 'fa-regular': 'far',\n 'fa-solid': 'fas',\n 'fa-thin': 'fat'\n}), _defineProperty(_familyProxy4, FAMILY_SHARP, {\n 'fa-solid': 'fass'\n}), _familyProxy4));\nvar ICON_SELECTION_SYNTAX_PATTERN = /fa(s|r|l|t|d|b|k|ss)?[\\-\\ ]/; // eslint-disable-line no-useless-escape\n\nvar LAYERS_TEXT_CLASSNAME = 'fa-layers-text';\nvar FONT_FAMILY_PATTERN = /Font ?Awesome ?([56 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp|Kit)?.*/i; // TODO: this needs to support fass\n// TODO: do we need to handle font-weight for kit SVG pseudo-elements?\n\nvar FONT_WEIGHT_TO_PREFIX = familyProxy((_familyProxy5 = {}, _defineProperty(_familyProxy5, FAMILY_CLASSIC, {\n '900': 'fas',\n '400': 'far',\n 'normal': 'far',\n '300': 'fal',\n '100': 'fat'\n}), _defineProperty(_familyProxy5, FAMILY_SHARP, {\n '900': 'fass'\n}), _familyProxy5));\nvar oneToTen = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];\nvar oneToTwenty = oneToTen.concat([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]);\nvar ATTRIBUTES_WATCHED_FOR_MUTATION = ['class', 'data-prefix', 'data-icon', 'data-fa-transform', 'data-fa-mask'];\nvar DUOTONE_CLASSES = {\n GROUP: 'duotone-group',\n SWAP_OPACITY: 'swap-opacity',\n PRIMARY: 'primary',\n SECONDARY: 'secondary'\n};\nvar prefixes = new Set();\nObject.keys(STYLE_TO_PREFIX[FAMILY_CLASSIC]).map(prefixes.add.bind(prefixes));\nObject.keys(STYLE_TO_PREFIX[FAMILY_SHARP]).map(prefixes.add.bind(prefixes));\nvar RESERVED_CLASSES = [].concat(FAMILIES, _toConsumableArray(prefixes), ['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', DUOTONE_CLASSES.GROUP, DUOTONE_CLASSES.SWAP_OPACITY, DUOTONE_CLASSES.PRIMARY, DUOTONE_CLASSES.SECONDARY]).concat(oneToTen.map(function (n) {\n return \"\".concat(n, \"x\");\n})).concat(oneToTwenty.map(function (n) {\n return \"w-\".concat(n);\n}));\n\nvar initial = WINDOW.FontAwesomeConfig || {};\n\nfunction getAttrConfig(attr) {\n var element = DOCUMENT.querySelector('script[' + attr + ']');\n\n if (element) {\n return element.getAttribute(attr);\n }\n}\n\nfunction coerce(val) {\n // Getting an empty string will occur if the attribute is set on the HTML tag but without a value\n // We'll assume that this is an indication that it should be toggled to true\n if (val === '') return true;\n if (val === 'false') return false;\n if (val === 'true') return true;\n return val;\n}\n\nif (DOCUMENT && typeof DOCUMENT.querySelector === 'function') {\n var 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']];\n attrs.forEach(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n attr = _ref2[0],\n key = _ref2[1];\n\n var val = coerce(getAttrConfig(attr));\n\n if (val !== undefined && val !== null) {\n initial[key] = val;\n }\n });\n}\n\nvar _default = {\n styleDefault: 'solid',\n familyDefault: 'classic',\n cssPrefix: DEFAULT_CSS_PREFIX,\n replacementClass: DEFAULT_REPLACEMENT_CLASS,\n autoReplaceSvg: true,\n autoAddCss: true,\n autoA11y: true,\n searchPseudoElements: false,\n observeMutations: true,\n mutateApproach: 'async',\n keepOriginalSource: true,\n measurePerformance: false,\n showMissingIcons: true\n}; // familyPrefix is deprecated but we must still support it if present\n\nif (initial.familyPrefix) {\n initial.cssPrefix = initial.familyPrefix;\n}\n\nvar _config = _objectSpread2(_objectSpread2({}, _default), initial);\n\nif (!_config.autoReplaceSvg) _config.observeMutations = false;\nvar config = {};\nObject.keys(_default).forEach(function (key) {\n Object.defineProperty(config, key, {\n enumerable: true,\n set: function set(val) {\n _config[key] = val;\n\n _onChangeCb.forEach(function (cb) {\n return cb(config);\n });\n },\n get: function get() {\n return _config[key];\n }\n });\n}); // familyPrefix is deprecated as of 6.2.0 and should be removed in 7.0.0\n\nObject.defineProperty(config, 'familyPrefix', {\n enumerable: true,\n set: function set(val) {\n _config.cssPrefix = val;\n\n _onChangeCb.forEach(function (cb) {\n return cb(config);\n });\n },\n get: function get() {\n return _config.cssPrefix;\n }\n});\nWINDOW.FontAwesomeConfig = config;\nvar _onChangeCb = [];\nfunction onChange(cb) {\n _onChangeCb.push(cb);\n\n return function () {\n _onChangeCb.splice(_onChangeCb.indexOf(cb), 1);\n };\n}\n\nvar d = UNITS_IN_GRID;\nvar meaninglessTransform = {\n size: 16,\n x: 0,\n y: 0,\n rotate: 0,\n flipX: false,\n flipY: false\n};\nfunction insertCss(css) {\n if (!css || !IS_DOM) {\n return;\n }\n\n var style = DOCUMENT.createElement('style');\n style.setAttribute('type', 'text/css');\n style.innerHTML = css;\n var headChildren = DOCUMENT.head.childNodes;\n var beforeChild = null;\n\n for (var i = headChildren.length - 1; i > -1; i--) {\n var child = headChildren[i];\n var tagName = (child.tagName || '').toUpperCase();\n\n if (['STYLE', 'LINK'].indexOf(tagName) > -1) {\n beforeChild = child;\n }\n }\n\n DOCUMENT.head.insertBefore(style, beforeChild);\n return css;\n}\nvar idPool = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';\nfunction nextUniqueId() {\n var size = 12;\n var id = '';\n\n while (size-- > 0) {\n id += idPool[Math.random() * 62 | 0];\n }\n\n return id;\n}\nfunction toArray(obj) {\n var array = [];\n\n for (var i = (obj || []).length >>> 0; i--;) {\n array[i] = obj[i];\n }\n\n return array;\n}\nfunction classArray(node) {\n if (node.classList) {\n return toArray(node.classList);\n } else {\n return (node.getAttribute('class') || '').split(' ').filter(function (i) {\n return i;\n });\n }\n}\nfunction htmlEscape(str) {\n return \"\".concat(str).replace(/&/g, '&').replace(/\"/g, '"').replace(/'/g, ''').replace(/</g, '<').replace(/>/g, '>');\n}\nfunction joinAttributes(attributes) {\n return Object.keys(attributes || {}).reduce(function (acc, attributeName) {\n return acc + \"\".concat(attributeName, \"=\\\"\").concat(htmlEscape(attributes[attributeName]), \"\\\" \");\n }, '').trim();\n}\nfunction joinStyles(styles) {\n return Object.keys(styles || {}).reduce(function (acc, styleName) {\n return acc + \"\".concat(styleName, \": \").concat(styles[styleName].trim(), \";\");\n }, '');\n}\nfunction transformIsMeaningful(transform) {\n return transform.size !== meaninglessTransform.size || transform.x !== meaninglessTransform.x || transform.y !== meaninglessTransform.y || transform.rotate !== meaninglessTransform.rotate || transform.flipX || transform.flipY;\n}\nfunction transformForSvg(_ref) {\n var transform = _ref.transform,\n containerWidth = _ref.containerWidth,\n iconWidth = _ref.iconWidth;\n var outer = {\n transform: \"translate(\".concat(containerWidth / 2, \" 256)\")\n };\n var innerTranslate = \"translate(\".concat(transform.x * 32, \", \").concat(transform.y * 32, \") \");\n var innerScale = \"scale(\".concat(transform.size / 16 * (transform.flipX ? -1 : 1), \", \").concat(transform.size / 16 * (transform.flipY ? -1 : 1), \") \");\n var innerRotate = \"rotate(\".concat(transform.rotate, \" 0 0)\");\n var inner = {\n transform: \"\".concat(innerTranslate, \" \").concat(innerScale, \" \").concat(innerRotate)\n };\n var path = {\n transform: \"translate(\".concat(iconWidth / 2 * -1, \" -256)\")\n };\n return {\n outer: outer,\n inner: inner,\n path: path\n };\n}\nfunction transformForCss(_ref2) {\n var transform = _ref2.transform,\n _ref2$width = _ref2.width,\n width = _ref2$width === void 0 ? UNITS_IN_GRID : _ref2$width,\n _ref2$height = _ref2.height,\n height = _ref2$height === void 0 ? UNITS_IN_GRID : _ref2$height,\n _ref2$startCentered = _ref2.startCentered,\n startCentered = _ref2$startCentered === void 0 ? false : _ref2$startCentered;\n var val = '';\n\n if (startCentered && IS_IE) {\n val += \"translate(\".concat(transform.x / d - width / 2, \"em, \").concat(transform.y / d - height / 2, \"em) \");\n } else if (startCentered) {\n val += \"translate(calc(-50% + \".concat(transform.x / d, \"em), calc(-50% + \").concat(transform.y / d, \"em)) \");\n } else {\n val += \"translate(\".concat(transform.x / d, \"em, \").concat(transform.y / d, \"em) \");\n }\n\n val += \"scale(\".concat(transform.size / d * (transform.flipX ? -1 : 1), \", \").concat(transform.size / d * (transform.flipY ? -1 : 1), \") \");\n val += \"rotate(\".concat(transform.rotate, \"deg) \");\n return val;\n}\n\nvar baseStyles = \":root, :host {\\n --fa-font-solid: normal 900 1em/1 \\\"Font Awesome 6 Solid\\\";\\n --fa-font-regular: normal 400 1em/1 \\\"Font Awesome 6 Regular\\\";\\n --fa-font-light: normal 300 1em/1 \\\"Font Awesome 6 Light\\\";\\n --fa-font-thin: normal 100 1em/1 \\\"Font Awesome 6 Thin\\\";\\n --fa-font-duotone: normal 900 1em/1 \\\"Font Awesome 6 Duotone\\\";\\n --fa-font-sharp-solid: normal 900 1em/1 \\\"Font Awesome 6 Sharp\\\";\\n --fa-font-brands: normal 400 1em/1 \\\"Font Awesome 6 Brands\\\";\\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 -webkit-transform-origin: center center;\\n transform-origin: center center;\\n}\\n\\n.fa-layers-text {\\n left: 50%;\\n top: 50%;\\n -webkit-transform: translate(-50%, -50%);\\n transform: translate(-50%, -50%);\\n -webkit-transform-origin: center center;\\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 -webkit-transform: scale(var(--fa-counter-scale, 0.25));\\n transform: scale(var(--fa-counter-scale, 0.25));\\n -webkit-transform-origin: top right;\\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 -webkit-transform: scale(var(--fa-layers-scale, 0.25));\\n transform: scale(var(--fa-layers-scale, 0.25));\\n -webkit-transform-origin: bottom right;\\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 -webkit-transform: scale(var(--fa-layers-scale, 0.25));\\n transform: scale(var(--fa-layers-scale, 0.25));\\n -webkit-transform-origin: bottom left;\\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 -webkit-transform: scale(var(--fa-layers-scale, 0.25));\\n transform: scale(var(--fa-layers-scale, 0.25));\\n -webkit-transform-origin: top right;\\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 -webkit-transform: scale(var(--fa-layers-scale, 0.25));\\n transform: scale(var(--fa-layers-scale, 0.25));\\n -webkit-transform-origin: top left;\\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(var(--fa-li-width, 2em) * -1);\\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 -webkit-animation-name: fa-beat;\\n animation-name: fa-beat;\\n -webkit-animation-delay: var(--fa-animation-delay, 0s);\\n animation-delay: var(--fa-animation-delay, 0s);\\n -webkit-animation-direction: var(--fa-animation-direction, normal);\\n animation-direction: var(--fa-animation-direction, normal);\\n -webkit-animation-duration: var(--fa-animation-duration, 1s);\\n animation-duration: var(--fa-animation-duration, 1s);\\n -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n -webkit-animation-timing-function: var(--fa-animation-timing, ease-in-out);\\n animation-timing-function: var(--fa-animation-timing, ease-in-out);\\n}\\n\\n.fa-bounce {\\n -webkit-animation-name: fa-bounce;\\n animation-name: fa-bounce;\\n -webkit-animation-delay: var(--fa-animation-delay, 0s);\\n animation-delay: var(--fa-animation-delay, 0s);\\n -webkit-animation-direction: var(--fa-animation-direction, normal);\\n animation-direction: var(--fa-animation-direction, normal);\\n -webkit-animation-duration: var(--fa-animation-duration, 1s);\\n animation-duration: var(--fa-animation-duration, 1s);\\n -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n -webkit-animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));\\n animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));\\n}\\n\\n.fa-fade {\\n -webkit-animation-name: fa-fade;\\n animation-name: fa-fade;\\n -webkit-animation-delay: var(--fa-animation-delay, 0s);\\n animation-delay: var(--fa-animation-delay, 0s);\\n -webkit-animation-direction: var(--fa-animation-direction, normal);\\n animation-direction: var(--fa-animation-direction, normal);\\n -webkit-animation-duration: var(--fa-animation-duration, 1s);\\n animation-duration: var(--fa-animation-duration, 1s);\\n -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n -webkit-animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));\\n animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));\\n}\\n\\n.fa-beat-fade {\\n -webkit-animation-name: fa-beat-fade;\\n animation-name: fa-beat-fade;\\n -webkit-animation-delay: var(--fa-animation-delay, 0s);\\n animation-delay: var(--fa-animation-delay, 0s);\\n -webkit-animation-direction: var(--fa-animation-direction, normal);\\n animation-direction: var(--fa-animation-direction, normal);\\n -webkit-animation-duration: var(--fa-animation-duration, 1s);\\n animation-duration: var(--fa-animation-duration, 1s);\\n -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n -webkit-animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));\\n animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));\\n}\\n\\n.fa-flip {\\n -webkit-animation-name: fa-flip;\\n animation-name: fa-flip;\\n -webkit-animation-delay: var(--fa-animation-delay, 0s);\\n animation-delay: var(--fa-animation-delay, 0s);\\n -webkit-animation-direction: var(--fa-animation-direction, normal);\\n animation-direction: var(--fa-animation-direction, normal);\\n -webkit-animation-duration: var(--fa-animation-duration, 1s);\\n animation-duration: var(--fa-animation-duration, 1s);\\n -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n -webkit-animation-timing-function: var(--fa-animation-timing, ease-in-out);\\n animation-timing-function: var(--fa-animation-timing, ease-in-out);\\n}\\n\\n.fa-shake {\\n -webkit-animation-name: fa-shake;\\n animation-name: fa-shake;\\n -webkit-animation-delay: var(--fa-animation-delay, 0s);\\n animation-delay: var(--fa-animation-delay, 0s);\\n -webkit-animation-direction: var(--fa-animation-direction, normal);\\n animation-direction: var(--fa-animation-direction, normal);\\n -webkit-animation-duration: var(--fa-animation-duration, 1s);\\n animation-duration: var(--fa-animation-duration, 1s);\\n -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n -webkit-animation-timing-function: var(--fa-animation-timing, linear);\\n animation-timing-function: var(--fa-animation-timing, linear);\\n}\\n\\n.fa-spin {\\n -webkit-animation-name: fa-spin;\\n animation-name: fa-spin;\\n -webkit-animation-delay: var(--fa-animation-delay, 0s);\\n animation-delay: var(--fa-animation-delay, 0s);\\n -webkit-animation-direction: var(--fa-animation-direction, normal);\\n animation-direction: var(--fa-animation-direction, normal);\\n -webkit-animation-duration: var(--fa-animation-duration, 2s);\\n animation-duration: var(--fa-animation-duration, 2s);\\n -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n -webkit-animation-timing-function: var(--fa-animation-timing, linear);\\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 -webkit-animation-name: fa-spin;\\n animation-name: fa-spin;\\n -webkit-animation-direction: var(--fa-animation-direction, normal);\\n animation-direction: var(--fa-animation-direction, normal);\\n -webkit-animation-duration: var(--fa-animation-duration, 1s);\\n animation-duration: var(--fa-animation-duration, 1s);\\n -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n -webkit-animation-timing-function: var(--fa-animation-timing, steps(8));\\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 -webkit-animation-delay: -1ms;\\n animation-delay: -1ms;\\n -webkit-animation-duration: 1ms;\\n animation-duration: 1ms;\\n -webkit-animation-iteration-count: 1;\\n animation-iteration-count: 1;\\n transition-delay: 0s;\\n transition-duration: 0s;\\n }\\n}\\n@-webkit-keyframes fa-beat {\\n 0%, 90% {\\n -webkit-transform: scale(1);\\n transform: scale(1);\\n }\\n 45% {\\n -webkit-transform: scale(var(--fa-beat-scale, 1.25));\\n transform: scale(var(--fa-beat-scale, 1.25));\\n }\\n}\\n@keyframes fa-beat {\\n 0%, 90% {\\n -webkit-transform: scale(1);\\n transform: scale(1);\\n }\\n 45% {\\n -webkit-transform: scale(var(--fa-beat-scale, 1.25));\\n transform: scale(var(--fa-beat-scale, 1.25));\\n }\\n}\\n@-webkit-keyframes fa-bounce {\\n 0% {\\n -webkit-transform: scale(1, 1) translateY(0);\\n transform: scale(1, 1) translateY(0);\\n }\\n 10% {\\n -webkit-transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);\\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 -webkit-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 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 -webkit-transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);\\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 -webkit-transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));\\n transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));\\n }\\n 64% {\\n -webkit-transform: scale(1, 1) translateY(0);\\n transform: scale(1, 1) translateY(0);\\n }\\n 100% {\\n -webkit-transform: scale(1, 1) translateY(0);\\n transform: scale(1, 1) translateY(0);\\n }\\n}\\n@keyframes fa-bounce {\\n 0% {\\n -webkit-transform: scale(1, 1) translateY(0);\\n transform: scale(1, 1) translateY(0);\\n }\\n 10% {\\n -webkit-transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);\\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 -webkit-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 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 -webkit-transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);\\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 -webkit-transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));\\n transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));\\n }\\n 64% {\\n -webkit-transform: scale(1, 1) translateY(0);\\n transform: scale(1, 1) translateY(0);\\n }\\n 100% {\\n -webkit-transform: scale(1, 1) translateY(0);\\n transform: scale(1, 1) translateY(0);\\n }\\n}\\n@-webkit-keyframes fa-fade {\\n 50% {\\n opacity: var(--fa-fade-opacity, 0.4);\\n }\\n}\\n@keyframes fa-fade {\\n 50% {\\n opacity: var(--fa-fade-opacity, 0.4);\\n }\\n}\\n@-webkit-keyframes fa-beat-fade {\\n 0%, 100% {\\n opacity: var(--fa-beat-fade-opacity, 0.4);\\n -webkit-transform: scale(1);\\n transform: scale(1);\\n }\\n 50% {\\n opacity: 1;\\n -webkit-transform: scale(var(--fa-beat-fade-scale, 1.125));\\n transform: scale(var(--fa-beat-fade-scale, 1.125));\\n }\\n}\\n@keyframes fa-beat-fade {\\n 0%, 100% {\\n opacity: var(--fa-beat-fade-opacity, 0.4);\\n -webkit-transform: scale(1);\\n transform: scale(1);\\n }\\n 50% {\\n opacity: 1;\\n -webkit-transform: scale(var(--fa-beat-fade-scale, 1.125));\\n transform: scale(var(--fa-beat-fade-scale, 1.125));\\n }\\n}\\n@-webkit-keyframes fa-flip {\\n 50% {\\n -webkit-transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));\\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-flip {\\n 50% {\\n -webkit-transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));\\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@-webkit-keyframes fa-shake {\\n 0% {\\n -webkit-transform: rotate(-15deg);\\n transform: rotate(-15deg);\\n }\\n 4% {\\n -webkit-transform: rotate(15deg);\\n transform: rotate(15deg);\\n }\\n 8%, 24% {\\n -webkit-transform: rotate(-18deg);\\n transform: rotate(-18deg);\\n }\\n 12%, 28% {\\n -webkit-transform: rotate(18deg);\\n transform: rotate(18deg);\\n }\\n 16% {\\n -webkit-transform: rotate(-22deg);\\n transform: rotate(-22deg);\\n }\\n 20% {\\n -webkit-transform: rotate(22deg);\\n transform: rotate(22deg);\\n }\\n 32% {\\n -webkit-transform: rotate(-12deg);\\n transform: rotate(-12deg);\\n }\\n 36% {\\n -webkit-transform: rotate(12deg);\\n transform: rotate(12deg);\\n }\\n 40%, 100% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n}\\n@keyframes fa-shake {\\n 0% {\\n -webkit-transform: rotate(-15deg);\\n transform: rotate(-15deg);\\n }\\n 4% {\\n -webkit-transform: rotate(15deg);\\n transform: rotate(15deg);\\n }\\n 8%, 24% {\\n -webkit-transform: rotate(-18deg);\\n transform: rotate(-18deg);\\n }\\n 12%, 28% {\\n -webkit-transform: rotate(18deg);\\n transform: rotate(18deg);\\n }\\n 16% {\\n -webkit-transform: rotate(-22deg);\\n transform: rotate(-22deg);\\n }\\n 20% {\\n -webkit-transform: rotate(22deg);\\n transform: rotate(22deg);\\n }\\n 32% {\\n -webkit-transform: rotate(-12deg);\\n transform: rotate(-12deg);\\n }\\n 36% {\\n -webkit-transform: rotate(12deg);\\n transform: rotate(12deg);\\n }\\n 40%, 100% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n}\\n@-webkit-keyframes fa-spin {\\n 0% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n@keyframes fa-spin {\\n 0% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n.fa-rotate-90 {\\n -webkit-transform: rotate(90deg);\\n transform: rotate(90deg);\\n}\\n\\n.fa-rotate-180 {\\n -webkit-transform: rotate(180deg);\\n transform: rotate(180deg);\\n}\\n\\n.fa-rotate-270 {\\n -webkit-transform: rotate(270deg);\\n transform: rotate(270deg);\\n}\\n\\n.fa-flip-horizontal {\\n -webkit-transform: scale(-1, 1);\\n transform: scale(-1, 1);\\n}\\n\\n.fa-flip-vertical {\\n -webkit-transform: scale(1, -1);\\n transform: scale(1, -1);\\n}\\n\\n.fa-flip-both,\\n.fa-flip-horizontal.fa-flip-vertical {\\n -webkit-transform: scale(-1, -1);\\n transform: scale(-1, -1);\\n}\\n\\n.fa-rotate-by {\\n -webkit-transform: rotate(var(--fa-rotate-angle, none));\\n transform: rotate(var(--fa-rotate-angle, none));\\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}\\n\\n.fad.fa-inverse,\\n.fa-duotone.fa-inverse {\\n color: var(--fa-inverse, #fff);\\n}\";\n\nfunction css() {\n var dcp = DEFAULT_CSS_PREFIX;\n var drc = DEFAULT_REPLACEMENT_CLASS;\n var fp = config.cssPrefix;\n var rc = config.replacementClass;\n var s = baseStyles;\n\n if (fp !== dcp || rc !== drc) {\n var dPatt = new RegExp(\"\\\\.\".concat(dcp, \"\\\\-\"), 'g');\n var customPropPatt = new RegExp(\"\\\\--\".concat(dcp, \"\\\\-\"), 'g');\n var rPatt = new RegExp(\"\\\\.\".concat(drc), 'g');\n s = s.replace(dPatt, \".\".concat(fp, \"-\")).replace(customPropPatt, \"--\".concat(fp, \"-\")).replace(rPatt, \".\".concat(rc));\n }\n\n return s;\n}\n\nvar _cssInserted = false;\n\nfunction ensureCss() {\n if (config.autoAddCss && !_cssInserted) {\n insertCss(css());\n _cssInserted = true;\n }\n}\n\nvar InjectCSS = {\n mixout: function mixout() {\n return {\n dom: {\n css: css,\n insertCss: ensureCss\n }\n };\n },\n hooks: function hooks() {\n return {\n beforeDOMElementCreation: function beforeDOMElementCreation() {\n ensureCss();\n },\n beforeI2svg: function beforeI2svg() {\n ensureCss();\n }\n };\n }\n};\n\nvar w = WINDOW || {};\nif (!w[NAMESPACE_IDENTIFIER]) w[NAMESPACE_IDENTIFIER] = {};\nif (!w[NAMESPACE_IDENTIFIER].styles) w[NAMESPACE_IDENTIFIER].styles = {};\nif (!w[NAMESPACE_IDENTIFIER].hooks) w[NAMESPACE_IDENTIFIER].hooks = {};\nif (!w[NAMESPACE_IDENTIFIER].shims) w[NAMESPACE_IDENTIFIER].shims = [];\nvar namespace = w[NAMESPACE_IDENTIFIER];\n\nvar functions = [];\n\nvar listener = function listener() {\n DOCUMENT.removeEventListener('DOMContentLoaded', listener);\n loaded = 1;\n functions.map(function (fn) {\n return fn();\n });\n};\n\nvar loaded = false;\n\nif (IS_DOM) {\n loaded = (DOCUMENT.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(DOCUMENT.readyState);\n if (!loaded) DOCUMENT.addEventListener('DOMContentLoaded', listener);\n}\n\nfunction domready (fn) {\n if (!IS_DOM) return;\n loaded ? setTimeout(fn, 0) : functions.push(fn);\n}\n\nfunction toHtml(abstractNodes) {\n var tag = abstractNodes.tag,\n _abstractNodes$attrib = abstractNodes.attributes,\n attributes = _abstractNodes$attrib === void 0 ? {} : _abstractNodes$attrib,\n _abstractNodes$childr = abstractNodes.children,\n children = _abstractNodes$childr === void 0 ? [] : _abstractNodes$childr;\n\n if (typeof abstractNodes === 'string') {\n return htmlEscape(abstractNodes);\n } else {\n return \"<\".concat(tag, \" \").concat(joinAttributes(attributes), \">\").concat(children.map(toHtml).join(''), \"</\").concat(tag, \">\");\n }\n}\n\nfunction iconFromMapping(mapping, prefix, iconName) {\n if (mapping && mapping[prefix] && mapping[prefix][iconName]) {\n return {\n prefix: prefix,\n iconName: iconName,\n icon: mapping[prefix][iconName]\n };\n }\n}\n\n/**\n * Internal helper to bind a function known to have 4 arguments\n * to a given context.\n */\n\nvar bindInternal4 = function bindInternal4(func, thisContext) {\n return function (a, b, c, d) {\n return func.call(thisContext, a, b, c, d);\n };\n};\n\n/**\n * # Reduce\n *\n * A fast object `.reduce()` implementation.\n *\n * @param {Object} subject The object to reduce over.\n * @param {Function} fn The reducer function.\n * @param {mixed} initialValue The initial value for the reducer, defaults to subject[0].\n * @param {Object} thisContext The context for the reducer.\n * @return {mixed} The final result.\n */\n\n\nvar reduce = function fastReduceObject(subject, fn, initialValue, thisContext) {\n var keys = Object.keys(subject),\n length = keys.length,\n iterator = thisContext !== undefined ? bindInternal4(fn, thisContext) : fn,\n i,\n key,\n result;\n\n if (initialValue === undefined) {\n i = 1;\n result = subject[keys[0]];\n } else {\n i = 0;\n result = initialValue;\n }\n\n for (; i < length; i++) {\n key = keys[i];\n result = iterator(result, subject[key], key, subject);\n }\n\n return result;\n};\n\n/**\n * ucs2decode() and codePointAt() are both works of Mathias Bynens and licensed under MIT\n *\n * Copyright Mathias Bynens <https://mathiasbynens.be/>\n\n * Permission is hereby granted, free of charge, to any person obtaining\n * a copy of this software and associated documentation files (the\n * \"Software\"), to deal in the Software without restriction, including\n * without limitation the rights to use, copy, modify, merge, publish,\n * distribute, sublicense, and/or sell copies of the Software, and to\n * permit persons to whom the Software is furnished to do so, subject to\n * the following conditions:\n\n * The above copyright notice and this permission notice shall be\n * included in all copies or substantial portions of the Software.\n\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n */\nfunction ucs2decode(string) {\n var output = [];\n var counter = 0;\n var length = string.length;\n\n while (counter < length) {\n var value = string.charCodeAt(counter++);\n\n if (value >= 0xD800 && value <= 0xDBFF && counter < length) {\n var extra = string.charCodeAt(counter++);\n\n if ((extra & 0xFC00) == 0xDC00) {\n // eslint-disable-line eqeqeq\n output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);\n } else {\n output.push(value);\n counter--;\n }\n } else {\n output.push(value);\n }\n }\n\n return output;\n}\n\nfunction toHex(unicode) {\n var decoded = ucs2decode(unicode);\n return decoded.length === 1 ? decoded[0].toString(16) : null;\n}\nfunction codePointAt(string, index) {\n var size = string.length;\n var first = string.charCodeAt(index);\n var second;\n\n if (first >= 0xD800 && first <= 0xDBFF && size > index + 1) {\n second = string.charCodeAt(index + 1);\n\n if (second >= 0xDC00 && second <= 0xDFFF) {\n return (first - 0xD800) * 0x400 + second - 0xDC00 + 0x10000;\n }\n }\n\n return first;\n}\n\nfunction normalizeIcons(icons) {\n return Object.keys(icons).reduce(function (acc, iconName) {\n var icon = icons[iconName];\n var expanded = !!icon.icon;\n\n if (expanded) {\n acc[icon.iconName] = icon.icon;\n } else {\n acc[iconName] = icon;\n }\n\n return acc;\n }, {});\n}\n\nfunction defineIcons(prefix, icons) {\n var params = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var _params$skipHooks = params.skipHooks,\n skipHooks = _params$skipHooks === void 0 ? false : _params$skipHooks;\n var normalized = normalizeIcons(icons);\n\n if (typeof namespace.hooks.addPack === 'function' && !skipHooks) {\n namespace.hooks.addPack(prefix, normalizeIcons(icons));\n } else {\n namespace.styles[prefix] = _objectSpread2(_objectSpread2({}, namespace.styles[prefix] || {}), normalized);\n }\n /**\n * Font Awesome 4 used the prefix of `fa` for all icons. With the introduction\n * of new styles we needed to differentiate between them. Prefix `fa` is now an alias\n * for `fas` so we'll ease the upgrade process for our users by automatically defining\n * this as well.\n */\n\n\n if (prefix === 'fas') {\n defineIcons('fa', icons);\n }\n}\n\nvar duotonePathRe = [/*#__PURE__*/_wrapRegExp(/path d=\"((?:(?!\")[\\s\\S])+)\".*path d=\"((?:(?!\")[\\s\\S])+)\"/, {\n d1: 1,\n d2: 2\n}), /*#__PURE__*/_wrapRegExp(/path class=\"((?:(?!\")[\\s\\S])+)\".*d=\"((?:(?!\")[\\s\\S])+)\".*path class=\"((?:(?!\")[\\s\\S])+)\".*d=\"((?:(?!\")[\\s\\S])+)\"/, {\n cls1: 1,\n d1: 2,\n cls2: 3,\n d2: 4\n}), /*#__PURE__*/_wrapRegExp(/path class=\"((?:(?!\")[\\s\\S])+)\".*d=\"((?:(?!\")[\\s\\S])+)\"/, {\n cls1: 1,\n d1: 2\n})];\n\nvar _LONG_STYLE, _PREFIXES, _PREFIXES_FOR_FAMILY;\nvar styles = namespace.styles,\n shims = namespace.shims;\nvar LONG_STYLE = (_LONG_STYLE = {}, _defineProperty(_LONG_STYLE, FAMILY_CLASSIC, Object.values(PREFIX_TO_LONG_STYLE[FAMILY_CLASSIC])), _defineProperty(_LONG_STYLE, FAMILY_SHARP, Object.values(PREFIX_TO_LONG_STYLE[FAMILY_SHARP])), _LONG_STYLE);\nvar _defaultUsablePrefix = null;\nvar _byUnicode = {};\nvar _byLigature = {};\nvar _byOldName = {};\nvar _byOldUnicode = {};\nvar _byAlias = {};\nvar PREFIXES = (_PREFIXES = {}, _defineProperty(_PREFIXES, FAMILY_CLASSIC, Object.keys(PREFIX_TO_STYLE[FAMILY_CLASSIC])), _defineProperty(_PREFIXES, FAMILY_SHARP, Object.keys(PREFIX_TO_STYLE[FAMILY_SHARP])), _PREFIXES);\n\nfunction isReserved(name) {\n return ~RESERVED_CLASSES.indexOf(name);\n}\n\nfunction getIconName(cssPrefix, cls) {\n var parts = cls.split('-');\n var prefix = parts[0];\n var iconName = parts.slice(1).join('-');\n\n if (prefix === cssPrefix && iconName !== '' && !isReserved(iconName)) {\n return iconName;\n } else {\n return null;\n }\n}\nvar build = function build() {\n var lookup = function lookup(reducer) {\n return reduce(styles, function (o, style, prefix) {\n o[prefix] = reduce(style, reducer, {});\n return o;\n }, {});\n };\n\n _byUnicode = lookup(function (acc, icon, iconName) {\n if (icon[3]) {\n acc[icon[3]] = iconName;\n }\n\n if (icon[2]) {\n var aliases = icon[2].filter(function (a) {\n return typeof a === 'number';\n });\n aliases.forEach(function (alias) {\n acc[alias.toString(16)] = iconName;\n });\n }\n\n return acc;\n });\n _byLigature = lookup(function (acc, icon, iconName) {\n acc[iconName] = iconName;\n\n if (icon[2]) {\n var aliases = icon[2].filter(function (a) {\n return typeof a === 'string';\n });\n aliases.forEach(function (alias) {\n acc[alias] = iconName;\n });\n }\n\n return acc;\n });\n _byAlias = lookup(function (acc, icon, iconName) {\n var aliases = icon[2];\n acc[iconName] = iconName;\n aliases.forEach(function (alias) {\n acc[alias] = iconName;\n });\n return acc;\n }); // If we have a Kit, we can't determine if regular is available since we\n // could be auto-fetching it. We'll have to assume that it is available.\n\n var hasRegular = 'far' in styles || config.autoFetchSvg;\n var shimLookups = reduce(shims, function (acc, shim) {\n var maybeNameMaybeUnicode = shim[0];\n var prefix = shim[1];\n var iconName = shim[2];\n\n if (prefix === 'far' && !hasRegular) {\n prefix = 'fas';\n }\n\n if (typeof maybeNameMaybeUnicode === 'string') {\n acc.names[maybeNameMaybeUnicode] = {\n prefix: prefix,\n iconName: iconName\n };\n }\n\n if (typeof maybeNameMaybeUnicode === 'number') {\n acc.unicodes[maybeNameMaybeUnicode.toString(16)] = {\n prefix: prefix,\n iconName: iconName\n };\n }\n\n return acc;\n }, {\n names: {},\n unicodes: {}\n });\n _byOldName = shimLookups.names;\n _byOldUnicode = shimLookups.unicodes;\n _defaultUsablePrefix = getCanonicalPrefix(config.styleDefault, {\n family: config.familyDefault\n });\n};\nonChange(function (c) {\n _defaultUsablePrefix = getCanonicalPrefix(c.styleDefault, {\n family: config.familyDefault\n });\n});\nbuild();\nfunction byUnicode(prefix, unicode) {\n return (_byUnicode[prefix] || {})[unicode];\n}\nfunction byLigature(prefix, ligature) {\n return (_byLigature[prefix] || {})[ligature];\n}\nfunction byAlias(prefix, alias) {\n return (_byAlias[prefix] || {})[alias];\n}\nfunction byOldName(name) {\n return _byOldName[name] || {\n prefix: null,\n iconName: null\n };\n}\nfunction byOldUnicode(unicode) {\n var oldUnicode = _byOldUnicode[unicode];\n var newUnicode = byUnicode('fas', unicode);\n return oldUnicode || (newUnicode ? {\n prefix: 'fas',\n iconName: newUnicode\n } : null) || {\n prefix: null,\n iconName: null\n };\n}\nfunction getDefaultUsablePrefix() {\n return _defaultUsablePrefix;\n}\nvar emptyCanonicalIcon = function emptyCanonicalIcon() {\n return {\n prefix: null,\n iconName: null,\n rest: []\n };\n};\nfunction getCanonicalPrefix(styleOrPrefix) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$family = params.family,\n family = _params$family === void 0 ? FAMILY_CLASSIC : _params$family;\n var style = PREFIX_TO_STYLE[family][styleOrPrefix];\n var prefix = STYLE_TO_PREFIX[family][styleOrPrefix] || STYLE_TO_PREFIX[family][style];\n var defined = styleOrPrefix in namespace.styles ? styleOrPrefix : null;\n return prefix || defined || null;\n}\nvar PREFIXES_FOR_FAMILY = (_PREFIXES_FOR_FAMILY = {}, _defineProperty(_PREFIXES_FOR_FAMILY, FAMILY_CLASSIC, Object.keys(PREFIX_TO_LONG_STYLE[FAMILY_CLASSIC])), _defineProperty(_PREFIXES_FOR_FAMILY, FAMILY_SHARP, Object.keys(PREFIX_TO_LONG_STYLE[FAMILY_SHARP])), _PREFIXES_FOR_FAMILY);\nfunction getCanonicalIcon(values) {\n var _famProps;\n\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$skipLookups = params.skipLookups,\n skipLookups = _params$skipLookups === void 0 ? false : _params$skipLookups;\n var famProps = (_famProps = {}, _defineProperty(_famProps, FAMILY_CLASSIC, \"\".concat(config.cssPrefix, \"-\").concat(FAMILY_CLASSIC)), _defineProperty(_famProps, FAMILY_SHARP, \"\".concat(config.cssPrefix, \"-\").concat(FAMILY_SHARP)), _famProps);\n var givenPrefix = null;\n var family = FAMILY_CLASSIC;\n\n if (values.includes(famProps[FAMILY_CLASSIC]) || values.some(function (v) {\n return PREFIXES_FOR_FAMILY[FAMILY_CLASSIC].includes(v);\n })) {\n family = FAMILY_CLASSIC;\n }\n\n if (values.includes(famProps[FAMILY_SHARP]) || values.some(function (v) {\n return PREFIXES_FOR_FAMILY[FAMILY_SHARP].includes(v);\n })) {\n family = FAMILY_SHARP;\n }\n\n var canonical = values.reduce(function (acc, cls) {\n var iconName = getIconName(config.cssPrefix, cls);\n\n if (styles[cls]) {\n cls = LONG_STYLE[family].includes(cls) ? LONG_STYLE_TO_PREFIX[family][cls] : cls;\n givenPrefix = cls;\n acc.prefix = cls;\n } else if (PREFIXES[family].indexOf(cls) > -1) {\n givenPrefix = cls;\n acc.prefix = getCanonicalPrefix(cls, {\n family: family\n });\n } else if (iconName) {\n acc.iconName = iconName;\n } else if (cls !== config.replacementClass && cls !== famProps[FAMILY_CLASSIC] && cls !== famProps[FAMILY_SHARP]) {\n acc.rest.push(cls);\n }\n\n if (!skipLookups && acc.prefix && acc.iconName) {\n var shim = givenPrefix === 'fa' ? byOldName(acc.iconName) : {};\n var aliasIconName = byAlias(acc.prefix, acc.iconName);\n\n if (shim.prefix) {\n givenPrefix = null;\n }\n\n acc.iconName = shim.iconName || aliasIconName || acc.iconName;\n acc.prefix = shim.prefix || acc.prefix;\n\n if (acc.prefix === 'far' && !styles['far'] && styles['fas'] && !config.autoFetchSvg) {\n // Allow a fallback from the regular style to solid if regular is not available\n // but only if we aren't auto-fetching SVGs\n acc.prefix = 'fas';\n }\n }\n\n return acc;\n }, emptyCanonicalIcon());\n\n if (values.includes('fa-brands') || values.includes('fab')) {\n canonical.prefix = 'fab';\n }\n\n if (values.includes('fa-duotone') || values.includes('fad')) {\n canonical.prefix = 'fad';\n }\n\n if (!canonical.prefix && family === FAMILY_SHARP && (styles['fass'] || config.autoFetchSvg)) {\n canonical.prefix = 'fass';\n canonical.iconName = byAlias(canonical.prefix, canonical.iconName) || canonical.iconName;\n }\n\n if (canonical.prefix === 'fa' || givenPrefix === 'fa') {\n // The fa prefix is not canonical. So if it has made it through until this point\n // we will shift it to the correct prefix.\n canonical.prefix = getDefaultUsablePrefix() || 'fas';\n }\n\n return canonical;\n}\n\nvar Library = /*#__PURE__*/function () {\n function Library() {\n _classCallCheck(this, Library);\n\n this.definitions = {};\n }\n\n _createClass(Library, [{\n key: \"add\",\n value: function add() {\n var _this = this;\n\n for (var _len = arguments.length, definitions = new Array(_len), _key = 0; _key < _len; _key++) {\n definitions[_key] = arguments[_key];\n }\n\n var additions = definitions.reduce(this._pullDefinitions, {});\n Object.keys(additions).forEach(function (key) {\n _this.definitions[key] = _objectSpread2(_objectSpread2({}, _this.definitions[key] || {}), additions[key]);\n defineIcons(key, additions[key]); // TODO can we stop doing this? We can't get the icons by 'fa-solid' any longer so this probably needs to change\n\n var longPrefix = PREFIX_TO_LONG_STYLE[FAMILY_CLASSIC][key];\n if (longPrefix) defineIcons(longPrefix, additions[key]);\n build();\n });\n }\n }, {\n key: \"reset\",\n value: function reset() {\n this.definitions = {};\n }\n }, {\n key: \"_pullDefinitions\",\n value: function _pullDefinitions(additions, definition) {\n var normalized = definition.prefix && definition.iconName && definition.icon ? {\n 0: definition\n } : definition;\n Object.keys(normalized).map(function (key) {\n var _normalized$key = normalized[key],\n prefix = _normalized$key.prefix,\n iconName = _normalized$key.iconName,\n icon = _normalized$key.icon;\n var aliases = icon[2];\n if (!additions[prefix]) additions[prefix] = {};\n\n if (aliases.length > 0) {\n aliases.forEach(function (alias) {\n if (typeof alias === 'string') {\n additions[prefix][alias] = icon;\n }\n });\n }\n\n additions[prefix][iconName] = icon;\n });\n return additions;\n }\n }]);\n\n return Library;\n}();\n\nvar _plugins = [];\nvar _hooks = {};\nvar providers = {};\nvar defaultProviderKeys = Object.keys(providers);\nfunction registerPlugins(nextPlugins, _ref) {\n var obj = _ref.mixoutsTo;\n _plugins = nextPlugins;\n _hooks = {};\n Object.keys(providers).forEach(function (k) {\n if (defaultProviderKeys.indexOf(k) === -1) {\n delete providers[k];\n }\n });\n\n _plugins.forEach(function (plugin) {\n var mixout = plugin.mixout ? plugin.mixout() : {};\n Object.keys(mixout).forEach(function (tk) {\n if (typeof mixout[tk] === 'function') {\n obj[tk] = mixout[tk];\n }\n\n if (_typeof(mixout[tk]) === 'object') {\n Object.keys(mixout[tk]).forEach(function (sk) {\n if (!obj[tk]) {\n obj[tk] = {};\n }\n\n obj[tk][sk] = mixout[tk][sk];\n });\n }\n });\n\n if (plugin.hooks) {\n var hooks = plugin.hooks();\n Object.keys(hooks).forEach(function (hook) {\n if (!_hooks[hook]) {\n _hooks[hook] = [];\n }\n\n _hooks[hook].push(hooks[hook]);\n });\n }\n\n if (plugin.provides) {\n plugin.provides(providers);\n }\n });\n\n return obj;\n}\nfunction chainHooks(hook, accumulator) {\n for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {\n args[_key - 2] = arguments[_key];\n }\n\n var hookFns = _hooks[hook] || [];\n hookFns.forEach(function (hookFn) {\n accumulator = hookFn.apply(null, [accumulator].concat(args)); // eslint-disable-line no-useless-call\n });\n return accumulator;\n}\nfunction callHooks(hook) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n\n var hookFns = _hooks[hook] || [];\n hookFns.forEach(function (hookFn) {\n hookFn.apply(null, args);\n });\n return undefined;\n}\nfunction callProvided() {\n var hook = arguments[0];\n var args = Array.prototype.slice.call(arguments, 1);\n return providers[hook] ? providers[hook].apply(null, args) : undefined;\n}\n\nfunction findIconDefinition(iconLookup) {\n if (iconLookup.prefix === 'fa') {\n iconLookup.prefix = 'fas';\n }\n\n var iconName = iconLookup.iconName;\n var prefix = iconLookup.prefix || getDefaultUsablePrefix();\n if (!iconName) return;\n iconName = byAlias(prefix, iconName) || iconName;\n return iconFromMapping(library.definitions, prefix, iconName) || iconFromMapping(namespace.styles, prefix, iconName);\n}\nvar library = new Library();\nvar noAuto = function noAuto() {\n config.autoReplaceSvg = false;\n config.observeMutations = false;\n callHooks('noAuto');\n};\nvar dom = {\n i2svg: function i2svg() {\n var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n if (IS_DOM) {\n callHooks('beforeI2svg', params);\n callProvided('pseudoElements2svg', params);\n return callProvided('i2svg', params);\n } else {\n return Promise.reject('Operation requires a DOM of some kind.');\n }\n },\n watch: function watch() {\n var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var autoReplaceSvgRoot = params.autoReplaceSvgRoot;\n\n if (config.autoReplaceSvg === false) {\n config.autoReplaceSvg = true;\n }\n\n config.observeMutations = true;\n domready(function () {\n autoReplace({\n autoReplaceSvgRoot: autoReplaceSvgRoot\n });\n callHooks('watch', params);\n });\n }\n};\nvar parse = {\n icon: function icon(_icon) {\n if (_icon === null) {\n return null;\n }\n\n if (_typeof(_icon) === 'object' && _icon.prefix && _icon.iconName) {\n return {\n prefix: _icon.prefix,\n iconName: byAlias(_icon.prefix, _icon.iconName) || _icon.iconName\n };\n }\n\n if (Array.isArray(_icon) && _icon.length === 2) {\n var iconName = _icon[1].indexOf('fa-') === 0 ? _icon[1].slice(3) : _icon[1];\n var prefix = getCanonicalPrefix(_icon[0]);\n return {\n prefix: prefix,\n iconName: byAlias(prefix, iconName) || iconName\n };\n }\n\n if (typeof _icon === 'string' && (_icon.indexOf(\"\".concat(config.cssPrefix, \"-\")) > -1 || _icon.match(ICON_SELECTION_SYNTAX_PATTERN))) {\n var canonicalIcon = getCanonicalIcon(_icon.split(' '), {\n skipLookups: true\n });\n return {\n prefix: canonicalIcon.prefix || getDefaultUsablePrefix(),\n iconName: byAlias(canonicalIcon.prefix, canonicalIcon.iconName) || canonicalIcon.iconName\n };\n }\n\n if (typeof _icon === 'string') {\n var _prefix = getDefaultUsablePrefix();\n\n return {\n prefix: _prefix,\n iconName: byAlias(_prefix, _icon) || _icon\n };\n }\n }\n};\nvar api = {\n noAuto: noAuto,\n config: config,\n dom: dom,\n parse: parse,\n library: library,\n findIconDefinition: findIconDefinition,\n toHtml: toHtml\n};\n\nvar autoReplace = function autoReplace() {\n var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _params$autoReplaceSv = params.autoReplaceSvgRoot,\n autoReplaceSvgRoot = _params$autoReplaceSv === void 0 ? DOCUMENT : _params$autoReplaceSv;\n if ((Object.keys(namespace.styles).length > 0 || config.autoFetchSvg) && IS_DOM && config.autoReplaceSvg) api.dom.i2svg({\n node: autoReplaceSvgRoot\n });\n};\n\nfunction domVariants(val, abstractCreator) {\n Object.defineProperty(val, 'abstract', {\n get: abstractCreator\n });\n Object.defineProperty(val, 'html', {\n get: function get() {\n return val.abstract.map(function (a) {\n return toHtml(a);\n });\n }\n });\n Object.defineProperty(val, 'node', {\n get: function get() {\n if (!IS_DOM) return;\n var container = DOCUMENT.createElement('div');\n container.innerHTML = val.html;\n return container.children;\n }\n });\n return val;\n}\n\nfunction asIcon (_ref) {\n var children = _ref.children,\n main = _ref.main,\n mask = _ref.mask,\n attributes = _ref.attributes,\n styles = _ref.styles,\n transform = _ref.transform;\n\n if (transformIsMeaningful(transform) && main.found && !mask.found) {\n var width = main.width,\n height = main.height;\n var offset = {\n x: width / height / 2,\n y: 0.5\n };\n attributes['style'] = joinStyles(_objectSpread2(_objectSpread2({}, styles), {}, {\n 'transform-origin': \"\".concat(offset.x + transform.x / 16, \"em \").concat(offset.y + transform.y / 16, \"em\")\n }));\n }\n\n return [{\n tag: 'svg',\n attributes: attributes,\n children: children\n }];\n}\n\nfunction asSymbol (_ref) {\n var prefix = _ref.prefix,\n iconName = _ref.iconName,\n children = _ref.children,\n attributes = _ref.attributes,\n symbol = _ref.symbol;\n var id = symbol === true ? \"\".concat(prefix, \"-\").concat(config.cssPrefix, \"-\").concat(iconName) : symbol;\n return [{\n tag: 'svg',\n attributes: {\n style: 'display: none;'\n },\n children: [{\n tag: 'symbol',\n attributes: _objectSpread2(_objectSpread2({}, attributes), {}, {\n id: id\n }),\n children: children\n }]\n }];\n}\n\nfunction makeInlineSvgAbstract(params) {\n var _params$icons = params.icons,\n main = _params$icons.main,\n mask = _params$icons.mask,\n prefix = params.prefix,\n iconName = params.iconName,\n transform = params.transform,\n symbol = params.symbol,\n title = params.title,\n maskId = params.maskId,\n titleId = params.titleId,\n extra = params.extra,\n _params$watchable = params.watchable,\n watchable = _params$watchable === void 0 ? false : _params$watchable;\n\n var _ref = mask.found ? mask : main,\n width = _ref.width,\n height = _ref.height;\n\n var isUploadedIcon = prefix === 'fak';\n var attrClass = [config.replacementClass, iconName ? \"\".concat(config.cssPrefix, \"-\").concat(iconName) : ''].filter(function (c) {\n return extra.classes.indexOf(c) === -1;\n }).filter(function (c) {\n return c !== '' || !!c;\n }).concat(extra.classes).join(' ');\n var content = {\n children: [],\n attributes: _objectSpread2(_objectSpread2({}, extra.attributes), {}, {\n 'data-prefix': prefix,\n 'data-icon': iconName,\n 'class': attrClass,\n 'role': extra.attributes.role || 'img',\n 'xmlns': 'http://www.w3.org/2000/svg',\n 'viewBox': \"0 0 \".concat(width, \" \").concat(height)\n })\n };\n var uploadedIconWidthStyle = isUploadedIcon && !~extra.classes.indexOf('fa-fw') ? {\n width: \"\".concat(width / height * 16 * 0.0625, \"em\")\n } : {};\n\n if (watchable) {\n content.attributes[DATA_FA_I2SVG] = '';\n }\n\n if (title) {\n content.children.push({\n tag: 'title',\n attributes: {\n id: content.attributes['aria-labelledby'] || \"title-\".concat(titleId || nextUniqueId())\n },\n children: [title]\n });\n delete content.attributes.title;\n }\n\n var args = _objectSpread2(_objectSpread2({}, content), {}, {\n prefix: prefix,\n iconName: iconName,\n main: main,\n mask: mask,\n maskId: maskId,\n transform: transform,\n symbol: symbol,\n styles: _objectSpread2(_objectSpread2({}, uploadedIconWidthStyle), extra.styles)\n });\n\n var _ref2 = mask.found && main.found ? callProvided('generateAbstractMask', args) || {\n children: [],\n attributes: {}\n } : callProvided('generateAbstractIcon', args) || {\n children: [],\n attributes: {}\n },\n children = _ref2.children,\n attributes = _ref2.attributes;\n\n args.children = children;\n args.attributes = attributes;\n\n if (symbol) {\n return asSymbol(args);\n } else {\n return asIcon(args);\n }\n}\nfunction makeLayersTextAbstract(params) {\n var content = params.content,\n width = params.width,\n height = params.height,\n transform = params.transform,\n title = params.title,\n extra = params.extra,\n _params$watchable2 = params.watchable,\n watchable = _params$watchable2 === void 0 ? false : _params$watchable2;\n\n var attributes = _objectSpread2(_objectSpread2(_objectSpread2({}, extra.attributes), title ? {\n 'title': title\n } : {}), {}, {\n 'class': extra.classes.join(' ')\n });\n\n if (watchable) {\n attributes[DATA_FA_I2SVG] = '';\n }\n\n var styles = _objectSpread2({}, extra.styles);\n\n if (transformIsMeaningful(transform)) {\n styles['transform'] = transformForCss({\n transform: transform,\n startCentered: true,\n width: width,\n height: height\n });\n styles['-webkit-transform'] = styles['transform'];\n }\n\n var styleString = joinStyles(styles);\n\n if (styleString.length > 0) {\n attributes['style'] = styleString;\n }\n\n var val = [];\n val.push({\n tag: 'span',\n attributes: attributes,\n children: [content]\n });\n\n if (title) {\n val.push({\n tag: 'span',\n attributes: {\n class: 'sr-only'\n },\n children: [title]\n });\n }\n\n return val;\n}\nfunction makeLayersCounterAbstract(params) {\n var content = params.content,\n title = params.title,\n extra = params.extra;\n\n var attributes = _objectSpread2(_objectSpread2(_objectSpread2({}, extra.attributes), title ? {\n 'title': title\n } : {}), {}, {\n 'class': extra.classes.join(' ')\n });\n\n var styleString = joinStyles(extra.styles);\n\n if (styleString.length > 0) {\n attributes['style'] = styleString;\n }\n\n var val = [];\n val.push({\n tag: 'span',\n attributes: attributes,\n children: [content]\n });\n\n if (title) {\n val.push({\n tag: 'span',\n attributes: {\n class: 'sr-only'\n },\n children: [title]\n });\n }\n\n return val;\n}\n\nvar styles$1 = namespace.styles;\nfunction asFoundIcon(icon) {\n var width = icon[0];\n var height = icon[1];\n\n var _icon$slice = icon.slice(4),\n _icon$slice2 = _slicedToArray(_icon$slice, 1),\n vectorData = _icon$slice2[0];\n\n var element = null;\n\n if (Array.isArray(vectorData)) {\n element = {\n tag: 'g',\n attributes: {\n class: \"\".concat(config.cssPrefix, \"-\").concat(DUOTONE_CLASSES.GROUP)\n },\n children: [{\n tag: 'path',\n attributes: {\n class: \"\".concat(config.cssPrefix, \"-\").concat(DUOTONE_CLASSES.SECONDARY),\n fill: 'currentColor',\n d: vectorData[0]\n }\n }, {\n tag: 'path',\n attributes: {\n class: \"\".concat(config.cssPrefix, \"-\").concat(DUOTONE_CLASSES.PRIMARY),\n fill: 'currentColor',\n d: vectorData[1]\n }\n }]\n };\n } else {\n element = {\n tag: 'path',\n attributes: {\n fill: 'currentColor',\n d: vectorData\n }\n };\n }\n\n return {\n found: true,\n width: width,\n height: height,\n icon: element\n };\n}\nvar missingIconResolutionMixin = {\n found: false,\n width: 512,\n height: 512\n};\n\nfunction maybeNotifyMissing(iconName, prefix) {\n if (!PRODUCTION && !config.showMissingIcons && iconName) {\n console.error(\"Icon with name \\\"\".concat(iconName, \"\\\" and prefix \\\"\").concat(prefix, \"\\\" is missing.\"));\n }\n}\n\nfunction findIcon(iconName, prefix) {\n var givenPrefix = prefix;\n\n if (prefix === 'fa' && config.styleDefault !== null) {\n prefix = getDefaultUsablePrefix();\n }\n\n return new Promise(function (resolve, reject) {\n var val = {\n found: false,\n width: 512,\n height: 512,\n icon: callProvided('missingIconAbstract') || {}\n };\n\n if (givenPrefix === 'fa') {\n var shim = byOldName(iconName) || {};\n iconName = shim.iconName || iconName;\n prefix = shim.prefix || prefix;\n }\n\n if (iconName && prefix && styles$1[prefix] && styles$1[prefix][iconName]) {\n var icon = styles$1[prefix][iconName];\n return resolve(asFoundIcon(icon));\n }\n\n maybeNotifyMissing(iconName, prefix);\n resolve(_objectSpread2(_objectSpread2({}, missingIconResolutionMixin), {}, {\n icon: config.showMissingIcons && iconName ? callProvided('missingIconAbstract') || {} : {}\n }));\n });\n}\n\nvar noop$1 = function noop() {};\n\nvar p = config.measurePerformance && PERFORMANCE && PERFORMANCE.mark && PERFORMANCE.measure ? PERFORMANCE : {\n mark: noop$1,\n measure: noop$1\n};\nvar preamble = \"FA \\\"6.2.1\\\"\";\n\nvar begin = function begin(name) {\n p.mark(\"\".concat(preamble, \" \").concat(name, \" begins\"));\n return function () {\n return end(name);\n };\n};\n\nvar end = function end(name) {\n p.mark(\"\".concat(preamble, \" \").concat(name, \" ends\"));\n p.measure(\"\".concat(preamble, \" \").concat(name), \"\".concat(preamble, \" \").concat(name, \" begins\"), \"\".concat(preamble, \" \").concat(name, \" ends\"));\n};\n\nvar perf = {\n begin: begin,\n end: end\n};\n\nvar noop$2 = function noop() {};\n\nfunction isWatched(node) {\n var i2svg = node.getAttribute ? node.getAttribute(DATA_FA_I2SVG) : null;\n return typeof i2svg === 'string';\n}\n\nfunction hasPrefixAndIcon(node) {\n var prefix = node.getAttribute ? node.getAttribute(DATA_PREFIX) : null;\n var icon = node.getAttribute ? node.getAttribute(DATA_ICON) : null;\n return prefix && icon;\n}\n\nfunction hasBeenReplaced(node) {\n return node && node.classList && node.classList.contains && node.classList.contains(config.replacementClass);\n}\n\nfunction getMutator() {\n if (config.autoReplaceSvg === true) {\n return mutators.replace;\n }\n\n var mutator = mutators[config.autoReplaceSvg];\n return mutator || mutators.replace;\n}\n\nfunction createElementNS(tag) {\n return DOCUMENT.createElementNS('http://www.w3.org/2000/svg', tag);\n}\n\nfunction createElement(tag) {\n return DOCUMENT.createElement(tag);\n}\n\nfunction convertSVG(abstractObj) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$ceFn = params.ceFn,\n ceFn = _params$ceFn === void 0 ? abstractObj.tag === 'svg' ? createElementNS : createElement : _params$ceFn;\n\n if (typeof abstractObj === 'string') {\n return DOCUMENT.createTextNode(abstractObj);\n }\n\n var tag = ceFn(abstractObj.tag);\n Object.keys(abstractObj.attributes || []).forEach(function (key) {\n tag.setAttribute(key, abstractObj.attributes[key]);\n });\n var children = abstractObj.children || [];\n children.forEach(function (child) {\n tag.appendChild(convertSVG(child, {\n ceFn: ceFn\n }));\n });\n return tag;\n}\n\nfunction nodeAsComment(node) {\n var comment = \" \".concat(node.outerHTML, \" \");\n /* BEGIN.ATTRIBUTION */\n\n comment = \"\".concat(comment, \"Font Awesome fontawesome.com \");\n /* END.ATTRIBUTION */\n\n return comment;\n}\n\nvar mutators = {\n replace: function replace(mutation) {\n var node = mutation[0];\n\n if (node.parentNode) {\n mutation[1].forEach(function (abstract) {\n node.parentNode.insertBefore(convertSVG(abstract), node);\n });\n\n if (node.getAttribute(DATA_FA_I2SVG) === null && config.keepOriginalSource) {\n var comment = DOCUMENT.createComment(nodeAsComment(node));\n node.parentNode.replaceChild(comment, node);\n } else {\n node.remove();\n }\n }\n },\n nest: function nest(mutation) {\n var node = mutation[0];\n var abstract = mutation[1]; // If we already have a replaced node we do not want to continue nesting within it.\n // Short-circuit to the standard replacement\n\n if (~classArray(node).indexOf(config.replacementClass)) {\n return mutators.replace(mutation);\n }\n\n var forSvg = new RegExp(\"\".concat(config.cssPrefix, \"-.*\"));\n delete abstract[0].attributes.id;\n\n if (abstract[0].attributes.class) {\n var splitClasses = abstract[0].attributes.class.split(' ').reduce(function (acc, cls) {\n if (cls === config.replacementClass || cls.match(forSvg)) {\n acc.toSvg.push(cls);\n } else {\n acc.toNode.push(cls);\n }\n\n return acc;\n }, {\n toNode: [],\n toSvg: []\n });\n abstract[0].attributes.class = splitClasses.toSvg.join(' ');\n\n if (splitClasses.toNode.length === 0) {\n node.removeAttribute('class');\n } else {\n node.setAttribute('class', splitClasses.toNode.join(' '));\n }\n }\n\n var newInnerHTML = abstract.map(function (a) {\n return toHtml(a);\n }).join('\\n');\n node.setAttribute(DATA_FA_I2SVG, '');\n node.innerHTML = newInnerHTML;\n }\n};\n\nfunction performOperationSync(op) {\n op();\n}\n\nfunction perform(mutations, callback) {\n var callbackFunction = typeof callback === 'function' ? callback : noop$2;\n\n if (mutations.length === 0) {\n callbackFunction();\n } else {\n var frame = performOperationSync;\n\n if (config.mutateApproach === MUTATION_APPROACH_ASYNC) {\n frame = WINDOW.requestAnimationFrame || performOperationSync;\n }\n\n frame(function () {\n var mutator = getMutator();\n var mark = perf.begin('mutate');\n mutations.map(mutator);\n mark();\n callbackFunction();\n });\n }\n}\nvar disabled = false;\nfunction disableObservation() {\n disabled = true;\n}\nfunction enableObservation() {\n disabled = false;\n}\nvar mo = null;\nfunction observe(options) {\n if (!MUTATION_OBSERVER) {\n return;\n }\n\n if (!config.observeMutations) {\n return;\n }\n\n var _options$treeCallback = options.treeCallback,\n treeCallback = _options$treeCallback === void 0 ? noop$2 : _options$treeCallback,\n _options$nodeCallback = options.nodeCallback,\n nodeCallback = _options$nodeCallback === void 0 ? noop$2 : _options$nodeCallback,\n _options$pseudoElemen = options.pseudoElementsCallback,\n pseudoElementsCallback = _options$pseudoElemen === void 0 ? noop$2 : _options$pseudoElemen,\n _options$observeMutat = options.observeMutationsRoot,\n observeMutationsRoot = _options$observeMutat === void 0 ? DOCUMENT : _options$observeMutat;\n mo = new MUTATION_OBSERVER(function (objects) {\n if (disabled) return;\n var defaultPrefix = getDefaultUsablePrefix();\n toArray(objects).forEach(function (mutationRecord) {\n if (mutationRecord.type === 'childList' && mutationRecord.addedNodes.length > 0 && !isWatched(mutationRecord.addedNodes[0])) {\n if (config.searchPseudoElements) {\n pseudoElementsCallback(mutationRecord.target);\n }\n\n treeCallback(mutationRecord.target);\n }\n\n if (mutationRecord.type === 'attributes' && mutationRecord.target.parentNode && config.searchPseudoElements) {\n pseudoElementsCallback(mutationRecord.target.parentNode);\n }\n\n if (mutationRecord.type === 'attributes' && isWatched(mutationRecord.target) && ~ATTRIBUTES_WATCHED_FOR_MUTATION.indexOf(mutationRecord.attributeName)) {\n if (mutationRecord.attributeName === 'class' && hasPrefixAndIcon(mutationRecord.target)) {\n var _getCanonicalIcon = getCanonicalIcon(classArray(mutationRecord.target)),\n prefix = _getCanonicalIcon.prefix,\n iconName = _getCanonicalIcon.iconName;\n\n mutationRecord.target.setAttribute(DATA_PREFIX, prefix || defaultPrefix);\n if (iconName) mutationRecord.target.setAttribute(DATA_ICON, iconName);\n } else if (hasBeenReplaced(mutationRecord.target)) {\n nodeCallback(mutationRecord.target);\n }\n }\n });\n });\n if (!IS_DOM) return;\n mo.observe(observeMutationsRoot, {\n childList: true,\n attributes: true,\n characterData: true,\n subtree: true\n });\n}\nfunction disconnect() {\n if (!mo) return;\n mo.disconnect();\n}\n\nfunction styleParser (node) {\n var style = node.getAttribute('style');\n var val = [];\n\n if (style) {\n val = style.split(';').reduce(function (acc, style) {\n var styles = style.split(':');\n var prop = styles[0];\n var value = styles.slice(1);\n\n if (prop && value.length > 0) {\n acc[prop] = value.join(':').trim();\n }\n\n return acc;\n }, {});\n }\n\n return val;\n}\n\nfunction classParser (node) {\n var existingPrefix = node.getAttribute('data-prefix');\n var existingIconName = node.getAttribute('data-icon');\n var innerText = node.innerText !== undefined ? node.innerText.trim() : '';\n var val = getCanonicalIcon(classArray(node));\n\n if (!val.prefix) {\n val.prefix = getDefaultUsablePrefix();\n }\n\n if (existingPrefix && existingIconName) {\n val.prefix = existingPrefix;\n val.iconName = existingIconName;\n }\n\n if (val.iconName && val.prefix) {\n return val;\n }\n\n if (val.prefix && innerText.length > 0) {\n val.iconName = byLigature(val.prefix, node.innerText) || byUnicode(val.prefix, toHex(node.innerText));\n }\n\n if (!val.iconName && config.autoFetchSvg && node.firstChild && node.firstChild.nodeType === Node.TEXT_NODE) {\n val.iconName = node.firstChild.data;\n }\n\n return val;\n}\n\nfunction attributesParser (node) {\n var extraAttributes = toArray(node.attributes).reduce(function (acc, attr) {\n if (acc.name !== 'class' && acc.name !== 'style') {\n acc[attr.name] = attr.value;\n }\n\n return acc;\n }, {});\n var title = node.getAttribute('title');\n var titleId = node.getAttribute('data-fa-title-id');\n\n if (config.autoA11y) {\n if (title) {\n extraAttributes['aria-labelledby'] = \"\".concat(config.replacementClass, \"-title-\").concat(titleId || nextUniqueId());\n } else {\n extraAttributes['aria-hidden'] = 'true';\n extraAttributes['focusable'] = 'false';\n }\n }\n\n return extraAttributes;\n}\n\nfunction blankMeta() {\n return {\n iconName: null,\n title: null,\n titleId: null,\n prefix: null,\n transform: meaninglessTransform,\n symbol: false,\n mask: {\n iconName: null,\n prefix: null,\n rest: []\n },\n maskId: null,\n extra: {\n classes: [],\n styles: {},\n attributes: {}\n }\n };\n}\nfunction parseMeta(node) {\n var parser = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n styleParser: true\n };\n\n var _classParser = classParser(node),\n iconName = _classParser.iconName,\n prefix = _classParser.prefix,\n extraClasses = _classParser.rest;\n\n var extraAttributes = attributesParser(node);\n var pluginMeta = chainHooks('parseNodeAttributes', {}, node);\n var extraStyles = parser.styleParser ? styleParser(node) : [];\n return _objectSpread2({\n iconName: iconName,\n title: node.getAttribute('title'),\n titleId: node.getAttribute('data-fa-title-id'),\n prefix: prefix,\n transform: meaninglessTransform,\n mask: {\n iconName: null,\n prefix: null,\n rest: []\n },\n maskId: null,\n symbol: false,\n extra: {\n classes: extraClasses,\n styles: extraStyles,\n attributes: extraAttributes\n }\n }, pluginMeta);\n}\n\nvar styles$2 = namespace.styles;\n\nfunction generateMutation(node) {\n var nodeMeta = config.autoReplaceSvg === 'nest' ? parseMeta(node, {\n styleParser: false\n }) : parseMeta(node);\n\n if (~nodeMeta.extra.classes.indexOf(LAYERS_TEXT_CLASSNAME)) {\n return callProvided('generateLayersText', node, nodeMeta);\n } else {\n return callProvided('generateSvgReplacementMutation', node, nodeMeta);\n }\n}\n\nvar knownPrefixes = new Set();\nFAMILIES.map(function (family) {\n knownPrefixes.add(\"fa-\".concat(family));\n});\nObject.keys(PREFIX_TO_STYLE[FAMILY_CLASSIC]).map(knownPrefixes.add.bind(knownPrefixes));\nObject.keys(PREFIX_TO_STYLE[FAMILY_SHARP]).map(knownPrefixes.add.bind(knownPrefixes));\nknownPrefixes = _toConsumableArray(knownPrefixes);\n\nfunction onTree(root) {\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n if (!IS_DOM) return Promise.resolve();\n var htmlClassList = DOCUMENT.documentElement.classList;\n\n var hclAdd = function hclAdd(suffix) {\n return htmlClassList.add(\"\".concat(HTML_CLASS_I2SVG_BASE_CLASS, \"-\").concat(suffix));\n };\n\n var hclRemove = function hclRemove(suffix) {\n return htmlClassList.remove(\"\".concat(HTML_CLASS_I2SVG_BASE_CLASS, \"-\").concat(suffix));\n };\n\n var prefixes = config.autoFetchSvg ? knownPrefixes : FAMILIES.map(function (f) {\n return \"fa-\".concat(f);\n }).concat(Object.keys(styles$2));\n\n if (!prefixes.includes('fa')) {\n prefixes.push('fa');\n }\n\n var prefixesDomQuery = [\".\".concat(LAYERS_TEXT_CLASSNAME, \":not([\").concat(DATA_FA_I2SVG, \"])\")].concat(prefixes.map(function (p) {\n return \".\".concat(p, \":not([\").concat(DATA_FA_I2SVG, \"])\");\n })).join(', ');\n\n if (prefixesDomQuery.length === 0) {\n return Promise.resolve();\n }\n\n var candidates = [];\n\n try {\n candidates = toArray(root.querySelectorAll(prefixesDomQuery));\n } catch (e) {// noop\n }\n\n if (candidates.length > 0) {\n hclAdd('pending');\n hclRemove('complete');\n } else {\n return Promise.resolve();\n }\n\n var mark = perf.begin('onTree');\n var mutations = candidates.reduce(function (acc, node) {\n try {\n var mutation = generateMutation(node);\n\n if (mutation) {\n acc.push(mutation);\n }\n } catch (e) {\n if (!PRODUCTION) {\n if (e.name === 'MissingIcon') {\n console.error(e);\n }\n }\n }\n\n return acc;\n }, []);\n return new Promise(function (resolve, reject) {\n Promise.all(mutations).then(function (resolvedMutations) {\n perform(resolvedMutations, function () {\n hclAdd('active');\n hclAdd('complete');\n hclRemove('pending');\n if (typeof callback === 'function') callback();\n mark();\n resolve();\n });\n }).catch(function (e) {\n mark();\n reject(e);\n });\n });\n}\n\nfunction onNode(node) {\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n generateMutation(node).then(function (mutation) {\n if (mutation) {\n perform([mutation], callback);\n }\n });\n}\n\nfunction resolveIcons(next) {\n return function (maybeIconDefinition) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var iconDefinition = (maybeIconDefinition || {}).icon ? maybeIconDefinition : findIconDefinition(maybeIconDefinition || {});\n var mask = params.mask;\n\n if (mask) {\n mask = (mask || {}).icon ? mask : findIconDefinition(mask || {});\n }\n\n return next(iconDefinition, _objectSpread2(_objectSpread2({}, params), {}, {\n mask: mask\n }));\n };\n}\n\nvar render = function render(iconDefinition) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$transform = params.transform,\n transform = _params$transform === void 0 ? meaninglessTransform : _params$transform,\n _params$symbol = params.symbol,\n symbol = _params$symbol === void 0 ? false : _params$symbol,\n _params$mask = params.mask,\n mask = _params$mask === void 0 ? null : _params$mask,\n _params$maskId = params.maskId,\n maskId = _params$maskId === void 0 ? null : _params$maskId,\n _params$title = params.title,\n title = _params$title === void 0 ? null : _params$title,\n _params$titleId = params.titleId,\n titleId = _params$titleId === void 0 ? null : _params$titleId,\n _params$classes = params.classes,\n classes = _params$classes === void 0 ? [] : _params$classes,\n _params$attributes = params.attributes,\n attributes = _params$attributes === void 0 ? {} : _params$attributes,\n _params$styles = params.styles,\n styles = _params$styles === void 0 ? {} : _params$styles;\n if (!iconDefinition) return;\n var prefix = iconDefinition.prefix,\n iconName = iconDefinition.iconName,\n icon = iconDefinition.icon;\n return domVariants(_objectSpread2({\n type: 'icon'\n }, iconDefinition), function () {\n callHooks('beforeDOMElementCreation', {\n iconDefinition: iconDefinition,\n params: params\n });\n\n if (config.autoA11y) {\n if (title) {\n attributes['aria-labelledby'] = \"\".concat(config.replacementClass, \"-title-\").concat(titleId || nextUniqueId());\n } else {\n attributes['aria-hidden'] = 'true';\n attributes['focusable'] = 'false';\n }\n }\n\n return makeInlineSvgAbstract({\n icons: {\n main: asFoundIcon(icon),\n mask: mask ? asFoundIcon(mask.icon) : {\n found: false,\n width: null,\n height: null,\n icon: {}\n }\n },\n prefix: prefix,\n iconName: iconName,\n transform: _objectSpread2(_objectSpread2({}, meaninglessTransform), transform),\n symbol: symbol,\n title: title,\n maskId: maskId,\n titleId: titleId,\n extra: {\n attributes: attributes,\n styles: styles,\n classes: classes\n }\n });\n });\n};\nvar ReplaceElements = {\n mixout: function mixout() {\n return {\n icon: resolveIcons(render)\n };\n },\n hooks: function hooks() {\n return {\n mutationObserverCallbacks: function mutationObserverCallbacks(accumulator) {\n accumulator.treeCallback = onTree;\n accumulator.nodeCallback = onNode;\n return accumulator;\n }\n };\n },\n provides: function provides(providers$$1) {\n providers$$1.i2svg = function (params) {\n var _params$node = params.node,\n node = _params$node === void 0 ? DOCUMENT : _params$node,\n _params$callback = params.callback,\n callback = _params$callback === void 0 ? function () {} : _params$callback;\n return onTree(node, callback);\n };\n\n providers$$1.generateSvgReplacementMutation = function (node, nodeMeta) {\n var iconName = nodeMeta.iconName,\n title = nodeMeta.title,\n titleId = nodeMeta.titleId,\n prefix = nodeMeta.prefix,\n transform = nodeMeta.transform,\n symbol = nodeMeta.symbol,\n mask = nodeMeta.mask,\n maskId = nodeMeta.maskId,\n extra = nodeMeta.extra;\n return new Promise(function (resolve, reject) {\n Promise.all([findIcon(iconName, prefix), mask.iconName ? findIcon(mask.iconName, mask.prefix) : Promise.resolve({\n found: false,\n width: 512,\n height: 512,\n icon: {}\n })]).then(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n main = _ref2[0],\n mask = _ref2[1];\n\n resolve([node, makeInlineSvgAbstract({\n icons: {\n main: main,\n mask: mask\n },\n prefix: prefix,\n iconName: iconName,\n transform: transform,\n symbol: symbol,\n maskId: maskId,\n title: title,\n titleId: titleId,\n extra: extra,\n watchable: true\n })]);\n }).catch(reject);\n });\n };\n\n providers$$1.generateAbstractIcon = function (_ref3) {\n var children = _ref3.children,\n attributes = _ref3.attributes,\n main = _ref3.main,\n transform = _ref3.transform,\n styles = _ref3.styles;\n var styleString = joinStyles(styles);\n\n if (styleString.length > 0) {\n attributes['style'] = styleString;\n }\n\n var nextChild;\n\n if (transformIsMeaningful(transform)) {\n nextChild = callProvided('generateAbstractTransformGrouping', {\n main: main,\n transform: transform,\n containerWidth: main.width,\n iconWidth: main.width\n });\n }\n\n children.push(nextChild || main.icon);\n return {\n children: children,\n attributes: attributes\n };\n };\n }\n};\n\nvar Layers = {\n mixout: function mixout() {\n return {\n layer: function layer(assembler) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$classes = params.classes,\n classes = _params$classes === void 0 ? [] : _params$classes;\n return domVariants({\n type: 'layer'\n }, function () {\n callHooks('beforeDOMElementCreation', {\n assembler: assembler,\n params: params\n });\n var children = [];\n assembler(function (args) {\n Array.isArray(args) ? args.map(function (a) {\n children = children.concat(a.abstract);\n }) : children = children.concat(args.abstract);\n });\n return [{\n tag: 'span',\n attributes: {\n class: [\"\".concat(config.cssPrefix, \"-layers\")].concat(_toConsumableArray(classes)).join(' ')\n },\n children: children\n }];\n });\n }\n };\n }\n};\n\nvar LayersCounter = {\n mixout: function mixout() {\n return {\n counter: function counter(content) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$title = params.title,\n title = _params$title === void 0 ? null : _params$title,\n _params$classes = params.classes,\n classes = _params$classes === void 0 ? [] : _params$classes,\n _params$attributes = params.attributes,\n attributes = _params$attributes === void 0 ? {} : _params$attributes,\n _params$styles = params.styles,\n styles = _params$styles === void 0 ? {} : _params$styles;\n return domVariants({\n type: 'counter',\n content: content\n }, function () {\n callHooks('beforeDOMElementCreation', {\n content: content,\n params: params\n });\n return makeLayersCounterAbstract({\n content: content.toString(),\n title: title,\n extra: {\n attributes: attributes,\n styles: styles,\n classes: [\"\".concat(config.cssPrefix, \"-layers-counter\")].concat(_toConsumableArray(classes))\n }\n });\n });\n }\n };\n }\n};\n\nvar LayersText = {\n mixout: function mixout() {\n return {\n text: function text(content) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$transform = params.transform,\n transform = _params$transform === void 0 ? meaninglessTransform : _params$transform,\n _params$title = params.title,\n title = _params$title === void 0 ? null : _params$title,\n _params$classes = params.classes,\n classes = _params$classes === void 0 ? [] : _params$classes,\n _params$attributes = params.attributes,\n attributes = _params$attributes === void 0 ? {} : _params$attributes,\n _params$styles = params.styles,\n styles = _params$styles === void 0 ? {} : _params$styles;\n return domVariants({\n type: 'text',\n content: content\n }, function () {\n callHooks('beforeDOMElementCreation', {\n content: content,\n params: params\n });\n return makeLayersTextAbstract({\n content: content,\n transform: _objectSpread2(_objectSpread2({}, meaninglessTransform), transform),\n title: title,\n extra: {\n attributes: attributes,\n styles: styles,\n classes: [\"\".concat(config.cssPrefix, \"-layers-text\")].concat(_toConsumableArray(classes))\n }\n });\n });\n }\n };\n },\n provides: function provides(providers$$1) {\n providers$$1.generateLayersText = function (node, nodeMeta) {\n var title = nodeMeta.title,\n transform = nodeMeta.transform,\n extra = nodeMeta.extra;\n var width = null;\n var height = null;\n\n if (IS_IE) {\n var computedFontSize = parseInt(getComputedStyle(node).fontSize, 10);\n var boundingClientRect = node.getBoundingClientRect();\n width = boundingClientRect.width / computedFontSize;\n height = boundingClientRect.height / computedFontSize;\n }\n\n if (config.autoA11y && !title) {\n extra.attributes['aria-hidden'] = 'true';\n }\n\n return Promise.resolve([node, makeLayersTextAbstract({\n content: node.innerHTML,\n width: width,\n height: height,\n transform: transform,\n title: title,\n extra: extra,\n watchable: true\n })]);\n };\n }\n};\n\nvar CLEAN_CONTENT_PATTERN = new RegExp(\"\\\"\", 'ug');\nvar SECONDARY_UNICODE_RANGE = [1105920, 1112319];\nfunction hexValueFromContent(content) {\n var cleaned = content.replace(CLEAN_CONTENT_PATTERN, '');\n var codePoint = codePointAt(cleaned, 0);\n var isPrependTen = codePoint >= SECONDARY_UNICODE_RANGE[0] && codePoint <= SECONDARY_UNICODE_RANGE[1];\n var isDoubled = cleaned.length === 2 ? cleaned[0] === cleaned[1] : false;\n return {\n value: isDoubled ? toHex(cleaned[0]) : toHex(cleaned),\n isSecondary: isPrependTen || isDoubled\n };\n}\n\nfunction replaceForPosition(node, position) {\n var pendingAttribute = \"\".concat(DATA_FA_PSEUDO_ELEMENT_PENDING).concat(position.replace(':', '-'));\n return new Promise(function (resolve, reject) {\n if (node.getAttribute(pendingAttribute) !== null) {\n // This node is already being processed\n return resolve();\n }\n\n var children = toArray(node.children);\n var alreadyProcessedPseudoElement = children.filter(function (c) {\n return c.getAttribute(DATA_FA_PSEUDO_ELEMENT) === position;\n })[0];\n var styles = WINDOW.getComputedStyle(node, position);\n var fontFamily = styles.getPropertyValue('font-family').match(FONT_FAMILY_PATTERN);\n var fontWeight = styles.getPropertyValue('font-weight');\n var content = styles.getPropertyValue('content');\n\n if (alreadyProcessedPseudoElement && !fontFamily) {\n // If we've already processed it but the current computed style does not result in a font-family,\n // that probably means that a class name that was previously present to make the icon has been\n // removed. So we now should delete the icon.\n node.removeChild(alreadyProcessedPseudoElement);\n return resolve();\n } else if (fontFamily && content !== 'none' && content !== '') {\n var _content = styles.getPropertyValue('content');\n\n var family = ~['Sharp'].indexOf(fontFamily[2]) ? FAMILY_SHARP : FAMILY_CLASSIC;\n var prefix = ~['Solid', 'Regular', 'Light', 'Thin', 'Duotone', 'Brands', 'Kit'].indexOf(fontFamily[2]) ? STYLE_TO_PREFIX[family][fontFamily[2].toLowerCase()] : FONT_WEIGHT_TO_PREFIX[family][fontWeight];\n\n var _hexValueFromContent = hexValueFromContent(_content),\n hexValue = _hexValueFromContent.value,\n isSecondary = _hexValueFromContent.isSecondary;\n\n var isV4 = fontFamily[0].startsWith('FontAwesome');\n var iconName = byUnicode(prefix, hexValue);\n var iconIdentifier = iconName;\n\n if (isV4) {\n var iconName4 = byOldUnicode(hexValue);\n\n if (iconName4.iconName && iconName4.prefix) {\n iconName = iconName4.iconName;\n prefix = iconName4.prefix;\n }\n } // Only convert the pseudo element in this ::before/::after position into an icon if we haven't\n // already done so with the same prefix and iconName\n\n\n if (iconName && !isSecondary && (!alreadyProcessedPseudoElement || alreadyProcessedPseudoElement.getAttribute(DATA_PREFIX) !== prefix || alreadyProcessedPseudoElement.getAttribute(DATA_ICON) !== iconIdentifier)) {\n node.setAttribute(pendingAttribute, iconIdentifier);\n\n if (alreadyProcessedPseudoElement) {\n // Delete the old one, since we're replacing it with a new one\n node.removeChild(alreadyProcessedPseudoElement);\n }\n\n var meta = blankMeta();\n var extra = meta.extra;\n extra.attributes[DATA_FA_PSEUDO_ELEMENT] = position;\n findIcon(iconName, prefix).then(function (main) {\n var abstract = makeInlineSvgAbstract(_objectSpread2(_objectSpread2({}, meta), {}, {\n icons: {\n main: main,\n mask: emptyCanonicalIcon()\n },\n prefix: prefix,\n iconName: iconIdentifier,\n extra: extra,\n watchable: true\n }));\n var element = DOCUMENT.createElement('svg');\n\n if (position === '::before') {\n node.insertBefore(element, node.firstChild);\n } else {\n node.appendChild(element);\n }\n\n element.outerHTML = abstract.map(function (a) {\n return toHtml(a);\n }).join('\\n');\n node.removeAttribute(pendingAttribute);\n resolve();\n }).catch(reject);\n } else {\n resolve();\n }\n } else {\n resolve();\n }\n });\n}\n\nfunction replace(node) {\n return Promise.all([replaceForPosition(node, '::before'), replaceForPosition(node, '::after')]);\n}\n\nfunction processable(node) {\n 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');\n}\n\nfunction searchPseudoElements(root) {\n if (!IS_DOM) return;\n return new Promise(function (resolve, reject) {\n var operations = toArray(root.querySelectorAll('*')).filter(processable).map(replace);\n var end = perf.begin('searchPseudoElements');\n disableObservation();\n Promise.all(operations).then(function () {\n end();\n enableObservation();\n resolve();\n }).catch(function () {\n end();\n enableObservation();\n reject();\n });\n });\n}\n\nvar PseudoElements = {\n hooks: function hooks() {\n return {\n mutationObserverCallbacks: function mutationObserverCallbacks(accumulator) {\n accumulator.pseudoElementsCallback = searchPseudoElements;\n return accumulator;\n }\n };\n },\n provides: function provides(providers$$1) {\n providers$$1.pseudoElements2svg = function (params) {\n var _params$node = params.node,\n node = _params$node === void 0 ? DOCUMENT : _params$node;\n\n if (config.searchPseudoElements) {\n searchPseudoElements(node);\n }\n };\n }\n};\n\nvar _unwatched = false;\nvar MutationObserver$1 = {\n mixout: function mixout() {\n return {\n dom: {\n unwatch: function unwatch() {\n disableObservation();\n _unwatched = true;\n }\n }\n };\n },\n hooks: function hooks() {\n return {\n bootstrap: function bootstrap() {\n observe(chainHooks('mutationObserverCallbacks', {}));\n },\n noAuto: function noAuto() {\n disconnect();\n },\n watch: function watch(params) {\n var observeMutationsRoot = params.observeMutationsRoot;\n\n if (_unwatched) {\n enableObservation();\n } else {\n observe(chainHooks('mutationObserverCallbacks', {\n observeMutationsRoot: observeMutationsRoot\n }));\n }\n }\n };\n }\n};\n\nvar parseTransformString = function parseTransformString(transformString) {\n var transform = {\n size: 16,\n x: 0,\n y: 0,\n flipX: false,\n flipY: false,\n rotate: 0\n };\n return transformString.toLowerCase().split(' ').reduce(function (acc, n) {\n var parts = n.toLowerCase().split('-');\n var first = parts[0];\n var rest = parts.slice(1).join('-');\n\n if (first && rest === 'h') {\n acc.flipX = true;\n return acc;\n }\n\n if (first && rest === 'v') {\n acc.flipY = true;\n return acc;\n }\n\n rest = parseFloat(rest);\n\n if (isNaN(rest)) {\n return acc;\n }\n\n switch (first) {\n case 'grow':\n acc.size = acc.size + rest;\n break;\n\n case 'shrink':\n acc.size = acc.size - rest;\n break;\n\n case 'left':\n acc.x = acc.x - rest;\n break;\n\n case 'right':\n acc.x = acc.x + rest;\n break;\n\n case 'up':\n acc.y = acc.y - rest;\n break;\n\n case 'down':\n acc.y = acc.y + rest;\n break;\n\n case 'rotate':\n acc.rotate = acc.rotate + rest;\n break;\n }\n\n return acc;\n }, transform);\n};\nvar PowerTransforms = {\n mixout: function mixout() {\n return {\n parse: {\n transform: function transform(transformString) {\n return parseTransformString(transformString);\n }\n }\n };\n },\n hooks: function hooks() {\n return {\n parseNodeAttributes: function parseNodeAttributes(accumulator, node) {\n var transformString = node.getAttribute('data-fa-transform');\n\n if (transformString) {\n accumulator.transform = parseTransformString(transformString);\n }\n\n return accumulator;\n }\n };\n },\n provides: function provides(providers) {\n providers.generateAbstractTransformGrouping = function (_ref) {\n var main = _ref.main,\n transform = _ref.transform,\n containerWidth = _ref.containerWidth,\n iconWidth = _ref.iconWidth;\n var outer = {\n transform: \"translate(\".concat(containerWidth / 2, \" 256)\")\n };\n var innerTranslate = \"translate(\".concat(transform.x * 32, \", \").concat(transform.y * 32, \") \");\n var innerScale = \"scale(\".concat(transform.size / 16 * (transform.flipX ? -1 : 1), \", \").concat(transform.size / 16 * (transform.flipY ? -1 : 1), \") \");\n var innerRotate = \"rotate(\".concat(transform.rotate, \" 0 0)\");\n var inner = {\n transform: \"\".concat(innerTranslate, \" \").concat(innerScale, \" \").concat(innerRotate)\n };\n var path = {\n transform: \"translate(\".concat(iconWidth / 2 * -1, \" -256)\")\n };\n var operations = {\n outer: outer,\n inner: inner,\n path: path\n };\n return {\n tag: 'g',\n attributes: _objectSpread2({}, operations.outer),\n children: [{\n tag: 'g',\n attributes: _objectSpread2({}, operations.inner),\n children: [{\n tag: main.icon.tag,\n children: main.icon.children,\n attributes: _objectSpread2(_objectSpread2({}, main.icon.attributes), operations.path)\n }]\n }]\n };\n };\n }\n};\n\nvar ALL_SPACE = {\n x: 0,\n y: 0,\n width: '100%',\n height: '100%'\n};\n\nfunction fillBlack(abstract) {\n var force = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n\n if (abstract.attributes && (abstract.attributes.fill || force)) {\n abstract.attributes.fill = 'black';\n }\n\n return abstract;\n}\n\nfunction deGroup(abstract) {\n if (abstract.tag === 'g') {\n return abstract.children;\n } else {\n return [abstract];\n }\n}\n\nvar Masks = {\n hooks: function hooks() {\n return {\n parseNodeAttributes: function parseNodeAttributes(accumulator, node) {\n var maskData = node.getAttribute('data-fa-mask');\n var mask = !maskData ? emptyCanonicalIcon() : getCanonicalIcon(maskData.split(' ').map(function (i) {\n return i.trim();\n }));\n\n if (!mask.prefix) {\n mask.prefix = getDefaultUsablePrefix();\n }\n\n accumulator.mask = mask;\n accumulator.maskId = node.getAttribute('data-fa-mask-id');\n return accumulator;\n }\n };\n },\n provides: function provides(providers) {\n providers.generateAbstractMask = function (_ref) {\n var children = _ref.children,\n attributes = _ref.attributes,\n main = _ref.main,\n mask = _ref.mask,\n explicitMaskId = _ref.maskId,\n transform = _ref.transform;\n var mainWidth = main.width,\n mainPath = main.icon;\n var maskWidth = mask.width,\n maskPath = mask.icon;\n var trans = transformForSvg({\n transform: transform,\n containerWidth: maskWidth,\n iconWidth: mainWidth\n });\n var maskRect = {\n tag: 'rect',\n attributes: _objectSpread2(_objectSpread2({}, ALL_SPACE), {}, {\n fill: 'white'\n })\n };\n var maskInnerGroupChildrenMixin = mainPath.children ? {\n children: mainPath.children.map(fillBlack)\n } : {};\n var maskInnerGroup = {\n tag: 'g',\n attributes: _objectSpread2({}, trans.inner),\n children: [fillBlack(_objectSpread2({\n tag: mainPath.tag,\n attributes: _objectSpread2(_objectSpread2({}, mainPath.attributes), trans.path)\n }, maskInnerGroupChildrenMixin))]\n };\n var maskOuterGroup = {\n tag: 'g',\n attributes: _objectSpread2({}, trans.outer),\n children: [maskInnerGroup]\n };\n var maskId = \"mask-\".concat(explicitMaskId || nextUniqueId());\n var clipId = \"clip-\".concat(explicitMaskId || nextUniqueId());\n var maskTag = {\n tag: 'mask',\n attributes: _objectSpread2(_objectSpread2({}, ALL_SPACE), {}, {\n id: maskId,\n maskUnits: 'userSpaceOnUse',\n maskContentUnits: 'userSpaceOnUse'\n }),\n children: [maskRect, maskOuterGroup]\n };\n var defs = {\n tag: 'defs',\n children: [{\n tag: 'clipPath',\n attributes: {\n id: clipId\n },\n children: deGroup(maskPath)\n }, maskTag]\n };\n children.push(defs, {\n tag: 'rect',\n attributes: _objectSpread2({\n fill: 'currentColor',\n 'clip-path': \"url(#\".concat(clipId, \")\"),\n mask: \"url(#\".concat(maskId, \")\")\n }, ALL_SPACE)\n });\n return {\n children: children,\n attributes: attributes\n };\n };\n }\n};\n\nvar MissingIconIndicator = {\n provides: function provides(providers) {\n var reduceMotion = false;\n\n if (WINDOW.matchMedia) {\n reduceMotion = WINDOW.matchMedia('(prefers-reduced-motion: reduce)').matches;\n }\n\n providers.missingIconAbstract = function () {\n var gChildren = [];\n var FILL = {\n fill: 'currentColor'\n };\n var ANIMATION_BASE = {\n attributeType: 'XML',\n repeatCount: 'indefinite',\n dur: '2s'\n }; // Ring\n\n gChildren.push({\n tag: 'path',\n attributes: _objectSpread2(_objectSpread2({}, FILL), {}, {\n 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'\n })\n });\n\n var OPACITY_ANIMATE = _objectSpread2(_objectSpread2({}, ANIMATION_BASE), {}, {\n attributeName: 'opacity'\n });\n\n var dot = {\n tag: 'circle',\n attributes: _objectSpread2(_objectSpread2({}, FILL), {}, {\n cx: '256',\n cy: '364',\n r: '28'\n }),\n children: []\n };\n\n if (!reduceMotion) {\n dot.children.push({\n tag: 'animate',\n attributes: _objectSpread2(_objectSpread2({}, ANIMATION_BASE), {}, {\n attributeName: 'r',\n values: '28;14;28;28;14;28;'\n })\n }, {\n tag: 'animate',\n attributes: _objectSpread2(_objectSpread2({}, OPACITY_ANIMATE), {}, {\n values: '1;0;1;1;0;1;'\n })\n });\n }\n\n gChildren.push(dot);\n gChildren.push({\n tag: 'path',\n attributes: _objectSpread2(_objectSpread2({}, FILL), {}, {\n opacity: '1',\n 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'\n }),\n children: reduceMotion ? [] : [{\n tag: 'animate',\n attributes: _objectSpread2(_objectSpread2({}, OPACITY_ANIMATE), {}, {\n values: '1;0;0;0;0;1;'\n })\n }]\n });\n\n if (!reduceMotion) {\n // Exclamation\n gChildren.push({\n tag: 'path',\n attributes: _objectSpread2(_objectSpread2({}, FILL), {}, {\n opacity: '0',\n 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'\n }),\n children: [{\n tag: 'animate',\n attributes: _objectSpread2(_objectSpread2({}, OPACITY_ANIMATE), {}, {\n values: '0;0;1;1;0;0;'\n })\n }]\n });\n }\n\n return {\n tag: 'g',\n attributes: {\n 'class': 'missing'\n },\n children: gChildren\n };\n };\n }\n};\n\nvar SvgSymbols = {\n hooks: function hooks() {\n return {\n parseNodeAttributes: function parseNodeAttributes(accumulator, node) {\n var symbolData = node.getAttribute('data-fa-symbol');\n var symbol = symbolData === null ? false : symbolData === '' ? true : symbolData;\n accumulator['symbol'] = symbol;\n return accumulator;\n }\n };\n }\n};\n\nvar plugins = [InjectCSS, ReplaceElements, Layers, LayersCounter, LayersText, PseudoElements, MutationObserver$1, PowerTransforms, Masks, MissingIconIndicator, SvgSymbols];\n\nregisterPlugins(plugins, {\n mixoutsTo: api\n});\nvar noAuto$1 = api.noAuto;\nvar config$1 = api.config;\nvar library$1 = api.library;\nvar dom$1 = api.dom;\nvar parse$1 = api.parse;\nvar findIconDefinition$1 = api.findIconDefinition;\nvar toHtml$1 = api.toHtml;\nvar icon = api.icon;\nvar layer = api.layer;\nvar text = api.text;\nvar counter = api.counter;\n\nexport { noAuto$1 as noAuto, config$1 as config, library$1 as library, dom$1 as dom, parse$1 as parse, findIconDefinition$1 as findIconDefinition, toHtml$1 as toHtml, icon, layer, text, counter, api };\n"],"names":["ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread2","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_typeof","obj","Symbol","iterator","constructor","prototype","_defineProperties","props","descriptor","configurable","writable","value","_slicedToArray","arr","Array","isArray","_arrayWithHoles","_i","_s","_e","_arr","_n","_d","call","next","done","err","_iterableToArrayLimit","_unsupportedIterableToArray","TypeError","_nonIterableRest","_toConsumableArray","_arrayLikeToArray","_arrayWithoutHoles","iter","from","_iterableToArray","_nonIterableSpread","o","minLen","n","toString","slice","name","test","len","arr2","noop","_WINDOW","_DOCUMENT","_MUTATION_OBSERVER","_PERFORMANCE","mark","measure","window","document","MutationObserver","performance","e","_ref$userAgent","navigator","userAgent","WINDOW","DOCUMENT","MUTATION_OBSERVER","PERFORMANCE","_familyProxy","_familyProxy2","_familyProxy3","_familyProxy4","_familyProxy5","IS_DOM","documentElement","head","addEventListener","createElement","IS_IE","indexOf","NAMESPACE_IDENTIFIER","UNITS_IN_GRID","DEFAULT_CSS_PREFIX","DEFAULT_REPLACEMENT_CLASS","DATA_FA_I2SVG","DATA_FA_PSEUDO_ELEMENT","DATA_FA_PSEUDO_ELEMENT_PENDING","DATA_PREFIX","DATA_ICON","HTML_CLASS_I2SVG_BASE_CLASS","MUTATION_APPROACH_ASYNC","TAGNAMES_TO_SKIP_FOR_PSEUDOELEMENTS","PRODUCTION","process","env","NODE_ENV","FAMILY_CLASSIC","FAMILY_SHARP","FAMILIES","familyProxy","Proxy","get","prop","PREFIX_TO_STYLE","fa","fas","far","fal","fat","fad","fab","fak","fass","STYLE_TO_PREFIX","solid","regular","light","thin","duotone","brands","kit","PREFIX_TO_LONG_STYLE","LONG_STYLE_TO_PREFIX","ICON_SELECTION_SYNTAX_PATTERN","LAYERS_TEXT_CLASSNAME","FONT_FAMILY_PATTERN","FONT_WEIGHT_TO_PREFIX","normal","oneToTen","oneToTwenty","concat","ATTRIBUTES_WATCHED_FOR_MUTATION","DUOTONE_CLASSES","GROUP","SWAP_OPACITY","PRIMARY","SECONDARY","prefixes","Set","map","add","bind","RESERVED_CLASSES","initial","FontAwesomeConfig","querySelector","_ref","_ref2","attr","val","coerce","element","getAttribute","getAttrConfig","_default","styleDefault","familyDefault","cssPrefix","replacementClass","autoReplaceSvg","autoAddCss","autoA11y","searchPseudoElements","observeMutations","mutateApproach","keepOriginalSource","measurePerformance","showMissingIcons","familyPrefix","_config","config","set","_onChangeCb","cb","d","meaninglessTransform","size","x","y","rotate","flipX","flipY","idPool","nextUniqueId","id","Math","random","toArray","array","classArray","node","classList","split","htmlEscape","str","replace","joinStyles","styles","reduce","acc","styleName","trim","transformIsMeaningful","transform","baseStyles","css","dcp","drc","fp","rc","s","dPatt","RegExp","customPropPatt","rPatt","_cssInserted","ensureCss","style","setAttribute","innerHTML","headChildren","childNodes","beforeChild","child","tagName","toUpperCase","insertBefore","insertCss","InjectCSS","mixout","dom","hooks","beforeDOMElementCreation","beforeI2svg","w","shims","namespace","functions","loaded","toHtml","abstractNodes","tag","_abstractNodes$attrib","attributes","_abstractNodes$childr","children","attributeName","joinAttributes","join","iconFromMapping","mapping","prefix","iconName","icon","doScroll","readyState","listener","removeEventListener","fn","_LONG_STYLE","_PREFIXES","_PREFIXES_FOR_FAMILY","subject","initialValue","thisContext","result","undefined","func","a","b","c","bindInternal4","toHex","unicode","decoded","string","output","counter","charCodeAt","extra","ucs2decode","normalizeIcons","icons","defineIcons","_params$skipHooks","skipHooks","normalized","addPack","LONG_STYLE","values","_defaultUsablePrefix","_byUnicode","_byLigature","_byOldName","_byOldUnicode","_byAlias","PREFIXES","getIconName","cls","parts","build","lookup","reducer","alias","aliases","hasRegular","autoFetchSvg","shimLookups","shim","maybeNameMaybeUnicode","names","unicodes","getCanonicalPrefix","family","byUnicode","byAlias","byOldName","getDefaultUsablePrefix","emptyCanonicalIcon","rest","styleOrPrefix","_params$family","defined","PREFIXES_FOR_FAMILY","getCanonicalIcon","_famProps","_params$skipLookups","skipLookups","famProps","givenPrefix","includes","some","v","canonical","aliasIconName","Library","instance","Constructor","_classCallCheck","this","definitions","protoProps","staticProps","_this","_len","_key","additions","_pullDefinitions","longPrefix","definition","_normalized$key","_plugins","_hooks","providers","defaultProviderKeys","chainHooks","hook","accumulator","args","hookFn","callHooks","_len2","_key2","callProvided","findIconDefinition","iconLookup","library","i2svg","params","Promise","reject","watch","autoReplaceSvgRoot","autoReplace","setTimeout","api","noAuto","parse","_icon","match","canonicalIcon","_prefix","_params$autoReplaceSv","domVariants","abstractCreator","abstract","container","html","makeInlineSvgAbstract","_params$icons","main","mask","symbol","title","maskId","titleId","_params$watchable","watchable","found","width","height","isUploadedIcon","attrClass","classes","content","class","role","xmlns","viewBox","uploadedIconWidthStyle","asSymbol","offset","asIcon","makeLayersTextAbstract","_params$watchable2","_ref2$width","_ref2$height","_ref2$startCentered","startCentered","transformForCss","styleString","styles$1","asFoundIcon","vectorData","fill","missingIconResolutionMixin","findIcon","resolve","console","error","maybeNotifyMissing","noop$1","p","preamble","end","perf","begin","noop$2","isWatched","createElementNS","convertSVG","abstractObj","_params$ceFn","ceFn","createTextNode","appendChild","mutators","mutation","parentNode","comment","createComment","outerHTML","nodeAsComment","replaceChild","remove","nest","forSvg","splitClasses","toSvg","toNode","removeAttribute","newInnerHTML","performOperationSync","op","perform","mutations","callback","callbackFunction","frame","requestAnimationFrame","mutator","disabled","disableObservation","enableObservation","mo","observe","options","_options$treeCallback","treeCallback","_options$nodeCallback","nodeCallback","_options$pseudoElemen","pseudoElementsCallback","_options$observeMutat","observeMutationsRoot","objects","defaultPrefix","mutationRecord","type","addedNodes","hasPrefixAndIcon","_getCanonicalIcon","contains","childList","characterData","subtree","classParser","ligature","existingPrefix","existingIconName","innerText","firstChild","nodeType","Node","TEXT_NODE","data","parseMeta","parser","styleParser","_classParser","extraClasses","extraAttributes","attributesParser","pluginMeta","extraStyles","styles$2","generateMutation","nodeMeta","knownPrefixes","onTree","root","htmlClassList","hclAdd","suffix","hclRemove","f","prefixesDomQuery","candidates","querySelectorAll","all","then","resolvedMutations","catch","onNode","render","iconDefinition","_params$transform","_params$symbol","_params$mask","_params$maskId","_params$title","_params$titleId","_params$classes","_params$attributes","_params$styles","ReplaceElements","maybeIconDefinition","mutationObserverCallbacks","provides","providers$$1","_params$node","_params$callback","generateSvgReplacementMutation","generateAbstractIcon","_ref3","nextChild","containerWidth","iconWidth","Layers","layer","assembler","LayersCounter","makeLayersCounterAbstract","LayersText","text","generateLayersText","computedFontSize","parseInt","getComputedStyle","fontSize","boundingClientRect","getBoundingClientRect","CLEAN_CONTENT_PATTERN","SECONDARY_UNICODE_RANGE","replaceForPosition","position","pendingAttribute","oldUnicode","newUnicode","alreadyProcessedPseudoElement","fontFamily","getPropertyValue","fontWeight","removeChild","_content","toLowerCase","_hexValueFromContent","index","second","first","cleaned","codePoint","isPrependTen","isDoubled","isSecondary","hexValueFromContent","hexValue","isV4","startsWith","iconIdentifier","iconName4","meta","processable","operations","_unwatched","parseTransformString","transformString","parseFloat","isNaN","PowerTransforms","parseNodeAttributes","generateAbstractTransformGrouping","outer","innerTranslate","innerScale","innerRotate","inner","path","ALL_SPACE","fillBlack","force","Masks","maskData","generateAbstractMask","explicitMaskId","mainWidth","mainPath","maskWidth","maskPath","trans","transformForSvg","maskRect","maskInnerGroupChildrenMixin","maskInnerGroup","maskOuterGroup","clipId","maskTag","maskUnits","maskContentUnits","defs","MissingIconIndicator","reduceMotion","matchMedia","matches","missingIconAbstract","gChildren","FILL","ANIMATION_BASE","attributeType","repeatCount","dur","OPACITY_ANIMATE","dot","cx","cy","r","opacity","nextPlugins","mixoutsTo","k","plugin","tk","sk","registerPlugins","pseudoElements2svg","unwatch","bootstrap","disconnect","symbolData","parse$1"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.mjs.js","sources":["../../../../node_modules/@fortawesome/fontawesome-svg-core/index.mjs"],"sourcesContent":["/*!\n * Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com\n * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)\n * Copyright 2024 Fonticons, Inc.\n */\nfunction _defineProperty(e, r, t) {\n return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[r] = t, e;\n}\nfunction _inherits(t, e) {\n if (\"function\" != typeof e && null !== e) throw new TypeError(\"Super expression must either be null or a function\");\n t.prototype = Object.create(e && e.prototype, {\n constructor: {\n value: t,\n writable: !0,\n configurable: !0\n }\n }), Object.defineProperty(t, \"prototype\", {\n writable: !1\n }), e && _setPrototypeOf(t, e);\n}\nfunction ownKeys(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function (r) {\n return Object.getOwnPropertyDescriptor(e, r).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread2(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {\n _defineProperty(e, r, t[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {\n Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));\n });\n }\n return e;\n}\nfunction _setPrototypeOf(t, e) {\n return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) {\n return t.__proto__ = e, t;\n }, _setPrototypeOf(t, e);\n}\nfunction _toPrimitive(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\nfunction _wrapRegExp() {\n _wrapRegExp = function (e, r) {\n return new BabelRegExp(e, void 0, r);\n };\n var e = RegExp.prototype,\n r = new WeakMap();\n function BabelRegExp(e, t, p) {\n var o = RegExp(e, t);\n return r.set(o, p || r.get(e)), _setPrototypeOf(o, BabelRegExp.prototype);\n }\n function buildGroups(e, t) {\n var p = r.get(t);\n return Object.keys(p).reduce(function (r, t) {\n var o = p[t];\n if (\"number\" == typeof o) r[t] = e[o];else {\n for (var i = 0; void 0 === e[o[i]] && i + 1 < o.length;) i++;\n r[t] = e[o[i]];\n }\n return r;\n }, Object.create(null));\n }\n return _inherits(BabelRegExp, RegExp), BabelRegExp.prototype.exec = function (r) {\n var t = e.exec.call(this, r);\n if (t) {\n t.groups = buildGroups(t, this);\n var p = t.indices;\n p && (p.groups = buildGroups(p, this));\n }\n return t;\n }, BabelRegExp.prototype[Symbol.replace] = function (t, p) {\n if (\"string\" == typeof p) {\n var o = r.get(this);\n return e[Symbol.replace].call(this, t, p.replace(/\\$<([^>]+)>/g, function (e, r) {\n var t = o[r];\n return \"$\" + (Array.isArray(t) ? t.join(\"$\") : t);\n }));\n }\n if (\"function\" == typeof p) {\n var i = this;\n return e[Symbol.replace].call(this, t, function () {\n var e = arguments;\n return \"object\" != typeof e[e.length - 1] && (e = [].slice.call(e)).push(buildGroups(e, i)), p.apply(this, e);\n });\n }\n return e[Symbol.replace].call(this, t, p);\n }, _wrapRegExp.apply(this, arguments);\n}\n\nconst noop = () => {};\nlet _WINDOW = {};\nlet _DOCUMENT = {};\nlet _MUTATION_OBSERVER = null;\nlet _PERFORMANCE = {\n mark: noop,\n measure: noop\n};\ntry {\n if (typeof window !== 'undefined') _WINDOW = window;\n if (typeof document !== 'undefined') _DOCUMENT = document;\n if (typeof MutationObserver !== 'undefined') _MUTATION_OBSERVER = MutationObserver;\n if (typeof performance !== 'undefined') _PERFORMANCE = performance;\n} catch (e) {}\nconst {\n userAgent = ''\n} = _WINDOW.navigator || {};\nconst WINDOW = _WINDOW;\nconst DOCUMENT = _DOCUMENT;\nconst MUTATION_OBSERVER = _MUTATION_OBSERVER;\nconst PERFORMANCE = _PERFORMANCE;\nconst IS_BROWSER = !!WINDOW.document;\nconst IS_DOM = !!DOCUMENT.documentElement && !!DOCUMENT.head && typeof DOCUMENT.addEventListener === 'function' && typeof DOCUMENT.createElement === 'function';\nconst IS_IE = ~userAgent.indexOf('MSIE') || ~userAgent.indexOf('Trident/');\n\nvar p = /fa(s|r|l|t|d|dr|dl|dt|b|k|kd|ss|sr|sl|st|sds|sdr|sdl|sdt)?[\\-\\ ]/,\n g = /Font ?Awesome ?([56 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit)?.*/i;\nvar S = {\n classic: {\n fa: \"solid\",\n fas: \"solid\",\n \"fa-solid\": \"solid\",\n far: \"regular\",\n \"fa-regular\": \"regular\",\n fal: \"light\",\n \"fa-light\": \"light\",\n fat: \"thin\",\n \"fa-thin\": \"thin\",\n fab: \"brands\",\n \"fa-brands\": \"brands\"\n },\n duotone: {\n fa: \"solid\",\n fad: \"solid\",\n \"fa-solid\": \"solid\",\n \"fa-duotone\": \"solid\",\n fadr: \"regular\",\n \"fa-regular\": \"regular\",\n fadl: \"light\",\n \"fa-light\": \"light\",\n fadt: \"thin\",\n \"fa-thin\": \"thin\"\n },\n sharp: {\n fa: \"solid\",\n fass: \"solid\",\n \"fa-solid\": \"solid\",\n fasr: \"regular\",\n \"fa-regular\": \"regular\",\n fasl: \"light\",\n \"fa-light\": \"light\",\n fast: \"thin\",\n \"fa-thin\": \"thin\"\n },\n \"sharp-duotone\": {\n fa: \"solid\",\n fasds: \"solid\",\n \"fa-solid\": \"solid\",\n fasdr: \"regular\",\n \"fa-regular\": \"regular\",\n fasdl: \"light\",\n \"fa-light\": \"light\",\n fasdt: \"thin\",\n \"fa-thin\": \"thin\"\n }\n },\n A = {\n GROUP: \"duotone-group\",\n SWAP_OPACITY: \"swap-opacity\",\n PRIMARY: \"primary\",\n SECONDARY: \"secondary\"\n },\n P = [\"fa-classic\", \"fa-duotone\", \"fa-sharp\", \"fa-sharp-duotone\"];\nvar s = \"classic\",\n t = \"duotone\",\n r = \"sharp\",\n o = \"sharp-duotone\",\n L = [s, t, r, o];\nvar G = {\n classic: {\n 900: \"fas\",\n 400: \"far\",\n normal: \"far\",\n 300: \"fal\",\n 100: \"fat\"\n },\n duotone: {\n 900: \"fad\",\n 400: \"fadr\",\n 300: \"fadl\",\n 100: \"fadt\"\n },\n sharp: {\n 900: \"fass\",\n 400: \"fasr\",\n 300: \"fasl\",\n 100: \"fast\"\n },\n \"sharp-duotone\": {\n 900: \"fasds\",\n 400: \"fasdr\",\n 300: \"fasdl\",\n 100: \"fasdt\"\n }\n };\nvar lt = {\n \"Font Awesome 6 Free\": {\n 900: \"fas\",\n 400: \"far\"\n },\n \"Font Awesome 6 Pro\": {\n 900: \"fas\",\n 400: \"far\",\n normal: \"far\",\n 300: \"fal\",\n 100: \"fat\"\n },\n \"Font Awesome 6 Brands\": {\n 400: \"fab\",\n normal: \"fab\"\n },\n \"Font Awesome 6 Duotone\": {\n 900: \"fad\",\n 400: \"fadr\",\n normal: \"fadr\",\n 300: \"fadl\",\n 100: \"fadt\"\n },\n \"Font Awesome 6 Sharp\": {\n 900: \"fass\",\n 400: \"fasr\",\n normal: \"fasr\",\n 300: \"fasl\",\n 100: \"fast\"\n },\n \"Font Awesome 6 Sharp Duotone\": {\n 900: \"fasds\",\n 400: \"fasdr\",\n normal: \"fasdr\",\n 300: \"fasdl\",\n 100: \"fasdt\"\n }\n };\nvar pt = new Map([[\"classic\", {\n defaultShortPrefixId: \"fas\",\n defaultStyleId: \"solid\",\n styleIds: [\"solid\", \"regular\", \"light\", \"thin\", \"brands\"],\n futureStyleIds: [],\n defaultFontWeight: 900\n }], [\"sharp\", {\n defaultShortPrefixId: \"fass\",\n defaultStyleId: \"solid\",\n styleIds: [\"solid\", \"regular\", \"light\", \"thin\"],\n futureStyleIds: [],\n defaultFontWeight: 900\n }], [\"duotone\", {\n defaultShortPrefixId: \"fad\",\n defaultStyleId: \"solid\",\n styleIds: [\"solid\", \"regular\", \"light\", \"thin\"],\n futureStyleIds: [],\n defaultFontWeight: 900\n }], [\"sharp-duotone\", {\n defaultShortPrefixId: \"fasds\",\n defaultStyleId: \"solid\",\n styleIds: [\"solid\", \"regular\", \"light\", \"thin\"],\n futureStyleIds: [],\n defaultFontWeight: 900\n }]]),\n xt = {\n classic: {\n solid: \"fas\",\n regular: \"far\",\n light: \"fal\",\n thin: \"fat\",\n brands: \"fab\"\n },\n duotone: {\n solid: \"fad\",\n regular: \"fadr\",\n light: \"fadl\",\n thin: \"fadt\"\n },\n sharp: {\n solid: \"fass\",\n regular: \"fasr\",\n light: \"fasl\",\n thin: \"fast\"\n },\n \"sharp-duotone\": {\n solid: \"fasds\",\n regular: \"fasdr\",\n light: \"fasdl\",\n thin: \"fasdt\"\n }\n };\nvar Ft = [\"fak\", \"fa-kit\", \"fakd\", \"fa-kit-duotone\"],\n St = {\n kit: {\n fak: \"kit\",\n \"fa-kit\": \"kit\"\n },\n \"kit-duotone\": {\n fakd: \"kit-duotone\",\n \"fa-kit-duotone\": \"kit-duotone\"\n }\n },\n At = [\"kit\"];\nvar Ct = {\n kit: {\n \"fa-kit\": \"fak\"\n },\n \"kit-duotone\": {\n \"fa-kit-duotone\": \"fakd\"\n }\n};\nvar Lt = [\"fak\", \"fakd\"],\n Wt = {\n kit: {\n fak: \"fa-kit\"\n },\n \"kit-duotone\": {\n fakd: \"fa-kit-duotone\"\n }\n };\nvar Et = {\n kit: {\n kit: \"fak\"\n },\n \"kit-duotone\": {\n \"kit-duotone\": \"fakd\"\n }\n };\n\nvar t$1 = {\n GROUP: \"duotone-group\",\n SWAP_OPACITY: \"swap-opacity\",\n PRIMARY: \"primary\",\n SECONDARY: \"secondary\"\n },\n r$1 = [\"fa-classic\", \"fa-duotone\", \"fa-sharp\", \"fa-sharp-duotone\"];\nvar bt$1 = [\"fak\", \"fa-kit\", \"fakd\", \"fa-kit-duotone\"];\nvar Yt = {\n \"Font Awesome Kit\": {\n 400: \"fak\",\n normal: \"fak\"\n },\n \"Font Awesome Kit Duotone\": {\n 400: \"fakd\",\n normal: \"fakd\"\n }\n };\nvar ua = {\n classic: {\n \"fa-brands\": \"fab\",\n \"fa-duotone\": \"fad\",\n \"fa-light\": \"fal\",\n \"fa-regular\": \"far\",\n \"fa-solid\": \"fas\",\n \"fa-thin\": \"fat\"\n },\n duotone: {\n \"fa-regular\": \"fadr\",\n \"fa-light\": \"fadl\",\n \"fa-thin\": \"fadt\"\n },\n sharp: {\n \"fa-solid\": \"fass\",\n \"fa-regular\": \"fasr\",\n \"fa-light\": \"fasl\",\n \"fa-thin\": \"fast\"\n },\n \"sharp-duotone\": {\n \"fa-solid\": \"fasds\",\n \"fa-regular\": \"fasdr\",\n \"fa-light\": \"fasdl\",\n \"fa-thin\": \"fasdt\"\n }\n },\n I$1 = {\n classic: [\"fas\", \"far\", \"fal\", \"fat\", \"fad\"],\n duotone: [\"fadr\", \"fadl\", \"fadt\"],\n sharp: [\"fass\", \"fasr\", \"fasl\", \"fast\"],\n \"sharp-duotone\": [\"fasds\", \"fasdr\", \"fasdl\", \"fasdt\"]\n },\n ga = {\n classic: {\n fab: \"fa-brands\",\n fad: \"fa-duotone\",\n fal: \"fa-light\",\n far: \"fa-regular\",\n fas: \"fa-solid\",\n fat: \"fa-thin\"\n },\n duotone: {\n fadr: \"fa-regular\",\n fadl: \"fa-light\",\n fadt: \"fa-thin\"\n },\n sharp: {\n fass: \"fa-solid\",\n fasr: \"fa-regular\",\n fasl: \"fa-light\",\n fast: \"fa-thin\"\n },\n \"sharp-duotone\": {\n fasds: \"fa-solid\",\n fasdr: \"fa-regular\",\n fasdl: \"fa-light\",\n fasdt: \"fa-thin\"\n }\n },\n x = [\"fa-solid\", \"fa-regular\", \"fa-light\", \"fa-thin\", \"fa-duotone\", \"fa-brands\"],\n Ia = [\"fa\", \"fas\", \"far\", \"fal\", \"fat\", \"fad\", \"fadr\", \"fadl\", \"fadt\", \"fab\", \"fass\", \"fasr\", \"fasl\", \"fast\", \"fasds\", \"fasdr\", \"fasdl\", \"fasdt\", ...r$1, ...x],\n m$1 = [\"solid\", \"regular\", \"light\", \"thin\", \"duotone\", \"brands\"],\n c$1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],\n F$1 = c$1.concat([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]),\n 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)));\nvar wa = {\n \"Font Awesome 5 Free\": {\n 900: \"fas\",\n 400: \"far\"\n },\n \"Font Awesome 5 Pro\": {\n 900: \"fas\",\n 400: \"far\",\n normal: \"far\",\n 300: \"fal\"\n },\n \"Font Awesome 5 Brands\": {\n 400: \"fab\",\n normal: \"fab\"\n },\n \"Font Awesome 5 Duotone\": {\n 900: \"fad\"\n }\n };\n\nconst NAMESPACE_IDENTIFIER = '___FONT_AWESOME___';\nconst UNITS_IN_GRID = 16;\nconst DEFAULT_CSS_PREFIX = 'fa';\nconst DEFAULT_REPLACEMENT_CLASS = 'svg-inline--fa';\nconst DATA_FA_I2SVG = 'data-fa-i2svg';\nconst DATA_FA_PSEUDO_ELEMENT = 'data-fa-pseudo-element';\nconst DATA_FA_PSEUDO_ELEMENT_PENDING = 'data-fa-pseudo-element-pending';\nconst DATA_PREFIX = 'data-prefix';\nconst DATA_ICON = 'data-icon';\nconst HTML_CLASS_I2SVG_BASE_CLASS = 'fontawesome-i2svg';\nconst MUTATION_APPROACH_ASYNC = 'async';\nconst TAGNAMES_TO_SKIP_FOR_PSEUDOELEMENTS = ['HTML', 'HEAD', 'STYLE', 'SCRIPT'];\nconst PRODUCTION = (() => {\n try {\n return process.env.NODE_ENV === 'production';\n } catch (e$$1) {\n return false;\n }\n})();\nfunction familyProxy(obj) {\n // Defaults to the classic family if family is not available\n return new Proxy(obj, {\n get(target, prop) {\n return prop in target ? target[prop] : target[s];\n }\n });\n}\nconst _PREFIX_TO_STYLE = _objectSpread2({}, S);\n\n// We changed FACSSClassesToStyleId in the icons repo to be canonical and as such, \"classic\" family does not have any\n// duotone styles. But we do still need duotone in _PREFIX_TO_STYLE below, so we are manually adding\n// {'fa-duotone': 'duotone'}\n_PREFIX_TO_STYLE[s] = _objectSpread2(_objectSpread2(_objectSpread2(_objectSpread2({}, {\n 'fa-duotone': 'duotone'\n}), S[s]), St['kit']), St['kit-duotone']);\nconst PREFIX_TO_STYLE = familyProxy(_PREFIX_TO_STYLE);\nconst _STYLE_TO_PREFIX = _objectSpread2({}, xt);\n\n// We changed FAStyleIdToShortPrefixId in the icons repo to be canonical and as such, \"classic\" family does not have any\n// duotone styles. But we do still need duotone in _STYLE_TO_PREFIX below, so we are manually adding {duotone: 'fad'}\n_STYLE_TO_PREFIX[s] = _objectSpread2(_objectSpread2(_objectSpread2(_objectSpread2({}, {\n duotone: 'fad'\n}), _STYLE_TO_PREFIX[s]), Et['kit']), Et['kit-duotone']);\nconst STYLE_TO_PREFIX = familyProxy(_STYLE_TO_PREFIX);\nconst _PREFIX_TO_LONG_STYLE = _objectSpread2({}, ga);\n_PREFIX_TO_LONG_STYLE[s] = _objectSpread2(_objectSpread2({}, _PREFIX_TO_LONG_STYLE[s]), Wt['kit']);\nconst PREFIX_TO_LONG_STYLE = familyProxy(_PREFIX_TO_LONG_STYLE);\nconst _LONG_STYLE_TO_PREFIX = _objectSpread2({}, ua);\n_LONG_STYLE_TO_PREFIX[s] = _objectSpread2(_objectSpread2({}, _LONG_STYLE_TO_PREFIX[s]), Ct['kit']);\nconst LONG_STYLE_TO_PREFIX = familyProxy(_LONG_STYLE_TO_PREFIX);\nconst ICON_SELECTION_SYNTAX_PATTERN = p; // eslint-disable-line no-useless-escape\n\nconst LAYERS_TEXT_CLASSNAME = 'fa-layers-text';\nconst FONT_FAMILY_PATTERN = g;\nconst _FONT_WEIGHT_TO_PREFIX = _objectSpread2({}, G);\nconst FONT_WEIGHT_TO_PREFIX = familyProxy(_FONT_WEIGHT_TO_PREFIX);\nconst ATTRIBUTES_WATCHED_FOR_MUTATION = ['class', 'data-prefix', 'data-icon', 'data-fa-transform', 'data-fa-mask'];\nconst DUOTONE_CLASSES = A;\nconst RESERVED_CLASSES = [...At, ...ma];\n\nconst initial = WINDOW.FontAwesomeConfig || {};\nfunction getAttrConfig(attr) {\n var element = DOCUMENT.querySelector('script[' + attr + ']');\n if (element) {\n return element.getAttribute(attr);\n }\n}\nfunction coerce(val) {\n // Getting an empty string will occur if the attribute is set on the HTML tag but without a value\n // We'll assume that this is an indication that it should be toggled to true\n if (val === '') return true;\n if (val === 'false') return false;\n if (val === 'true') return true;\n return val;\n}\nif (DOCUMENT && typeof DOCUMENT.querySelector === 'function') {\n 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']];\n attrs.forEach(_ref => {\n let [attr, key] = _ref;\n const val = coerce(getAttrConfig(attr));\n if (val !== undefined && val !== null) {\n initial[key] = val;\n }\n });\n}\nconst _default = {\n styleDefault: 'solid',\n familyDefault: s,\n cssPrefix: DEFAULT_CSS_PREFIX,\n replacementClass: DEFAULT_REPLACEMENT_CLASS,\n autoReplaceSvg: true,\n autoAddCss: true,\n autoA11y: true,\n searchPseudoElements: false,\n observeMutations: true,\n mutateApproach: 'async',\n keepOriginalSource: true,\n measurePerformance: false,\n showMissingIcons: true\n};\n\n// familyPrefix is deprecated but we must still support it if present\nif (initial.familyPrefix) {\n initial.cssPrefix = initial.familyPrefix;\n}\nconst _config = _objectSpread2(_objectSpread2({}, _default), initial);\nif (!_config.autoReplaceSvg) _config.observeMutations = false;\nconst config = {};\nObject.keys(_default).forEach(key => {\n Object.defineProperty(config, key, {\n enumerable: true,\n set: function (val) {\n _config[key] = val;\n _onChangeCb.forEach(cb => cb(config));\n },\n get: function () {\n return _config[key];\n }\n });\n});\n\n// familyPrefix is deprecated as of 6.2.0 and should be removed in 7.0.0\nObject.defineProperty(config, 'familyPrefix', {\n enumerable: true,\n set: function (val) {\n _config.cssPrefix = val;\n _onChangeCb.forEach(cb => cb(config));\n },\n get: function () {\n return _config.cssPrefix;\n }\n});\nWINDOW.FontAwesomeConfig = config;\nconst _onChangeCb = [];\nfunction onChange(cb) {\n _onChangeCb.push(cb);\n return () => {\n _onChangeCb.splice(_onChangeCb.indexOf(cb), 1);\n };\n}\n\nconst d$2 = UNITS_IN_GRID;\nconst meaninglessTransform = {\n size: 16,\n x: 0,\n y: 0,\n rotate: 0,\n flipX: false,\n flipY: false\n};\nfunction insertCss(css) {\n if (!css || !IS_DOM) {\n return;\n }\n const style = DOCUMENT.createElement('style');\n style.setAttribute('type', 'text/css');\n style.innerHTML = css;\n const headChildren = DOCUMENT.head.childNodes;\n let beforeChild = null;\n for (let i = headChildren.length - 1; i > -1; i--) {\n const child = headChildren[i];\n const tagName = (child.tagName || '').toUpperCase();\n if (['STYLE', 'LINK'].indexOf(tagName) > -1) {\n beforeChild = child;\n }\n }\n DOCUMENT.head.insertBefore(style, beforeChild);\n return css;\n}\nconst idPool = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';\nfunction nextUniqueId() {\n let size = 12;\n let id = '';\n while (size-- > 0) {\n id += idPool[Math.random() * 62 | 0];\n }\n return id;\n}\nfunction toArray(obj) {\n const array = [];\n for (let i = (obj || []).length >>> 0; i--;) {\n array[i] = obj[i];\n }\n return array;\n}\nfunction classArray(node) {\n if (node.classList) {\n return toArray(node.classList);\n } else {\n return (node.getAttribute('class') || '').split(' ').filter(i => i);\n }\n}\nfunction htmlEscape(str) {\n return \"\".concat(str).replace(/&/g, '&').replace(/\"/g, '"').replace(/'/g, ''').replace(/</g, '<').replace(/>/g, '>');\n}\nfunction joinAttributes(attributes) {\n return Object.keys(attributes || {}).reduce((acc, attributeName) => {\n return acc + \"\".concat(attributeName, \"=\\\"\").concat(htmlEscape(attributes[attributeName]), \"\\\" \");\n }, '').trim();\n}\nfunction joinStyles(styles) {\n return Object.keys(styles || {}).reduce((acc, styleName) => {\n return acc + \"\".concat(styleName, \": \").concat(styles[styleName].trim(), \";\");\n }, '');\n}\nfunction transformIsMeaningful(transform) {\n return transform.size !== meaninglessTransform.size || transform.x !== meaninglessTransform.x || transform.y !== meaninglessTransform.y || transform.rotate !== meaninglessTransform.rotate || transform.flipX || transform.flipY;\n}\nfunction transformForSvg(_ref) {\n let {\n transform,\n containerWidth,\n iconWidth\n } = _ref;\n const outer = {\n transform: \"translate(\".concat(containerWidth / 2, \" 256)\")\n };\n const innerTranslate = \"translate(\".concat(transform.x * 32, \", \").concat(transform.y * 32, \") \");\n const innerScale = \"scale(\".concat(transform.size / 16 * (transform.flipX ? -1 : 1), \", \").concat(transform.size / 16 * (transform.flipY ? -1 : 1), \") \");\n const innerRotate = \"rotate(\".concat(transform.rotate, \" 0 0)\");\n const inner = {\n transform: \"\".concat(innerTranslate, \" \").concat(innerScale, \" \").concat(innerRotate)\n };\n const path = {\n transform: \"translate(\".concat(iconWidth / 2 * -1, \" -256)\")\n };\n return {\n outer,\n inner,\n path\n };\n}\nfunction transformForCss(_ref2) {\n let {\n transform,\n width = UNITS_IN_GRID,\n height = UNITS_IN_GRID,\n startCentered = false\n } = _ref2;\n let val = '';\n if (startCentered && IS_IE) {\n val += \"translate(\".concat(transform.x / d$2 - width / 2, \"em, \").concat(transform.y / d$2 - height / 2, \"em) \");\n } else if (startCentered) {\n val += \"translate(calc(-50% + \".concat(transform.x / d$2, \"em), calc(-50% + \").concat(transform.y / d$2, \"em)) \");\n } else {\n val += \"translate(\".concat(transform.x / d$2, \"em, \").concat(transform.y / d$2, \"em) \");\n }\n val += \"scale(\".concat(transform.size / d$2 * (transform.flipX ? -1 : 1), \", \").concat(transform.size / d$2 * (transform.flipY ? -1 : 1), \") \");\n val += \"rotate(\".concat(transform.rotate, \"deg) \");\n return val;\n}\n\nvar 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}\";\n\nfunction css() {\n const dcp = DEFAULT_CSS_PREFIX;\n const drc = DEFAULT_REPLACEMENT_CLASS;\n const fp = config.cssPrefix;\n const rc = config.replacementClass;\n let s = baseStyles;\n if (fp !== dcp || rc !== drc) {\n const dPatt = new RegExp(\"\\\\.\".concat(dcp, \"\\\\-\"), 'g');\n const customPropPatt = new RegExp(\"\\\\--\".concat(dcp, \"\\\\-\"), 'g');\n const rPatt = new RegExp(\"\\\\.\".concat(drc), 'g');\n s = s.replace(dPatt, \".\".concat(fp, \"-\")).replace(customPropPatt, \"--\".concat(fp, \"-\")).replace(rPatt, \".\".concat(rc));\n }\n return s;\n}\nlet _cssInserted = false;\nfunction ensureCss() {\n if (config.autoAddCss && !_cssInserted) {\n insertCss(css());\n _cssInserted = true;\n }\n}\nvar InjectCSS = {\n mixout() {\n return {\n dom: {\n css,\n insertCss: ensureCss\n }\n };\n },\n hooks() {\n return {\n beforeDOMElementCreation() {\n ensureCss();\n },\n beforeI2svg() {\n ensureCss();\n }\n };\n }\n};\n\nconst w = WINDOW || {};\nif (!w[NAMESPACE_IDENTIFIER]) w[NAMESPACE_IDENTIFIER] = {};\nif (!w[NAMESPACE_IDENTIFIER].styles) w[NAMESPACE_IDENTIFIER].styles = {};\nif (!w[NAMESPACE_IDENTIFIER].hooks) w[NAMESPACE_IDENTIFIER].hooks = {};\nif (!w[NAMESPACE_IDENTIFIER].shims) w[NAMESPACE_IDENTIFIER].shims = [];\nvar namespace = w[NAMESPACE_IDENTIFIER];\n\nconst functions = [];\nconst listener = function () {\n DOCUMENT.removeEventListener('DOMContentLoaded', listener);\n loaded = 1;\n functions.map(fn => fn());\n};\nlet loaded = false;\nif (IS_DOM) {\n loaded = (DOCUMENT.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(DOCUMENT.readyState);\n if (!loaded) DOCUMENT.addEventListener('DOMContentLoaded', listener);\n}\nfunction domready (fn) {\n if (!IS_DOM) return;\n loaded ? setTimeout(fn, 0) : functions.push(fn);\n}\n\nfunction toHtml(abstractNodes) {\n const {\n tag,\n attributes = {},\n children = []\n } = abstractNodes;\n if (typeof abstractNodes === 'string') {\n return htmlEscape(abstractNodes);\n } else {\n return \"<\".concat(tag, \" \").concat(joinAttributes(attributes), \">\").concat(children.map(toHtml).join(''), \"</\").concat(tag, \">\");\n }\n}\n\nfunction iconFromMapping(mapping, prefix, iconName) {\n if (mapping && mapping[prefix] && mapping[prefix][iconName]) {\n return {\n prefix,\n iconName,\n icon: mapping[prefix][iconName]\n };\n }\n}\n\n/**\n * Internal helper to bind a function known to have 4 arguments\n * to a given context.\n */\nvar bindInternal4 = function bindInternal4(func, thisContext) {\n return function (a, b, c, d) {\n return func.call(thisContext, a, b, c, d);\n };\n};\n\n/**\n * # Reduce\n *\n * A fast object `.reduce()` implementation.\n *\n * @param {Object} subject The object to reduce over.\n * @param {Function} fn The reducer function.\n * @param {mixed} initialValue The initial value for the reducer, defaults to subject[0].\n * @param {Object} thisContext The context for the reducer.\n * @return {mixed} The final result.\n */\nvar reduce = function fastReduceObject(subject, fn, initialValue, thisContext) {\n var keys = Object.keys(subject),\n length = keys.length,\n iterator = thisContext !== undefined ? bindInternal4(fn, thisContext) : fn,\n i,\n key,\n result;\n if (initialValue === undefined) {\n i = 1;\n result = subject[keys[0]];\n } else {\n i = 0;\n result = initialValue;\n }\n for (; i < length; i++) {\n key = keys[i];\n result = iterator(result, subject[key], key, subject);\n }\n return result;\n};\n\n/**\n * ucs2decode() and codePointAt() are both works of Mathias Bynens and licensed under MIT\n *\n * Copyright Mathias Bynens <https://mathiasbynens.be/>\n\n * Permission is hereby granted, free of charge, to any person obtaining\n * a copy of this software and associated documentation files (the\n * \"Software\"), to deal in the Software without restriction, including\n * without limitation the rights to use, copy, modify, merge, publish,\n * distribute, sublicense, and/or sell copies of the Software, and to\n * permit persons to whom the Software is furnished to do so, subject to\n * the following conditions:\n\n * The above copyright notice and this permission notice shall be\n * included in all copies or substantial portions of the Software.\n\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n */\n\nfunction ucs2decode(string) {\n const output = [];\n let counter = 0;\n const length = string.length;\n while (counter < length) {\n const value = string.charCodeAt(counter++);\n if (value >= 0xD800 && value <= 0xDBFF && counter < length) {\n const extra = string.charCodeAt(counter++);\n if ((extra & 0xFC00) == 0xDC00) {\n // eslint-disable-line eqeqeq\n output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);\n } else {\n output.push(value);\n counter--;\n }\n } else {\n output.push(value);\n }\n }\n return output;\n}\nfunction toHex(unicode) {\n const decoded = ucs2decode(unicode);\n return decoded.length === 1 ? decoded[0].toString(16) : null;\n}\nfunction codePointAt(string, index) {\n const size = string.length;\n let first = string.charCodeAt(index);\n let second;\n if (first >= 0xD800 && first <= 0xDBFF && size > index + 1) {\n second = string.charCodeAt(index + 1);\n if (second >= 0xDC00 && second <= 0xDFFF) {\n return (first - 0xD800) * 0x400 + second - 0xDC00 + 0x10000;\n }\n }\n return first;\n}\n\nfunction normalizeIcons(icons) {\n return Object.keys(icons).reduce((acc, iconName) => {\n const icon = icons[iconName];\n const expanded = !!icon.icon;\n if (expanded) {\n acc[icon.iconName] = icon.icon;\n } else {\n acc[iconName] = icon;\n }\n return acc;\n }, {});\n}\nfunction defineIcons(prefix, icons) {\n let params = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n const {\n skipHooks = false\n } = params;\n const normalized = normalizeIcons(icons);\n if (typeof namespace.hooks.addPack === 'function' && !skipHooks) {\n namespace.hooks.addPack(prefix, normalizeIcons(icons));\n } else {\n namespace.styles[prefix] = _objectSpread2(_objectSpread2({}, namespace.styles[prefix] || {}), normalized);\n }\n\n /**\n * Font Awesome 4 used the prefix of `fa` for all icons. With the introduction\n * of new styles we needed to differentiate between them. Prefix `fa` is now an alias\n * for `fas` so we'll ease the upgrade process for our users by automatically defining\n * this as well.\n */\n if (prefix === 'fas') {\n defineIcons('fa', icons);\n }\n}\n\nconst duotonePathRe = [/*#__PURE__*/_wrapRegExp(/path d=\"([^\"]+)\".*path d=\"([^\"]+)\"/, {\n d1: 1,\n d2: 2\n}), /*#__PURE__*/_wrapRegExp(/path class=\"([^\"]+)\".*d=\"([^\"]+)\".*path class=\"([^\"]+)\".*d=\"([^\"]+)\"/, {\n cls1: 1,\n d1: 2,\n cls2: 3,\n d2: 4\n}), /*#__PURE__*/_wrapRegExp(/path class=\"([^\"]+)\".*d=\"([^\"]+)\"/, {\n cls1: 1,\n d1: 2\n})];\n\nconst {\n styles,\n shims\n} = namespace;\nconst FAMILY_NAMES = Object.keys(PREFIX_TO_LONG_STYLE);\nconst PREFIXES_FOR_FAMILY = FAMILY_NAMES.reduce((acc, familyId) => {\n acc[familyId] = Object.keys(PREFIX_TO_LONG_STYLE[familyId]);\n return acc;\n}, {});\nlet _defaultUsablePrefix = null;\nlet _byUnicode = {};\nlet _byLigature = {};\nlet _byOldName = {};\nlet _byOldUnicode = {};\nlet _byAlias = {};\nfunction isReserved(name) {\n return ~RESERVED_CLASSES.indexOf(name);\n}\nfunction getIconName(cssPrefix, cls) {\n const parts = cls.split('-');\n const prefix = parts[0];\n const iconName = parts.slice(1).join('-');\n if (prefix === cssPrefix && iconName !== '' && !isReserved(iconName)) {\n return iconName;\n } else {\n return null;\n }\n}\nconst build = () => {\n const lookup = reducer => {\n return reduce(styles, (o$$1, style, prefix) => {\n o$$1[prefix] = reduce(style, reducer, {});\n return o$$1;\n }, {});\n };\n _byUnicode = lookup((acc, icon, iconName) => {\n if (icon[3]) {\n acc[icon[3]] = iconName;\n }\n if (icon[2]) {\n const aliases = icon[2].filter(a$$1 => {\n return typeof a$$1 === 'number';\n });\n aliases.forEach(alias => {\n acc[alias.toString(16)] = iconName;\n });\n }\n return acc;\n });\n _byLigature = lookup((acc, icon, iconName) => {\n acc[iconName] = iconName;\n if (icon[2]) {\n const aliases = icon[2].filter(a$$1 => {\n return typeof a$$1 === 'string';\n });\n aliases.forEach(alias => {\n acc[alias] = iconName;\n });\n }\n return acc;\n });\n _byAlias = lookup((acc, icon, iconName) => {\n const aliases = icon[2];\n acc[iconName] = iconName;\n aliases.forEach(alias => {\n acc[alias] = iconName;\n });\n return acc;\n });\n\n // If we have a Kit, we can't determine if regular is available since we\n // could be auto-fetching it. We'll have to assume that it is available.\n const hasRegular = 'far' in styles || config.autoFetchSvg;\n const shimLookups = reduce(shims, (acc, shim) => {\n const maybeNameMaybeUnicode = shim[0];\n let prefix = shim[1];\n const iconName = shim[2];\n if (prefix === 'far' && !hasRegular) {\n prefix = 'fas';\n }\n if (typeof maybeNameMaybeUnicode === 'string') {\n acc.names[maybeNameMaybeUnicode] = {\n prefix,\n iconName\n };\n }\n if (typeof maybeNameMaybeUnicode === 'number') {\n acc.unicodes[maybeNameMaybeUnicode.toString(16)] = {\n prefix,\n iconName\n };\n }\n return acc;\n }, {\n names: {},\n unicodes: {}\n });\n _byOldName = shimLookups.names;\n _byOldUnicode = shimLookups.unicodes;\n _defaultUsablePrefix = getCanonicalPrefix(config.styleDefault, {\n family: config.familyDefault\n });\n};\nonChange(c$$1 => {\n _defaultUsablePrefix = getCanonicalPrefix(c$$1.styleDefault, {\n family: config.familyDefault\n });\n});\nbuild();\nfunction byUnicode(prefix, unicode) {\n return (_byUnicode[prefix] || {})[unicode];\n}\nfunction byLigature(prefix, ligature) {\n return (_byLigature[prefix] || {})[ligature];\n}\nfunction byAlias(prefix, alias) {\n return (_byAlias[prefix] || {})[alias];\n}\nfunction byOldName(name) {\n return _byOldName[name] || {\n prefix: null,\n iconName: null\n };\n}\nfunction byOldUnicode(unicode) {\n const oldUnicode = _byOldUnicode[unicode];\n const newUnicode = byUnicode('fas', unicode);\n return oldUnicode || (newUnicode ? {\n prefix: 'fas',\n iconName: newUnicode\n } : null) || {\n prefix: null,\n iconName: null\n };\n}\nfunction getDefaultUsablePrefix() {\n return _defaultUsablePrefix;\n}\nconst emptyCanonicalIcon = () => {\n return {\n prefix: null,\n iconName: null,\n rest: []\n };\n};\nfunction getFamilyId(values) {\n let family = s;\n const famProps = FAMILY_NAMES.reduce((acc, familyId) => {\n acc[familyId] = \"\".concat(config.cssPrefix, \"-\").concat(familyId);\n return acc;\n }, {});\n L.forEach(familyId => {\n if (values.includes(famProps[familyId]) || values.some(v$$1 => PREFIXES_FOR_FAMILY[familyId].includes(v$$1))) {\n family = familyId;\n }\n });\n return family;\n}\nfunction getCanonicalPrefix(styleOrPrefix) {\n let params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const {\n family = s\n } = params;\n const style = PREFIX_TO_STYLE[family][styleOrPrefix];\n\n // handles the exception of passing in only a family of 'duotone' with no style\n if (family === t && !styleOrPrefix) {\n return 'fad';\n }\n const prefix = STYLE_TO_PREFIX[family][styleOrPrefix] || STYLE_TO_PREFIX[family][style];\n const defined = styleOrPrefix in namespace.styles ? styleOrPrefix : null;\n const result = prefix || defined || null;\n return result;\n}\nfunction moveNonFaClassesToRest(classNames) {\n let rest = [];\n let iconName = null;\n classNames.forEach(cls => {\n const result = getIconName(config.cssPrefix, cls);\n if (result) {\n iconName = result;\n } else if (cls) {\n rest.push(cls);\n }\n });\n return {\n iconName,\n rest\n };\n}\nfunction sortedUniqueValues(arr) {\n return arr.sort().filter((value, index, arr) => {\n return arr.indexOf(value) === index;\n });\n}\nfunction getCanonicalIcon(values) {\n let params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const {\n skipLookups = false\n } = params;\n let givenPrefix = null;\n const faCombinedClasses = Ia.concat(bt$1);\n const faStyleOrFamilyClasses = sortedUniqueValues(values.filter(cls => faCombinedClasses.includes(cls)));\n const nonStyleOrFamilyClasses = sortedUniqueValues(values.filter(cls => !Ia.includes(cls)));\n const faStyles = faStyleOrFamilyClasses.filter(cls => {\n givenPrefix = cls;\n return !P.includes(cls);\n });\n const [styleFromValues = null] = faStyles;\n const family = getFamilyId(faStyleOrFamilyClasses);\n const canonical = _objectSpread2(_objectSpread2({}, moveNonFaClassesToRest(nonStyleOrFamilyClasses)), {}, {\n prefix: getCanonicalPrefix(styleFromValues, {\n family\n })\n });\n return _objectSpread2(_objectSpread2(_objectSpread2({}, canonical), getDefaultCanonicalPrefix({\n values,\n family,\n styles,\n config,\n canonical,\n givenPrefix\n })), applyShimAndAlias(skipLookups, givenPrefix, canonical));\n}\nfunction applyShimAndAlias(skipLookups, givenPrefix, canonical) {\n let {\n prefix,\n iconName\n } = canonical;\n if (skipLookups || !prefix || !iconName) {\n return {\n prefix,\n iconName\n };\n }\n const shim = givenPrefix === 'fa' ? byOldName(iconName) : {};\n const aliasIconName = byAlias(prefix, iconName);\n iconName = shim.iconName || aliasIconName || iconName;\n prefix = shim.prefix || prefix;\n if (prefix === 'far' && !styles['far'] && styles['fas'] && !config.autoFetchSvg) {\n // Allow a fallback from the regular style to solid if regular is not available\n // but only if we aren't auto-fetching SVGs\n prefix = 'fas';\n }\n return {\n prefix,\n iconName\n };\n}\nconst newCanonicalFamilies = L.filter(familyId => {\n return familyId !== s || familyId !== t;\n});\nconst newCanonicalStyles = Object.keys(ga).filter(key => key !== s).map(key => Object.keys(ga[key])).flat();\nfunction getDefaultCanonicalPrefix(prefixOptions) {\n const {\n values,\n family,\n canonical,\n givenPrefix = '',\n styles = {},\n config: config$$1 = {}\n } = prefixOptions;\n const isDuotoneFamily = family === t;\n const valuesHasDuotone = values.includes('fa-duotone') || values.includes('fad');\n const defaultFamilyIsDuotone = config$$1.familyDefault === 'duotone';\n const canonicalPrefixIsDuotone = canonical.prefix === 'fad' || canonical.prefix === 'fa-duotone';\n if (!isDuotoneFamily && (valuesHasDuotone || defaultFamilyIsDuotone || canonicalPrefixIsDuotone)) {\n canonical.prefix = 'fad';\n }\n if (values.includes('fa-brands') || values.includes('fab')) {\n canonical.prefix = 'fab';\n }\n if (!canonical.prefix && newCanonicalFamilies.includes(family)) {\n const validPrefix = Object.keys(styles).find(key => newCanonicalStyles.includes(key));\n if (validPrefix || config$$1.autoFetchSvg) {\n const defaultPrefix = pt.get(family).defaultShortPrefixId;\n canonical.prefix = defaultPrefix;\n canonical.iconName = byAlias(canonical.prefix, canonical.iconName) || canonical.iconName;\n }\n }\n if (canonical.prefix === 'fa' || givenPrefix === 'fa') {\n // The fa prefix is not canonical. So if it has made it through until this point\n // we will shift it to the correct prefix.\n canonical.prefix = getDefaultUsablePrefix() || 'fas';\n }\n return canonical;\n}\n\nclass Library {\n constructor() {\n this.definitions = {};\n }\n add() {\n for (var _len = arguments.length, definitions = new Array(_len), _key = 0; _key < _len; _key++) {\n definitions[_key] = arguments[_key];\n }\n const additions = definitions.reduce(this._pullDefinitions, {});\n Object.keys(additions).forEach(key => {\n this.definitions[key] = _objectSpread2(_objectSpread2({}, this.definitions[key] || {}), additions[key]);\n defineIcons(key, additions[key]);\n\n // TODO can we stop doing this? We can't get the icons by 'fa-solid' any longer so this probably needs to change\n const longPrefix = PREFIX_TO_LONG_STYLE[s][key];\n if (longPrefix) defineIcons(longPrefix, additions[key]);\n build();\n });\n }\n reset() {\n this.definitions = {};\n }\n _pullDefinitions(additions, definition) {\n const normalized = definition.prefix && definition.iconName && definition.icon ? {\n 0: definition\n } : definition;\n Object.keys(normalized).map(key => {\n const {\n prefix,\n iconName,\n icon\n } = normalized[key];\n const aliases = icon[2];\n if (!additions[prefix]) additions[prefix] = {};\n if (aliases.length > 0) {\n aliases.forEach(alias => {\n if (typeof alias === 'string') {\n additions[prefix][alias] = icon;\n }\n });\n }\n additions[prefix][iconName] = icon;\n });\n return additions;\n }\n}\n\nlet _plugins = [];\nlet _hooks = {};\nconst providers = {};\nconst defaultProviderKeys = Object.keys(providers);\nfunction registerPlugins(nextPlugins, _ref) {\n let {\n mixoutsTo: obj\n } = _ref;\n _plugins = nextPlugins;\n _hooks = {};\n Object.keys(providers).forEach(k => {\n if (defaultProviderKeys.indexOf(k) === -1) {\n delete providers[k];\n }\n });\n _plugins.forEach(plugin => {\n const mixout = plugin.mixout ? plugin.mixout() : {};\n Object.keys(mixout).forEach(tk => {\n if (typeof mixout[tk] === 'function') {\n obj[tk] = mixout[tk];\n }\n if (typeof mixout[tk] === 'object') {\n Object.keys(mixout[tk]).forEach(sk => {\n if (!obj[tk]) {\n obj[tk] = {};\n }\n obj[tk][sk] = mixout[tk][sk];\n });\n }\n });\n if (plugin.hooks) {\n const hooks = plugin.hooks();\n Object.keys(hooks).forEach(hook => {\n if (!_hooks[hook]) {\n _hooks[hook] = [];\n }\n _hooks[hook].push(hooks[hook]);\n });\n }\n if (plugin.provides) {\n plugin.provides(providers);\n }\n });\n return obj;\n}\nfunction chainHooks(hook, accumulator) {\n for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {\n args[_key - 2] = arguments[_key];\n }\n const hookFns = _hooks[hook] || [];\n hookFns.forEach(hookFn => {\n accumulator = hookFn.apply(null, [accumulator, ...args]); // eslint-disable-line no-useless-call\n });\n return accumulator;\n}\nfunction callHooks(hook) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n const hookFns = _hooks[hook] || [];\n hookFns.forEach(hookFn => {\n hookFn.apply(null, args);\n });\n return undefined;\n}\nfunction callProvided() {\n const hook = arguments[0];\n const args = Array.prototype.slice.call(arguments, 1);\n return providers[hook] ? providers[hook].apply(null, args) : undefined;\n}\n\nfunction findIconDefinition(iconLookup) {\n if (iconLookup.prefix === 'fa') {\n iconLookup.prefix = 'fas';\n }\n let {\n iconName\n } = iconLookup;\n const prefix = iconLookup.prefix || getDefaultUsablePrefix();\n if (!iconName) return;\n iconName = byAlias(prefix, iconName) || iconName;\n return iconFromMapping(library.definitions, prefix, iconName) || iconFromMapping(namespace.styles, prefix, iconName);\n}\nconst library = new Library();\nconst noAuto = () => {\n config.autoReplaceSvg = false;\n config.observeMutations = false;\n callHooks('noAuto');\n};\nconst dom = {\n i2svg: function () {\n let params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n if (IS_DOM) {\n callHooks('beforeI2svg', params);\n callProvided('pseudoElements2svg', params);\n return callProvided('i2svg', params);\n } else {\n return Promise.reject(new Error('Operation requires a DOM of some kind.'));\n }\n },\n watch: function () {\n let params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n const {\n autoReplaceSvgRoot\n } = params;\n if (config.autoReplaceSvg === false) {\n config.autoReplaceSvg = true;\n }\n config.observeMutations = true;\n domready(() => {\n autoReplace({\n autoReplaceSvgRoot\n });\n callHooks('watch', params);\n });\n }\n};\nconst parse = {\n icon: icon => {\n if (icon === null) {\n return null;\n }\n if (typeof icon === 'object' && icon.prefix && icon.iconName) {\n return {\n prefix: icon.prefix,\n iconName: byAlias(icon.prefix, icon.iconName) || icon.iconName\n };\n }\n if (Array.isArray(icon) && icon.length === 2) {\n const iconName = icon[1].indexOf('fa-') === 0 ? icon[1].slice(3) : icon[1];\n const prefix = getCanonicalPrefix(icon[0]);\n return {\n prefix,\n iconName: byAlias(prefix, iconName) || iconName\n };\n }\n if (typeof icon === 'string' && (icon.indexOf(\"\".concat(config.cssPrefix, \"-\")) > -1 || icon.match(ICON_SELECTION_SYNTAX_PATTERN))) {\n const canonicalIcon = getCanonicalIcon(icon.split(' '), {\n skipLookups: true\n });\n return {\n prefix: canonicalIcon.prefix || getDefaultUsablePrefix(),\n iconName: byAlias(canonicalIcon.prefix, canonicalIcon.iconName) || canonicalIcon.iconName\n };\n }\n if (typeof icon === 'string') {\n const prefix = getDefaultUsablePrefix();\n return {\n prefix,\n iconName: byAlias(prefix, icon) || icon\n };\n }\n }\n};\nconst api = {\n noAuto,\n config,\n dom,\n parse,\n library,\n findIconDefinition,\n toHtml\n};\nconst autoReplace = function () {\n let params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n const {\n autoReplaceSvgRoot = DOCUMENT\n } = params;\n if ((Object.keys(namespace.styles).length > 0 || config.autoFetchSvg) && IS_DOM && config.autoReplaceSvg) api.dom.i2svg({\n node: autoReplaceSvgRoot\n });\n};\n\nfunction domVariants(val, abstractCreator) {\n Object.defineProperty(val, 'abstract', {\n get: abstractCreator\n });\n Object.defineProperty(val, 'html', {\n get: function () {\n return val.abstract.map(a => toHtml(a));\n }\n });\n Object.defineProperty(val, 'node', {\n get: function () {\n if (!IS_DOM) return;\n const container = DOCUMENT.createElement('div');\n container.innerHTML = val.html;\n return container.children;\n }\n });\n return val;\n}\n\nfunction asIcon (_ref) {\n let {\n children,\n main,\n mask,\n attributes,\n styles,\n transform\n } = _ref;\n if (transformIsMeaningful(transform) && main.found && !mask.found) {\n const {\n width,\n height\n } = main;\n const offset = {\n x: width / height / 2,\n y: 0.5\n };\n attributes['style'] = joinStyles(_objectSpread2(_objectSpread2({}, styles), {}, {\n 'transform-origin': \"\".concat(offset.x + transform.x / 16, \"em \").concat(offset.y + transform.y / 16, \"em\")\n }));\n }\n return [{\n tag: 'svg',\n attributes,\n children\n }];\n}\n\nfunction asSymbol (_ref) {\n let {\n prefix,\n iconName,\n children,\n attributes,\n symbol\n } = _ref;\n const id = symbol === true ? \"\".concat(prefix, \"-\").concat(config.cssPrefix, \"-\").concat(iconName) : symbol;\n return [{\n tag: 'svg',\n attributes: {\n style: 'display: none;'\n },\n children: [{\n tag: 'symbol',\n attributes: _objectSpread2(_objectSpread2({}, attributes), {}, {\n id\n }),\n children\n }]\n }];\n}\n\nfunction makeInlineSvgAbstract(params) {\n const {\n icons: {\n main,\n mask\n },\n prefix,\n iconName,\n transform,\n symbol,\n title,\n maskId,\n titleId,\n extra,\n watchable = false\n } = params;\n const {\n width,\n height\n } = mask.found ? mask : main;\n const isUploadedIcon = Lt.includes(prefix);\n 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(' ');\n let content = {\n children: [],\n attributes: _objectSpread2(_objectSpread2({}, extra.attributes), {}, {\n 'data-prefix': prefix,\n 'data-icon': iconName,\n 'class': attrClass,\n 'role': extra.attributes.role || 'img',\n 'xmlns': 'http://www.w3.org/2000/svg',\n 'viewBox': \"0 0 \".concat(width, \" \").concat(height)\n })\n };\n const uploadedIconWidthStyle = isUploadedIcon && !~extra.classes.indexOf('fa-fw') ? {\n width: \"\".concat(width / height * 16 * 0.0625, \"em\")\n } : {};\n if (watchable) {\n content.attributes[DATA_FA_I2SVG] = '';\n }\n if (title) {\n content.children.push({\n tag: 'title',\n attributes: {\n id: content.attributes['aria-labelledby'] || \"title-\".concat(titleId || nextUniqueId())\n },\n children: [title]\n });\n delete content.attributes.title;\n }\n const args = _objectSpread2(_objectSpread2({}, content), {}, {\n prefix,\n iconName,\n main,\n mask,\n maskId,\n transform,\n symbol,\n styles: _objectSpread2(_objectSpread2({}, uploadedIconWidthStyle), extra.styles)\n });\n const {\n children,\n attributes\n } = mask.found && main.found ? callProvided('generateAbstractMask', args) || {\n children: [],\n attributes: {}\n } : callProvided('generateAbstractIcon', args) || {\n children: [],\n attributes: {}\n };\n args.children = children;\n args.attributes = attributes;\n if (symbol) {\n return asSymbol(args);\n } else {\n return asIcon(args);\n }\n}\nfunction makeLayersTextAbstract(params) {\n const {\n content,\n width,\n height,\n transform,\n title,\n extra,\n watchable = false\n } = params;\n const attributes = _objectSpread2(_objectSpread2(_objectSpread2({}, extra.attributes), title ? {\n 'title': title\n } : {}), {}, {\n 'class': extra.classes.join(' ')\n });\n if (watchable) {\n attributes[DATA_FA_I2SVG] = '';\n }\n const styles = _objectSpread2({}, extra.styles);\n if (transformIsMeaningful(transform)) {\n styles['transform'] = transformForCss({\n transform,\n startCentered: true,\n width,\n height\n });\n styles['-webkit-transform'] = styles['transform'];\n }\n const styleString = joinStyles(styles);\n if (styleString.length > 0) {\n attributes['style'] = styleString;\n }\n const val = [];\n val.push({\n tag: 'span',\n attributes,\n children: [content]\n });\n if (title) {\n val.push({\n tag: 'span',\n attributes: {\n class: 'sr-only'\n },\n children: [title]\n });\n }\n return val;\n}\nfunction makeLayersCounterAbstract(params) {\n const {\n content,\n title,\n extra\n } = params;\n const attributes = _objectSpread2(_objectSpread2(_objectSpread2({}, extra.attributes), title ? {\n 'title': title\n } : {}), {}, {\n 'class': extra.classes.join(' ')\n });\n const styleString = joinStyles(extra.styles);\n if (styleString.length > 0) {\n attributes['style'] = styleString;\n }\n const val = [];\n val.push({\n tag: 'span',\n attributes,\n children: [content]\n });\n if (title) {\n val.push({\n tag: 'span',\n attributes: {\n class: 'sr-only'\n },\n children: [title]\n });\n }\n return val;\n}\n\nconst {\n styles: styles$1\n} = namespace;\nfunction asFoundIcon(icon) {\n const width = icon[0];\n const height = icon[1];\n const [vectorData] = icon.slice(4);\n let element = null;\n if (Array.isArray(vectorData)) {\n element = {\n tag: 'g',\n attributes: {\n class: \"\".concat(config.cssPrefix, \"-\").concat(DUOTONE_CLASSES.GROUP)\n },\n children: [{\n tag: 'path',\n attributes: {\n class: \"\".concat(config.cssPrefix, \"-\").concat(DUOTONE_CLASSES.SECONDARY),\n fill: 'currentColor',\n d: vectorData[0]\n }\n }, {\n tag: 'path',\n attributes: {\n class: \"\".concat(config.cssPrefix, \"-\").concat(DUOTONE_CLASSES.PRIMARY),\n fill: 'currentColor',\n d: vectorData[1]\n }\n }]\n };\n } else {\n element = {\n tag: 'path',\n attributes: {\n fill: 'currentColor',\n d: vectorData\n }\n };\n }\n return {\n found: true,\n width,\n height,\n icon: element\n };\n}\nconst missingIconResolutionMixin = {\n found: false,\n width: 512,\n height: 512\n};\nfunction maybeNotifyMissing(iconName, prefix) {\n if (!PRODUCTION && !config.showMissingIcons && iconName) {\n console.error(\"Icon with name \\\"\".concat(iconName, \"\\\" and prefix \\\"\").concat(prefix, \"\\\" is missing.\"));\n }\n}\nfunction findIcon(iconName, prefix) {\n let givenPrefix = prefix;\n if (prefix === 'fa' && config.styleDefault !== null) {\n prefix = getDefaultUsablePrefix();\n }\n return new Promise((resolve, reject) => {\n if (givenPrefix === 'fa') {\n const shim = byOldName(iconName) || {};\n iconName = shim.iconName || iconName;\n prefix = shim.prefix || prefix;\n }\n if (iconName && prefix && styles$1[prefix] && styles$1[prefix][iconName]) {\n const icon = styles$1[prefix][iconName];\n return resolve(asFoundIcon(icon));\n }\n maybeNotifyMissing(iconName, prefix);\n resolve(_objectSpread2(_objectSpread2({}, missingIconResolutionMixin), {}, {\n icon: config.showMissingIcons && iconName ? callProvided('missingIconAbstract') || {} : {}\n }));\n });\n}\n\nconst noop$1 = () => {};\nconst p$2 = config.measurePerformance && PERFORMANCE && PERFORMANCE.mark && PERFORMANCE.measure ? PERFORMANCE : {\n mark: noop$1,\n measure: noop$1\n};\nconst preamble = \"FA \\\"6.7.2\\\"\";\nconst begin = name => {\n p$2.mark(\"\".concat(preamble, \" \").concat(name, \" begins\"));\n return () => end(name);\n};\nconst end = name => {\n p$2.mark(\"\".concat(preamble, \" \").concat(name, \" ends\"));\n p$2.measure(\"\".concat(preamble, \" \").concat(name), \"\".concat(preamble, \" \").concat(name, \" begins\"), \"\".concat(preamble, \" \").concat(name, \" ends\"));\n};\nvar perf = {\n begin,\n end\n};\n\nconst noop$2 = () => {};\nfunction isWatched(node) {\n const i2svg = node.getAttribute ? node.getAttribute(DATA_FA_I2SVG) : null;\n return typeof i2svg === 'string';\n}\nfunction hasPrefixAndIcon(node) {\n const prefix = node.getAttribute ? node.getAttribute(DATA_PREFIX) : null;\n const icon = node.getAttribute ? node.getAttribute(DATA_ICON) : null;\n return prefix && icon;\n}\nfunction hasBeenReplaced(node) {\n return node && node.classList && node.classList.contains && node.classList.contains(config.replacementClass);\n}\nfunction getMutator() {\n if (config.autoReplaceSvg === true) {\n return mutators.replace;\n }\n const mutator = mutators[config.autoReplaceSvg];\n return mutator || mutators.replace;\n}\nfunction createElementNS(tag) {\n return DOCUMENT.createElementNS('http://www.w3.org/2000/svg', tag);\n}\nfunction createElement(tag) {\n return DOCUMENT.createElement(tag);\n}\nfunction convertSVG(abstractObj) {\n let params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const {\n ceFn = abstractObj.tag === 'svg' ? createElementNS : createElement\n } = params;\n if (typeof abstractObj === 'string') {\n return DOCUMENT.createTextNode(abstractObj);\n }\n const tag = ceFn(abstractObj.tag);\n Object.keys(abstractObj.attributes || []).forEach(function (key) {\n tag.setAttribute(key, abstractObj.attributes[key]);\n });\n const children = abstractObj.children || [];\n children.forEach(function (child) {\n tag.appendChild(convertSVG(child, {\n ceFn\n }));\n });\n return tag;\n}\nfunction nodeAsComment(node) {\n let comment = \" \".concat(node.outerHTML, \" \");\n /* BEGIN.ATTRIBUTION */\n comment = \"\".concat(comment, \"Font Awesome fontawesome.com \");\n /* END.ATTRIBUTION */\n return comment;\n}\nconst mutators = {\n replace: function (mutation) {\n const node = mutation[0];\n if (node.parentNode) {\n mutation[1].forEach(abstract => {\n node.parentNode.insertBefore(convertSVG(abstract), node);\n });\n if (node.getAttribute(DATA_FA_I2SVG) === null && config.keepOriginalSource) {\n let comment = DOCUMENT.createComment(nodeAsComment(node));\n node.parentNode.replaceChild(comment, node);\n } else {\n node.remove();\n }\n }\n },\n nest: function (mutation) {\n const node = mutation[0];\n const abstract = mutation[1];\n\n // If we already have a replaced node we do not want to continue nesting within it.\n // Short-circuit to the standard replacement\n if (~classArray(node).indexOf(config.replacementClass)) {\n return mutators.replace(mutation);\n }\n const forSvg = new RegExp(\"\".concat(config.cssPrefix, \"-.*\"));\n delete abstract[0].attributes.id;\n if (abstract[0].attributes.class) {\n const splitClasses = abstract[0].attributes.class.split(' ').reduce((acc, cls) => {\n if (cls === config.replacementClass || cls.match(forSvg)) {\n acc.toSvg.push(cls);\n } else {\n acc.toNode.push(cls);\n }\n return acc;\n }, {\n toNode: [],\n toSvg: []\n });\n abstract[0].attributes.class = splitClasses.toSvg.join(' ');\n if (splitClasses.toNode.length === 0) {\n node.removeAttribute('class');\n } else {\n node.setAttribute('class', splitClasses.toNode.join(' '));\n }\n }\n const newInnerHTML = abstract.map(a => toHtml(a)).join('\\n');\n node.setAttribute(DATA_FA_I2SVG, '');\n node.innerHTML = newInnerHTML;\n }\n};\nfunction performOperationSync(op) {\n op();\n}\nfunction perform(mutations, callback) {\n const callbackFunction = typeof callback === 'function' ? callback : noop$2;\n if (mutations.length === 0) {\n callbackFunction();\n } else {\n let frame = performOperationSync;\n if (config.mutateApproach === MUTATION_APPROACH_ASYNC) {\n frame = WINDOW.requestAnimationFrame || performOperationSync;\n }\n frame(() => {\n const mutator = getMutator();\n const mark = perf.begin('mutate');\n mutations.map(mutator);\n mark();\n callbackFunction();\n });\n }\n}\nlet disabled = false;\nfunction disableObservation() {\n disabled = true;\n}\nfunction enableObservation() {\n disabled = false;\n}\nlet mo = null;\nfunction observe(options) {\n if (!MUTATION_OBSERVER) {\n return;\n }\n if (!config.observeMutations) {\n return;\n }\n const {\n treeCallback = noop$2,\n nodeCallback = noop$2,\n pseudoElementsCallback = noop$2,\n observeMutationsRoot = DOCUMENT\n } = options;\n mo = new MUTATION_OBSERVER(objects => {\n if (disabled) return;\n const defaultPrefix = getDefaultUsablePrefix();\n toArray(objects).forEach(mutationRecord => {\n if (mutationRecord.type === 'childList' && mutationRecord.addedNodes.length > 0 && !isWatched(mutationRecord.addedNodes[0])) {\n if (config.searchPseudoElements) {\n pseudoElementsCallback(mutationRecord.target);\n }\n treeCallback(mutationRecord.target);\n }\n if (mutationRecord.type === 'attributes' && mutationRecord.target.parentNode && config.searchPseudoElements) {\n pseudoElementsCallback(mutationRecord.target.parentNode);\n }\n if (mutationRecord.type === 'attributes' && isWatched(mutationRecord.target) && ~ATTRIBUTES_WATCHED_FOR_MUTATION.indexOf(mutationRecord.attributeName)) {\n if (mutationRecord.attributeName === 'class' && hasPrefixAndIcon(mutationRecord.target)) {\n const {\n prefix,\n iconName\n } = getCanonicalIcon(classArray(mutationRecord.target));\n mutationRecord.target.setAttribute(DATA_PREFIX, prefix || defaultPrefix);\n if (iconName) mutationRecord.target.setAttribute(DATA_ICON, iconName);\n } else if (hasBeenReplaced(mutationRecord.target)) {\n nodeCallback(mutationRecord.target);\n }\n }\n });\n });\n if (!IS_DOM) return;\n mo.observe(observeMutationsRoot, {\n childList: true,\n attributes: true,\n characterData: true,\n subtree: true\n });\n}\nfunction disconnect() {\n if (!mo) return;\n mo.disconnect();\n}\n\nfunction styleParser (node) {\n const style = node.getAttribute('style');\n let val = [];\n if (style) {\n val = style.split(';').reduce((acc, style) => {\n const styles = style.split(':');\n const prop = styles[0];\n const value = styles.slice(1);\n if (prop && value.length > 0) {\n acc[prop] = value.join(':').trim();\n }\n return acc;\n }, {});\n }\n return val;\n}\n\nfunction classParser (node) {\n const existingPrefix = node.getAttribute('data-prefix');\n const existingIconName = node.getAttribute('data-icon');\n const innerText = node.innerText !== undefined ? node.innerText.trim() : '';\n let val = getCanonicalIcon(classArray(node));\n if (!val.prefix) {\n val.prefix = getDefaultUsablePrefix();\n }\n if (existingPrefix && existingIconName) {\n val.prefix = existingPrefix;\n val.iconName = existingIconName;\n }\n if (val.iconName && val.prefix) {\n return val;\n }\n if (val.prefix && innerText.length > 0) {\n val.iconName = byLigature(val.prefix, node.innerText) || byUnicode(val.prefix, toHex(node.innerText));\n }\n if (!val.iconName && config.autoFetchSvg && node.firstChild && node.firstChild.nodeType === Node.TEXT_NODE) {\n val.iconName = node.firstChild.data;\n }\n return val;\n}\n\nfunction attributesParser (node) {\n const extraAttributes = toArray(node.attributes).reduce((acc, attr) => {\n if (acc.name !== 'class' && acc.name !== 'style') {\n acc[attr.name] = attr.value;\n }\n return acc;\n }, {});\n const title = node.getAttribute('title');\n const titleId = node.getAttribute('data-fa-title-id');\n if (config.autoA11y) {\n if (title) {\n extraAttributes['aria-labelledby'] = \"\".concat(config.replacementClass, \"-title-\").concat(titleId || nextUniqueId());\n } else {\n extraAttributes['aria-hidden'] = 'true';\n extraAttributes['focusable'] = 'false';\n }\n }\n return extraAttributes;\n}\n\nfunction blankMeta() {\n return {\n iconName: null,\n title: null,\n titleId: null,\n prefix: null,\n transform: meaninglessTransform,\n symbol: false,\n mask: {\n iconName: null,\n prefix: null,\n rest: []\n },\n maskId: null,\n extra: {\n classes: [],\n styles: {},\n attributes: {}\n }\n };\n}\nfunction parseMeta(node) {\n let parser = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n styleParser: true\n };\n const {\n iconName,\n prefix,\n rest: extraClasses\n } = classParser(node);\n const extraAttributes = attributesParser(node);\n const pluginMeta = chainHooks('parseNodeAttributes', {}, node);\n let extraStyles = parser.styleParser ? styleParser(node) : [];\n return _objectSpread2({\n iconName,\n title: node.getAttribute('title'),\n titleId: node.getAttribute('data-fa-title-id'),\n prefix,\n transform: meaninglessTransform,\n mask: {\n iconName: null,\n prefix: null,\n rest: []\n },\n maskId: null,\n symbol: false,\n extra: {\n classes: extraClasses,\n styles: extraStyles,\n attributes: extraAttributes\n }\n }, pluginMeta);\n}\n\nconst {\n styles: styles$2\n} = namespace;\nfunction generateMutation(node) {\n const nodeMeta = config.autoReplaceSvg === 'nest' ? parseMeta(node, {\n styleParser: false\n }) : parseMeta(node);\n if (~nodeMeta.extra.classes.indexOf(LAYERS_TEXT_CLASSNAME)) {\n return callProvided('generateLayersText', node, nodeMeta);\n } else {\n return callProvided('generateSvgReplacementMutation', node, nodeMeta);\n }\n}\nfunction getKnownPrefixes() {\n return [...Ft, ...Ia];\n}\nfunction onTree(root) {\n let callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n if (!IS_DOM) return Promise.resolve();\n const htmlClassList = DOCUMENT.documentElement.classList;\n const hclAdd = suffix => htmlClassList.add(\"\".concat(HTML_CLASS_I2SVG_BASE_CLASS, \"-\").concat(suffix));\n const hclRemove = suffix => htmlClassList.remove(\"\".concat(HTML_CLASS_I2SVG_BASE_CLASS, \"-\").concat(suffix));\n const prefixes = config.autoFetchSvg ? getKnownPrefixes() : P.concat(Object.keys(styles$2));\n if (!prefixes.includes('fa')) {\n prefixes.push('fa');\n }\n 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(', ');\n if (prefixesDomQuery.length === 0) {\n return Promise.resolve();\n }\n let candidates = [];\n try {\n candidates = toArray(root.querySelectorAll(prefixesDomQuery));\n } catch (e$$1) {\n // noop\n }\n if (candidates.length > 0) {\n hclAdd('pending');\n hclRemove('complete');\n } else {\n return Promise.resolve();\n }\n const mark = perf.begin('onTree');\n const mutations = candidates.reduce((acc, node) => {\n try {\n const mutation = generateMutation(node);\n if (mutation) {\n acc.push(mutation);\n }\n } catch (e$$1) {\n if (!PRODUCTION) {\n if (e$$1.name === 'MissingIcon') {\n console.error(e$$1);\n }\n }\n }\n return acc;\n }, []);\n return new Promise((resolve, reject) => {\n Promise.all(mutations).then(resolvedMutations => {\n perform(resolvedMutations, () => {\n hclAdd('active');\n hclAdd('complete');\n hclRemove('pending');\n if (typeof callback === 'function') callback();\n mark();\n resolve();\n });\n }).catch(e$$1 => {\n mark();\n reject(e$$1);\n });\n });\n}\nfunction onNode(node) {\n let callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n generateMutation(node).then(mutation => {\n if (mutation) {\n perform([mutation], callback);\n }\n });\n}\nfunction resolveIcons(next) {\n return function (maybeIconDefinition) {\n let params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const iconDefinition = (maybeIconDefinition || {}).icon ? maybeIconDefinition : findIconDefinition(maybeIconDefinition || {});\n let {\n mask\n } = params;\n if (mask) {\n mask = (mask || {}).icon ? mask : findIconDefinition(mask || {});\n }\n return next(iconDefinition, _objectSpread2(_objectSpread2({}, params), {}, {\n mask\n }));\n };\n}\nconst render = function (iconDefinition) {\n let params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const {\n transform = meaninglessTransform,\n symbol = false,\n mask = null,\n maskId = null,\n title = null,\n titleId = null,\n classes = [],\n attributes = {},\n styles = {}\n } = params;\n if (!iconDefinition) return;\n const {\n prefix,\n iconName,\n icon\n } = iconDefinition;\n return domVariants(_objectSpread2({\n type: 'icon'\n }, iconDefinition), () => {\n callHooks('beforeDOMElementCreation', {\n iconDefinition,\n params\n });\n if (config.autoA11y) {\n if (title) {\n attributes['aria-labelledby'] = \"\".concat(config.replacementClass, \"-title-\").concat(titleId || nextUniqueId());\n } else {\n attributes['aria-hidden'] = 'true';\n attributes['focusable'] = 'false';\n }\n }\n return makeInlineSvgAbstract({\n icons: {\n main: asFoundIcon(icon),\n mask: mask ? asFoundIcon(mask.icon) : {\n found: false,\n width: null,\n height: null,\n icon: {}\n }\n },\n prefix,\n iconName,\n transform: _objectSpread2(_objectSpread2({}, meaninglessTransform), transform),\n symbol,\n title,\n maskId,\n titleId,\n extra: {\n attributes,\n styles,\n classes\n }\n });\n });\n};\nvar ReplaceElements = {\n mixout() {\n return {\n icon: resolveIcons(render)\n };\n },\n hooks() {\n return {\n mutationObserverCallbacks(accumulator) {\n accumulator.treeCallback = onTree;\n accumulator.nodeCallback = onNode;\n return accumulator;\n }\n };\n },\n provides(providers$$1) {\n providers$$1.i2svg = function (params) {\n const {\n node = DOCUMENT,\n callback = () => {}\n } = params;\n return onTree(node, callback);\n };\n providers$$1.generateSvgReplacementMutation = function (node, nodeMeta) {\n const {\n iconName,\n title,\n titleId,\n prefix,\n transform,\n symbol,\n mask,\n maskId,\n extra\n } = nodeMeta;\n return new Promise((resolve, reject) => {\n Promise.all([findIcon(iconName, prefix), mask.iconName ? findIcon(mask.iconName, mask.prefix) : Promise.resolve({\n found: false,\n width: 512,\n height: 512,\n icon: {}\n })]).then(_ref => {\n let [main, mask] = _ref;\n resolve([node, makeInlineSvgAbstract({\n icons: {\n main,\n mask\n },\n prefix,\n iconName,\n transform,\n symbol,\n maskId,\n title,\n titleId,\n extra,\n watchable: true\n })]);\n }).catch(reject);\n });\n };\n providers$$1.generateAbstractIcon = function (_ref2) {\n let {\n children,\n attributes,\n main,\n transform,\n styles\n } = _ref2;\n const styleString = joinStyles(styles);\n if (styleString.length > 0) {\n attributes['style'] = styleString;\n }\n let nextChild;\n if (transformIsMeaningful(transform)) {\n nextChild = callProvided('generateAbstractTransformGrouping', {\n main,\n transform,\n containerWidth: main.width,\n iconWidth: main.width\n });\n }\n children.push(nextChild || main.icon);\n return {\n children,\n attributes\n };\n };\n }\n};\n\nvar Layers = {\n mixout() {\n return {\n layer(assembler) {\n let params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const {\n classes = []\n } = params;\n return domVariants({\n type: 'layer'\n }, () => {\n callHooks('beforeDOMElementCreation', {\n assembler,\n params\n });\n let children = [];\n assembler(args => {\n Array.isArray(args) ? args.map(a => {\n children = children.concat(a.abstract);\n }) : children = children.concat(args.abstract);\n });\n return [{\n tag: 'span',\n attributes: {\n class: [\"\".concat(config.cssPrefix, \"-layers\"), ...classes].join(' ')\n },\n children\n }];\n });\n }\n };\n }\n};\n\nvar LayersCounter = {\n mixout() {\n return {\n counter(content) {\n let params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const {\n title = null,\n classes = [],\n attributes = {},\n styles = {}\n } = params;\n return domVariants({\n type: 'counter',\n content\n }, () => {\n callHooks('beforeDOMElementCreation', {\n content,\n params\n });\n return makeLayersCounterAbstract({\n content: content.toString(),\n title,\n extra: {\n attributes,\n styles,\n classes: [\"\".concat(config.cssPrefix, \"-layers-counter\"), ...classes]\n }\n });\n });\n }\n };\n }\n};\n\nvar LayersText = {\n mixout() {\n return {\n text(content) {\n let params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const {\n transform = meaninglessTransform,\n title = null,\n classes = [],\n attributes = {},\n styles = {}\n } = params;\n return domVariants({\n type: 'text',\n content\n }, () => {\n callHooks('beforeDOMElementCreation', {\n content,\n params\n });\n return makeLayersTextAbstract({\n content,\n transform: _objectSpread2(_objectSpread2({}, meaninglessTransform), transform),\n title,\n extra: {\n attributes,\n styles,\n classes: [\"\".concat(config.cssPrefix, \"-layers-text\"), ...classes]\n }\n });\n });\n }\n };\n },\n provides(providers$$1) {\n providers$$1.generateLayersText = function (node, nodeMeta) {\n const {\n title,\n transform,\n extra\n } = nodeMeta;\n let width = null;\n let height = null;\n if (IS_IE) {\n const computedFontSize = parseInt(getComputedStyle(node).fontSize, 10);\n const boundingClientRect = node.getBoundingClientRect();\n width = boundingClientRect.width / computedFontSize;\n height = boundingClientRect.height / computedFontSize;\n }\n if (config.autoA11y && !title) {\n extra.attributes['aria-hidden'] = 'true';\n }\n return Promise.resolve([node, makeLayersTextAbstract({\n content: node.innerHTML,\n width,\n height,\n transform,\n title,\n extra,\n watchable: true\n })]);\n };\n }\n};\n\nconst CLEAN_CONTENT_PATTERN = new RegExp('\\u{22}', 'ug');\nconst SECONDARY_UNICODE_RANGE = [1105920, 1112319];\nconst _FONT_FAMILY_WEIGHT_TO_PREFIX = _objectSpread2(_objectSpread2(_objectSpread2(_objectSpread2({}, {\n FontAwesome: {\n normal: 'fas',\n 400: 'fas'\n }\n}), lt), wa), Yt);\nconst FONT_FAMILY_WEIGHT_TO_PREFIX = Object.keys(_FONT_FAMILY_WEIGHT_TO_PREFIX).reduce((acc, key) => {\n acc[key.toLowerCase()] = _FONT_FAMILY_WEIGHT_TO_PREFIX[key];\n return acc;\n}, {});\nconst FONT_FAMILY_WEIGHT_FALLBACK = Object.keys(FONT_FAMILY_WEIGHT_TO_PREFIX).reduce((acc, fontFamily) => {\n const weights = FONT_FAMILY_WEIGHT_TO_PREFIX[fontFamily];\n acc[fontFamily] = weights[900] || [...Object.entries(weights)][0][1];\n return acc;\n}, {});\nfunction hexValueFromContent(content) {\n const cleaned = content.replace(CLEAN_CONTENT_PATTERN, '');\n const codePoint = codePointAt(cleaned, 0);\n const isPrependTen = codePoint >= SECONDARY_UNICODE_RANGE[0] && codePoint <= SECONDARY_UNICODE_RANGE[1];\n const isDoubled = cleaned.length === 2 ? cleaned[0] === cleaned[1] : false;\n return {\n value: isDoubled ? toHex(cleaned[0]) : toHex(cleaned),\n isSecondary: isPrependTen || isDoubled\n };\n}\nfunction getPrefix(fontFamily, fontWeight) {\n const fontFamilySanitized = fontFamily.replace(/^['\"]|['\"]$/g, '').toLowerCase();\n const fontWeightInteger = parseInt(fontWeight);\n const fontWeightSanitized = isNaN(fontWeightInteger) ? 'normal' : fontWeightInteger;\n return (FONT_FAMILY_WEIGHT_TO_PREFIX[fontFamilySanitized] || {})[fontWeightSanitized] || FONT_FAMILY_WEIGHT_FALLBACK[fontFamilySanitized];\n}\nfunction replaceForPosition(node, position) {\n const pendingAttribute = \"\".concat(DATA_FA_PSEUDO_ELEMENT_PENDING).concat(position.replace(':', '-'));\n return new Promise((resolve, reject) => {\n if (node.getAttribute(pendingAttribute) !== null) {\n // This node is already being processed\n return resolve();\n }\n const children = toArray(node.children);\n const alreadyProcessedPseudoElement = children.filter(c$$1 => c$$1.getAttribute(DATA_FA_PSEUDO_ELEMENT) === position)[0];\n const styles = WINDOW.getComputedStyle(node, position);\n const fontFamily = styles.getPropertyValue('font-family');\n const fontFamilyMatch = fontFamily.match(FONT_FAMILY_PATTERN);\n const fontWeight = styles.getPropertyValue('font-weight');\n const content = styles.getPropertyValue('content');\n if (alreadyProcessedPseudoElement && !fontFamilyMatch) {\n // If we've already processed it but the current computed style does not result in a font-family,\n // that probably means that a class name that was previously present to make the icon has been\n // removed. So we now should delete the icon.\n node.removeChild(alreadyProcessedPseudoElement);\n return resolve();\n } else if (fontFamilyMatch && content !== 'none' && content !== '') {\n const content = styles.getPropertyValue('content');\n let prefix = getPrefix(fontFamily, fontWeight);\n const {\n value: hexValue,\n isSecondary\n } = hexValueFromContent(content);\n const isV4 = fontFamilyMatch[0].startsWith('FontAwesome');\n let iconName = byUnicode(prefix, hexValue);\n let iconIdentifier = iconName;\n if (isV4) {\n const iconName4 = byOldUnicode(hexValue);\n if (iconName4.iconName && iconName4.prefix) {\n iconName = iconName4.iconName;\n prefix = iconName4.prefix;\n }\n }\n\n // Only convert the pseudo element in this ::before/::after position into an icon if we haven't\n // already done so with the same prefix and iconName\n if (iconName && !isSecondary && (!alreadyProcessedPseudoElement || alreadyProcessedPseudoElement.getAttribute(DATA_PREFIX) !== prefix || alreadyProcessedPseudoElement.getAttribute(DATA_ICON) !== iconIdentifier)) {\n node.setAttribute(pendingAttribute, iconIdentifier);\n if (alreadyProcessedPseudoElement) {\n // Delete the old one, since we're replacing it with a new one\n node.removeChild(alreadyProcessedPseudoElement);\n }\n const meta = blankMeta();\n const {\n extra\n } = meta;\n extra.attributes[DATA_FA_PSEUDO_ELEMENT] = position;\n findIcon(iconName, prefix).then(main => {\n const abstract = makeInlineSvgAbstract(_objectSpread2(_objectSpread2({}, meta), {}, {\n icons: {\n main,\n mask: emptyCanonicalIcon()\n },\n prefix,\n iconName: iconIdentifier,\n extra,\n watchable: true\n }));\n const element = DOCUMENT.createElementNS('http://www.w3.org/2000/svg', 'svg');\n if (position === '::before') {\n node.insertBefore(element, node.firstChild);\n } else {\n node.appendChild(element);\n }\n element.outerHTML = abstract.map(a$$1 => toHtml(a$$1)).join('\\n');\n node.removeAttribute(pendingAttribute);\n resolve();\n }).catch(reject);\n } else {\n resolve();\n }\n } else {\n resolve();\n }\n });\n}\nfunction replace(node) {\n return Promise.all([replaceForPosition(node, '::before'), replaceForPosition(node, '::after')]);\n}\nfunction processable(node) {\n 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');\n}\nfunction searchPseudoElements(root) {\n if (!IS_DOM) return;\n return new Promise((resolve, reject) => {\n const operations = toArray(root.querySelectorAll('*')).filter(processable).map(replace);\n const end = perf.begin('searchPseudoElements');\n disableObservation();\n Promise.all(operations).then(() => {\n end();\n enableObservation();\n resolve();\n }).catch(() => {\n end();\n enableObservation();\n reject();\n });\n });\n}\nvar PseudoElements = {\n hooks() {\n return {\n mutationObserverCallbacks(accumulator) {\n accumulator.pseudoElementsCallback = searchPseudoElements;\n return accumulator;\n }\n };\n },\n provides(providers) {\n providers.pseudoElements2svg = function (params) {\n const {\n node = DOCUMENT\n } = params;\n if (config.searchPseudoElements) {\n searchPseudoElements(node);\n }\n };\n }\n};\n\nlet _unwatched = false;\nvar MutationObserver$1 = {\n mixout() {\n return {\n dom: {\n unwatch() {\n disableObservation();\n _unwatched = true;\n }\n }\n };\n },\n hooks() {\n return {\n bootstrap() {\n observe(chainHooks('mutationObserverCallbacks', {}));\n },\n noAuto() {\n disconnect();\n },\n watch(params) {\n const {\n observeMutationsRoot\n } = params;\n if (_unwatched) {\n enableObservation();\n } else {\n observe(chainHooks('mutationObserverCallbacks', {\n observeMutationsRoot\n }));\n }\n }\n };\n }\n};\n\nconst parseTransformString = transformString => {\n let transform = {\n size: 16,\n x: 0,\n y: 0,\n flipX: false,\n flipY: false,\n rotate: 0\n };\n return transformString.toLowerCase().split(' ').reduce((acc, n) => {\n const parts = n.toLowerCase().split('-');\n const first = parts[0];\n let rest = parts.slice(1).join('-');\n if (first && rest === 'h') {\n acc.flipX = true;\n return acc;\n }\n if (first && rest === 'v') {\n acc.flipY = true;\n return acc;\n }\n rest = parseFloat(rest);\n if (isNaN(rest)) {\n return acc;\n }\n switch (first) {\n case 'grow':\n acc.size = acc.size + rest;\n break;\n case 'shrink':\n acc.size = acc.size - rest;\n break;\n case 'left':\n acc.x = acc.x - rest;\n break;\n case 'right':\n acc.x = acc.x + rest;\n break;\n case 'up':\n acc.y = acc.y - rest;\n break;\n case 'down':\n acc.y = acc.y + rest;\n break;\n case 'rotate':\n acc.rotate = acc.rotate + rest;\n break;\n }\n return acc;\n }, transform);\n};\nvar PowerTransforms = {\n mixout() {\n return {\n parse: {\n transform: transformString => {\n return parseTransformString(transformString);\n }\n }\n };\n },\n hooks() {\n return {\n parseNodeAttributes(accumulator, node) {\n const transformString = node.getAttribute('data-fa-transform');\n if (transformString) {\n accumulator.transform = parseTransformString(transformString);\n }\n return accumulator;\n }\n };\n },\n provides(providers) {\n providers.generateAbstractTransformGrouping = function (_ref) {\n let {\n main,\n transform,\n containerWidth,\n iconWidth\n } = _ref;\n const outer = {\n transform: \"translate(\".concat(containerWidth / 2, \" 256)\")\n };\n const innerTranslate = \"translate(\".concat(transform.x * 32, \", \").concat(transform.y * 32, \") \");\n const innerScale = \"scale(\".concat(transform.size / 16 * (transform.flipX ? -1 : 1), \", \").concat(transform.size / 16 * (transform.flipY ? -1 : 1), \") \");\n const innerRotate = \"rotate(\".concat(transform.rotate, \" 0 0)\");\n const inner = {\n transform: \"\".concat(innerTranslate, \" \").concat(innerScale, \" \").concat(innerRotate)\n };\n const path = {\n transform: \"translate(\".concat(iconWidth / 2 * -1, \" -256)\")\n };\n const operations = {\n outer,\n inner,\n path\n };\n return {\n tag: 'g',\n attributes: _objectSpread2({}, operations.outer),\n children: [{\n tag: 'g',\n attributes: _objectSpread2({}, operations.inner),\n children: [{\n tag: main.icon.tag,\n children: main.icon.children,\n attributes: _objectSpread2(_objectSpread2({}, main.icon.attributes), operations.path)\n }]\n }]\n };\n };\n }\n};\n\nconst ALL_SPACE = {\n x: 0,\n y: 0,\n width: '100%',\n height: '100%'\n};\nfunction fillBlack(abstract) {\n let force = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n if (abstract.attributes && (abstract.attributes.fill || force)) {\n abstract.attributes.fill = 'black';\n }\n return abstract;\n}\nfunction deGroup(abstract) {\n if (abstract.tag === 'g') {\n return abstract.children;\n } else {\n return [abstract];\n }\n}\nvar Masks = {\n hooks() {\n return {\n parseNodeAttributes(accumulator, node) {\n const maskData = node.getAttribute('data-fa-mask');\n const mask = !maskData ? emptyCanonicalIcon() : getCanonicalIcon(maskData.split(' ').map(i => i.trim()));\n if (!mask.prefix) {\n mask.prefix = getDefaultUsablePrefix();\n }\n accumulator.mask = mask;\n accumulator.maskId = node.getAttribute('data-fa-mask-id');\n return accumulator;\n }\n };\n },\n provides(providers) {\n providers.generateAbstractMask = function (_ref) {\n let {\n children,\n attributes,\n main,\n mask,\n maskId: explicitMaskId,\n transform\n } = _ref;\n const {\n width: mainWidth,\n icon: mainPath\n } = main;\n const {\n width: maskWidth,\n icon: maskPath\n } = mask;\n const trans = transformForSvg({\n transform,\n containerWidth: maskWidth,\n iconWidth: mainWidth\n });\n const maskRect = {\n tag: 'rect',\n attributes: _objectSpread2(_objectSpread2({}, ALL_SPACE), {}, {\n fill: 'white'\n })\n };\n const maskInnerGroupChildrenMixin = mainPath.children ? {\n children: mainPath.children.map(fillBlack)\n } : {};\n const maskInnerGroup = {\n tag: 'g',\n attributes: _objectSpread2({}, trans.inner),\n children: [fillBlack(_objectSpread2({\n tag: mainPath.tag,\n attributes: _objectSpread2(_objectSpread2({}, mainPath.attributes), trans.path)\n }, maskInnerGroupChildrenMixin))]\n };\n const maskOuterGroup = {\n tag: 'g',\n attributes: _objectSpread2({}, trans.outer),\n children: [maskInnerGroup]\n };\n const maskId = \"mask-\".concat(explicitMaskId || nextUniqueId());\n const clipId = \"clip-\".concat(explicitMaskId || nextUniqueId());\n const maskTag = {\n tag: 'mask',\n attributes: _objectSpread2(_objectSpread2({}, ALL_SPACE), {}, {\n id: maskId,\n maskUnits: 'userSpaceOnUse',\n maskContentUnits: 'userSpaceOnUse'\n }),\n children: [maskRect, maskOuterGroup]\n };\n const defs = {\n tag: 'defs',\n children: [{\n tag: 'clipPath',\n attributes: {\n id: clipId\n },\n children: deGroup(maskPath)\n }, maskTag]\n };\n children.push(defs, {\n tag: 'rect',\n attributes: _objectSpread2({\n fill: 'currentColor',\n 'clip-path': \"url(#\".concat(clipId, \")\"),\n mask: \"url(#\".concat(maskId, \")\")\n }, ALL_SPACE)\n });\n return {\n children,\n attributes\n };\n };\n }\n};\n\nvar MissingIconIndicator = {\n provides(providers) {\n let reduceMotion = false;\n if (WINDOW.matchMedia) {\n reduceMotion = WINDOW.matchMedia('(prefers-reduced-motion: reduce)').matches;\n }\n providers.missingIconAbstract = function () {\n const gChildren = [];\n const FILL = {\n fill: 'currentColor'\n };\n const ANIMATION_BASE = {\n attributeType: 'XML',\n repeatCount: 'indefinite',\n dur: '2s'\n };\n\n // Ring\n gChildren.push({\n tag: 'path',\n attributes: _objectSpread2(_objectSpread2({}, FILL), {}, {\n 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'\n })\n });\n const OPACITY_ANIMATE = _objectSpread2(_objectSpread2({}, ANIMATION_BASE), {}, {\n attributeName: 'opacity'\n });\n const dot = {\n tag: 'circle',\n attributes: _objectSpread2(_objectSpread2({}, FILL), {}, {\n cx: '256',\n cy: '364',\n r: '28'\n }),\n children: []\n };\n if (!reduceMotion) {\n dot.children.push({\n tag: 'animate',\n attributes: _objectSpread2(_objectSpread2({}, ANIMATION_BASE), {}, {\n attributeName: 'r',\n values: '28;14;28;28;14;28;'\n })\n }, {\n tag: 'animate',\n attributes: _objectSpread2(_objectSpread2({}, OPACITY_ANIMATE), {}, {\n values: '1;0;1;1;0;1;'\n })\n });\n }\n gChildren.push(dot);\n gChildren.push({\n tag: 'path',\n attributes: _objectSpread2(_objectSpread2({}, FILL), {}, {\n opacity: '1',\n 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'\n }),\n children: reduceMotion ? [] : [{\n tag: 'animate',\n attributes: _objectSpread2(_objectSpread2({}, OPACITY_ANIMATE), {}, {\n values: '1;0;0;0;0;1;'\n })\n }]\n });\n if (!reduceMotion) {\n // Exclamation\n gChildren.push({\n tag: 'path',\n attributes: _objectSpread2(_objectSpread2({}, FILL), {}, {\n opacity: '0',\n 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'\n }),\n children: [{\n tag: 'animate',\n attributes: _objectSpread2(_objectSpread2({}, OPACITY_ANIMATE), {}, {\n values: '0;0;1;1;0;0;'\n })\n }]\n });\n }\n return {\n tag: 'g',\n attributes: {\n 'class': 'missing'\n },\n children: gChildren\n };\n };\n }\n};\n\nvar SvgSymbols = {\n hooks() {\n return {\n parseNodeAttributes(accumulator, node) {\n const symbolData = node.getAttribute('data-fa-symbol');\n const symbol = symbolData === null ? false : symbolData === '' ? true : symbolData;\n accumulator['symbol'] = symbol;\n return accumulator;\n }\n };\n }\n};\n\nvar plugins = [InjectCSS, ReplaceElements, Layers, LayersCounter, LayersText, PseudoElements, MutationObserver$1, PowerTransforms, Masks, MissingIconIndicator, SvgSymbols];\n\nregisterPlugins(plugins, {\n mixoutsTo: api\n});\nconst noAuto$1 = api.noAuto;\nconst config$1 = api.config;\nconst library$1 = api.library;\nconst dom$1 = api.dom;\nconst parse$1 = api.parse;\nconst findIconDefinition$1 = api.findIconDefinition;\nconst toHtml$1 = api.toHtml;\nconst icon = api.icon;\nconst layer = api.layer;\nconst text = api.text;\nconst counter = api.counter;\n\nexport { noAuto$1 as noAuto, config$1 as config, library$1 as library, dom$1 as dom, parse$1 as parse, findIconDefinition$1 as findIconDefinition, toHtml$1 as toHtml, icon, layer, text, counter, api };\n"],"names":["_defineProperty","e","r","t","i","Symbol","toPrimitive","call","TypeError","String","Number","_toPrimitive","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","ownKeys","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","push","apply","_objectSpread2","arguments","length","forEach","getOwnPropertyDescriptors","defineProperties","noop","_WINDOW","_DOCUMENT","_MUTATION_OBSERVER","_PERFORMANCE","mark","measure","window","document","MutationObserver","performance","userAgent","navigator","WINDOW","DOCUMENT","MUTATION_OBSERVER","PERFORMANCE","IS_DOM","documentElement","head","addEventListener","createElement","IS_IE","indexOf","S","classic","fa","fas","far","fal","fat","fab","duotone","fad","fadr","fadl","fadt","sharp","fass","fasr","fasl","fast","fasds","fasdr","fasdl","fasdt","P","s","L","pt","Map","defaultShortPrefixId","defaultStyleId","styleIds","futureStyleIds","defaultFontWeight","Ft","St","fak","fakd","Lt","Et","kit","t$1","GROUP","SWAP_OPACITY","PRIMARY","SECONDARY","bt$1","ga","Ia","c$1","F$1","concat","ma","map","a","NAMESPACE_IDENTIFIER","UNITS_IN_GRID","DEFAULT_CSS_PREFIX","DEFAULT_REPLACEMENT_CLASS","DATA_FA_I2SVG","DATA_FA_PSEUDO_ELEMENT","DATA_FA_PSEUDO_ELEMENT_PENDING","DATA_PREFIX","DATA_ICON","HTML_CLASS_I2SVG_BASE_CLASS","MUTATION_APPROACH_ASYNC","TAGNAMES_TO_SKIP_FOR_PSEUDOELEMENTS","PRODUCTION","process","env","NODE_ENV","e$$1","familyProxy","obj","Proxy","get","target","prop","_PREFIX_TO_STYLE","PREFIX_TO_STYLE","_STYLE_TO_PREFIX","solid","regular","light","thin","brands","STYLE_TO_PREFIX","_PREFIX_TO_LONG_STYLE","PREFIX_TO_LONG_STYLE","_LONG_STYLE_TO_PREFIX","ICON_SELECTION_SYNTAX_PATTERN","LAYERS_TEXT_CLASSNAME","FONT_FAMILY_PATTERN","normal","ATTRIBUTES_WATCHED_FOR_MUTATION","DUOTONE_CLASSES","RESERVED_CLASSES","initial","FontAwesomeConfig","querySelector","_ref","attr","key","val","coerce","element","getAttribute","getAttrConfig","_default","styleDefault","familyDefault","cssPrefix","replacementClass","autoReplaceSvg","autoAddCss","autoA11y","searchPseudoElements","observeMutations","mutateApproach","keepOriginalSource","measurePerformance","showMissingIcons","familyPrefix","_config","config","set","_onChangeCb","cb","d$2","meaninglessTransform","size","x","y","rotate","flipX","flipY","idPool","nextUniqueId","id","Math","random","toArray","array","classArray","node","classList","split","htmlEscape","str","replace","joinStyles","styles","reduce","acc","styleName","trim","transformIsMeaningful","transform","baseStyles","css","dcp","drc","fp","rc","dPatt","RegExp","customPropPatt","rPatt","_cssInserted","ensureCss","style","setAttribute","innerHTML","headChildren","childNodes","beforeChild","child","tagName","toUpperCase","insertBefore","insertCss","InjectCSS","mixout","dom","hooks","beforeDOMElementCreation","beforeI2svg","w","shims","namespace","functions","listener","removeEventListener","loaded","fn","toHtml","abstractNodes","tag","attributes","children","attributeName","joinAttributes","join","iconFromMapping","mapping","prefix","iconName","icon","doScroll","test","readyState","subject","initialValue","thisContext","result","iterator","undefined","func","b","c","d","bindInternal4","toHex","unicode","decoded","string","output","counter","charCodeAt","extra","ucs2decode","toString","normalizeIcons","icons","defineIcons","params","skipHooks","normalized","addPack","FAMILY_NAMES","PREFIXES_FOR_FAMILY","familyId","_defaultUsablePrefix","_byUnicode","_byLigature","_byOldName","_byOldUnicode","_byAlias","getIconName","cls","parts","slice","name","build","lookup","reducer","o$$1","a$$1","alias","aliases","hasRegular","autoFetchSvg","shimLookups","shim","maybeNameMaybeUnicode","names","unicodes","getCanonicalPrefix","family","byUnicode","byAlias","byOldName","getDefaultUsablePrefix","c$$1","emptyCanonicalIcon","rest","styleOrPrefix","defined","sortedUniqueValues","arr","sort","index","getCanonicalIcon","values","skipLookups","givenPrefix","faCombinedClasses","faStyleOrFamilyClasses","includes","nonStyleOrFamilyClasses","faStyles","styleFromValues","famProps","some","v$$1","getFamilyId","canonical","classNames","moveNonFaClassesToRest","prefixOptions","config$$1","isDuotoneFamily","valuesHasDuotone","defaultFamilyIsDuotone","canonicalPrefixIsDuotone","newCanonicalFamilies","find","newCanonicalStyles","defaultPrefix","getDefaultCanonicalPrefix","aliasIconName","applyShimAndAlias","flat","_plugins","_hooks","providers","defaultProviderKeys","chainHooks","hook","accumulator","_len","args","Array","_key","hookFn","callHooks","_len2","_key2","callProvided","prototype","findIconDefinition","iconLookup","library","definitions","constructor","this","add","additions","_pullDefinitions","longPrefix","reset","definition","i2svg","Promise","reject","Error","watch","autoReplaceSvgRoot","autoReplace","setTimeout","parse","isArray","match","canonicalIcon","api","noAuto","domVariants","abstractCreator","abstract","container","html","makeInlineSvgAbstract","main","mask","symbol","title","maskId","titleId","watchable","width","height","found","isUploadedIcon","attrClass","classes","content","class","role","xmlns","viewBox","uploadedIconWidthStyle","asSymbol","offset","asIcon","makeLayersTextAbstract","_ref2","startCentered","transformForCss","styleString","styles$1","asFoundIcon","vectorData","fill","missingIconResolutionMixin","findIcon","resolve","console","error","maybeNotifyMissing","noop$1","p$2","preamble","end","perf","begin","noop$2","isWatched","createElementNS","convertSVG","abstractObj","ceFn","createTextNode","appendChild","mutators","mutation","parentNode","comment","createComment","outerHTML","nodeAsComment","replaceChild","remove","nest","forSvg","splitClasses","toSvg","toNode","removeAttribute","newInnerHTML","performOperationSync","op","perform","mutations","callback","callbackFunction","frame","requestAnimationFrame","mutator","disabled","disableObservation","enableObservation","mo","observe","options","treeCallback","nodeCallback","pseudoElementsCallback","observeMutationsRoot","objects","mutationRecord","type","addedNodes","hasPrefixAndIcon","contains","childList","characterData","subtree","classParser","existingPrefix","existingIconName","innerText","ligature","firstChild","nodeType","Node","TEXT_NODE","data","parseMeta","parser","styleParser","extraClasses","extraAttributes","attributesParser","pluginMeta","extraStyles","styles$2","generateMutation","nodeMeta","onTree","root","htmlClassList","hclAdd","suffix","hclRemove","prefixes","prefixesDomQuery","p$$1","candidates","querySelectorAll","all","then","resolvedMutations","catch","onNode","render","iconDefinition","ReplaceElements","next","maybeIconDefinition","mutationObserverCallbacks","provides","providers$$1","generateSvgReplacementMutation","generateAbstractIcon","nextChild","containerWidth","iconWidth","Layers","layer","assembler","LayersCounter","makeLayersCounterAbstract","LayersText","text","generateLayersText","computedFontSize","parseInt","getComputedStyle","fontSize","boundingClientRect","getBoundingClientRect","CLEAN_CONTENT_PATTERN","SECONDARY_UNICODE_RANGE","_FONT_FAMILY_WEIGHT_TO_PREFIX","FontAwesome","FONT_FAMILY_WEIGHT_TO_PREFIX","toLowerCase","FONT_FAMILY_WEIGHT_FALLBACK","fontFamily","weights","entries","replaceForPosition","position","pendingAttribute","alreadyProcessedPseudoElement","getPropertyValue","fontFamilyMatch","fontWeight","removeChild","fontFamilySanitized","fontWeightInteger","fontWeightSanitized","isNaN","getPrefix","hexValue","isSecondary","cleaned","codePoint","second","first","codePointAt","isPrependTen","isDoubled","hexValueFromContent","isV4","startsWith","iconIdentifier","iconName4","oldUnicode","newUnicode","byOldUnicode","meta","processable","operations","PseudoElements","pseudoElements2svg","_unwatched","MutationObserver$1","unwatch","bootstrap","disconnect","parseTransformString","transformString","n","parseFloat","PowerTransforms","parseNodeAttributes","generateAbstractTransformGrouping","outer","innerTranslate","innerScale","innerRotate","inner","path","ALL_SPACE","fillBlack","force","Masks","maskData","generateAbstractMask","explicitMaskId","mainWidth","mainPath","maskWidth","maskPath","trans","transformForSvg","maskRect","maskInnerGroupChildrenMixin","maskInnerGroup","maskOuterGroup","clipId","maskTag","maskUnits","maskContentUnits","defs","MissingIconIndicator","reduceMotion","matchMedia","matches","missingIconAbstract","gChildren","FILL","ANIMATION_BASE","attributeType","repeatCount","dur","OPACITY_ANIMATE","dot","cx","cy","opacity","nextPlugins","mixoutsTo","k","plugin","tk","sk","registerPlugins","symbolData","parse$1"],"mappings":"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"}
|